[Libva] H264 BaseLine or Main Profile on VAAPI's VDPAU backend

Gwenole Beauchesne gbeauchesne at splitted-desktop.com
Wed Aug 26 09:09:37 PDT 2009


Hi,

On Mon, 24 Aug 2009, Max Müller wrote:

> Unfortunately i have no decoded picture output but the following output
> on console:
>    [h264 @ 0x9b3cae0]get_buffer() failed (0 1 2 (nil))
>    [h264 @ 0x9b3cae0]decode_slice_header error
>    [h264 @ 0x9b3cae0]no frame!

This means your AVCodecContext.get_buffer() is either missing or failing 
to return a correct AVFrame.

AVFrame.data[3] shall receive the VASurfaceID of a new surface.

For H.264, AVFrame.data[0] shall not be NULL but anything different from 
eachother AVFrame should fit. e.g. the VASurfaceID too or whatever pointer 
to private surface data.

> I think my problem is that i am using "High" profile and "Baseline" is
> not supported. Or could it be some other reason?

According to your profiles output, only "High" profile is indeed 
available.

Your probably have a profile mismatch. Don't hardcode the profile to 
VAProfileH264High. See e.g. VAProfile_from_imgfmt() from MPlayer/VAAPI 
sources. Select one profile and use that one for any function requesting a 
profile.

Regards,
Gwenole.


More information about the Libva mailing list