1

I am trying to flip 180 degrees parts of a video file from action camera. When i was using

"[clpABCD][clpEF][clpG]concat[out1]" -" instead of "[clpABCD][clpEFG]concat[out1]" -"

ffmpeg said Too many inputs specified for the "concat" filter !!!! Why?

ffmpeg -i video_output_02.avi -filter_complex \
  "[0:v]trim=start=0:duration=516[clpA];\
   [0:v]trim=start=516:duration=1,setpts=PTS-STARTPTS[clpB];\
   [clpB]vflip, hflip[clpBf];\
   [clpA][clpBf]concat[clpAB];\
   [0:v]trim=start=517:duration=1204,setpts=PTS-STARTPTS[clpC];\
   [0:v]trim=start=1721:duration=155,setpts=PTS-STARTPTS[clpD];\
   [clpD]vflip, hflip[clpDf];\
   [clpC][clpDf]concat[clpCD];\
   [clpAB][clpCD]concat[clpABCD];\
   [0:v]trim=start=1876:duration=581,setpts=PTS-STARTPTS[clpE];\
   [0:v]trim=start=2457:duration=24,setpts=PTS-STARTPTS[clpF];\
   [clpF]vflip, hflip[clpFf];\
   [clpE][clpFf]concat[clpEF];\
   [0:v]trim=start=2481:duration=253,setpts=PTS-STARTPTS[clpG];\
   [clpABCD][clpEF][clpG]concat[out1]" -map [out1]  -crf 14  -vcodec libx264  -vb 20M  Hflip_2.mp4
ffmpeg version 4.2.3 Copyright (c) 2000-2020 the FFmpeg developers
  built with gcc 7 (Ubuntu 7.5.0-3ubuntu1~18.04)
  configuration: --enable-gpl --enable-libx264 --enable-libvpx --enable-libmp3lame --enable-libopus
  libavutil      56. 31.100 / 56. 31.100
  libavcodec     58. 54.100 / 58. 54.100
  libavformat    58. 29.100 / 58. 29.100
  libavdevice    58.  8.100 / 58.  8.100
  libavfilter     7. 57.100 /  7. 57.100
  libswscale      5.  5.100 /  5.  5.100
  libswresample   3.  5.100 /  3.  5.100
  libpostproc    55.  5.100 / 55.  5.100
Input #0, avi, from 'video_output_02.avi':
  Metadata:
    encoder         : Lavf58.29.100
  Duration: 00:45:34.41, start: 0.000000, bitrate: 22653 kb/s
    Stream #0:0: Video: h264 (High) (H264 / 0x34363248), yuvj420p(pc, progressive), 1280x720 [SAR 1521:1520 DAR 169:95], 22649 kb/s, 32 fps, 32 tbr, 32 tbn, 64 tbc
[AVFilterGraph @ 0x564f261d9340] Too many inputs specified for the "concat" filter.



ffmpeg -i video_output_02.avi -filter_complex \
 "[0:v]trim=start=0:duration=516[clpA];\
  [0:v]trim=start=516:duration=1,setpts=PTS-STARTPTS[clpB];\
  [clpB]vflip, hflip[clpBf];\
  [clpA][clpBf]concat[clpAB];\
  [0:v]trim=start=517:duration=1204,setpts=PTS-STARTPTS[clpC];\
  [0:v]trim=start=1721:duration=155,setpts=PTS-STARTPTS[clpD];\
  [clpD]vflip, hflip[clpDf];\
  [clpC][clpDf]concat[clpCD];\
  [clpAB][clpCD]concat[clpABCD];\
  [0:v]trim=start=1876:duration=581,setpts=PTS-STARTPTS[clpE];\
  [0:v]trim=start=2457:duration=24,setpts=PTS-STARTPTS[clpF];\
  [clpF]vflip, hflip[clpFf];\
  [clpE][clpFf]concat[clpEF];\
  [0:v]trim=start=2481:duration=253,setpts=PTS-STARTPTS[clpG];\
  [clpEF][clpG]concat[clpEFG];\
  [clpABCD][clpEFG]concat[out1]" -map [out1]  -crf 14  -vcodec libx264  -vb 20M  Hflip_2.mp4

The command that "is working"

ffmpeg -i video_output_02.avi -filter_complex \
 "[0:v]trim=start=0:duration=516[clpA];\
  [0:v]trim=start=516:duration=1,setpts=PTS-STARTPTS[clpB];\
  [clpB]vflip, hflip[clpBf];\
  [clpA][clpBf]concat[clpAB];\
  [0:v]trim=start=517:duration=1204,setpts=PTS-STARTPTS[clpC];\
  [0:v]trim=start=1721:duration=155,setpts=PTS-STARTPTS[clpD];\
  [clpD]vflip, hflip[clpDf];\
  [clpC][clpDf]concat[clpCD];\
  [clpAB][clpCD]concat[clpABCD];\
  [0:v]trim=start=1876:duration=581,setpts=PTS-STARTPTS[clpE];\
  [0:v]trim=start=2457:duration=24,setpts=PTS-STARTPTS[clpF];\
  [clpF]vflip, hflip[clpFf];\
  [clpE][clpFf]concat[clpEF];\
  [0:v]trim=start=2481:duration=253,setpts=PTS-STARTPTS[clpG];\
  [clpEF][clpG]concat[clpEFG];\
  [clpABCD][clpEFG]concat[out1]" -map [out1]  -crf 14  -vcodec libx264  -vb 20M  Hflip_2.mp4
1

The concat filter has an option to set no. of inputs. Its default value is 2.

Change to [clpABCD][clpEF][clpG]concat=n=3[out1].

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.