[Libva] Multiple vaapi context

Gwenole Beauchesne gbeauchesne at splitted-desktop.com
Mon Jan 24 01:30:03 PST 2011


Hi,

On Wed, 19 Jan 2011, Varun Dua wrote:

> I am using FFMpeg and libva for getting hardware acceleration for my h.264 videos. With one H.264 stream everything is fine, but with two parallel H.264
> stream videos I am having a problem. I am creating two FFMpeg contexts (AVCodecContext, AVFormatContext etc) and two vaapi context but I am having
> problem with that. The errors that come are:
> 
> VdpOutputSurfaceCreate(): status 25: A catch-all error, used when no other error code applies.
> 
> vdpau_video: VdpPresentationQueueBlockUntilSurfaceIdle(): status 3: An invalid handle value was provided.

Please provide a self-contained testcase. It's hard to tell otherwise 
since the NVIDIA driver would return this kind of error when none other 
fits.

> Also is there any way before we can know whether these error will come or not, actual decoding the frame (i.e. before calling avcodec_decode_video2 or
> calling vaPutSurface)

VdpPresentationQueueBlockUntilSurfaceIdle() is used for vaPutSurface() 
implementation. If you use 0.7.x series, could you please also check 
whether prefixing your application with VDPAU_VIDEO_PUTSURFACE_FAST=0 
makes a difference or not?

Thanks,
Gwenole.


More information about the Libva mailing list