Opened 6 years ago

Closed 6 years ago

#7351 closed defect (fixed)

Infinite loop during concatenation with empty streams

Reported by: Vadym Borodavko Owned by:
Priority: normal Component: avfilter
Version: git-master Keywords: deadlock trim concat
Cc: Blocked By:
Blocking: Reproduced by developer: yes
Analyzed by developer: yes

Description

Summary of the bug:
FFmpeg hangs (probably in some infinite loop) when trying to concatenate two video+audio streams which are empty (i.e. both or some of them have duration 0). Process is running endless and can be terminated using several Ctrl+C.

Example: Imagine we have an input video with duration 0.2 seconds, let's trim two parts 0-1 seconds and 2-3 seconds (an unexisting part of the video), and concatenate it together. As a result we have a forever running ffmpeg process which consumes 100% of the single core.

Issue is not reproduced when you just trim unexisting part of the video, only in combination with trim+concat.

Issue is not reproduced when there are only video or only audio streams, only in combination with video+audio.

Issue is reproduced in ffmpeg versions 3.4.2 and 4.0.2, maybe previous versions are also affected.

How to reproduce:

Create an empty video with duration 0.2 seconds:

$ ffmpeg -y -f rawvideo -t 0.2 -s 640x360 -pix_fmt rgb24 -i /dev/zero -f lavfi -t 0.2 -i aevalsrc=0 -c:v libx264 -profile:v high -preset veryfast -pix_fmt yuv420p -r 25 -g 25 -c:a aac -ar 48000 source.mp4
ffmpeg version 4.0.2 Copyright (c) 2000-2018 the FFmpeg developers
  built with Apple LLVM version 9.1.0 (clang-902.0.39.2)
  configuration: --prefix=/usr/local/Cellar/ffmpeg/4.0.2 --enable-shared --enable-pthreads --enable-version3 --enable-hardcoded-tables --enable-avresample --cc=clang --host-cflags= --host-ldflags= --enable-gpl --enable-libmp3lame --enable-libx264 --enable-libxvid --enable-opencl --enable-videotoolbox --disable-lzma
  libavutil      56. 14.100 / 56. 14.100
  libavcodec     58. 18.100 / 58. 18.100
  libavformat    58. 12.100 / 58. 12.100
  libavdevice    58.  3.100 / 58.  3.100
  libavfilter     7. 16.100 /  7. 16.100
  libavresample   4.  0.  0 /  4.  0.  0
  libswscale      5.  1.100 /  5.  1.100
  libswresample   3.  1.100 /  3.  1.100
  libpostproc    55.  1.100 / 55.  1.100
Input #0, rawvideo, from '/dev/zero':
  Duration: N/A, start: 0.000000, bitrate: 138240 kb/s
    Stream #0:0: Video: rawvideo (RGB[24] / 0x18424752), rgb24, 640x360, 138240 kb/s, 25 tbr, 25 tbn, 25 tbc
Input #1, lavfi, from 'aevalsrc=0':
  Duration: N/A, start: 0.000000, bitrate: 2822 kb/s
    Stream #1:0: Audio: pcm_f64le, 44100 Hz, mono, dbl, 2822 kb/s
Stream mapping:
  Stream #0:0 -> #0:0 (rawvideo (native) -> h264 (libx264))
  Stream #1:0 -> #0:1 (pcm_f64le (native) -> aac (native))
Press [q] to stop, [?] for help
[libx264 @ 0x7fe1f5001200] using cpu capabilities: MMX2 SSE2Fast SSSE3 SSE4.2 AVX FMA3 BMI2 AVX2
[libx264 @ 0x7fe1f5001200] profile High, level 3.0
[libx264 @ 0x7fe1f5001200] 264 - core 152 r2854 e9a5903 - H.264/MPEG-4 AVC codec - Copyleft 2003-2017 - http://www.videolan.org/x264.html - options: cabac=1 ref=1 deblock=1:0:0 analyse=0x3:0x113 me=hex subme=2 psy=1 psy_rd=1.00:0.00 mixed_ref=0 me_range=16 chroma_me=1 trellis=0 8x8dct=1 cqm=0 deadzone=21,11 fast_pskip=1 chroma_qp_offset=0 threads=11 lookahead_threads=2 sliced_threads=0 nr=0 decimate=1 interlaced=0 bluray_compat=0 constrained_intra=0 bframes=3 b_pyramid=2 b_adapt=1 b_bias=0 direct=1 weightb=1 open_gop=0 weightp=1 keyint=25 keyint_min=2 scenecut=40 intra_refresh=0 rc_lookahead=10 rc=crf mbtree=1 crf=23.0 qcomp=0.60 qpmin=0 qpmax=69 qpstep=4 ip_ratio=1.40 aq=1:1.00
Output #0, mp4, to 'source.mp4':
  Metadata:
    encoder         : Lavf58.12.100
    Stream #0:0: Video: h264 (libx264) (avc1 / 0x31637661), yuv420p(progressive), 640x360, q=-1--1, 25 fps, 12800 tbn, 25 tbc
    Metadata:
      encoder         : Lavc58.18.100 libx264
    Side data:
      cpb: bitrate max/min/avg: 0/0/0 buffer size: 0 vbv_delay: -1
    Stream #0:1: Audio: aac (LC) (mp4a / 0x6134706D), 48000 Hz, mono, fltp, 69 kb/s
    Metadata:
      encoder         : Lavc58.18.100 aac
frame=    5 fps=0.0 q=-1.0 Lsize=       2kB time=00:00:00.21 bitrate=  92.5kbits/s speed=8.63x    
video:1kB audio:0kB subtitle:0kB other streams:0kB global headers:0kB muxing overhead: 168.152176%
[libx264 @ 0x7fe1f5001200] frame I:1     Avg QP:11.00  size:    98
[libx264 @ 0x7fe1f5001200] frame P:1     Avg QP:13.00  size:    20
[libx264 @ 0x7fe1f5001200] frame B:3     Avg QP:12.67  size:    18
[libx264 @ 0x7fe1f5001200] consecutive B-frames: 20.0%  0.0%  0.0% 80.0%
[libx264 @ 0x7fe1f5001200] mb I  I16..4: 99.9%  0.0%  0.1%
[libx264 @ 0x7fe1f5001200] mb P  I16..4:  0.0%  0.0%  0.0%  P16..4:  0.0%  0.0%  0.0%  0.0%  0.0%    skip:100.0%
[libx264 @ 0x7fe1f5001200] mb B  I16..4:  0.0%  0.0%  0.0%  B16..8:  0.0%  0.0%  0.0%  direct: 0.0%  skip:100.0%
[libx264 @ 0x7fe1f5001200] 8x8 transform intra:0.0%
[libx264 @ 0x7fe1f5001200] coded y,uvDC,uvAC intra: 0.0% 0.0% 0.0% inter: 0.0% 0.0% 0.0%
[libx264 @ 0x7fe1f5001200] i16 v,h,dc,p: 96%  0%  4%  0%
[libx264 @ 0x7fe1f5001200] i4 v,h,dc,ddl,ddr,vr,hd,vl,hu:  0%  0% 100%  0%  0%  0%  0%  0%  0%
[libx264 @ 0x7fe1f5001200] i8c dc,h,v,p: 100%  0%  0%  0%
[libx264 @ 0x7fe1f5001200] Weighted P-Frames: Y:0.0% UV:0.0%
[libx264 @ 0x7fe1f5001200] kb/s:6.88
[aac @ 0x7fe1f5002a00] Qavg: 62211.172

Run trim+concat on this video:

$ ffmpeg -v 9 -loglevel 99 -y -i source.mp4 -filter_complex "[v] trim=0:1 [v_1]; [a] atrim=0:1 [a_1]; [v] trim=2:3 [v_2]; [a] atrim=2:3 [a_2]; [v_1] [a_1] [v_2] [a_2] concat=n=2:v=1:a=1" output.mp4
ffmpeg version 4.0.2 Copyright (c) 2000-2018 the FFmpeg developers
  built with Apple LLVM version 9.1.0 (clang-902.0.39.2)
  configuration: --prefix=/usr/local/Cellar/ffmpeg/4.0.2 --enable-shared --enable-pthreads --enable-version3 --enable-hardcoded-tables --enable-avresample --cc=clang --host-cflags= --host-ldflags= --enable-gpl --enable-libmp3lame --enable-libx264 --enable-libxvid --enable-opencl --enable-videotoolbox --disable-lzma
  libavutil      56. 14.100 / 56. 14.100
  libavcodec     58. 18.100 / 58. 18.100
  libavformat    58. 12.100 / 58. 12.100
  libavdevice    58.  3.100 / 58.  3.100
  libavfilter     7. 16.100 /  7. 16.100
  libavresample   4.  0.  0 /  4.  0.  0
  libswscale      5.  1.100 /  5.  1.100
  libswresample   3.  1.100 /  3.  1.100
  libpostproc    55.  1.100 / 55.  1.100
Splitting the commandline.
Reading option '-v' ... matched as option 'v' (set logging level) with argument '9'.
Reading option '-loglevel' ... matched as option 'loglevel' (set logging level) with argument '99'.
Reading option '-y' ... matched as option 'y' (overwrite output files) with argument '1'.
Reading option '-i' ... matched as input url with argument 'source.mp4'.
Reading option '-filter_complex' ... matched as option 'filter_complex' (create a complex filtergraph) with argument '[v] trim=0:1 [v_1]; [a] atrim=0:1 [a_1]; [v] trim=2:3 [v_2]; [a] atrim=2:3 [a_2]; [v_1] [a_1] [v_2] [a_2] concat=n=2:v=1:a=1'.
Reading option 'output.mp4' ... matched as output url.
Finished splitting the commandline.
Parsing a group of options: global .
Applying option v (set logging level) with argument 9.
Applying option y (overwrite output files) with argument 1.
Applying option filter_complex (create a complex filtergraph) with argument [v] trim=0:1 [v_1]; [a] atrim=0:1 [a_1]; [v] trim=2:3 [v_2]; [a] atrim=2:3 [a_2]; [v_1] [a_1] [v_2] [a_2] concat=n=2:v=1:a=1.
Successfully parsed a group of options.
Parsing a group of options: input url source.mp4.
Successfully parsed a group of options.
Opening an input file: source.mp4.
[NULL @ 0x7fb65d001800] Opening 'source.mp4' for reading
[file @ 0x7fb65c707a00] Setting default whitelist 'file,crypto'
Probing mov,mp4,m4a,3gp,3g2,mj2 score:100 size:2048
Probing mp3 score:1 size:2048
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x7fb65d001800] Format mov,mp4,m4a,3gp,3g2,mj2 probed with size=2048 and score=100
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x7fb65d001800] type:'ftyp' parent:'root' sz: 32 8 2467
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x7fb65d001800] ISO: File Type Major Brand: isom
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x7fb65d001800] type:'free' parent:'root' sz: 8 40 2467
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x7fb65d001800] type:'mdat' parent:'root' sz: 929 48 2467
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x7fb65d001800] type:'moov' parent:'root' sz: 1498 977 2467
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x7fb65d001800] type:'mvhd' parent:'moov' sz: 108 8 1490
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x7fb65d001800] time scale = 1000
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x7fb65d001800] type:'trak' parent:'moov' sz: 655 116 1490
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x7fb65d001800] type:'tkhd' parent:'trak' sz: 92 8 647
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x7fb65d001800] type:'edts' parent:'trak' sz: 36 100 647
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x7fb65d001800] type:'elst' parent:'edts' sz: 28 8 28
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x7fb65d001800] track[0].edit_count = 1
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x7fb65d001800] duration=200 time=1024 rate=1.000000
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x7fb65d001800] type:'mdia' parent:'trak' sz: 519 136 647
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x7fb65d001800] type:'mdhd' parent:'mdia' sz: 32 8 511
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x7fb65d001800] type:'hdlr' parent:'mdia' sz: 45 40 511
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x7fb65d001800] ctype=[0][0][0][0]
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x7fb65d001800] stype=vide
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x7fb65d001800] type:'minf' parent:'mdia' sz: 434 85 511
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x7fb65d001800] type:'vmhd' parent:'minf' sz: 20 8 426
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x7fb65d001800] type:'dinf' parent:'minf' sz: 36 28 426
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x7fb65d001800] type:'dref' parent:'dinf' sz: 28 8 28
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x7fb65d001800] Unknown dref type 0x206c7275 size 12
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x7fb65d001800] type:'stbl' parent:'minf' sz: 370 64 426
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x7fb65d001800] type:'stsd' parent:'stbl' sz: 150 8 362
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x7fb65d001800] size=134 4CC=avc1 codec_type=0
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x7fb65d001800] type:'avcC' parent:'stsd' sz: 48 8 48
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x7fb65d001800] type:'stts' parent:'stbl' sz: 24 158 362
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x7fb65d001800] track[0].stts.entries = 1
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x7fb65d001800] sample_count=5, sample_duration=512
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x7fb65d001800] type:'stss' parent:'stbl' sz: 20 182 362
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x7fb65d001800] keyframe_count = 1
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x7fb65d001800] type:'ctts' parent:'stbl' sz: 56 202 362
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x7fb65d001800] track[0].ctts.entries = 5
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x7fb65d001800] count=1, duration=1024
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x7fb65d001800] count=1, duration=2560
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x7fb65d001800] count=1, duration=1024
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x7fb65d001800] count=1, duration=0
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x7fb65d001800] count=1, duration=512
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x7fb65d001800] dts shift 0
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x7fb65d001800] type:'stsc' parent:'stbl' sz: 40 258 362
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x7fb65d001800] track[0].stsc.entries = 2
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x7fb65d001800] type:'stsz' parent:'stbl' sz: 40 298 362
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x7fb65d001800] sample_size = 0 sample_count = 5
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x7fb65d001800] type:'stco' parent:'stbl' sz: 32 338 362
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x7fb65d001800] AVIndex stream 0, sample 0, offset 30, dts 0, size 786, distance 0, keyframe 1
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x7fb65d001800] AVIndex stream 0, sample 1, offset 342, dts 512, size 20, distance 1, keyframe 0
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x7fb65d001800] AVIndex stream 0, sample 2, offset 36b, dts 1024, size 18, distance 2, keyframe 0
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x7fb65d001800] AVIndex stream 0, sample 3, offset 385, dts 1536, size 18, distance 3, keyframe 0
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x7fb65d001800] AVIndex stream 0, sample 4, offset 39f, dts 2048, size 18, distance 4, keyframe 0
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x7fb65d001800] Processing st: 0, edit list 0 - media time: 1024, duration: 2560
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x7fb65d001800] stts: 0 ctts: 1024, ctts_index: 0, ctts_count: 5
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x7fb65d001800] stts: 512 ctts: 2560, ctts_index: 1, ctts_count: 5
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x7fb65d001800] stts: 1024 ctts: 1024, ctts_index: 2, ctts_count: 5
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x7fb65d001800] stts: 1536 ctts: 0, ctts_index: 3, ctts_count: 5
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x7fb65d001800] stts: 2048 ctts: 512, ctts_index: 4, ctts_count: 5
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x7fb65d001800] Offset DTS by 1024 to make first pts zero.
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x7fb65d001800] Setting codecpar->delay to 2 for stream st: 0
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x7fb65d001800] type:'trak' parent:'moov' sz: 629 771 1490
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x7fb65d001800] type:'tkhd' parent:'trak' sz: 92 8 621
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x7fb65d001800] type:'edts' parent:'trak' sz: 36 100 621
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x7fb65d001800] type:'elst' parent:'edts' sz: 28 8 28
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x7fb65d001800] track[1].edit_count = 1
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x7fb65d001800] duration=200 time=1024 rate=1.000000
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x7fb65d001800] type:'mdia' parent:'trak' sz: 493 136 621
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x7fb65d001800] type:'mdhd' parent:'mdia' sz: 32 8 485
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x7fb65d001800] type:'hdlr' parent:'mdia' sz: 45 40 485
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x7fb65d001800] ctype=[0][0][0][0]
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x7fb65d001800] stype=soun
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x7fb65d001800] type:'minf' parent:'mdia' sz: 408 85 485
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x7fb65d001800] type:'smhd' parent:'minf' sz: 16 8 400
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x7fb65d001800] type:'dinf' parent:'minf' sz: 36 24 400
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x7fb65d001800] type:'dref' parent:'dinf' sz: 28 8 28
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x7fb65d001800] Unknown dref type 0x206c7275 size 12
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x7fb65d001800] type:'stbl' parent:'minf' sz: 348 60 400
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x7fb65d001800] type:'stsd' parent:'stbl' sz: 106 8 340
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x7fb65d001800] size=90 4CC=mp4a codec_type=1
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x7fb65d001800] audio channels 2
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x7fb65d001800] version =0, isom =1
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x7fb65d001800] type:'esds' parent:'stsd' sz: 54 8 54
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x7fb65d001800] MPEG-4 description: tag=0x03 len=37
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x7fb65d001800] MPEG-4 description: tag=0x04 len=23
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x7fb65d001800] esds object type id 0x40
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x7fb65d001800] MPEG-4 description: tag=0x05 len=5
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x7fb65d001800] Specific MPEG-4 header len=5
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x7fb65d001800] mp4a config channels 1 obj 2 ext obj 5 sample rate 48000 ext sample rate 0
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x7fb65d001800] type:'stts' parent:'stbl' sz: 32 114 340
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x7fb65d001800] track[1].stts.entries = 2
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x7fb65d001800] sample_count=10, sample_duration=1024
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x7fb65d001800] sample_count=1, sample_duration=384
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x7fb65d001800] type:'stsc' parent:'stbl' sz: 52 146 340
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x7fb65d001800] track[1].stsc.entries = 3
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x7fb65d001800] type:'stsz' parent:'stbl' sz: 64 198 340
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x7fb65d001800] sample_size = 0 sample_count = 11
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x7fb65d001800] type:'stco' parent:'stbl' sz: 32 262 340
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x7fb65d001800] type:'sgpd' parent:'stbl' sz: 26 294 340
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x7fb65d001800] type:'sbgp' parent:'stbl' sz: 28 320 340
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x7fb65d001800] AVIndex stream 1, sample 0, offset 356, dts 0, size 21, distance 0, keyframe 1
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x7fb65d001800] AVIndex stream 1, sample 1, offset 37d, dts 1024, size 4, distance 0, keyframe 1
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x7fb65d001800] AVIndex stream 1, sample 2, offset 381, dts 2048, size 4, distance 0, keyframe 1
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x7fb65d001800] AVIndex stream 1, sample 3, offset 397, dts 3072, size 4, distance 0, keyframe 1
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x7fb65d001800] AVIndex stream 1, sample 4, offset 39b, dts 4096, size 4, distance 0, keyframe 1
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x7fb65d001800] AVIndex stream 1, sample 5, offset 3b1, dts 5120, size 4, distance 0, keyframe 1
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x7fb65d001800] AVIndex stream 1, sample 6, offset 3b5, dts 6144, size 4, distance 0, keyframe 1
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x7fb65d001800] AVIndex stream 1, sample 7, offset 3b9, dts 7168, size 4, distance 0, keyframe 1
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x7fb65d001800] AVIndex stream 1, sample 8, offset 3bd, dts 8192, size 4, distance 0, keyframe 1
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x7fb65d001800] AVIndex stream 1, sample 9, offset 3c1, dts 9216, size 4, distance 0, keyframe 1
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x7fb65d001800] AVIndex stream 1, sample 10, offset 3c5, dts 10240, size 4, distance 0, keyframe 1
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x7fb65d001800] Processing st: 1, edit list 0 - media time: 1024, duration: 9600
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x7fb65d001800] drop a frame at curr_cts: 0 @ 0
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x7fb65d001800] type:'udta' parent:'moov' sz: 98 1400 1490
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x7fb65d001800] type:'meta' parent:'udta' sz: 90 8 90
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x7fb65d001800] type:'hdlr' parent:'meta' sz: 33 8 78
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x7fb65d001800] ctype=[0][0][0][0]
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x7fb65d001800] stype=mdir
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x7fb65d001800] type:'ilst' parent:'meta' sz: 45 41 78
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x7fb65d001800] type:'[169]too' parent:'ilst' sz: 37 8 37
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x7fb65d001800] on_parse_exit_offset=2467
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x7fb65d001800] Before avformat_find_stream_info() pos: 2467 bytes read:2467 seeks:0 nb_streams:2
[h264 @ 0x7fb65d012800] nal_unit_type: 7, nal_ref_idc: 3
[h264 @ 0x7fb65d012800] nal_unit_type: 8, nal_ref_idc: 3
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x7fb65d001800] stream 0, sample 0, dts -80000
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x7fb65d001800] stream 1, sample 0, dts -21333
[h264 @ 0x7fb65d012800] nal_unit_type: 6, nal_ref_idc: 0
[h264 @ 0x7fb65d012800] nal_unit_type: 5, nal_ref_idc: 3
[h264 @ 0x7fb65d012800] Format yuv420p chosen by get_format().
[h264 @ 0x7fb65d012800] Reinit context to 640x368, pix_fmt: yuv420p
[h264 @ 0x7fb65d012800] no picture 
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x7fb65d001800] stream 0, sample 1, dts -40000
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x7fb65d001800] stream 1, sample 0, dts -21333
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x7fb65d001800] stream 0, sample 2, dts 0
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x7fb65d001800] stream 1, sample 0, dts -21333
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x7fb65d001800] demuxer injecting skip 1024 / discard 0
[aac @ 0x7fb65d016c00] skip 1024 / discard 0 samples due to side data
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x7fb65d001800] All info found
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x7fb65d001800] stream 0: start_time: 0.000 duration: 0.200
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x7fb65d001800] stream 1: start_time: 0.000 duration: 0.200
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x7fb65d001800] format: start_time: 0.000 duration: 0.222 bitrate=88 kb/s
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x7fb65d001800] After avformat_find_stream_info() pos: 875 bytes read:2467 seeks:0 frames:3
Input #0, mov,mp4,m4a,3gp,3g2,mj2, from 'source.mp4':
  Metadata:
    major_brand     : isom
    minor_version   : 512
    compatible_brands: isomiso2avc1mp41
    encoder         : Lavf58.12.100
  Duration: 00:00:00.22, start: 0.000000, bitrate: 88 kb/s
    Stream #0:0(und), 2, 1/12800: Video: h264 (High), 1 reference frame (avc1 / 0x31637661), yuv420p(left), 640x360 (640x368), 0/1, 34 kb/s, 25 fps, 25 tbr, 12800 tbn, 50 tbc (default)
    Metadata:
      handler_name    : VideoHandler
    Stream #0:1(und), 1, 1/48000: Audio: aac (LC) (mp4a / 0x6134706D), 48000 Hz, mono, fltp, 2 kb/s (default)
    Metadata:
      handler_name    : SoundHandler
Successfully opened the file.
[Parsed_trim_0 @ 0x7fb65c500580] Setting 'start' to value '0'
[Parsed_trim_0 @ 0x7fb65c500580] Setting 'end' to value '1'
[Parsed_atrim_1 @ 0x7fb65c500b80] Setting 'start' to value '0'
[Parsed_atrim_1 @ 0x7fb65c500b80] Setting 'end' to value '1'
[Parsed_trim_2 @ 0x7fb65c500fc0] Setting 'start' to value '2'
[Parsed_trim_2 @ 0x7fb65c500fc0] Setting 'end' to value '3'
[Parsed_atrim_3 @ 0x7fb65c501400] Setting 'start' to value '2'
[Parsed_atrim_3 @ 0x7fb65c501400] Setting 'end' to value '3'
[Parsed_concat_4 @ 0x7fb65c5017c0] Setting 'n' to value '2'
[Parsed_concat_4 @ 0x7fb65c5017c0] Setting 'v' to value '1'
[Parsed_concat_4 @ 0x7fb65c5017c0] Setting 'a' to value '1'
Parsing a group of options: output url output.mp4.
Successfully parsed a group of options.
Opening an output file: output.mp4.
[file @ 0x7fb65c501540] Setting default whitelist 'file,crypto'
Successfully opened the file.
detected 8 logical cores
[h264 @ 0x7fb65e006400] nal_unit_type: 7, nal_ref_idc: 3
[h264 @ 0x7fb65e006400] nal_unit_type: 8, nal_ref_idc: 3
Stream mapping:
  Stream #0:0 (h264) -> trim
  Stream #0:0 (h264) -> trim
  Stream #0:1 (aac) -> atrim
  Stream #0:1 (aac) -> atrim
  concat:out:v0 -> Stream #0:0 (libx264)
  concat:out:a0 -> Stream #0:1 (aac)
Press [q] to stop, [?] for help
cur_dts is invalid (this is harmless if it occurs once at the start per stream)
    Last message repeated 1 times
[h264 @ 0x7fb65e006400] nal_unit_type: 6, nal_ref_idc: 0
[h264 @ 0x7fb65e006400] nal_unit_type: 5, nal_ref_idc: 3
[h264 @ 0x7fb65e006400] Format yuv420p chosen by get_format().
[h264 @ 0x7fb65e006400] Reinit context to 640x368, pix_fmt: yuv420p
[h264 @ 0x7fb65e006400] no picture 
cur_dts is invalid (this is harmless if it occurs once at the start per stream)
[aac @ 0x7fb65d80de00] skip 1024 / discard 0 samples due to side data
cur_dts is invalid (this is harmless if it occurs once at the start per stream)
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x7fb65d001800] stream 0, sample 2, dts 0
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x7fb65d001800] stream 1, sample 1, dts 0
[h264 @ 0x7fb65e000000] nal_unit_type: 1, nal_ref_idc: 2
[h264 @ 0x7fb65e000000] no picture 
cur_dts is invalid (this is harmless if it occurs once at the start per stream)
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x7fb65d001800] stream 0, sample 3, dts 40000
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x7fb65d001800] stream 1, sample 1, dts 0
cur_dts is invalid (this is harmless if it occurs once at the start per stream)
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x7fb65d001800] stream 0, sample 3, dts 40000
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x7fb65d001800] stream 1, sample 2, dts 21333
cur_dts is invalid (this is harmless if it occurs once at the start per stream)
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x7fb65d001800] stream 0, sample 3, dts 40000
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x7fb65d001800] stream 1, sample 3, dts 42667
[h264 @ 0x7fb65e000600] nal_unit_type: 1, nal_ref_idc: 2
cur_dts is invalid (this is harmless if it occurs once at the start per stream)
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x7fb65d001800] stream 0, sample 4, dts 80000
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x7fb65d001800] stream 1, sample 3, dts 42667
cur_dts is invalid (this is harmless if it occurs once at the start per stream)
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x7fb65d001800] stream 0, sample 4, dts 80000
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x7fb65d001800] stream 1, sample 4, dts 64000
cur_dts is invalid (this is harmless if it occurs once at the start per stream)
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x7fb65d001800] stream 0, sample 4, dts 80000
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x7fb65d001800] stream 1, sample 5, dts 85333
[h264 @ 0x7fb65e000c00] nal_unit_type: 1, nal_ref_idc: 0
cur_dts is invalid (this is harmless if it occurs once at the start per stream)
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x7fb65d001800] stream 1, sample 5, dts 85333
cur_dts is invalid (this is harmless if it occurs once at the start per stream)
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x7fb65d001800] stream 1, sample 6, dts 106667
cur_dts is invalid (this is harmless if it occurs once at the start per stream)
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x7fb65d001800] stream 1, sample 7, dts 128000
cur_dts is invalid (this is harmless if it occurs once at the start per stream)
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x7fb65d001800] stream 1, sample 8, dts 149333
cur_dts is invalid (this is harmless if it occurs once at the start per stream)
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x7fb65d001800] stream 1, sample 9, dts 170667
cur_dts is invalid (this is harmless if it occurs once at the start per stream)
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x7fb65d001800] stream 1, sample 10, dts 192000
[h264 @ 0x7fb65e001200] nal_unit_type: 1, nal_ref_idc: 0
cur_dts is invalid (this is harmless if it occurs once at the start per stream)
[Parsed_trim_0 @ 0x7fb65e900000] Setting 'start' to value '0'
[Parsed_trim_0 @ 0x7fb65e900000] Setting 'end' to value '1'
[Parsed_atrim_1 @ 0x7fb65e900700] Setting 'start' to value '0'
[Parsed_atrim_1 @ 0x7fb65e900700] Setting 'end' to value '1'
[Parsed_trim_2 @ 0x7fb65e900b80] Setting 'start' to value '2'
[Parsed_trim_2 @ 0x7fb65e900b80] Setting 'end' to value '3'
[Parsed_atrim_3 @ 0x7fb65e900f80] Setting 'start' to value '2'
[Parsed_atrim_3 @ 0x7fb65e900f80] Setting 'end' to value '3'
[Parsed_concat_4 @ 0x7fb65e9013c0] Setting 'n' to value '2'
[Parsed_concat_4 @ 0x7fb65e9013c0] Setting 'v' to value '1'
[Parsed_concat_4 @ 0x7fb65e9013c0] Setting 'a' to value '1'
[graph 0 input from stream 0:0 @ 0x7fb65e901e00] Setting 'video_size' to value '640x360'
[graph 0 input from stream 0:0 @ 0x7fb65e901e00] Setting 'pix_fmt' to value '0'
[graph 0 input from stream 0:0 @ 0x7fb65e901e00] Setting 'time_base' to value '1/12800'
[graph 0 input from stream 0:0 @ 0x7fb65e901e00] Setting 'pixel_aspect' to value '0/1'
[graph 0 input from stream 0:0 @ 0x7fb65e901e00] Setting 'sws_param' to value 'flags=2'
[graph 0 input from stream 0:0 @ 0x7fb65e901e00] Setting 'frame_rate' to value '25/1'
[graph 0 input from stream 0:0 @ 0x7fb65e901e00] w:640 h:360 pixfmt:yuv420p tb:1/12800 fr:25/1 sar:0/1 sws_param:flags=2
[graph_0_in_0_1 @ 0x7fb65e901f00] Setting 'time_base' to value '1/48000'
[graph_0_in_0_1 @ 0x7fb65e901f00] Setting 'sample_rate' to value '48000'
[graph_0_in_0_1 @ 0x7fb65e901f00] Setting 'sample_fmt' to value 'fltp'
[graph_0_in_0_1 @ 0x7fb65e901f00] Setting 'channel_layout' to value '0x4'
[graph_0_in_0_1 @ 0x7fb65e901f00] tb:1/48000 samplefmt:fltp samplerate:48000 chlayout:0x4
[graph 0 input from stream 0:0 @ 0x7fb65e9024c0] Setting 'video_size' to value '640x360'
[graph 0 input from stream 0:0 @ 0x7fb65e9024c0] Setting 'pix_fmt' to value '0'
[graph 0 input from stream 0:0 @ 0x7fb65e9024c0] Setting 'time_base' to value '1/12800'
[graph 0 input from stream 0:0 @ 0x7fb65e9024c0] Setting 'pixel_aspect' to value '0/1'
[graph 0 input from stream 0:0 @ 0x7fb65e9024c0] Setting 'sws_param' to value 'flags=2'
[graph 0 input from stream 0:0 @ 0x7fb65e9024c0] Setting 'frame_rate' to value '25/1'
[graph 0 input from stream 0:0 @ 0x7fb65e9024c0] w:640 h:360 pixfmt:yuv420p tb:1/12800 fr:25/1 sar:0/1 sws_param:flags=2
[graph_0_in_0_1 @ 0x7fb65e902740] Setting 'time_base' to value '1/48000'
[graph_0_in_0_1 @ 0x7fb65e902740] Setting 'sample_rate' to value '48000'
[graph_0_in_0_1 @ 0x7fb65e902740] Setting 'sample_fmt' to value 'fltp'
[graph_0_in_0_1 @ 0x7fb65e902740] Setting 'channel_layout' to value '0x4'
[graph_0_in_0_1 @ 0x7fb65e902740] tb:1/48000 samplefmt:fltp samplerate:48000 chlayout:0x4
[format @ 0x7fb65e902f00] Setting 'pix_fmts' to value 'yuv420p|yuvj420p|yuv422p|yuvj422p|yuv444p|yuvj444p|nv12|nv16|nv21'
[format_out_0_1 @ 0x7fb65e903740] Setting 'sample_fmts' to value 'fltp'
[format_out_0_1 @ 0x7fb65e903740] Setting 'sample_rates' to value '96000|88200|64000|48000|44100|32000|24000|22050|16000|12000|11025|8000|7350'
[AVFilterGraph @ 0x7fb65c604180] query_formats: 13 queried, 24 merged, 0 already done, 0 delayed
[libx264 @ 0x7fb65e003400] using mv_range_thread = 24
[libx264 @ 0x7fb65e003400] using cpu capabilities: MMX2 SSE2Fast SSSE3 SSE4.2 AVX FMA3 BMI2 AVX2
[libx264 @ 0x7fb65e003400] profile High, level 3.0
[libx264 @ 0x7fb65e003400] 264 - core 152 r2854 e9a5903 - H.264/MPEG-4 AVC codec - Copyleft 2003-2017 - http://www.videolan.org/x264.html - options: cabac=1 ref=3 deblock=1:0:0 analyse=0x3:0x113 me=hex subme=7 psy=1 psy_rd=1.00:0.00 mixed_ref=1 me_range=16 chroma_me=1 trellis=1 8x8dct=1 cqm=0 deadzone=21,11 fast_pskip=1 chroma_qp_offset=-2 threads=11 lookahead_threads=1 sliced_threads=0 nr=0 decimate=1 interlaced=0 bluray_compat=0 constrained_intra=0 bframes=3 b_pyramid=2 b_adapt=1 b_bias=0 direct=1 weightb=1 open_gop=0 weightp=2 keyint=250 keyint_min=25 scenecut=40 intra_refresh=0 rc_lookahead=40 rc=crf mbtree=1 crf=23.0 qcomp=0.60 qpmin=0 qpmax=69 qpstep=4 ip_ratio=1.40 aq=1:1.00
Clipping frame in rate conversion by 0.000008
Output #0, mp4, to 'output.mp4':
  Metadata:
    major_brand     : isom
    minor_version   : 512
    compatible_brands: isomiso2avc1mp41
    encoder         : Lavf58.12.100
    Stream #0:0, 0, 1/12800: Video: h264 (libx264), 1 reference frame (avc1 / 0x31637661), yuv420p(progressive), 640x360, 0/1, q=-1--1, 25 fps, 12800 tbn, 25 tbc (default)
    Metadata:
      encoder         : Lavc58.18.100 libx264
    Side data:
      cpb: bitrate max/min/avg: 0/0/0 buffer size: 0 vbv_delay: -1
    Stream #0:1, 0, 1/48000: Audio: aac (LC) (mp4a / 0x6134706D), 48000 Hz, mono, fltp, delay 1024, 69 kb/s (default)
    Metadata:
      encoder         : Lavc58.18.100 aac
cur_dts is invalid (this is harmless if it occurs once at the start per stream)
    Last message repeated 4 times
[Parsed_concat_4 @ 0x7fb65e9013c0] EOF on in0:v0, 1 streams left in segment.
^C^C^CReceived > 3 system signals, hard exiting

Change History (8)

comment:1 by Carl Eugen Hoyos, 6 years ago

Keywords: deadlock added; avfilter removed

Please confirm if the issue is reproducible with current FFmpeg git head.

comment:2 by Vadym Borodavko, 6 years ago

Yes, the issue is still reproducible with current FFmpeg git head:

$ ffmpeg -y -f rawvideo -t 0.2 -s 640x360 -pix_fmt rgb24 -i /dev/zero -f lavfi -t 0.2 -i aevalsrc=0 -c:v libx264 -profile:v high -preset veryfast -pix_fmt yuv420p -r 25 -g 25 -c:a aac -ar 48000 source.mp4
ffmpeg version git-2018-08-09-e0539f0 Copyright (c) 2000-2018 the FFmpeg developers
  built with Apple LLVM version 9.1.0 (clang-902.0.39.2)
  configuration: --prefix=/usr/local/Cellar/ffmpeg/HEAD-e0539f0 --enable-shared --enable-pthreads --enable-version3 --enable-hardcoded-tables --enable-avresample --cc=clang --host-cflags= --host-ldflags= --enable-gpl --disable-indev=qtkit --disable-securetransport --enable-libx264 --enable-opencl --enable-videotoolbox --disable-lzma
  libavutil      56. 18.102 / 56. 18.102
  libavcodec     58. 22.101 / 58. 22.101
  libavformat    58. 17.101 / 58. 17.101
  libavdevice    58.  4.101 / 58.  4.101
  libavfilter     7. 26.100 /  7. 26.100
  libavresample   4.  0.  0 /  4.  0.  0
  libswscale      5.  2.100 /  5.  2.100
  libswresample   3.  2.100 /  3.  2.100
  libpostproc    55.  2.100 / 55.  2.100
Input #0, rawvideo, from '/dev/zero':
  Duration: N/A, start: 0.000000, bitrate: 138240 kb/s
    Stream #0:0: Video: rawvideo (RGB[24] / 0x18424752), rgb24, 640x360, 138240 kb/s, 25 tbr, 25 tbn, 25 tbc
Input #1, lavfi, from 'aevalsrc=0':
  Duration: N/A, start: 0.000000, bitrate: 2822 kb/s
    Stream #1:0: Audio: pcm_f64le, 44100 Hz, mono, dbl, 2822 kb/s
Stream mapping:
  Stream #0:0 -> #0:0 (rawvideo (native) -> h264 (libx264))
  Stream #1:0 -> #0:1 (pcm_f64le (native) -> aac (native))
Press [q] to stop, [?] for help
[libx264 @ 0x7f8c2a81d800] using cpu capabilities: MMX2 SSE2Fast SSSE3 SSE4.2 AVX FMA3 BMI2 AVX2
[libx264 @ 0x7f8c2a81d800] profile High, level 3.0
[libx264 @ 0x7f8c2a81d800] 264 - core 152 r2854 e9a5903 - H.264/MPEG-4 AVC codec - Copyleft 2003-2017 - http://www.videolan.org/x264.html - options: cabac=1 ref=1 deblock=1:0:0 analyse=0x3:0x113 me=hex subme=2 psy=1 psy_rd=1.00:0.00 mixed_ref=0 me_range=16 chroma_me=1 trellis=0 8x8dct=1 cqm=0 deadzone=21,11 fast_pskip=1 chroma_qp_offset=0 threads=11 lookahead_threads=2 sliced_threads=0 nr=0 decimate=1 interlaced=0 bluray_compat=0 constrained_intra=0 bframes=3 b_pyramid=2 b_adapt=1 b_bias=0 direct=1 weightb=1 open_gop=0 weightp=1 keyint=25 keyint_min=2 scenecut=40 intra_refresh=0 rc_lookahead=10 rc=crf mbtree=1 crf=23.0 qcomp=0.60 qpmin=0 qpmax=69 qpstep=4 ip_ratio=1.40 aq=1:1.00
Output #0, mp4, to 'source.mp4':
  Metadata:
    encoder         : Lavf58.17.101
    Stream #0:0: Video: h264 (libx264) (avc1 / 0x31637661), yuv420p(progressive), 640x360, q=-1--1, 25 fps, 12800 tbn, 25 tbc
    Metadata:
      encoder         : Lavc58.22.101 libx264
    Side data:
      cpb: bitrate max/min/avg: 0/0/0 buffer size: 0 vbv_delay: -1
    Stream #0:1: Audio: aac (LC) (mp4a / 0x6134706D), 48000 Hz, mono, fltp, 69 kb/s
    Metadata:
      encoder         : Lavc58.22.101 aac
frame=    5 fps=0.0 q=-1.0 Lsize=       2kB time=00:00:00.21 bitrate=  92.5kbits/s speed=7.38x    
video:1kB audio:0kB subtitle:0kB other streams:0kB global headers:0kB muxing overhead: 168.152176%
[libx264 @ 0x7f8c2a81d800] frame I:1     Avg QP:11.00  size:    98
[libx264 @ 0x7f8c2a81d800] frame P:1     Avg QP:13.00  size:    20
[libx264 @ 0x7f8c2a81d800] frame B:3     Avg QP:12.67  size:    18
[libx264 @ 0x7f8c2a81d800] consecutive B-frames: 20.0%  0.0%  0.0% 80.0%
[libx264 @ 0x7f8c2a81d800] mb I  I16..4: 99.9%  0.0%  0.1%
[libx264 @ 0x7f8c2a81d800] mb P  I16..4:  0.0%  0.0%  0.0%  P16..4:  0.0%  0.0%  0.0%  0.0%  0.0%    skip:100.0%
[libx264 @ 0x7f8c2a81d800] mb B  I16..4:  0.0%  0.0%  0.0%  B16..8:  0.0%  0.0%  0.0%  direct: 0.0%  skip:100.0%
[libx264 @ 0x7f8c2a81d800] 8x8 transform intra:0.0%
[libx264 @ 0x7f8c2a81d800] coded y,uvDC,uvAC intra: 0.0% 0.0% 0.0% inter: 0.0% 0.0% 0.0%
[libx264 @ 0x7f8c2a81d800] i16 v,h,dc,p: 96%  0%  4%  0%
[libx264 @ 0x7f8c2a81d800] i4 v,h,dc,ddl,ddr,vr,hd,vl,hu:  0%  0% 100%  0%  0%  0%  0%  0%  0%
[libx264 @ 0x7f8c2a81d800] i8c dc,h,v,p: 100%  0%  0%  0%
[libx264 @ 0x7f8c2a81d800] Weighted P-Frames: Y:0.0% UV:0.0%
[libx264 @ 0x7f8c2a81d800] kb/s:6.88
[aac @ 0x7f8c2a81f000] Qavg: 62211.172



$ ffmpeg -v 9 -loglevel 99 -y -i source.mp4 -filter_complex "[v] trim=0:1 [v_1]; [a] atrim=0:1 [a_1]; [v] trim=2:3 [v_2]; [a] atrim=2:3 [a_2]; [v_1] [a_1] [v_2] [a_2] concat=n=2:v=1:a=1" output.mp4
ffmpeg version git-2018-08-09-e0539f0 Copyright (c) 2000-2018 the FFmpeg developers
  built with Apple LLVM version 9.1.0 (clang-902.0.39.2)
  configuration: --prefix=/usr/local/Cellar/ffmpeg/HEAD-e0539f0 --enable-shared --enable-pthreads --enable-version3 --enable-hardcoded-tables --enable-avresample --cc=clang --host-cflags= --host-ldflags= --enable-gpl --disable-indev=qtkit --disable-securetransport --enable-libx264 --enable-opencl --enable-videotoolbox --disable-lzma
  libavutil      56. 18.102 / 56. 18.102
  libavcodec     58. 22.101 / 58. 22.101
  libavformat    58. 17.101 / 58. 17.101
  libavdevice    58.  4.101 / 58.  4.101
  libavfilter     7. 26.100 /  7. 26.100
  libavresample   4.  0.  0 /  4.  0.  0
  libswscale      5.  2.100 /  5.  2.100
  libswresample   3.  2.100 /  3.  2.100
  libpostproc    55.  2.100 / 55.  2.100
Splitting the commandline.
Reading option '-v' ... matched as option 'v' (set logging level) with argument '9'.
Reading option '-loglevel' ... matched as option 'loglevel' (set logging level) with argument '99'.
Reading option '-y' ... matched as option 'y' (overwrite output files) with argument '1'.
Reading option '-i' ... matched as input url with argument 'source.mp4'.
Reading option '-filter_complex' ... matched as option 'filter_complex' (create a complex filtergraph) with argument '[v] trim=0:1 [v_1]; [a] atrim=0:1 [a_1]; [v] trim=2:3 [v_2]; [a] atrim=2:3 [a_2]; [v_1] [a_1] [v_2] [a_2] concat=n=2:v=1:a=1'.
Reading option 'output.mp4' ... matched as output url.
Finished splitting the commandline.
Parsing a group of options: global .
Applying option v (set logging level) with argument 9.
Applying option y (overwrite output files) with argument 1.
Applying option filter_complex (create a complex filtergraph) with argument [v] trim=0:1 [v_1]; [a] atrim=0:1 [a_1]; [v] trim=2:3 [v_2]; [a] atrim=2:3 [a_2]; [v_1] [a_1] [v_2] [a_2] concat=n=2:v=1:a=1.
Successfully parsed a group of options.
Parsing a group of options: input url source.mp4.
Successfully parsed a group of options.
Opening an input file: source.mp4.
[NULL @ 0x7fbfdd801800] Opening 'source.mp4' for reading
[file @ 0x7fbfdcd07a80] Setting default whitelist 'file,crypto'
Probing mov,mp4,m4a,3gp,3g2,mj2 score:100 size:2048
Probing mp3 score:1 size:2048
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x7fbfdd801800] Format mov,mp4,m4a,3gp,3g2,mj2 probed with size=2048 and score=100
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x7fbfdd801800] type:'ftyp' parent:'root' sz: 32 8 2467
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x7fbfdd801800] ISO: File Type Major Brand: isom
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x7fbfdd801800] type:'free' parent:'root' sz: 8 40 2467
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x7fbfdd801800] type:'mdat' parent:'root' sz: 929 48 2467
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x7fbfdd801800] type:'moov' parent:'root' sz: 1498 977 2467
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x7fbfdd801800] type:'mvhd' parent:'moov' sz: 108 8 1490
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x7fbfdd801800] time scale = 1000
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x7fbfdd801800] type:'trak' parent:'moov' sz: 655 116 1490
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x7fbfdd801800] type:'tkhd' parent:'trak' sz: 92 8 647
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x7fbfdd801800] type:'edts' parent:'trak' sz: 36 100 647
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x7fbfdd801800] type:'elst' parent:'edts' sz: 28 8 28
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x7fbfdd801800] track[0].edit_count = 1
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x7fbfdd801800] duration=200 time=1024 rate=1.000000
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x7fbfdd801800] type:'mdia' parent:'trak' sz: 519 136 647
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x7fbfdd801800] type:'mdhd' parent:'mdia' sz: 32 8 511
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x7fbfdd801800] type:'hdlr' parent:'mdia' sz: 45 40 511
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x7fbfdd801800] ctype=[0][0][0][0]
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x7fbfdd801800] stype=vide
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x7fbfdd801800] type:'minf' parent:'mdia' sz: 434 85 511
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x7fbfdd801800] type:'vmhd' parent:'minf' sz: 20 8 426
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x7fbfdd801800] type:'dinf' parent:'minf' sz: 36 28 426
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x7fbfdd801800] type:'dref' parent:'dinf' sz: 28 8 28
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x7fbfdd801800] Unknown dref type 0x206c7275 size 12
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x7fbfdd801800] type:'stbl' parent:'minf' sz: 370 64 426
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x7fbfdd801800] type:'stsd' parent:'stbl' sz: 150 8 362
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x7fbfdd801800] size=134 4CC=avc1 codec_type=0
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x7fbfdd801800] type:'avcC' parent:'stsd' sz: 48 8 48
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x7fbfdd801800] type:'stts' parent:'stbl' sz: 24 158 362
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x7fbfdd801800] track[0].stts.entries = 1
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x7fbfdd801800] sample_count=5, sample_duration=512
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x7fbfdd801800] type:'stss' parent:'stbl' sz: 20 182 362
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x7fbfdd801800] keyframe_count = 1
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x7fbfdd801800] type:'ctts' parent:'stbl' sz: 56 202 362
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x7fbfdd801800] track[0].ctts.entries = 5
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x7fbfdd801800] count=1, duration=1024
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x7fbfdd801800] count=1, duration=2560
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x7fbfdd801800] count=1, duration=1024
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x7fbfdd801800] count=1, duration=0
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x7fbfdd801800] count=1, duration=512
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x7fbfdd801800] dts shift 0
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x7fbfdd801800] type:'stsc' parent:'stbl' sz: 40 258 362
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x7fbfdd801800] track[0].stsc.entries = 2
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x7fbfdd801800] type:'stsz' parent:'stbl' sz: 40 298 362
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x7fbfdd801800] sample_size = 0 sample_count = 5
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x7fbfdd801800] type:'stco' parent:'stbl' sz: 32 338 362
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x7fbfdd801800] AVIndex stream 0, sample 0, offset 30, dts 0, size 786, distance 0, keyframe 1
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x7fbfdd801800] AVIndex stream 0, sample 1, offset 342, dts 512, size 20, distance 1, keyframe 0
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x7fbfdd801800] AVIndex stream 0, sample 2, offset 36b, dts 1024, size 18, distance 2, keyframe 0
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x7fbfdd801800] AVIndex stream 0, sample 3, offset 385, dts 1536, size 18, distance 3, keyframe 0
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x7fbfdd801800] AVIndex stream 0, sample 4, offset 39f, dts 2048, size 18, distance 4, keyframe 0
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x7fbfdd801800] Processing st: 0, edit list 0 - media time: 1024, duration: 2560
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x7fbfdd801800] stts: 0 ctts: 1024, ctts_index: 0, ctts_count: 5
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x7fbfdd801800] stts: 512 ctts: 2560, ctts_index: 1, ctts_count: 5
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x7fbfdd801800] stts: 1024 ctts: 1024, ctts_index: 2, ctts_count: 5
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x7fbfdd801800] stts: 1536 ctts: 0, ctts_index: 3, ctts_count: 5
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x7fbfdd801800] stts: 2048 ctts: 512, ctts_index: 4, ctts_count: 5
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x7fbfdd801800] Offset DTS by 1024 to make first pts zero.
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x7fbfdd801800] Setting codecpar->delay to 2 for stream st: 0
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x7fbfdd801800] type:'trak' parent:'moov' sz: 629 771 1490
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x7fbfdd801800] type:'tkhd' parent:'trak' sz: 92 8 621
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x7fbfdd801800] type:'edts' parent:'trak' sz: 36 100 621
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x7fbfdd801800] type:'elst' parent:'edts' sz: 28 8 28
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x7fbfdd801800] track[1].edit_count = 1
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x7fbfdd801800] duration=200 time=1024 rate=1.000000
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x7fbfdd801800] type:'mdia' parent:'trak' sz: 493 136 621
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x7fbfdd801800] type:'mdhd' parent:'mdia' sz: 32 8 485
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x7fbfdd801800] type:'hdlr' parent:'mdia' sz: 45 40 485
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x7fbfdd801800] ctype=[0][0][0][0]
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x7fbfdd801800] stype=soun
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x7fbfdd801800] type:'minf' parent:'mdia' sz: 408 85 485
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x7fbfdd801800] type:'smhd' parent:'minf' sz: 16 8 400
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x7fbfdd801800] type:'dinf' parent:'minf' sz: 36 24 400
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x7fbfdd801800] type:'dref' parent:'dinf' sz: 28 8 28
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x7fbfdd801800] Unknown dref type 0x206c7275 size 12
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x7fbfdd801800] type:'stbl' parent:'minf' sz: 348 60 400
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x7fbfdd801800] type:'stsd' parent:'stbl' sz: 106 8 340
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x7fbfdd801800] size=90 4CC=mp4a codec_type=1
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x7fbfdd801800] audio channels 2
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x7fbfdd801800] version =0, isom =1
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x7fbfdd801800] type:'esds' parent:'stsd' sz: 54 8 54
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x7fbfdd801800] MPEG-4 description: tag=0x03 len=37
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x7fbfdd801800] MPEG-4 description: tag=0x04 len=23
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x7fbfdd801800] esds object type id 0x40
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x7fbfdd801800] MPEG-4 description: tag=0x05 len=5
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x7fbfdd801800] Specific MPEG-4 header len=5
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x7fbfdd801800] mp4a config channels 1 obj 2 ext obj 5 sample rate 48000 ext sample rate 0
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x7fbfdd801800] type:'stts' parent:'stbl' sz: 32 114 340
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x7fbfdd801800] track[1].stts.entries = 2
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x7fbfdd801800] sample_count=10, sample_duration=1024
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x7fbfdd801800] sample_count=1, sample_duration=384
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x7fbfdd801800] type:'stsc' parent:'stbl' sz: 52 146 340
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x7fbfdd801800] track[1].stsc.entries = 3
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x7fbfdd801800] type:'stsz' parent:'stbl' sz: 64 198 340
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x7fbfdd801800] sample_size = 0 sample_count = 11
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x7fbfdd801800] type:'stco' parent:'stbl' sz: 32 262 340
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x7fbfdd801800] type:'sgpd' parent:'stbl' sz: 26 294 340
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x7fbfdd801800] type:'sbgp' parent:'stbl' sz: 28 320 340
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x7fbfdd801800] AVIndex stream 1, sample 0, offset 356, dts 0, size 21, distance 0, keyframe 1
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x7fbfdd801800] AVIndex stream 1, sample 1, offset 37d, dts 1024, size 4, distance 0, keyframe 1
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x7fbfdd801800] AVIndex stream 1, sample 2, offset 381, dts 2048, size 4, distance 0, keyframe 1
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x7fbfdd801800] AVIndex stream 1, sample 3, offset 397, dts 3072, size 4, distance 0, keyframe 1
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x7fbfdd801800] AVIndex stream 1, sample 4, offset 39b, dts 4096, size 4, distance 0, keyframe 1
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x7fbfdd801800] AVIndex stream 1, sample 5, offset 3b1, dts 5120, size 4, distance 0, keyframe 1
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x7fbfdd801800] AVIndex stream 1, sample 6, offset 3b5, dts 6144, size 4, distance 0, keyframe 1
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x7fbfdd801800] AVIndex stream 1, sample 7, offset 3b9, dts 7168, size 4, distance 0, keyframe 1
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x7fbfdd801800] AVIndex stream 1, sample 8, offset 3bd, dts 8192, size 4, distance 0, keyframe 1
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x7fbfdd801800] AVIndex stream 1, sample 9, offset 3c1, dts 9216, size 4, distance 0, keyframe 1
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x7fbfdd801800] AVIndex stream 1, sample 10, offset 3c5, dts 10240, size 4, distance 0, keyframe 1
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x7fbfdd801800] Processing st: 1, edit list 0 - media time: 1024, duration: 9600
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x7fbfdd801800] drop a frame at curr_cts: 0 @ 0
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x7fbfdd801800] type:'udta' parent:'moov' sz: 98 1400 1490
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x7fbfdd801800] type:'meta' parent:'udta' sz: 90 8 90
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x7fbfdd801800] type:'hdlr' parent:'meta' sz: 33 8 78
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x7fbfdd801800] ctype=[0][0][0][0]
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x7fbfdd801800] stype=mdir
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x7fbfdd801800] type:'ilst' parent:'meta' sz: 45 41 78
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x7fbfdd801800] type:'[169]too' parent:'ilst' sz: 37 8 37
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x7fbfdd801800] on_parse_exit_offset=2467
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x7fbfdd801800] Before avformat_find_stream_info() pos: 2467 bytes read:2467 seeks:0 nb_streams:2
[h264 @ 0x7fbfdd812800] nal_unit_type: 7(SPS), nal_ref_idc: 3
[h264 @ 0x7fbfdd812800] nal_unit_type: 8(PPS), nal_ref_idc: 3
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x7fbfdd801800] stream 0, sample 0, dts -80000
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x7fbfdd801800] stream 1, sample 0, dts -21333
[h264 @ 0x7fbfdd812800] nal_unit_type: 6(SEI), nal_ref_idc: 0
[h264 @ 0x7fbfdd812800] nal_unit_type: 5(IDR), nal_ref_idc: 3
[h264 @ 0x7fbfdd812800] Format yuv420p chosen by get_format().
[h264 @ 0x7fbfdd812800] Reinit context to 640x368, pix_fmt: yuv420p
[h264 @ 0x7fbfdd812800] no picture 
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x7fbfdd801800] stream 0, sample 1, dts -40000
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x7fbfdd801800] stream 1, sample 0, dts -21333
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x7fbfdd801800] stream 0, sample 2, dts 0
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x7fbfdd801800] stream 1, sample 0, dts -21333
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x7fbfdd801800] demuxer injecting skip 1024 / discard 0
[aac @ 0x7fbfde003800] skip 1024 / discard 0 samples due to side data
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x7fbfdd801800] All info found
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x7fbfdd801800] stream 0: start_time: 0.000 duration: 0.200
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x7fbfdd801800] stream 1: start_time: 0.000 duration: 0.200
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x7fbfdd801800] format: start_time: 0.000 duration: 0.222 bitrate=88 kb/s
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x7fbfdd801800] After avformat_find_stream_info() pos: 875 bytes read:2467 seeks:0 frames:3
Input #0, mov,mp4,m4a,3gp,3g2,mj2, from 'source.mp4':
  Metadata:
    major_brand     : isom
    minor_version   : 512
    compatible_brands: isomiso2avc1mp41
    encoder         : Lavf58.17.101
  Duration: 00:00:00.22, start: 0.000000, bitrate: 88 kb/s
    Stream #0:0(und), 2, 1/12800: Video: h264 (High), 1 reference frame (avc1 / 0x31637661), yuv420p(left), 640x360 (640x368), 0/1, 34 kb/s, 25 fps, 25 tbr, 12800 tbn, 50 tbc (default)
    Metadata:
      handler_name    : VideoHandler
    Stream #0:1(und), 1, 1/48000: Audio: aac (LC) (mp4a / 0x6134706D), 48000 Hz, mono, fltp, 2 kb/s (default)
    Metadata:
      handler_name    : SoundHandler
Successfully opened the file.
[Parsed_trim_0 @ 0x7fbfde80bf00] Setting 'start' to value '0'
[Parsed_trim_0 @ 0x7fbfde80bf00] Setting 'end' to value '1'
[Parsed_atrim_1 @ 0x7fbfde80a100] Setting 'start' to value '0'
[Parsed_atrim_1 @ 0x7fbfde80a100] Setting 'end' to value '1'
[Parsed_trim_2 @ 0x7fbfde80a580] Setting 'start' to value '2'
[Parsed_trim_2 @ 0x7fbfde80a580] Setting 'end' to value '3'
[Parsed_atrim_3 @ 0x7fbfde80a900] Setting 'start' to value '2'
[Parsed_atrim_3 @ 0x7fbfde80a900] Setting 'end' to value '3'
[Parsed_concat_4 @ 0x7fbfde80ac80] Setting 'n' to value '2'
[Parsed_concat_4 @ 0x7fbfde80ac80] Setting 'v' to value '1'
[Parsed_concat_4 @ 0x7fbfde80ac80] Setting 'a' to value '1'
Parsing a group of options: output url output.mp4.
Successfully parsed a group of options.
Opening an output file: output.mp4.
[file @ 0x7fbfdcc04480] Setting default whitelist 'file,crypto'
Successfully opened the file.
detected 8 logical cores
[h264 @ 0x7fbfdd00a400] nal_unit_type: 7(SPS), nal_ref_idc: 3
[h264 @ 0x7fbfdd00a400] nal_unit_type: 8(PPS), nal_ref_idc: 3
Stream mapping:
  Stream #0:0 (h264) -> trim
  Stream #0:0 (h264) -> trim
  Stream #0:1 (aac) -> atrim
  Stream #0:1 (aac) -> atrim
  concat:out:v0 -> Stream #0:0 (libx264)
  concat:out:a0 -> Stream #0:1 (aac)
Press [q] to stop, [?] for help
cur_dts is invalid (this is harmless if it occurs once at the start per stream)
    Last message repeated 1 times
[h264 @ 0x7fbfdd00a400] nal_unit_type: 6(SEI), nal_ref_idc: 0
[h264 @ 0x7fbfdd00a400] nal_unit_type: 5(IDR), nal_ref_idc: 3
[h264 @ 0x7fbfdd00a400] Format yuv420p chosen by get_format().
[h264 @ 0x7fbfdd00a400] Reinit context to 640x368, pix_fmt: yuv420p
[h264 @ 0x7fbfdd00a400] no picture 
cur_dts is invalid (this is harmless if it occurs once at the start per stream)
[aac @ 0x7fbfdf00de00] skip 1024 / discard 0 samples due to side data
cur_dts is invalid (this is harmless if it occurs once at the start per stream)
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x7fbfdd801800] stream 0, sample 2, dts 0
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x7fbfdd801800] stream 1, sample 1, dts 0
[h264 @ 0x7fbfdd000600] nal_unit_type: 1(Coded slice of a non-IDR picture), nal_ref_idc: 2
[h264 @ 0x7fbfdd000600] no picture 
cur_dts is invalid (this is harmless if it occurs once at the start per stream)
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x7fbfdd801800] stream 0, sample 3, dts 40000
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x7fbfdd801800] stream 1, sample 1, dts 0
cur_dts is invalid (this is harmless if it occurs once at the start per stream)
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x7fbfdd801800] stream 0, sample 3, dts 40000
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x7fbfdd801800] stream 1, sample 2, dts 21333
cur_dts is invalid (this is harmless if it occurs once at the start per stream)
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x7fbfdd801800] stream 0, sample 3, dts 40000
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x7fbfdd801800] stream 1, sample 3, dts 42667
[h264 @ 0x7fbfdd02c000] nal_unit_type: 1(Coded slice of a non-IDR picture), nal_ref_idc: 2
cur_dts is invalid (this is harmless if it occurs once at the start per stream)
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x7fbfdd801800] stream 0, sample 4, dts 80000
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x7fbfdd801800] stream 1, sample 3, dts 42667
cur_dts is invalid (this is harmless if it occurs once at the start per stream)
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x7fbfdd801800] stream 0, sample 4, dts 80000
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x7fbfdd801800] stream 1, sample 4, dts 64000
cur_dts is invalid (this is harmless if it occurs once at the start per stream)
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x7fbfdd801800] stream 0, sample 4, dts 80000
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x7fbfdd801800] stream 1, sample 5, dts 85333
[h264 @ 0x7fbfdd042400] nal_unit_type: 1(Coded slice of a non-IDR picture), nal_ref_idc: 0
cur_dts is invalid (this is harmless if it occurs once at the start per stream)
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x7fbfdd801800] stream 1, sample 5, dts 85333
cur_dts is invalid (this is harmless if it occurs once at the start per stream)
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x7fbfdd801800] stream 1, sample 6, dts 106667
cur_dts is invalid (this is harmless if it occurs once at the start per stream)
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x7fbfdd801800] stream 1, sample 7, dts 128000
cur_dts is invalid (this is harmless if it occurs once at the start per stream)
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x7fbfdd801800] stream 1, sample 8, dts 149333
cur_dts is invalid (this is harmless if it occurs once at the start per stream)
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x7fbfdd801800] stream 1, sample 9, dts 170667
cur_dts is invalid (this is harmless if it occurs once at the start per stream)
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x7fbfdd801800] stream 1, sample 10, dts 192000
cur_dts is invalid (this is harmless if it occurs once at the start per stream)
[h264 @ 0x7fbfdd058800] nal_unit_type: 1(Coded slice of a non-IDR picture), nal_ref_idc: 0
[Parsed_trim_0 @ 0x7fbfde900000] Setting 'start' to value '0'
[Parsed_trim_0 @ 0x7fbfde900000] Setting 'end' to value '1'
[Parsed_atrim_1 @ 0x7fbfde900700] Setting 'start' to value '0'
[Parsed_atrim_1 @ 0x7fbfde900700] Setting 'end' to value '1'
[Parsed_trim_2 @ 0x7fbfde900b80] Setting 'start' to value '2'
[Parsed_trim_2 @ 0x7fbfde900b80] Setting 'end' to value '3'
[Parsed_atrim_3 @ 0x7fbfde900f80] Setting 'start' to value '2'
[Parsed_atrim_3 @ 0x7fbfde900f80] Setting 'end' to value '3'
[Parsed_concat_4 @ 0x7fbfde9013c0] Setting 'n' to value '2'
[Parsed_concat_4 @ 0x7fbfde9013c0] Setting 'v' to value '1'
[Parsed_concat_4 @ 0x7fbfde9013c0] Setting 'a' to value '1'
[graph 0 input from stream 0:0 @ 0x7fbfde901e00] Setting 'video_size' to value '640x360'
[graph 0 input from stream 0:0 @ 0x7fbfde901e00] Setting 'pix_fmt' to value '0'
[graph 0 input from stream 0:0 @ 0x7fbfde901e00] Setting 'time_base' to value '1/12800'
[graph 0 input from stream 0:0 @ 0x7fbfde901e00] Setting 'pixel_aspect' to value '0/1'
[graph 0 input from stream 0:0 @ 0x7fbfde901e00] Setting 'sws_param' to value 'flags=2'
[graph 0 input from stream 0:0 @ 0x7fbfde901e00] Setting 'frame_rate' to value '25/1'
[graph 0 input from stream 0:0 @ 0x7fbfde901e00] w:640 h:360 pixfmt:yuv420p tb:1/12800 fr:25/1 sar:0/1 sws_param:flags=2
[graph_0_in_0_1 @ 0x7fbfde901f00] Setting 'time_base' to value '1/48000'
[graph_0_in_0_1 @ 0x7fbfde901f00] Setting 'sample_rate' to value '48000'
[graph_0_in_0_1 @ 0x7fbfde901f00] Setting 'sample_fmt' to value 'fltp'
[graph_0_in_0_1 @ 0x7fbfde901f00] Setting 'channel_layout' to value '0x4'
[graph_0_in_0_1 @ 0x7fbfde901f00] tb:1/48000 samplefmt:fltp samplerate:48000 chlayout:0x4
[graph 0 input from stream 0:0 @ 0x7fbfde9024c0] Setting 'video_size' to value '640x360'
[graph 0 input from stream 0:0 @ 0x7fbfde9024c0] Setting 'pix_fmt' to value '0'
[graph 0 input from stream 0:0 @ 0x7fbfde9024c0] Setting 'time_base' to value '1/12800'
[graph 0 input from stream 0:0 @ 0x7fbfde9024c0] Setting 'pixel_aspect' to value '0/1'
[graph 0 input from stream 0:0 @ 0x7fbfde9024c0] Setting 'sws_param' to value 'flags=2'
[graph 0 input from stream 0:0 @ 0x7fbfde9024c0] Setting 'frame_rate' to value '25/1'
[graph 0 input from stream 0:0 @ 0x7fbfde9024c0] w:640 h:360 pixfmt:yuv420p tb:1/12800 fr:25/1 sar:0/1 sws_param:flags=2
[graph_0_in_0_1 @ 0x7fbfde902740] Setting 'time_base' to value '1/48000'
[graph_0_in_0_1 @ 0x7fbfde902740] Setting 'sample_rate' to value '48000'
[graph_0_in_0_1 @ 0x7fbfde902740] Setting 'sample_fmt' to value 'fltp'
[graph_0_in_0_1 @ 0x7fbfde902740] Setting 'channel_layout' to value '0x4'
[graph_0_in_0_1 @ 0x7fbfde902740] tb:1/48000 samplefmt:fltp samplerate:48000 chlayout:0x4
[format @ 0x7fbfde902f00] Setting 'pix_fmts' to value 'yuv420p|yuvj420p|yuv422p|yuvj422p|yuv444p|yuvj444p|nv12|nv16|nv21'
[format_out_0_1 @ 0x7fbfde903740] Setting 'sample_fmts' to value 'fltp'
[format_out_0_1 @ 0x7fbfde903740] Setting 'sample_rates' to value '96000|88200|64000|48000|44100|32000|24000|22050|16000|12000|11025|8000|7350'
[AVFilterGraph @ 0x7fbfdcd123c0] query_formats: 13 queried, 24 merged, 0 already done, 0 delayed
[libx264 @ 0x7fbfdf011800] using mv_range_thread = 24
[libx264 @ 0x7fbfdf011800] using cpu capabilities: MMX2 SSE2Fast SSSE3 SSE4.2 AVX FMA3 BMI2 AVX2
[libx264 @ 0x7fbfdf011800] profile High, level 3.0
[libx264 @ 0x7fbfdf011800] 264 - core 152 r2854 e9a5903 - H.264/MPEG-4 AVC codec - Copyleft 2003-2017 - http://www.videolan.org/x264.html - options: cabac=1 ref=3 deblock=1:0:0 analyse=0x3:0x113 me=hex subme=7 psy=1 psy_rd=1.00:0.00 mixed_ref=1 me_range=16 chroma_me=1 trellis=1 8x8dct=1 cqm=0 deadzone=21,11 fast_pskip=1 chroma_qp_offset=-2 threads=11 lookahead_threads=1 sliced_threads=0 nr=0 decimate=1 interlaced=0 bluray_compat=0 constrained_intra=0 bframes=3 b_pyramid=2 b_adapt=1 b_bias=0 direct=1 weightb=1 open_gop=0 weightp=2 keyint=250 keyint_min=25 scenecut=40 intra_refresh=0 rc_lookahead=40 rc=crf mbtree=1 crf=23.0 qcomp=0.60 qpmin=0 qpmax=69 qpstep=4 ip_ratio=1.40 aq=1:1.00
Clipping frame in rate conversion by 0.000008
Output #0, mp4, to 'output.mp4':
  Metadata:
    major_brand     : isom
    minor_version   : 512
    compatible_brands: isomiso2avc1mp41
    encoder         : Lavf58.17.101
    Stream #0:0, 0, 1/12800: Video: h264 (libx264), 1 reference frame (avc1 / 0x31637661), yuv420p(progressive), 640x360, 0/1, q=-1--1, 25 fps, 12800 tbn, 25 tbc (default)
    Metadata:
      encoder         : Lavc58.22.101 libx264
    Side data:
      cpb: bitrate max/min/avg: 0/0/0 buffer size: 0 vbv_delay: -1
    Stream #0:1, 0, 1/48000: Audio: aac (LC) (mp4a / 0x6134706D), 48000 Hz, mono, fltp, delay 1024, 69 kb/s (default)
    Metadata:
      encoder         : Lavc58.22.101 aac
cur_dts is invalid (this is harmless if it occurs once at the start per stream)
    Last message repeated 4 times
[Parsed_concat_4 @ 0x7fbfde9013c0] EOF on in0:v0, 1 streams left in segment.
^C^C^CReceived > 3 system signals, hard exiting

comment:3 by Vadym Borodavko, 6 years ago

Debug information:

Process 56275 stopped
* thread #1, queue = 'com.apple.main-thread', stop reason = signal SIGSTOP
    frame #0: 0x00007fff6b92a780 libsystem_c.dylib`__vfprintf + 3942
libsystem_c.dylib`__vfprintf:
->  0x7fff6b92a780 <+3942>: leaq   0x421e2(%rip), %rcx       ; "(null)"
    0x7fff6b92a787 <+3949>: cmovneq %rax, %rcx
    0x7fff6b92a78b <+3953>: movq   %rcx, -0x1a0(%rbp)
    0x7fff6b92a792 <+3960>: jmp    0x7fff6b92aa60            ; <+4678>
Target 0: (ffmpeg_g) stopped.

Executable module set to "./ffmpeg_g".
Architecture set to: x86_64h-apple-macosx.
(lldb) bt
* thread #1, queue = 'com.apple.main-thread', stop reason = signal SIGSTOP
  * frame #0: 0x00007fff6b92a780 libsystem_c.dylib`__vfprintf + 3942
    frame #1: 0x00007fff6b952059 libsystem_c.dylib`__v2printf + 473
    frame #2: 0x00007fff6b93734b libsystem_c.dylib`_vsnprintf + 415
    frame #3: 0x00007fff6b9373fe libsystem_c.dylib`vsnprintf + 80
    frame #4: 0x0000000107f55bb0 ffmpeg_g`av_bprintf(buf=0x00007ffee8b9fbc8, fmt="%s") at bprint.c:105 [opt]
    frame #5: 0x0000000107f579b6 ffmpeg_g`av_get_channel_layout_string(buf=<unavailable>, buf_size=<unavailable>, nb_channels=<unavailable>, channel_layout=<unavailable>) at channel_layout.c:217 [opt]
    frame #6: 0x00000001070ef604 ffmpeg_g`ff_request_frame_to_filter at avfilter.c:395 [opt]
    frame #7: 0x00000001070ef5e6 ffmpeg_g`ff_request_frame_to_filter(link=0x00007fe93b902b00) at avfilter.c:454 [opt]
    frame #8: 0x00000001070ee543 ffmpeg_g`ff_filter_activate [inlined] forward_status_change(filter=<unavailable>, in=<unavailable>) at avfilter.c:1243 [opt]
    frame #9: 0x00000001070ee50b ffmpeg_g`ff_filter_activate [inlined] ff_filter_activate_default(filter=<unavailable>) at avfilter.c:1274 [opt]
    frame #10: 0x00000001070ee3ce ffmpeg_g`ff_filter_activate(filter=0x00007fe93b8013c0) at avfilter.c:1430 [opt]
    frame #11: 0x00000001070f3dfc ffmpeg_g`av_buffersrc_close [inlined] push_frame(graph=0x00007fe93964b400) at buffersrc.c:181 [opt]
    frame #12: 0x00000001070f3dd4 ffmpeg_g`av_buffersrc_close(ctx=<unavailable>, pts=<unavailable>, flags=4) at buffersrc.c:269 [opt]
    frame #13: 0x000000010707a237 ffmpeg_g`process_input_packet [inlined] ifilter_send_eof(ifilter=<unavailable>, pts=<unavailable>) at ffmpeg.c:2211 [opt]
    frame #14: 0x000000010707a21b ffmpeg_g`process_input_packet [inlined] send_filter_eof(ist=<unavailable>) at ffmpeg.c:2562 [opt]
    frame #15: 0x000000010707a1da ffmpeg_g`process_input_packet(ist=0x00007fe9396148c0, pkt=<unavailable>, no_eof=<unavailable>) at ffmpeg.c:2701 [opt]
    frame #16: 0x00000001070772f1 ffmpeg_g`transcode [inlined] process_input at ffmpeg.c:4305 [opt]
    frame #17: 0x00000001070769ab ffmpeg_g`transcode [inlined] transcode_step at ffmpeg.c:4625 [opt]
    frame #18: 0x000000010707698c ffmpeg_g`transcode at ffmpeg.c:4679 [opt]
    frame #19: 0x0000000107073ce9 ffmpeg_g`main(argc=<unavailable>, argv=<unavailable>) at ffmpeg.c:4886 [opt]
    frame #20: 0x00007fff6b896015 libdyld.dylib`start + 1

comment:4 by Vadym Borodavko, 6 years ago

More detailed backtrace:

Process 82092 stopped
* thread #1, queue = 'com.apple.main-thread', stop reason = signal SIGSTOP
    frame #0: 0x00007fff5a82f357 libsystem_c.dylib`_vsnprintf + 427
libsystem_c.dylib`_vsnprintf:
->  0x7fff5a82f357 <+427>: movb   $0x0, (%rcx)
    0x7fff5a82f35a <+430>: leaq   0x38726d0f(%rip), %rcx    ; __stack_chk_guard
    0x7fff5a82f361 <+437>: movq   (%rcx), %rcx
    0x7fff5a82f364 <+440>: cmpq   -0x28(%rbp), %rcx
Target 0: (ffmpeg_g) stopped.

Executable module set to "./ffmpeg_g".
Architecture set to: x86_64-apple-macosx.
(lldb) bt
* thread #1, queue = 'com.apple.main-thread', stop reason = signal SIGSTOP
  * frame #0: 0x00007fff5a82f357 libsystem_c.dylib`_vsnprintf + 427
    frame #1: 0x00007fff5a82f3fe libsystem_c.dylib`vsnprintf + 80
    frame #2: 0x000000010b20d343 ffmpeg_g`av_bprintf(buf=0x00007ffee5ed14e8, fmt="%s") at bprint.c:105
    frame #3: 0x000000010b20f2f3 ffmpeg_g`av_bprint_channel_layout(bp=0x00007ffee5ed14e8, nb_channels=1, channel_layout=4) at channel_layout.c:188
    frame #4: 0x000000010b20f4b8 ffmpeg_g`av_get_channel_layout_string(buf="mono", buf_size=128, nb_channels=-1, channel_layout=4) at channel_layout.c:217
    frame #5: 0x0000000109dead1e ffmpeg_g`ff_tlog_link(ctx=0x0000000000000000, link=0x00007fa91fc04200, end=1) at avfilter.c:395
    frame #6: 0x0000000109dedfaa ffmpeg_g`ff_request_frame_to_filter(link=0x00007fa91fc04200) at avfilter.c:454
    frame #7: 0x0000000109dededc ffmpeg_g`forward_status_change(filter=0x00007fa91fe0aa80, in=0x00007fa91fe0b140) at avfilter.c:1243
    frame #8: 0x0000000109decbd7 ffmpeg_g`ff_filter_activate_default(filter=0x00007fa91fe0aa80) at avfilter.c:1274
    frame #9: 0x0000000109decab0 ffmpeg_g`ff_filter_activate(filter=0x00007fa91fe0aa80) at avfilter.c:1430
    frame #10: 0x0000000109defee7 ffmpeg_g`ff_filter_graph_run_once(graph=0x00007fa91fd14f80) at avfiltergraph.c:1454
    frame #11: 0x0000000109df4db5 ffmpeg_g`push_frame(graph=0x00007fa91fd14f80) at buffersrc.c:181
    frame #12: 0x0000000109df4d81 ffmpeg_g`av_buffersrc_close(ctx=0x00007fa91fc02980, pts=2560, flags=4) at buffersrc.c:269
    frame #13: 0x0000000109d5e65e ffmpeg_g`ifilter_send_eof(ifilter=0x00007fa91ff02a00, pts=2560) at ffmpeg.c:2211
    frame #14: 0x0000000109d5d156 ffmpeg_g`send_filter_eof(ist=0x00007fa91ff016c0) at ffmpeg.c:2562
    frame #15: 0x0000000109d507aa ffmpeg_g`process_input_packet(ist=0x00007fa91ff016c0, pkt=0x0000000000000000, no_eof=0) at ffmpeg.c:2701
    frame #16: 0x0000000109d564c3 ffmpeg_g`process_input(file_index=0) at ffmpeg.c:4305
    frame #17: 0x0000000109d4ecf3 ffmpeg_g`transcode_step at ffmpeg.c:4625
    frame #18: 0x0000000109d4c9f9 ffmpeg_g`transcode at ffmpeg.c:4679
    frame #19: 0x0000000109d4bd22 ffmpeg_g`main(argc=7, argv=0x00007ffee5ed2a18) at ffmpeg.c:4886
    frame #20: 0x00007fff5a78e015 libdyld.dylib`start + 1
    frame #21: 0x00007fff5a78e015 libdyld.dylib`start + 1

comment:5 by Cigaes, 6 years ago

Analyzed by developer: set
Reproduced by developer: set
Status: newopen

The cause of the problem is this: when the second trim finishes immediately, the framework wants concat to notice, and for that it requests a frame on the video output. Normally, concat would make a request on the corresponding video input and notice the end of stream.

But in these particular circumstances, the end of stream arrives while concat is still processing the first segment, so it wants to finish its audio before addressing video in the second segment.

The solution is to move concat to activate, which should not be that much work, it is a rather simple filter. I will try to do something soon.

comment:6 by Cigaes, 6 years ago

Please test the patch on the mailing-list:
https://ffmpeg.org/pipermail/ffmpeg-devel/2018-August/233083.html

comment:7 by Vadym Borodavko, 6 years ago

Hi Cigaes,

It works fine with the test video as well as with the actual video which triggered this issue for me for the first time.

$ ./ffmpeg -y -i source.mp4 -filter_complex "[v] trim=0:1 [v_1]; [a] atrim=0:1 [a_1]; [v] trim=2:3 [v_2]; [a] atrim=2:3 [a_2]; [v_1] [a_1] [v_2] [a_2] concat=n=2:v=1:a=1" output.mp4
ffmpeg version git-2018-08-10-87cc7e8 Copyright (c) 2000-2018 the FFmpeg developers
  built with Apple LLVM version 9.1.0 (clang-902.0.39.2)
  configuration: 
  libavutil      56. 18.102 / 56. 18.102
  libavcodec     58. 22.101 / 58. 22.101
  libavformat    58. 17.101 / 58. 17.101
  libavdevice    58.  4.101 / 58.  4.101
  libavfilter     7. 26.100 /  7. 26.100
  libswscale      5.  2.100 /  5.  2.100
  libswresample   3.  2.100 /  3.  2.100
Input #0, mov,mp4,m4a,3gp,3g2,mj2, from 'source.mp4':
  Metadata:
    major_brand     : isom
    minor_version   : 512
    compatible_brands: isomiso2avc1mp41
    encoder         : Lavf58.12.100
  Duration: 00:00:00.22, start: 0.000000, bitrate: 88 kb/s
    Stream #0:0(und): Video: h264 (High) (avc1 / 0x31637661), yuv420p, 640x360, 34 kb/s, 25 fps, 25 tbr, 12800 tbn, 50 tbc (default)
    Metadata:
      handler_name    : VideoHandler
    Stream #0:1(und): Audio: aac (LC) (mp4a / 0x6134706D), 48000 Hz, mono, fltp, 2 kb/s (default)
    Metadata:
      handler_name    : SoundHandler
Stream mapping:
  Stream #0:0 (h264) -> trim
  Stream #0:0 (h264) -> trim
  Stream #0:1 (aac) -> atrim
  Stream #0:1 (aac) -> atrim
  concat:out:v0 -> Stream #0:0 (mpeg4)
  concat:out:a0 -> Stream #0:1 (aac)
Press [q] to stop, [?] for help
Output #0, mp4, to 'output.mp4':
  Metadata:
    major_brand     : isom
    minor_version   : 512
    compatible_brands: isomiso2avc1mp41
    encoder         : Lavf58.17.101
    Stream #0:0: Video: mpeg4 (mp4v / 0x7634706D), yuv420p(progressive), 640x360, q=2-31, 200 kb/s, 25 fps, 12800 tbn, 25 tbc (default)
    Metadata:
      encoder         : Lavc58.22.101 mpeg4
    Side data:
      cpb: bitrate max/min/avg: 0/0/200000 buffer size: 0 vbv_delay: -1
    Stream #0:1: Audio: aac (LC) (mp4a / 0x6134706D), 48000 Hz, mono, fltp, 69 kb/s (default)
    Metadata:
      encoder         : Lavc58.22.101 aac
frame=    5 fps=0.0 q=2.0 Lsize=       5kB time=00:00:00.21 bitrate= 176.7kbits/s speed=11.1x    
video:3kB audio:0kB subtitle:0kB other streams:0kB global headers:0kB muxing overhead: 47.342091%
[aac @ 0x7f9360805000] Qavg: 62211.172

Thank you for the fast fix!

comment:8 by Elon Musk, 6 years ago

Resolution: fixed
Status: openclosed
Note: See TracTickets for help on using tickets.