[Libva] vdpau-driver/git build fails @ "'VAEncH264VUIBufferType' undeclared"

darx at sent.com darx at sent.com
Wed Jun 12 14:15:38 PDT 2013


hi,

i'm building a new git pull of vaapi/vdpau-driver from git src (trying
to work around some downstream issues in XBMC + vdpau, etc),

	cd vdpau-driver
	git branch -a | head -n 3
		* master
		  remotes/origin/HEAD -> origin/master
		  remotes/origin/master

	git log | head -n 10
		commit 3dda0b4f6f5a106cb8f601996313f306e38db362
		Author: Gwenole Beauchesne
		<gwenole.beauchesne at intel.com>
		Date:   Fri Oct 5 17:01:20 2012 +0200    
		<===================== STALE ?

		    Bump version for development.

		commit 9946bf33c04933b2171aac4443c719c655028218
		Author: Gwenole Beauchesne
		<gwenole.beauchesne at intel.com>
		Date:   Fri Oct 5 15:55:55 2012 +0200


	cat README
		...
		Requirements
		------------

		libVA API version (not package) GLX support MPEG-4
		support
		0.29-branch >= 0.29.0-sds8  No      No
		0.30-branch >= 0.30.0-sds1  No      No
		0.30-branch >= 0.30.4-sds5  Yes     No
		upstream 0.31-branch        No      No
		0.31-branch >= 0.31.0-sds1  Yes     No
		0.31-branch >= 0.31.0-sds4  Yes     Yes
		...

checking,

	cd libva
	git branch -a | head -n 3
	* master
	  remotes/origin/HEAD -> origin/master
	  remotes/origin/libva30

	git log | head -n 10
		commit ffb82f3a85e424b869c2c1ce48251b3305e2cd61
		Author: Gwenole Beauchesne
		<gwenole.beauchesne at intel.com>
		Date:   Mon May 27 19:27:36 2013 +0200

		    tests: cope with new vaQuerySurfaceAttributes() API.
		    
		    Also factor the code to check whether a specific
		    image format or
		    surface attribute exists. Cache the list of
		    supported image formats
		    and surface attributes.

	vainfo
		libva info: VA-API version 0.34.0

which is a more recent API than listed in the Req'ts

	cd vdpau-driver
	unset LIBVA_DRIVERS_PATH
	./autogen.sh
	./configure \
	 --enable-shared --disable-static \
	 --libdir=/usr/local/lib64 \
	 --with-sysroot=/usr/local/lib64 \
	 --enable-glx \
	 --enable-tracer \
	 --with-gnu-ld

		libva-vdpau-driver configuration summary:

		VA-API version ................... : 0.34.0   
		<=====================
		VA-API drivers path .............. :
		/usr/local/lib64/dri
		VDPAU version .................... : 1
		VDPAU/MPEG-4 support ............. : yes
		GLX support ...................... : yes

`make` fails @

	make
		...
		Making all in debian.upstream
		make[1]: Entering directory
		`/usr/local/src/vdpau-driver/debian.upstream'
		sed \
		  -e 's|\@PACKAGE_VERSION\@|0.7.5.pre1|' \
		  -e 's|\@LIBVA_PACKAGE_VERSION\@|1.0.9|' \
		  -e 's|\@LIBVA_DRIVERS_PATH\@|/usr/local/lib64/dri|' \
		  -e 's|\@DATE\@|'"`LC_ALL=C date +'%a, %d %b %Y %X
		  %z'`"'|' \
		  changelog.in > changelog
		sed \
		  -e 's|\@PACKAGE_VERSION\@|0.7.5.pre1|' \
		  -e 's|\@LIBVA_PACKAGE_VERSION\@|1.0.9|' \
		  -e 's|\@LIBVA_DRIVERS_PATH\@|/usr/local/lib64/dri|' \
		  -e 's|\@DATE\@|'"`LC_ALL=C date +'%a, %d %b %Y %X
		  %z'`"'|' \
		  control.in > control
		sed \
		  -e 's|\@PACKAGE_VERSION\@|0.7.5.pre1|' \
		  -e 's|\@LIBVA_PACKAGE_VERSION\@|1.0.9|' \
		  -e 's|\@LIBVA_DRIVERS_PATH\@|/usr/local/lib64/dri|' \
		  -e 's|\@DATE\@|'"`LC_ALL=C date +'%a, %d %b %Y %X
		  %z'`"'|' \
		  libva-vdpau-driver.install.in >
		  libva-vdpau-driver.install
		make[1]: Leaving directory
		`/usr/local/src/vdpau-driver/debian.upstream'
		Making all in src
		make[1]: Entering directory
		`/usr/local/src/vdpau-driver/src'
		make  all-am
		make[2]: Entering directory
		`/usr/local/src/vdpau-driver/src'
		  CC       debug.lo
		  CC       object_heap.lo
		  CC       uasyncqueue.lo
		  CC       ulist.lo
		  CC       uqueue.lo
		  CC       utils.lo
		  CC       vdpau_buffer.lo
		  CC       vdpau_decode.lo
		  CC       vdpau_driver.lo
		  CC       vdpau_dump.lo
		vdpau_dump.c: In function 'string_of_VABufferType':
		vdpau_dump.c:62:11: error: 'VAEncH264VUIBufferType'
		undeclared (first use in this function)
		         _(VAEncH264VUIBufferType);
		           ^
		vdpau_dump.c:45:19: note: in definition of macro '_'
		 #define _(X) case X: str = #X; break
		                   ^
		vdpau_dump.c:62:11: note: each undeclared identifier is
		reported only once for each function it appears in
		         _(VAEncH264VUIBufferType);
		           ^
		vdpau_dump.c:45:19: note: in definition of macro '_'
		 #define _(X) case X: str = #X; break
		                   ^
		vdpau_dump.c:63:11: error: 'VAEncH264SEIBufferType'
		undeclared (first use in this function)
		         _(VAEncH264SEIBufferType);
		           ^
		vdpau_dump.c:45:19: note: in definition of macro '_'
		 #define _(X) case X: str = #X; break
		                   ^
		make[2]: *** [vdpau_dump.lo] Error 1
		make[2]: Leaving directory
		`/usr/local/src/vdpau-driver/src'
		make[1]: *** [all] Error 2
		make[1]: Leaving directory
		`/usr/local/src/vdpau-driver/src'
		make: *** [all-recursive] Error 1

which, iiuc, has to do with:

	[Libva] [PATCH 3/7] vatrace: API: drop H.264 specific VA buffer
	types.
	  http://www.mail-archive.com/libva@lists.freedesktop.org/msg01558.html

to avoid this error, do I need to

	(1) drop back to an earlier libva API version?

or

	(2) find updated vdpau-driver code?

darx


More information about the Libva mailing list