[Mesa-dev] [PATCH] st/va: add dst rect to avoid scale on deint

Leo Liu leo.liu at amd.com
Fri Sep 29 12:22:10 UTC 2017



On 09/29/2017 07:40 AM, Andy Furniss wrote:
> Leo Liu wrote:
>>
>>
>> On 2017-09-29 06:04 AM, Andy Furniss wrote:
>>> Leo Liu wrote:
>>>> For 1080p video transcode, the height will be scaled to 1088 when 
>>>> deint
>>>> to progressive buffer. Set dst rect to make sure no scale.
>>>>
>>>> Fixes: 3ad8687 "st/va: use new vl_compositor_yuv_deint_full() to 
>>>> deint"
>>>
>>> Probably my test cases are lacking, but I can't see and difference 
>>> with this. Do you have an example?
>> something like below, only transcode without postproc case.
>>
>> `ffmpeg -y -vaapi_device /dev/dri/card0  -i 1080_in.mp4 -frames 100 
>> -an -vf 'format=nv12|vaapi,hwupload'  -c:v h264_vaapi -profile:v 578 
>> -bf 0 1080_out.mkv`
>
> Ahh, software decode, I did check that but I was looking for a 
> permanent thing - the first 2 frames swdec are 1088 with ffmpeg - 
> quite hard to see.
>
Yes. Indeed.

> Gstreamer must use more buffers or something as when it does this it 
> bounces up and down over more frames before settling, so is more obvious.
> Maybe that's how it manages to get dual instance speed, where ffmpeg 
> only seems to get single instance speed.
Normally, we need more buffers to queue up if the engine is fast enough.

Can I have your RB or AB for the fix?

Thanks,
Leo


>
> With both it doesn't show with hardware decode.



More information about the mesa-dev mailing list