[FFmpeg-devel] [PATCH, v3] lavf/vf_vpp_qsv: add support for QSV transpose filter

Li, Zhong zhong.li at intel.com
Sun Jul 14 14:32:32 EEST 2019


> From: ffmpeg-devel [mailto:ffmpeg-devel-bounces at ffmpeg.org] On Behalf
> Of Linjie Fu
> Sent: Thursday, July 11, 2019 1:58 AM
> To: ffmpeg-devel at ffmpeg.org
> Cc: Fu, Linjie <linjie.fu at intel.com>
> Subject: [FFmpeg-devel] [PATCH, v3] lavf/vf_vpp_qsv: add support for QSV
> transpose filter
> 
> Add transpose support for qsv_vpp with rotate and hflip:
>     - rotate: [0, 3] support clockwise rotation of 0, 90, 180, 270;
>     - hflip:  [0, 1] support horizontal flip;
> 
> Configure with:
> {"cclock_hflip","clock","cclock","clock_hflip","reversal","hflip","vflip"}
> 
> Limitation:
>     If pipeline contains resize, mirroring and other, VPP skips other filters in
> MSDK when IOPattern equals d3d->d3d. So "cclock_hflip, clock_hflip, vflip"
> will not work in d3d->d3d condition.
> 
> This pr is fixing this:
> https://github.com/Intel-Media-SDK/MediaSDK/pull/1491
> 
> CMD:
> ffmpeg -hwaccel qsv -c:v h264_qsv -i input.h264
>     -vf 'format=qsv,vpp_qsv=transpose=clock' -c:v h264_qsv output.h264

Tested:
ffmpeg -hwaccel qsv -c:v h264_qsv -i ~/bbb_sunflower_1080p_30fps_normal.mp4 -vframes 100 -vf 'format=qsv,vpp_qsv=transpose=cclock_hflip' -c:v h264_qsv ch.mp4
Both Skylake and KBL failed:

[Parsed_vpp_qsv_1 @ 0x5581aaf16080] Failed to create a qsvvpp, ret = -15.
[Parsed_vpp_qsv_1 @ 0x5581aaf16080] Failed to configure output pad on Parsed_vpp_qsv_1
Error reinitializing filters!
Failed to inject frame into filter network: Block device required
Error while processing the decoded data for stream #0:0



More information about the ffmpeg-devel mailing list