[Libva] vdpau-driver/git patches re: build fails @ PFNGLMULTITEXCOORD2FPROC & VAEncH264VUIBufferType/VAEncH264SEIBufferType

Gwenole Beauchesne gb.devel at gmail.com
Wed Jul 3 10:01:40 PDT 2013


Hi,

Yes, sorry, I need to update the vdpau-driver with other patches too.
That will tend to be the only "other" VA driver to be maintained. I
essentially don't plan to update the xvba-driver as (i) I don't have
the machine in a working state for a very long time, and (ii) it's
totally obsolete now that you have Open Source implementations.

Thanks,
Gwenole.

2013/7/1  <darx at sent.com>:
> Hi,
>
> Lost my thread entry from earlier posts :-(   Following up here to kill
> two birds with one stone:
>
> Building vdpau-driver/git
>
>         cd vdpau-driver
>         git log | head - n 7
>                 ==> standard input <==
>                 commit 3dda0b4f6f5a106cb8f601996313f306e38db362
>                 Author: Gwenole Beauchesne
>                 <gwenole.beauchesne at intel.com>
>                 Date:   Fri Oct 5 17:01:20 2012 +0200
>
>                     Bump version for development.
>
>         ./autogen.sh
>         make clean
>         ./configure \
>          --enable-shared --disable-static \
>          --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
>
> fails @ "unknown type name 'PFNGLMULTITEXCOORD2FPROC'"
>
>         make
>
>                 ...
>                 In file included from vdpau_video_glx.h:26:0,
>                                  from vdpau_driver.c:32:
>                 utils_glx.h:163:5: error: unknown type name
>                 'PFNGLMULTITEXCOORD2FPROC'
>                      PFNGLMULTITEXCOORD2FPROC
>                      gl_multi_tex_coord_2f;
>                      ^
>                 make[2]: *** [vdpau_driver.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
>
> applying patch as from
>
>                 https://bugs.gentoo.org/show_bug.cgi?id=438180
>                 https://gitorious.org/vaapi/gstreamer-vaapi/commit/5db2e93d3c930fd8470cfdcd26f514d1cebc59a0/diffs
>
>         cat /usr/local/src/patch.1.vdpau_driver
>                 ---------------------------------------------
>                 --- src/utils_glx.h.ORIG        2013-07-01
>                 06:59:12.291746235 -0700
>                 +++ src/utils_glx.h     2013-07-01 07:29:20.440386634
>                 -0700
>                 @@ -48,6 +48,14 @@
>                  typedef void (*PFNGLXRELEASETEXIMAGEEXTPROC)(Display *,
>                  GLXDrawable, int);
>                  #endif
>
>                 +#if GL_GLEXT_VERSION >= 85
>                 +/* XXX: PFNGLMULTITEXCOORD2FPROC got out of the
>                 GL_VERSION_1_3_DEPRECATED
>                 +block and is not defined if GL_VERSION_1_3 is defined
>                 in <GL/gl.h>
>                 +Redefine the type here as an interim solution */
>                 +typedef void (*PFNGLMULTITEXCOORD2FPROC) (GLenum
>                 target, GLfloat s, GLfloat t);
>                 +#endif
>                 +
>                 +
>                  #ifndef GL_FRAMEBUFFER_BINDING
>                  #define GL_FRAMEBUFFER_BINDING
>                  GL_FRAMEBUFFER_BINDING_EXT
>                  #endif
>                 ---------------------------------------------
>
>         patch -p0 < /usr/local/src/patch.1.vdpau_driver
>
> make fails now @,
>
>         make
>                 ...
>                 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
>
> this is fixed by,
>
>         cat /usr/local/src/patch.2.vdpau_driver
>                 ---------------------------------------------
>                 --- src/vdpau_dump.c.ORIG       2013-07-01
>                 07:41:00.199815579 -0700
>                 +++ src/vdpau_dump.c    2013-07-01 07:41:45.517929765
>                 -0700
>                 @@ -59,8 +59,8 @@
>                          _(VAEncSequenceParameterBufferType);
>                          _(VAEncPictureParameterBufferType);
>                          _(VAEncSliceParameterBufferType);
>                 -        _(VAEncH264VUIBufferType);
>                 -        _(VAEncH264SEIBufferType);
>                 +//         _(VAEncH264VUIBufferType);
>                 +//         _(VAEncH264SEIBufferType);
>                  #endif
>                  #if VA_CHECK_VERSION(0,31,1)
>                          _(VAQMatrixBufferType);
>                 ---------------------------------------------
>
>         patch -p0 < /usr/local/src/patch.2.vdpau_driver
>
> now,
>
>         make
>
> completes OK
>
>         ls -al vdpau-driver/src/.libs/vdpau_drv_video.so
>                 -rwxrwxr-x+ 1 root root 122K Jul  1 07:44
>                 vdpau_drv_video.so*
>
> _______________________________________________
> Libva mailing list
> Libva at lists.freedesktop.org
> http://lists.freedesktop.org/mailman/listinfo/libva


More information about the Libva mailing list