On Sun, Dec 15, 2019 at 12:14:33AM -0500, Bryan Steele wrote: > I did a dirty, awful thing. For r600/radeonsi gallium drivers it seems > neccessary to compile Mesa with --enable-va for this to work. That said, > it seems that installing the shared libraries from this build is > enough to make the vainfo utility happy. I haven't seen if this > actualy works with ffmpeg at all.
It works! The original ffmpeg diff Brad DeMorrow sent earlier was incomplete, with this patch to his updated port. Diff attached. ffmpeg version 4.2.1 Copyright (c) 2000-2019 the FFmpeg developers built with OpenBSD clang version 8.0.1 (tags/RELEASE_801/final) (based on LLVM 8.0.1) configuration: --enable-shared --arch=amd64 --cc=cc --disable-altivec --disable-debug --disable-indev=jack --disable-indev=oss --disable-mipsdsp --disable-mipsdspr2 --disable-mipsfpu --disable-mmi --disable-msa --disable-outdev=oss --disable-outdev=sdl2 --enable-avresample --enable-fontconfig --enable-frei0r --enable-gpl --enable-libaom --enable-libass --enable-libdav1d --enable-libfreetype --enable-libfribidi --enable-libgsm --enable-libmp3lame --enable-libopus --enable-libspeex --enable-libtheora --enable-libv4l2 --enable-libvorbis --enable-libvpx --enable-libx264 --enable-libx265 --enable-libxml2 --enable-libxvid --enable-nonfree --enable-openssl --enable-vaapi --extra-cflags='-I/usr/local/include -I/usr/X11R6/include' --extra-libs='-L/usr/local/lib -L/usr/X11R6/lib' --extra-ldsoflags= --mandir=/usr/local/man --optflags='-O2 -pipe -Wno-redundant-decls' libavutil 56. 31.100 / 56. 31.100 libavcodec 58. 54.100 / 58. 54.100 libavformat 58. 29.100 / 58. 29.100 libavdevice 58. 8.100 / 58. 8.100 libavfilter 7. 57.100 / 7. 57.100 libavresample 4. 0. 0 / 4. 0. 0 libswscale 5. 5.100 / 5. 5.100 libswresample 3. 5.100 / 3. 5.100 libpostproc 55. 5.100 / 55. 5.100 [AVHWDeviceContext @ 0x1a72a575f940] libva: VA-API version 1.6.0 [AVHWDeviceContext @ 0x1a72a575f940] libva: va_getDriverName() returns 0 [AVHWDeviceContext @ 0x1a72a575f940] libva: Trying to open /usr/local/lib/dri/r600_drv_video.so [AVHWDeviceContext @ 0x1a72a575f940] libva: Found init function __vaDriverInit_1_0 [AVHWDeviceContext @ 0x1a72a575f940] libva: va_openDriver() returns 0 [AVHWDeviceContext @ 0x1a72a575f940] Initialised VAAPI connection: version 1.6 [AVHWDeviceContext @ 0x1a72a575f940] VAAPI driver: Mesa Gallium driver 19.0.8 for AMD CAICOS (DRM 2.50.0 / 6.6, LLVM 8.0.1). [AVHWDeviceContext @ 0x1a72a575f940] Driver not found in known nonstandard list, using standard behaviour. [h264 @ 0x1a72c8da9000] Reinit context to 768x1088, pix_fmt: yuv420p Input #0, mov,mp4,m4a,3gp,3g2,mj2, from 'openbsd-sixdotsix.mp4': Metadata: major_brand : mp42 minor_version : 1 compatible_brands: mp41mp42isom creation_time : 2019-10-12T10:33:50.000000Z Duration: 00:00:29.87, start: 0.000000, bitrate: 1666 kb/s Stream #0:0(und): Video: h264 (High), 1 reference frame (avc1 / 0x31637661), yuv420p(tv, bt709, left), 754x1080 (768x1088), 1660 kb/s, 30 fps, 30 tbr, 600 tbn, 1200 tbc (default) Metadata: creation_time : 2019-10-12T10:33:50.000000Z handler_name : Core Media Video Stream mapping: Stream #0:0 -> #0:0 (h264 (native) -> wrapped_avframe (native)) Press [q] to stop, [?] for help [h264 @ 0x1a731863f800] Reinit context to 768x1088, pix_fmt: vaapi_vld [graph 0 input from stream 0:0 @ 0x1a73156e7100] w:754 h:1080 pixfmt:vaapi_vld tb:1/600 fr:30/1 sar:0/1 sws_param:flags=2 Output #0, null, to 'pipe:': Metadata: major_brand : mp42 minor_version : 1 compatible_brands: mp41mp42isom encoder : Lavf58.29.100 Stream #0:0(und): Video: wrapped_avframe, 1 reference frame, vaapi_vld(left), 754x1080, q=2-31, 200 kb/s, 30 fps, 30 tbn, 30 tbc (default) Metadata: creation_time : 2019-10-12T10:33:50.000000Z handler_name : Core Media Video encoder : Lavc58.54.100 wrapped_avframe No more output streams to write to, finishing.:28.90 bitrate=N/A speed=5.74x frame= 896 fps=173 q=-0.0 Lsize=N/A time=00:00:29.86 bitrate=N/A speed=5.78x video:469kB audio:0kB subtitle:0kB other streams:0kB global headers:0kB muxing overhead: unknown Input file #0 (openbsd-sixdotsix.mp4): Input stream #0:0 (video): 897 packets read (6207755 bytes); 896 frames decoded; Total: 897 packets (6207755 bytes) demuxed Output file #0 (pipe:): s); Total: 896 packets (480256 bytes) muxed [AVIOContext @ 0x1a731ff5b000] Statistics: 6254355 bytes read, 2 seeks --- graphics/ffmpeg/Makefile Sun Dec 15 01:53:55 2019 +++ graphics/ffmpeg/Makefile Sun Dec 15 01:25:13 2019 @@ -63,12 +63,12 @@ textproc/libxml # inter-library dependencies for the current configuration -LIBavcodec_EXTRALIBS=-L${LOCALBASE}/lib -laom -ldav1d -lgsm -liconv -llzma -lmp3lame -lopus -lspeex -ltheoradec -ltheoraenc -lvorbis -lvorbisenc -lvpx -lx264 -lx265 -lxvidcore -lm -lz -pthread +LIBavcodec_EXTRALIBS=-L${LOCALBASE}/lib -laom -ldav1d -lgsm -liconv -llzma -lmp3lame -lopus -lspeex -ltheoradec -ltheoraenc -lvorbis -lvorbisenc -lvpx -lx264 -lx265 -lxvidcore -lm -lz -pthread -lva -lva-drm -lva-x11 LIBavdevice_EXTRALIBS=-L${LOCALBASE}/lib -L${X11BASE}/lib -lX11 -lXext -lXv -lxcb-shape -lxcb-shm -lxcb-xfixes -lxcb -lsndio -lv4l2 -lm LIBavfilter_EXTRALIBS=-L${LOCALBASE}/lib -L${X11BASE}/lib -lass -lfontconfig -lfreetype -lfribidi -lm -lz -pthread LIBavformat_EXTRALIBS=-L${LOCALBASE}/lib -lbz2 -lxml2 -lssl -lcrypto -lm -lz LIBavresample_EXTRALIBS=-lm -LIBavutil_EXTRALIBS=-lm -pthread +LIBavutil_EXTRALIBS=-lm -pthread -L${LOCALBASE}/lib -lva -lva-drm -lva-x11 LIBpostproc_EXTRALIBS=-lm LIBswresample_EXTRALIBS=-lm LIBswscale_EXTRALIBS=-lm