Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 05 Jan 2011 06:24:57 +0300
From:      Anonymous <swell.k@gmail.com>
To:        freebsd-multimedia@freebsd.org
Subject:   multimedia/vlc + VDPAU
Message-ID:  <86zkrgniba.fsf@gmail.com>

next in thread | raw e-mail | index | archive | help
--=-=-=
Content-Type: text/plain

Anyone already working on it? If no one then can you test?

  1. install x11/nvidia-driver if you haven't yet
  2. install multimedia/vdpau-video
  3. install multimedia/ffmpeg with VAAPI enabled
  4. install multimedia/vlc with VAAPI enabled
  5. play a video file, e.g. vlc --ffmpeg-hw blah.mkv

Not sure if it even works as I've never used vlc.


--=-=-=
Content-Type: text/x-patch
Content-Disposition: attachment; filename=a.diff

Index: multimedia/Makefile
===================================================================
RCS file: /a/.cvsup/ports/multimedia/Makefile,v
retrieving revision 1.402
diff -u -p -r1.402 Makefile
--- multimedia/Makefile	3 Jan 2011 14:37:53 -0000	1.402
+++ multimedia/Makefile	5 Jan 2011 00:19:44 -0000
@@ -163,6 +163,7 @@
     SUBDIR += libtheora
     SUBDIR += libtuner
     SUBDIR += libv4l
+    SUBDIR += libva
     SUBDIR += libvdpau
     SUBDIR += libvpx
     SUBDIR += libxine
@@ -322,6 +323,7 @@
     SUBDIR += vcdimager
     SUBDIR += vcdpad
     SUBDIR += vcdtools
+    SUBDIR += vdpau-video
     SUBDIR += vdpauinfo
     SUBDIR += vlc
     SUBDIR += vodcatcher
Index: multimedia/ffmpeg/Makefile
===================================================================
RCS file: /a/.cvsup/ports/multimedia/ffmpeg/Makefile,v
retrieving revision 1.121
diff -u -p -r1.121 Makefile
--- multimedia/ffmpeg/Makefile	29 Dec 2010 21:41:36 -0000	1.121
+++ multimedia/ffmpeg/Makefile	5 Jan 2011 02:30:34 -0000
@@ -43,6 +43,7 @@ OPTIONS=	ALSA	"Enable alsa input/output 
 		SPEEX	"Speex audio decoder" off \
 		SSSE3	"Enable ssse3 support" on \
 		THEORA	"Theora encoder (implies OGG)" on \
+		VAAPI	"VAAPI decoder support" off \
 		VDPAU	"Nvidia vdpau support" off \
 		VORBIS	"Vorbis encoder via libvorbis (implies OGG)" on \
 		VP8	"VP8 codec via libvpx" on \
@@ -272,6 +273,14 @@ CONFIGURE_ARGS+=	--enable-libtheora
 CONFIGURE_ARGS+=	--disable-libtheora
 .endif
 
+# vaapi
+.ifndef(WITHOUT_VAAPI)
+LIB_DEPENDS+=	va.1:${PORTSDIR}/multimedia/libva
+CONFIGURE_ARGS+=	--enable-vaapi
+.else
+CONFIGURE_ARGS+=	--disable-vaapi
+.endif
+
 # vdpau
 .ifndef(WITHOUT_VDPAU)
 LIB_DEPENDS+=	vdpau.1:${PORTSDIR}/multimedia/libvdpau
Index: multimedia/libva/Makefile
===================================================================
RCS file: multimedia/libva/Makefile
diff -N multimedia/libva/Makefile
--- /dev/null	1 Jan 1970 00:00:00 -0000
+++ multimedia/libva/Makefile	4 Jan 2011 23:23:53 -0000
@@ -0,0 +1,46 @@
+# New ports collection makefile for:	libva
+# Date created:				5 Jan 2011
+# Whom:					foo
+#
+# $FreeBSD$
+#
+
+PORTNAME=	libva
+PORTVERSION=	1.0.6
+CATEGORIES=	multimedia
+MASTER_SITES=	http://cgit.freedesktop.org/${PORTNAME}/snapshot/
+
+MAINTAINER=	noreply@
+COMMENT=	VA API library
+
+BUILD_DEPENDS=	${LOCALBASE}/include/linux/videodev2.h:${PORTSDIR}/multimedia/v4l_compat
+LIB_DEPENDS=	drm.2:${PORTSDIR}/graphics/libdrm
+
+LICENSE=	MIT
+LICENSE_FILE=	${WRKSRC}/COPYING
+
+USE_BZIP2=	yes
+USE_XORG=	xext xfixes
+USE_GL=		gl
+USE_LDCONFIG=	yes
+USE_AUTOTOOLS=	aclocal autoheader automake autoconf libtoolize
+ACLOCAL_ARGS=	-I.
+AUTOMAKE_ARGS=	--add-missing
+
+.if !defined(WITH_DEBUG)
+CFLAGS+=	-DNDEBUG
+.else
+CFLAGS+=	-D_DEBUG
+.endif
+
+post-patch:	.SILENT
+	${REINPLACE_CMD} 's|$${libdir}/\(pkgconfig\)|$${prefix}/libdata/\1|' \
+		${WRKSRC}/configure.ac
+	${REINPLACE_CMD} 's/-ldl//' ${WRKSRC}/va/Makefile.am
+	${REINPLACE_CMD} 's/dummy.*LDFLAGS.*/& -Wl,-lc/' \
+		${WRKSRC}/dummy_drv_video/Makefile.am
+	${REINPLACE_CMD} -e 's/-pthread/${PTHREAD_LIBS}/' \
+		${WRKSRC}/i965_drv_video/Makefile.am \
+		${WRKSRC}/test/putsurface/Makefile.am
+
+.include <bsd.port.mk>
Index: multimedia/libva/distinfo
===================================================================
RCS file: multimedia/libva/distinfo
diff -N multimedia/libva/distinfo
--- /dev/null	1 Jan 1970 00:00:00 -0000
+++ multimedia/libva/distinfo	4 Jan 2011 21:27:36 -0000
@@ -0,0 +1,2 @@
+SHA256 (libva-1.0.6.tar.bz2) = becba4898fe4286eeefbd23f044639362c4f6066e74d3e2990999c27776d6e60
+SIZE (libva-1.0.6.tar.bz2) = 453303
Index: multimedia/libva/pkg-descr
===================================================================
RCS file: multimedia/libva/pkg-descr
diff -N multimedia/libva/pkg-descr
--- /dev/null	1 Jan 1970 00:00:00 -0000
+++ multimedia/libva/pkg-descr	4 Jan 2011 21:25:41 -0000
@@ -0,0 +1,6 @@
+The main motivation for VAAPI (Video Acceleration API) is to enable
+hardware accelerated video decode/encode at various entry-points (VLD,
+IDCT, Motion Compensation etc.) for the prevailing coding standards
+today (MPEG-2, MPEG-4 ASP/H.263, MPEG-4 AVC/H.264, and VC-1/VMW3).
+
+WWW:	http://freedesktop.org/wiki/Software/vaapi
Index: multimedia/libva/pkg-plist
===================================================================
RCS file: multimedia/libva/pkg-plist
diff -N multimedia/libva/pkg-plist
--- /dev/null	1 Jan 1970 00:00:00 -0000
+++ multimedia/libva/pkg-plist	4 Jan 2011 22:22:54 -0000
@@ -0,0 +1,47 @@
+bin/h264encode
+bin/mpeg2vldemo
+bin/putsurface
+bin/test_01
+bin/test_02
+bin/test_03
+bin/test_04
+bin/test_05
+bin/test_06
+bin/test_07
+bin/test_08
+bin/test_09
+bin/test_10
+bin/test_11
+bin/vainfo
+include/va/va.h
+include/va/va_backend.h
+include/va/va_backend_glx.h
+include/va/va_backend_tpi.h
+include/va/va_dri.h
+include/va/va_dri2.h
+include/va/va_dricommon.h
+include/va/va_dummy.h
+include/va/va_glx.h
+include/va/va_tpi.h
+include/va/va_version.h
+include/va/va_x11.h
+lib/dri/dummy_drv_video.la
+lib/dri/dummy_drv_video.so
+lib/libva-glx.la
+lib/libva-glx.so
+lib/libva-glx.so.1
+lib/libva-tpi.la
+lib/libva-tpi.so
+lib/libva-tpi.so.1
+lib/libva-x11.la
+lib/libva-x11.so
+lib/libva-x11.so.1
+lib/libva.la
+lib/libva.so
+lib/libva.so.1
+libdata/pkgconfig/libva-glx.pc
+libdata/pkgconfig/libva-tpi.pc
+libdata/pkgconfig/libva-x11.pc
+libdata/pkgconfig/libva.pc
+@dirrm include/va
+@dirrmtry lib/dri
Index: multimedia/libva/files/patch-i965_drv_video-Makefile.am
===================================================================
RCS file: multimedia/libva/files/patch-i965_drv_video-Makefile.am
diff -N multimedia/libva/files/patch-i965_drv_video-Makefile.am
--- /dev/null	1 Jan 1970 00:00:00 -0000
+++ multimedia/libva/files/patch-i965_drv_video-Makefile.am	4 Jan 2011 23:01:56 -0000
@@ -0,0 +1,13 @@
+--- i965_drv_video/Makefile.am~
++++ i965_drv_video/Makefile.am
+@@ -26,8 +26,8 @@ AM_CFLAGS = -Wall -I$(top_srcdir) -I$(to
+ 
+ i965_drv_video_la_LTLIBRARIES = i965_drv_video.la
+ i965_drv_video_ladir = @LIBVA_DRIVERS_PATH@
+-i965_drv_video_la_LDFLAGS = -module -avoid-version -no-undefined -Wl,--no-undefined @DRM_LIBS@ -ldrm_intel
+-i965_drv_video_la_LIBADD = ../va/libva-x11.la -lpthread
++i965_drv_video_la_LDFLAGS = -module -avoid-version -no-undefined -Wl,--no-undefined @DRM_LIBS@ -ldrm_intel -pthread
++i965_drv_video_la_LIBADD = ../va/libva-x11.la
+ 
+ i965_drv_video_la_SOURCES =	\
+ 	object_heap.c		\
Index: multimedia/libva/files/patch-test-putsurface-Makefile.am
===================================================================
RCS file: multimedia/libva/files/patch-test-putsurface-Makefile.am
diff -N multimedia/libva/files/patch-test-putsurface-Makefile.am
--- /dev/null	1 Jan 1970 00:00:00 -0000
+++ multimedia/libva/files/patch-test-putsurface-Makefile.am	4 Jan 2011 23:08:12 -0000
@@ -0,0 +1,13 @@
+--- test/putsurface/Makefile.am~	2011-01-05 02:07:32.000000000 +0300
++++ test/putsurface/Makefile.am	2011-01-05 02:07:54.000000000 +0300
+@@ -23,8 +23,9 @@
+ bin_PROGRAMS = putsurface
+ 
+ AM_CFLAGS = -I$(top_srcdir)/va -I$(top_srcdir)/src/x11
++AM_LDFLAGS = -pthread
+ 
+-TEST_LIBS = $(top_builddir)/va/$(libvabackendlib) -lpthread
++TEST_LIBS = $(top_builddir)/va/$(libvabackendlib)
+ 
+ putsurface_LDADD = $(TEST_LIBS)
+ putsurface_SOURCES = putsurface.c
Index: multimedia/vdpau-video/Makefile
===================================================================
RCS file: multimedia/vdpau-video/Makefile
diff -N multimedia/vdpau-video/Makefile
--- /dev/null	1 Jan 1970 00:00:00 -0000
+++ multimedia/vdpau-video/Makefile	5 Jan 2011 02:58:43 -0000
@@ -0,0 +1,43 @@
+# New ports collection makefile for:	vdpau-video
+# Date created:				5 Jan 2011
+# Whom:					foo
+#
+# $FreeBSD$
+#
+
+PORTNAME=	vdpau-video
+DISTVERSION=	0.7.3.pre2
+CATEGORIES=	multimedia
+MASTER_SITES=	http://www.splitted-desktop.com/~gbeauchesne/${PORTNAME}/
+
+MAINTAINER=	noreply@
+COMMENT=	VDPAU backend for VA API
+
+LIB_DEPENDS=	va.1:${PORTSDIR}/multimedia/libva \
+		vdpau.1:${PORTSDIR}/multimedia/libvdpau
+
+LICENSE=	GPLv2 GPLv3
+LICENSE_COMB=	dual
+LICENSE_FILE_GPLv2=${WRKSRC}/COPYING
+
+USE_GMAKE=	yes
+GNU_CONFIGURE=	yes
+
+.include <bsd.port.pre.mk>
+
+VDPAU_PTHREAD_LIBS!=${CC} -dumpspecs | ${GREP} -m 1 pthread: | ${SED} -e 's|^.*%{\!pg: %{pthread:|| ; s|}.*$$||' || ${TRUE}
+
+.if !defined(WITH_DEBUG)
+CONFIGURE_ARGS+=--disable-debug
+.endif
+
+post-patch:	.SILENT
+	${REINPLACE_CMD} -e '/LIBS/{ s/-ldl//; \
+		s/-lrt//; s/-lpthread/${PTHREAD_LIBS}/; }' \
+		-e 's|driverdir|& --define-variable prefix=${PREFIX}|' \
+		 ${WRKSRC}/configure
+	${REINPLACE_CMD} 's/^vdpau.*LDFLAGS.*/& \
+		-Wl,-lc ${VDPAU_PTHREAD_LIBS:S/^/-Wl,/}/' \
+		${WRKSRC}/src/Makefile.in
+
+.include <bsd.port.post.mk>
Index: multimedia/vdpau-video/distinfo
===================================================================
RCS file: multimedia/vdpau-video/distinfo
diff -N multimedia/vdpau-video/distinfo
--- /dev/null	1 Jan 1970 00:00:00 -0000
+++ multimedia/vdpau-video/distinfo	4 Jan 2011 22:31:22 -0000
@@ -0,0 +1,2 @@
+SHA256 (vdpau-video-0.7.3.pre2.tar.gz) = b51698e8f176f5ec18cc68ef583aea552e67640d9b6d21143a266e3bfb51ee58
+SIZE (vdpau-video-0.7.3.pre2.tar.gz) = 399979
Index: multimedia/vdpau-video/pkg-descr
===================================================================
RCS file: multimedia/vdpau-video/pkg-descr
diff -N multimedia/vdpau-video/pkg-descr
--- /dev/null	1 Jan 1970 00:00:00 -0000
+++ multimedia/vdpau-video/pkg-descr	4 Jan 2011 22:35:46 -0000
@@ -0,0 +1 @@
+VDPAU backend for VA API
Index: multimedia/vdpau-video/pkg-plist
===================================================================
RCS file: multimedia/vdpau-video/pkg-plist
diff -N multimedia/vdpau-video/pkg-plist
--- /dev/null	1 Jan 1970 00:00:00 -0000
+++ multimedia/vdpau-video/pkg-plist	4 Jan 2011 23:58:28 -0000
@@ -0,0 +1,4 @@
+lib/dri/nvidia_drv_video.so
+lib/dri/s3g_drv_video.so
+lib/dri/vdpau_drv_video.la
+lib/dri/vdpau_drv_video.so
Index: multimedia/vlc/Makefile
===================================================================
RCS file: /a/.cvsup/ports/multimedia/vlc/Makefile,v
retrieving revision 1.250
diff -u -p -r1.250 Makefile
--- multimedia/vlc/Makefile	30 Dec 2010 19:19:14 -0000	1.250
+++ multimedia/vlc/Makefile	5 Jan 2011 01:19:18 -0000
@@ -78,6 +78,7 @@ OPTIONS=	A52 "A52 DVD audio decoder" On 
 		TWOLAME "Twolame mpeg2 audio encoder support" On \
 		UPNP "Enable UPnP network device control" Off \
 		V4L "Enable Video for Linux & DVB support" On \
+		VAAPI "Support hardware decoding via VAAPI" off \
 		VCD "Video CD support" On \
 		VORBIS "Vorbis audio decoder support" On \
 		X264 "Enable H.264/AVC codec support" On \
@@ -139,6 +140,7 @@ WITHOUT_LUA=yes
 WITHOUT_QT4=yes
 WITH_RUNROOT=yes
 WITHOUT_V4L=yes
+WITHOUT_VAAPI=yes
 WITHOUT_XCB=yes
 .endif
 
@@ -605,6 +607,13 @@ BUILD_DEPENDS+=	v4l_compat>=1.0.20100321
 CONFIGURE_ARGS+=--enable-v4l --enable-dvb
 .endif
 
+.if defined(WITHOUT_VAAPI)
+CONFIGURE_ARGS+=--disable-libva
+.else
+LIB_DEPENDS+=	va.1:${PORTSDIR}/multimedia/libva
+CONFIGURE_ARGS+=--enable-libva
+.endif
+
 .if defined(WITHOUT_VCD)
 CONFIGURE_ARGS+=--disable-vcd --disable-libcddb
 .else

--=-=-=--



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?86zkrgniba.fsf>