[FFmpeg-devel] [PATCH] lavc/vc1dec: add multi-slice decoding support for hwaccel.

Mark Thompson sw at jkqxz.net
Wed Nov 16 00:21:18 EET 2016


On 15/11/16 12:07, Hendrik Leppkes wrote:
> On Tue, Nov 15, 2016 at 1:39 AM, Hendrik Leppkes <h.leppkes at gmail.com> wrote:
>> On Tue, Nov 15, 2016 at 1:19 AM, Carl Eugen Hoyos <ceffmpeg at gmail.com> wrote:
>>> 2016-11-14 23:47 GMT+01:00 James Almer <jamrial at gmail.com>:
>>>
>>>> but vc1_sa10143 fails using DXVA2 and a recent driver.
>>>
>>> I suspect it actually passes with DXVA2: FFmpeg is not
>>> bit-exact for vc1.
>>
>> Looks like you are right, thats the hashes I get as well.
>>
>> In any case, I have a working WIP patch that fixes sa10091 and sa20021
>> with DXVA2, which were broken before.
>> I'll clean it up tomorrow and send it for testing.
>>
>> Unfortunately I don't have a sample for field mode with slices, so
>> that remains un-implemented. If someone comes across such a thing,
>> that would be nice to have.
>>
> 
> Here is my current work in progress:
> https://github.com/Nevcairiel/FFmpeg/commits/vc1slices
> 
> It fixes sa10091 and sa20021 on NVIDIA with DXVA2 for me. Note that
> sa10143 breakage is from the software decoder not being bitexact, and
> not a hwaccel failure (it doesn't even use slices).
> 
> Appreciate any testing on other hardware or on VAAPI/VDPAU.

Sample:                  SA00040     SA10143     ism
                             SA00050     SA20021
                                 SA10091     ilaced_twomv
Without patch:
Polaris 11    VDPAU      p   p   p   p*  p   p*  p
              VAAPI      p   p   p   f   p   f   p
Skylake GT2   VAAPI      p   p   f   n   f   n   p

With patch:
Polaris 11    VDPAU      p   p   p   p*  p   p*  p
              VAAPI      p   p   f   f   f   f   p
Skylake GT2   VAAPI      p   p   p   n   p   n   p

p  = passes the fate test
p* = fail (output looks sensible and matches hashes Carl posted elsewhere in this thread)
f  = fail (output produced but is totally incorrect)
n  = fail (no output - fails to decode at all)


- Mark



More information about the ffmpeg-devel mailing list