I tried to encode some video files, from GOPRO action camera. The whole fuzz is about two specific video files that the video orientation is 180 degree. Therefore, I thought to implement complex filter instead of the simpler syntax, in order to change the orientation to these video files, while, in the same time, to recode them into a single file, with specific parameters.
However, ffmpeg freezes my computer. I was able to press ctrl + C, in order to paste this output, if it is of any help, together with the ffmpeg command that I used to recode my gopro action camera video files.
Secondary question: Is there a better way to set seriarly the ffmpeg filters in filter_complex?
ffmpeg -f concat -safe 0 -i VIDEOFILES.txt -filter_complex \
> "[0:v] scale=1920:1080, fps=32, setpts=0.33*PTS, fifo [v1]; \
> [0:v] scale=1920:1080, fps=32, setpts=0.33*PTS, fifo [v2];
> [0:v] scale=1920:1080, fps=32, setpts=0.33*PTS, fifo [v3];
> [0:v] scale=1920:1080, fps=32, setpts=0.33*PTS, fifo [v4];
> [0:v] scale=1920:1080, fps=32, setpts=0.33*PTS, fifo [v5];
> [0:v] scale=1920:1080, fps=32, setpts=0.33*PTS, fifo [v6];
> [0:v] scale=1920:1080, fps=32, setpts=0.33*PTS, fifo [v7];
> [0:v] scale=1920:1080, fps=32, setpts=0.33*PTS, fifo [v8];
> [0:v] scale=1920:1080, fps=32, setpts=0.33*PTS, fifo [v9];
> [0:v] scale=1920:1080, fps=32, setpts=0.33*PTS, fifo [v10];
> [0:v] scale=1920:1080, fps=32, setpts=0.33*PTS, fifo [v11];
> [0:v] scale=1920:1080, fps=32, setpts=0.33*PTS, fifo [v12];
> [0:v] scale=1920:1080, fps=32, setpts=0.33*PTS, fifo [v13];
> [0:v] scale=1920:1080, fps=32, setpts=0.33*PTS, fifo [v14];
> [0:v] scale=1920:1080, fps=32, setpts=0.33*PTS, fifo [v15];
> [0:v] scale=1920:1080, fps=32, setpts=0.33*PTS, fifo [v16];
> [0:v] scale=1920:1080, fps=32, setpts=0.33*PTS, fifo [v17];
> [0:v] scale=1920:1080, fps=32, setpts=0.33*PTS, fifo [v18];
> [0:v] scale=1920:1080, fps=32, setpts=0.33*PTS, fifo [v19];
> [0:v] scale=1920:1080, fps=32, setpts=0.33*PTS, fifo [v20];
> [0:v] scale=1920:1080, fps=32, setpts=0.33*PTS, fifo [v21];
> [0:v] scale=1920:1080, fps=32, setpts=0.33*PTS, fifo [v22];
> [0:v] scale=1920:1080, fps=32, vflip, hflip, setpts=0.33*PTS, fifo [v23];
> [0:v] scale=1920:1080, fps=32, setpts=0.33*PTS, fifo [v24];
> [0:v] scale=1920:1080, fps=32, setpts=0.33*PTS, fifo [v25];
> [0:v] scale=1920:1080, fps=32, setpts=0.33*PTS, fifo [v26];
> [0:v] scale=1920:1080, fps=32, setpts=0.33*PTS, fifo [v27];
> [0:v] scale=1920:1080, fps=32, setpts=0.33*PTS, fifo [v28];
> [0:v] scale=1920:1080, fps=32, setpts=0.33*PTS, fifo [v29];
> [0:v] scale=1920:1080, fps=32, setpts=0.33*PTS, fifo [v30];
> [0:v] scale=1920:1080, fps=32, vflip, hflip, setpts=0.33*PTS, fifo [v31];
> [0:v] scale=1920:1080, fps=32, setpts=0.33*PTS, fifo [v32];
> [0:v] scale=1920:1080, fps=32, setpts=0.33*PTS, fifo [v33];
> [v1][v2][v3][v4][v5][v6][v7][v8][v9][v10][v11][v12][v13][v14][v15][v16][v17][v18][v19][v20][v21][v22][v23][v24][v25][v26][v27][v28][v29][v30][v31][v32][v33]concat=n=33:v=1[out]" -map "[out]" -crf 14 -vcodec libx264 -vb 20M video_out_33.avi
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
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x56154d2c3a40] Invalid mdhd time scale 0, defaulting to 1
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x56154d2c3a40] Auto-inserting h264_mp4toannexb bitstream filter
[concat @ 0x56154d2b73c0] Could not find codec parameters for stream 2 (Unknown: none): unknown codec
Consider increasing the value for the 'analyzeduration' and 'probesize' options
[concat @ 0x56154d2b73c0] Could not find codec parameters for stream 4 (Unknown: none): unknown codec
Consider increasing the value for the 'analyzeduration' and 'probesize' options
Input #0, concat, from 'VIDEOFILES.txt':
Duration: N/A, start: 0.000000, bitrate: 60138 kb/s
Stream #0:0(eng): Video: h264 (High) (avc1 / 0x31637661), yuvj420p(pc, bt709), 2704x1520 [SAR 1:1 DAR 169:95], 60010 kb/s, 50 fps, 50 tbr, 90k tbn, 100 tbc
Metadata:
creation_time : 2020-06-12T17:51:41.000000Z
handler_name : GoPro AVC
encoder : GoPro AVC encoder
timecode : 17:51:42:25
Stream #0:1(eng): Audio: aac (LC) (mp4a / 0x6134706D), 48000 Hz, stereo, fltp, 128 kb/s
Metadata:
creation_time : 2020-06-12T17:51:41.000000Z
handler_name : GoPro AAC
timecode : 17:51:42:25
Stream #0:2: Unknown: none
Stream #0:3(eng): Data: bin_data (gpmd / 0x646D7067), 0 kb/s
Metadata:
creation_time : 2020-06-12T17:51:41.000000Z
handler_name : GoPro MET
Stream #0:4: Unknown: none
Stream mapping:
Stream #0:0 (h264) -> scale
Stream #0:0 (h264) -> scale
Stream #0:0 (h264) -> scale
Stream #0:0 (h264) -> scale
Stream #0:0 (h264) -> scale
Stream #0:0 (h264) -> scale
Stream #0:0 (h264) -> scale
Stream #0:0 (h264) -> scale
Stream #0:0 (h264) -> scale
Stream #0:0 (h264) -> scale
Stream #0:0 (h264) -> scale
Stream #0:0 (h264) -> scale
Stream #0:0 (h264) -> scale
Stream #0:0 (h264) -> scale
Stream #0:0 (h264) -> scale
Stream #0:0 (h264) -> scale
Stream #0:0 (h264) -> scale
Stream #0:0 (h264) -> scale
Stream #0:0 (h264) -> scale
Stream #0:0 (h264) -> scale
Stream #0:0 (h264) -> scale
Stream #0:0 (h264) -> scale
Stream #0:0 (h264) -> scale
Stream #0:0 (h264) -> scale
Stream #0:0 (h264) -> scale
Stream #0:0 (h264) -> scale
Stream #0:0 (h264) -> scale
Stream #0:0 (h264) -> scale
Stream #0:0 (h264) -> scale
Stream #0:0 (h264) -> scale
Stream #0:0 (h264) -> scale
Stream #0:0 (h264) -> scale
Stream #0:0 (h264) -> scale
concat -> Stream #0:0 (libx264)
Press [q] to stop, [?] for help
[swscaler @ 0x56154d57a0c0] deprecated pixel format used, make sure you did set range correctly
[swscaler @ 0x56154d5c0bc0] deprecated pixel format used, make sure you did set range correctly
[swscaler @ 0x56154da7fdc0] deprecated pixel format used, make sure you did set range correctly
[swscaler @ 0x56154dac7000] deprecated pixel format used, make sure you did set range correctly
[swscaler @ 0x56154db19e40] deprecated pixel format used, make sure you did set range correctly
[swscaler @ 0x56154db6cc80] deprecated pixel format used, make sure you did set range correctly
[swscaler @ 0x56154dbbfac0] deprecated pixel format used, make sure you did set range correctly
[swscaler @ 0x56154dc12900] deprecated pixel format used, make sure you did set range correctly
[swscaler @ 0x56154dc65740] deprecated pixel format used, make sure you did set range correctly
[swscaler @ 0x56154dcb8580] deprecated pixel format used, make sure you did set range correctly
[swscaler @ 0x56154dd0b3c0] deprecated pixel format used, make sure you did set range correctly
[swscaler @ 0x56154dd5e200] deprecated pixel format used, make sure you did set range correctly
[swscaler @ 0x56154ddb1040] deprecated pixel format used, make sure you did set range correctly
[swscaler @ 0x56154de04100] deprecated pixel format used, make sure you did set range correctly
[swscaler @ 0x56154de57d80] deprecated pixel format used, make sure you did set range correctly
[swscaler @ 0x56154deaba00] deprecated pixel format used, make sure you did set range correctly
[swscaler @ 0x56154deff680] deprecated pixel format used, make sure you did set range correctly
[swscaler @ 0x56154df53380] deprecated pixel format used, make sure you did set range correctly
[swscaler @ 0x56154dfa70c0] deprecated pixel format used, make sure you did set range correctly
[swscaler @ 0x56154dffaf00] deprecated pixel format used, make sure you did set range correctly
[swscaler @ 0x56154e04ec40] deprecated pixel format used, make sure you did set range correctly
[swscaler @ 0x56154e0a2980] deprecated pixel format used, make sure you did set range correctly
[swscaler @ 0x56154e617e00] deprecated pixel format used, make sure you did set range correctly
[swscaler @ 0x56154e66b540] deprecated pixel format used, make sure you did set range correctly
[swscaler @ 0x56154e6bf380] deprecated pixel format used, make sure you did set range correctly
[swscaler @ 0x56154e7130c0] deprecated pixel format used, make sure you did set range correctly
[swscaler @ 0x56154e766e00] deprecated pixel format used, make sure you did set range correctly
[swscaler @ 0x56154e7bac40] deprecated pixel format used, make sure you did set range correctly
[swscaler @ 0x56154e80e980] deprecated pixel format used, make sure you did set range correctly
[swscaler @ 0x56154e8626c0] deprecated pixel format used, make sure you did set range correctly
[swscaler @ 0x56154e8b6500] deprecated pixel format used, make sure you did set range correctly
[swscaler @ 0x56154e90a240] deprecated pixel format used, make sure you did set range correctly
[swscaler @ 0x56154e95df80] deprecated pixel format used, make sure you did set range correctly
[libx264 @ 0x56154e0f6a40] using SAR=1521/1520
[libx264 @ 0x56154e0f6a40] using cpu capabilities: MMX2 SSE2Fast SSSE3 SSE4.2 AVX FMA3 BMI2 AVX2
[libx264 @ 0x56154e0f6a40] profile High, level 4.2
Output #0, avi, to 'video_out_33.avi':
Metadata:
ISFT : Lavf58.29.100
Stream #0:0: Video: h264 (libx264) (H264 / 0x34363248), yuvj420p(pc), 1920x1080 [SAR 1521:1520 DAR 169:95], q=-1--1, 20000 kb/s, 32 fps, 32 tbn, 32 tbc (default)
Metadata:
encoder : Lavc58.54.100 libx264
Side data:
cpb: bitrate max/min/avg: 0/0/20000000 buffer size: 0 vbv_delay: -1
frame= 0 fps=0.0 q=0.0 size= 6kB time=00:00:00.00 bitrate=N/A speed= frame= 2 fps=1.5 q=0.0 size= 6kB time=00:00:00.00 bitrate=N/A speed= frame= 3 fps=1.6 q=0.0 size= 6kB time=00:00:00.00 bitrate=N/A dup=0 droframe= 4 fps=1.7 q=0.0 size= 6kB time=00:00:00.00 bitrate=N/A dup=0 droframe= 4 fps=1.3 q=0.0 size= 6kB time=00:00:00.00 bitrate=N/A dup=0 droframe= 5 fps=1.4 q=0.0 size= 6kB time=00:00:00.00 bitrate=N/A dup=0 droframe= 6 fps=1.4 q=0.0 size= 6kB time=00:00:00.00 bitrate=N/A dup=0 droframe= 7 fps=1.5 q=0.0 size= 6kB time=00:00:00.00 bitrate=N/A dup=0 droframe= 8 fps=1.5 q=0.0 size= 6kB time=00:00:00.00 bitrate=N/A dup=0 droframe= 9 fps=1.5 q=0.0 size= 6kB time=00:00:00.00 bitrate=N/A dup=0 droframe= 10 fps=1.5 q=0.0 size= 6kB time=00:00:00.00 bitrate=N/A dup=0 droframe= 10 fps=1.1 q=0.0 size= 6kB time=00:00:00.00 bitrate=N/A dup=0 droframe= 10 fps=0.8 q=0.0 size= 6kB time=00:00:00.00 bitrate=N/A dup=0 droframe= 10 fps=0.3 q=0.0 size= 6kB time=00:00:00.00 bitrate=N/A dup=0 droframe= 10 fps=0.3 q=0.0 size= 6kB time=00:00:00.00 bitrate=N/A dup=0 droframe= 10 fps=0.2 q=0.0 size= 6kB time=00:00:00.00 bitrate=N/A dup=0 droframe= 11 fps=0.2 q=0.0 size= 6kB time=00:00:00.00 bitrate=N/A dup=0 droframe= 11 fps=0.2 q=0.0 size= 6kB time=00:00:00.00 bitrate=N/A dup=0 droframe= 11 fps=0.2 q=0.0 size= 6kB time=00:00:00.00 bitrate=N/A dup=0 droframe= 11 fps=0.2 q=0.0 size= 6kB time=00:00:00.00 bitrate=N/A dup=0 droframe= 11 fps=0.2 q=0.0 size= 6kB time=00:00:00.00 bitrate=N/A dup=0 droframe= 11 fps=0.2 q=0.0 size= 6kB time=00:00:00.00 bitrate=N/A dup=0 droframe= 11 fps=0.2 q=0.0 size= 6kB time=00:00:00.00 bitrate=N/A dup=0 droframe= 11 fps=0.2 q=0.0 size= 6kB time=00:00:00.00 bitrate=N/A dup=0 droframe= 11 fps=0.2 q=0.0 size= 6kB time=00:00:00.00 bitrate=N/A dup=0 droframe= 11 fps=0.2 q=0.0 size= 6kB time=00:00:00.00 bitrate=N/A dup=0 droframe= 11 fps=0.2 q=0.0 size= 6kB time=00:00:00.00 bitrate=N/A dup=0 droframe= 11 fps=0.2 q=0.0 size= 6kB time=00:00:00.00 bitrate=N/A dup=0 droframe= 11 fps=0.2 q=0.0 size= 6kB time=00:00:00.00 bitrate=N/A dup=0 droframe= 11 fps=0.2 q=0.0 size= 6kB time=00:00:00.00 bitrate=N/A dup=0 droframe= 11 fps=0.2 q=0.0 size= 6kB time=00:00:00.00 bitrate=N/A dup=0 droframe= 11 fps=0.2 q=0.0 size= 6kB time=00:00:00.00 bitrate=N/A dup=0 droframe= 11 fps=0.2 q=0.0 size= 6kB time=00:00:00.00 bitrate=N/A dup=0 droframe= 11 fps=0.2 q=0.0 size= 6kB time=00:00:00.00 bitrate=N/A dup=0 droframe= 11 fps=0.2 q=0.0 size= 6kB time=00:00:00.00 bitrate=N/A dup=0 droframe= 11 fps=0.2 q=0.0 size= 6kB time=00:00:00.00 bitrate=N/A dup=0 droframe= 11 fps=0.2 q=0.0 size= 6kB time=00:00:00.00 bitrate=N/A dup=0 droframe= 11 fps=0.2 q=0.0 size= 6kB time=00:00:00.00 bitrate=N/A dup=0 droframe= 11 fps=0.2 q=0.0 size= 6kB time=00:00:00.00 bitrate=N/A dup=0 droframe= 11 fps=0.2 q=0.0 size= 6kB time=00:00:00.00 bitrate=N/A dup=0 droframe= 11 fps=0.2 q=0.0 size= 6kB time=00:00:00.00 bitrate=N/A dup=0 droframe= 11 fps=0.2 q=0.0 size= 6kB time=00:00:00.00 bitrate=N/A dup=0 droframe= 11 fps=0.2 q=0.0 size= 6kB time=00:00:00.00 bitrate=N/A dup=0 droframe= 11 fps=0.2 q=0.0 size= 6kB time=00:00:00.00 bitrate=N/A dup=0 droframe= 11 fps=0.2 q=0.0 size= 6kB time=00:00:00.00 bitrate=N/A dup=0 droframe= 11 fps=0.2 q=0.0 size= 6kB time=00:00:00.00 bitrate=N/A dup=0 droframe= 11 fps=0.2 q=0.0 size= 6kB time=00:00:00.00 bitrate=N/A dup=0 droframe= 11 fps=0.2 q=0.0 size= 6kB time=00:00:00.00 bitrate=N/A dup=0 droframe= 11 fps=0.2 q=0.0 size= 6kB time=00:00:00.00 bitrate=N/A dup=0 droframe= 11 fps=0.2 q=0.0 size= 6kB time=00:00:00.00 bitrate=N/A dup=0 droframe= 11 fps=0.2 q=0.0 size= 6kB time=00:00:00.00 bitrate=N/A dup=0 droframe= 11 fps=0.2 q=0.0 size= 6kB time=00:00:00.00 bitrate=N/A dup=0 droframe= 11 fps=0.2 q=0.0 size= 6kB time=00:00:00.00 bitrate=N/A dup=0 droframe= 11 fps=0.2 q=0.0 size= 6kB time=00:00:00.00 bitrate=N/A dup=0 droframe= 11 fps=0.2 q=0.0 size= 6kB time=00:00:00.00 bitrate=N/A dup=0 droframe= 11 fps=0.2 q=0.0 size= 6kB time=00:00:00
> ^C
> elias@eliasc:/media/elias/MyPassport/prx/Podilato_Poreia_Kamatero_12Jun2020/1$
> ^C