[Libva] using TFP on intel

Xiang, Haihao haihao.xiang at intel.com
Sat Nov 6 06:52:23 PDT 2010


We also suffered from this issue. It seems this is caused by mesa. -vo vaapi:gl works for me if I use mesa_7_7 branch, and it breaks playback if I use master branch.
However currently I have no time to figure out which is the bad commit.

Thanks
Haihao
 


-----Original Message-----
From: libva-bounces+haihao.xiang=intel.com at lists.freedesktop.org [mailto:libva-bounces+haihao.xiang=intel.com at lists.freedesktop.org] On Behalf Of Oleksiy Krivoshey
Sent: Saturday, November 06, 2010 3:51 PM
To: libva at lists.freedesktop.org
Subject: Re: [Libva] using TFP on intel

On 4 November 2010 12:31, Gwenole Beauchesne
<gbeauchesne at splitted-desktop.com> wrote:
>
> mplayer -vo vaapi:gl:tfp uses vaPutSurface() to a Pixmap and then the
> GLX_EXT_texture_from_pixmap to bind it to an OpenGL texture.
>
> mplayer -vo vaapi:gl uses vaCopySurfaceGLX() to render a VA surface to an
> OpenGL texture, wrapped into a VA/GLX surface.
>
> The latter approach (VA/GLX) is preferable for OpenGL applications because
> some VA drivers don't support rendering to a Pixmap but do support direct
> rendering to an OpenGL texture instead.
>
> Do you mean that mplayer -vo vaapi:gl:tfp works but mplayer -vo vaapi:gl
> does *not* work? Current libva 1.0.5 should just work as is. Or do you have
> performance problems with either code path?
>

Thanks you for details! I've got an intel core i3 box running ubuntu
10.10, libva i'm using is compiled from git sources (i guess it is
1.0.6), vainfo reports the following

libva: libva version 0.31.1
libva: va_getDriverName() returns 0
libva: Trying to open /usr/lib/dri/i965_drv_video.so
libva: va_openDriver() returns 0
vainfo: VA API version: 0.31
vainfo: Driver version: i965 Driver 0.1
vainfo: Supported profile and entrypoints
      VAProfileMPEG2Simple            :	VAEntrypointVLD
      VAProfileMPEG2Main              :	VAEntrypointVLD
      VAProfileH264Baseline           :	VAEntrypointVLD
      VAProfileH264Main               :	VAEntrypointVLD
      VAProfileH264High               :	VAEntrypointVLD


yes, you are right - i can play 1080p h264 video just fine with  -vo
vaapi:gl:tfp, with only 4-5% of CPU usage but when i use  -vo vaapi:gl
i've got broken playback - like displaying a still frame for 3-4
seconds, the jumping through all this time to next frame, displaying
it again for 3-4 seconds and so on (cpu usage is still low). XBMC
media center (that is using vaapi with ffmpeg) also plays video in a
broken way (mostly the same as described) and I thought I can
implement mplayer style TFP playback in XBMC as a temporary solution..
Just wanted to understand why mplayer explicit TFP usage option plays
perfectly while TFP solution in libva glx doesn't while the code looks
similar - is this because of extra FBO operations?.


-- 
Oleksiy
_______________________________________________
Libva mailing list
Libva at lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/libva


More information about the Libva mailing list