[FFmpeg-devel] [PATCH] vp9: add hwaccel hooks

Hendrik Leppkes h.leppkes at gmail.com
Thu Dec 3 21:26:56 CET 2015


On Thu, Dec 3, 2015 at 6:17 PM, Ronald S. Bultje <rsbultje at gmail.com> wrote:
> Hi,
>
> On Thu, Dec 3, 2015 at 11:29 AM, Hendrik Leppkes <h.leppkes at gmail.com>
> wrote:
>
>> On Thu, Dec 3, 2015 at 5:21 PM, Ronald S. Bultje <rsbultje at gmail.com>
>> wrote:
>> > Hi,
>> >
>> > On Thu, Dec 3, 2015 at 4:55 AM, Hendrik Leppkes <h.leppkes at gmail.com>
>> wrote:
>> >
>> >> +    if (s->pix_fmt == AV_PIX_FMT_YUV420P) {
>> >>
>> > +#if CONFIG_VP9_DXVA2_HWACCEL
>> >> +        *fmtp++ = AV_PIX_FMT_DXVA2_VLD;
>> >> +#endif
>> >> +#if CONFIG_VP9_D3D11VA_HWACCEL
>> >> +        *fmtp++ = AV_PIX_FMT_D3D11VA_VLD;
>> >> +#endif
>> >> +    }
>> >
>> >
>> > So ... this suggests that hwaccels will ever only support 420, 8bpp. That
>> > may currently be true, but is that likely to hold forever? What happens
>> if
>> > we just do this regardless of pixfmt and let the hwaccel figure out if
>> the
>> > hw supports 420 or something else?
>> >
>>
>> At the very least the DXVA2 hwaccel spec is limited to profile 0, so
>> maybe it should even check the profile on top of this.
>> In general, there is some disagreement if other chroma formats should
>> use other hwaccel pixfmts, as the calling code can otherwise get
>> confused, as it may need special handling to handle other chroma
>> formats. However, since no hwaccel supports anything else yet (except
>> hevc, which can do 420 10-bit, but I didn't push that to ffmpeg yet),
>> it was not a real problem yet.
>
>
> I'm ok with deferring it until such hardware comes along I guess, so
> consider the comment ignorable...
>

Any comments on the vp9 changes themself? :)

Most of the changes are not very invasive, just some extra allocations
and error handling, the default hwaccel hooks, and whatnot.
I moved the reference frame check down as we discussed on IRC the
other day, so that it can happen after the decoder has been switched
into or out of HWAccel mode.

- Hendrik


More information about the ffmpeg-devel mailing list