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: [email protected] [mailto:[email protected]] On Behalf Of Oleksiy Krivoshey Sent: Saturday, November 06, 2010 3:51 PM To: [email protected] Subject: Re: [Libva] using TFP on intel On 4 November 2010 12:31, Gwenole Beauchesne <[email protected]> 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 [email protected] http://lists.freedesktop.org/mailman/listinfo/libva _______________________________________________ Libva mailing list [email protected] http://lists.freedesktop.org/mailman/listinfo/libva
