[FFmpeg-user] ffmpeg failed to convert between the formats using VAAPI with Intel GPU when decode streams

Carl Eugen Hoyos ceffmpeg at gmail.com
Sun May 12 13:47:31 EEST 2019

Am So., 12. Mai 2019 um 12:01 Uhr schrieb Davie Kim <chuanglan818 at outlook.com>:
> Hi, I am using vaapi with Intel GPU(Iris Pro Graphics P580) to decode/encode streams,
> but failed with the following message listed as 4,please give me some advice to help solve this。
> 1、 ffmpeg command:
> ffmpeg -init_hw_device  vaapi=intel:/dev/dri/renderD128 -hwaccel_device intel -filter_hw_device intel  -hwaccel vaapi   \
> -i ${overlay} \
> -i ${pic1} \
> -filter_complex " \
> [1:v] setpts=PTS-STARTPTS,setsar=sar=1/1,split [p1-lay][p2-lay];\
> color=c=white:s=${width}x${height},split[p1-back][p2-back];\
> [p1-back] trim=start_frame=0:end_frame=284 [p1-back];\
> [p1-lay] trim=start_frame=0:end_frame=284, scale=w='if(gte(iw/ih,${p1_w}/${p1_h}),-1,${p1_w})':h='if(gte(iw/ih,${p1_w}/${p1_h}),${p1_h},-1)',crop=${p1_w}:${p1_h}[p1-lay];\
> [p1-back][p1-lay] overlay=x=${p1_x}:y=${p1_y},fade=t=out:s=275:n=10:c=white[p1];\
> [p2-back] trim=start_frame=0:end_frame=102 [p2-back];\
> [p2-lay] trim=start_frame=0:end_frame=102, scale=w='if(gte(iw/ih,${p2_w}/${p2_h}),-1,${p2_w})':h='if(gte(iw/ih,${p2_w}/${p2_h}),${p2_h},-1)',crop=${p2_w}:${p2_h}[p2-lay];\
> [p2-back][p2-lay] overlay=x=${p2_x}:y=${p2_y},fade=t=in:s=0:n=20:c=white[p2];\
> [p1][p2] concat=2[base];\
> [base][0:v] overlay
> " -i ${audio} -c:v h264_vaapi -movflags faststart  -c:a libfdk_aac   $output 2>>$err

Please test current FFmpeg git head (nothing else is supported here),
simplify your
command line and remove the variables if it still fails.
(There may be a "format" filter missing but above is quite complex.)

Carl Eugen

More information about the ffmpeg-user mailing list