On Mon, Jul 22, 2024 at 06:18:50AM -0400, Brad Smith wrote: > This should enable the VA-API support in Xine-lib. > > Please test.
Here is an updated diff. Index: Makefile =================================================================== RCS file: /cvs/ports/multimedia/xine-lib/Makefile,v retrieving revision 1.157 diff -u -p -u -p -r1.157 Makefile --- Makefile 27 Sep 2023 10:10:22 -0000 1.157 +++ Makefile 25 Jul 2024 19:53:13 -0000 @@ -1,6 +1,7 @@ COMMENT= multimedia decoding library DISTNAME= xine-lib-1.2.13 +REVISION= 0 CATEGORIES= multimedia SITES= ${SITE_SOURCEFORGE:=xine/} EXTRACT_SUFX= .tar.xz @@ -15,15 +16,17 @@ MAINTAINER= Brad Smith <b...@comstyle.co PERMIT_PACKAGE= Yes WANTLIB += ${COMPILER_LIBCXX} EGL FLAC GL GLU ICE SDL SM X11 X11-xcb -WANTLIB += Xau Xdmcp Xext Xfixes Xinerama Xv XvMCW Xxf86vm aom avcodec -WANTLIB += avformat avutil bluray bz2 c cdio crypto dav1d drm dvdnav -WANTLIB += dvdread execinfo expat fontconfig freetype gbm gcrypt glapi -WANTLIB += gpg-error gsm iconv intl iso9660 jpeg lcms lzma m mng modplug -WANTLIB += mp3lame mpcdec nfs ogg opus png postproc sndio speex ssl -WANTLIB += swresample theora theoradec theoraenc udfread usbhid v4l2 -WANTLIB += v4lconvert vcdinfo vorbis vorbisenc vpx x264 x265 xcb xcb-dri2 -WANTLIB += xcb-dri3 xcb-glx xcb-present xcb-shape xcb-shm xcb-sync -WANTLIB += xcb-xfixes xcb-xv xdg-basedir xml2 xshmfence xvidcore z +WANTLIB += Xau Xdmcp Xext Xfixes Xinerama Xv XvMCW Xxf86vm aom +WANTLIB += avcodec avformat avutil bluray bz2 c cdio crypto dav1d +WANTLIB += drm dvdnav dvdread execinfo expat fontconfig freetype +WANTLIB += gbm gcrypt glapi gpg-error gsm iconv intl iso9660 jpeg +WANTLIB += lcms lzma m mng modplug mp3lame mpcdec nfs ogg opus +WANTLIB += png postproc sndio speex ssl swresample theora theoradec +WANTLIB += theoraenc udfread usbhid v4l2 v4lconvert va va-drm +WANTLIB += va-x11 vcdinfo vorbis vorbisenc vpx x264 x265 xcb +WANTLIB += xcb-dri2 xcb-dri3 xcb-glx xcb-present xcb-randr xcb-shape +WANTLIB += xcb-shm xcb-sync xcb-xfixes xcb-xv xdg-basedir xml2 +WANTLIB += xshmfence xvidcore z XINEAPI_REV= 2.11 SUBST_VARS+= XINEAPI_REV @@ -43,7 +46,7 @@ LIB_DEPENDS= audio/flac \ devel/gettext,-runtime \ devel/libnfs \ devel/sdl \ - graphics/ffmpeg \ + graphics/ffmpeg>=4.4.4p6 \ graphics/jpeg \ graphics/libmng \ graphics/png \ Index: patches/patch-m4_video_out_m4 =================================================================== RCS file: patches/patch-m4_video_out_m4 diff -N patches/patch-m4_video_out_m4 --- /dev/null 1 Jan 1970 00:00:00 -0000 +++ patches/patch-m4_video_out_m4 25 Jul 2024 19:53:13 -0000 @@ -0,0 +1,16 @@ +Enable VA-API support on OpenBSD. + +Index: m4/video_out.m4 +--- m4/video_out.m4.orig ++++ m4/video_out.m4 +@@ -49,6 +49,10 @@ AC_DEFUN([XINE_VIDEO_OUT_PLUGINS], [ + default_enable_vaapi=yes + ;; + ++ openbsd*) ++ default_enable_vaapi=yes ++ ;; ++ + gnu*) + default_enable_vdpau=yes + ;; Index: patches/patch-src_audio_out_audio_sndio_out_c =================================================================== RCS file: patches/patch-src_audio_out_audio_sndio_out_c diff -N patches/patch-src_audio_out_audio_sndio_out_c --- /dev/null 1 Jan 1970 00:00:00 -0000 +++ patches/patch-src_audio_out_audio_sndio_out_c 25 Jul 2024 19:53:13 -0000 @@ -0,0 +1,37 @@ +Index: src/audio_out/audio_sndio_out.c +--- src/audio_out/audio_sndio_out.c.orig ++++ src/audio_out/audio_sndio_out.c +@@ -306,14 +306,31 @@ static int ao_sndio_set_property (ao_driver_t *this_ge + */ + static int ao_sndio_ctrl(ao_driver_t *this_gen, int cmd, ...) + { +- (void)this_gen; +- (void)cmd; ++ sndio_driver_t *this = (sndio_driver_t *) this_gen; ++ int err; + + /* + * sndio pauses automatically if there are no more samples to play + * and resumes when there are samples again. So we leave this empty + * for the moment. + */ ++ switch (cmd) { ++ case AO_CTRL_PLAY_PAUSE: ++ case AO_CTRL_PLAY_RESUME: ++ break; ++ ++ case AO_CTRL_FLUSH_BUFFERS: ++ if (!sio_flush(this->hdl)) { ++ xprintf (this->xine, XINE_VERBOSITY_DEBUG, ++ "audio_sndio_out: ao_sndio_ctrl could not flush\n"); ++ } ++ ++ if (!sio_start(this->hdl)) { ++ xprintf (this->xine, XINE_VERBOSITY_DEBUG, ++ "audio_sndio_out: ao_sndio_ctrl could not start\n"); ++ } ++ break; ++ } + + return 0; + } Index: pkg/PLIST =================================================================== RCS file: /cvs/ports/multimedia/xine-lib/pkg/PLIST,v retrieving revision 1.30 diff -u -p -u -p -r1.30 PLIST --- pkg/PLIST 13 Mar 2022 13:55:09 -0000 1.30 +++ pkg/PLIST 25 Jul 2024 19:53:13 -0000 @@ -91,6 +91,7 @@ lib/xine/plugins/${XINEAPI_REV}/post/ @so lib/xine/plugins/${XINEAPI_REV}/xineplug_dmx_slave.so @so lib/xine/plugins/${XINEAPI_REV}/xineplug_dmx_video.so @so lib/xine/plugins/${XINEAPI_REV}/xineplug_flac.so +@so lib/xine/plugins/${XINEAPI_REV}/xineplug_hw_frame_vaapi.so @so lib/xine/plugins/${XINEAPI_REV}/xineplug_inp_bluray.so @so lib/xine/plugins/${XINEAPI_REV}/xineplug_inp_cdda.so @so lib/xine/plugins/${XINEAPI_REV}/xineplug_inp_crypto.so @@ -105,6 +106,8 @@ lib/xine/plugins/${XINEAPI_REV}/post/ @so lib/xine/plugins/${XINEAPI_REV}/xineplug_nsf.so @so lib/xine/plugins/${XINEAPI_REV}/xineplug_sputext.so @so lib/xine/plugins/${XINEAPI_REV}/xineplug_tls_openssl.so +@so lib/xine/plugins/${XINEAPI_REV}/xineplug_va_display_drm.so +@so lib/xine/plugins/${XINEAPI_REV}/xineplug_va_display_x11.so @so lib/xine/plugins/${XINEAPI_REV}/xineplug_vdr.so @so lib/xine/plugins/${XINEAPI_REV}/xineplug_vo_gl_egl_x11.so @so lib/xine/plugins/${XINEAPI_REV}/xineplug_vo_gl_glx.so @@ -112,6 +115,7 @@ lib/xine/plugins/${XINEAPI_REV}/post/ @so lib/xine/plugins/${XINEAPI_REV}/xineplug_vo_out_opengl2.so @so lib/xine/plugins/${XINEAPI_REV}/xineplug_vo_out_raw.so @so lib/xine/plugins/${XINEAPI_REV}/xineplug_vo_out_sdl.so +@so lib/xine/plugins/${XINEAPI_REV}/xineplug_vo_out_vaapi.so @so lib/xine/plugins/${XINEAPI_REV}/xineplug_vo_out_xcbshm.so @so lib/xine/plugins/${XINEAPI_REV}/xineplug_vo_out_xcbxv.so @so lib/xine/plugins/${XINEAPI_REV}/xineplug_vo_out_xshm.so