[FFmpeg-user] Multiple Glob Inputs

James Tan jtanman at gmail.com
Tue Oct 15 02:26:37 EEST 2019


Sorry here's the console output. So you can see the three threads with
durations of 8.28s, .88s, and .68s, but the final result is only 8.33s. In
addition, the video where I just put all the images in the same folder has
duration 9.92s.

ffmpeg -pattern_type glob -i 'Time Lapse 11/*.JPG' \
> -pattern_type glob -i 'Burst Sequence 5/*.JPG' \
> -pattern_type glob -i 'Burst Sequence 6/*.JPG' \
> -r 24 -c:v libx264 -crf 23 -preset fast -pix_fmt yuv420p tl11_fast.mp4
ffmpeg version 4.1.3 Copyright (c) 2000-2019 the FFmpeg developers
  built with Apple LLVM version 10.0.0 (clang-1000.11.45.5)
  configuration: --prefix=/usr/local/Cellar/ffmpeg/4.1.3_1 --enable-shared
--enable-pthreads --enable-version3 --enable-hardcoded-tables
--enable-avresample --cc=clang
--host-cflags='-I/Library/Java/JavaVirtualMachines/adoptopenjdk-11.0.2.jdk/Contents/Home/include
-I/Library/Java/JavaVirtualMachines/adoptopenjdk-11.0.2.jdk/Contents/Home/include/darwin'
--host-ldflags= --enable-ffplay --enable-gnutls --enable-gpl
--enable-libaom --enable-libbluray --enable-libmp3lame --enable-libopus
--enable-librubberband --enable-libsnappy --enable-libtesseract
--enable-libtheora --enable-libvorbis --enable-libvpx --enable-libx264
--enable-libx265 --enable-libxvid --enable-lzma --enable-libfontconfig
--enable-libfreetype --enable-frei0r --enable-libass
--enable-libopencore-amrnb --enable-libopencore-amrwb --enable-libopenjpeg
--enable-librtmp --enable-libspeex --enable-videotoolbox --disable-libjack
--disable-indev=jack --enable-libaom --enable-libsoxr
  libavutil      56. 22.100 / 56. 22.100
  libavcodec     58. 35.100 / 58. 35.100
  libavformat    58. 20.100 / 58. 20.100
  libavdevice    58.  5.100 / 58.  5.100
  libavfilter     7. 40.101 /  7. 40.101
  libavresample   4.  0.  0 /  4.  0.  0
  libswscale      5.  3.100 /  5.  3.100
  libswresample   3.  3.100 /  3.  3.100
  libpostproc    55.  3.100 / 55.  3.100
Input #0, image2, from 'Time Lapse 11/*.JPG':
  Duration: 00:00:08.28, start: 0.000000, bitrate: N/A
    Stream #0:0: Video: mjpeg, yuvj422p(pc, bt470bg/unknown/unknown),
4000x3000, 25 fps, 25 tbr, 25 tbn, 25 tbc
Input #1, image2, from 'Burst Sequence 5/*.JPG':
  Duration: 00:00:00.88, start: 0.000000, bitrate: N/A
    Stream #1:0: Video: mjpeg, yuvj422p(pc, bt470bg/unknown/unknown),
4000x3000, 25 fps, 25 tbr, 25 tbn, 25 tbc
Input #2, image2, from 'Burst Sequence 6/*.JPG':
  Duration: 00:00:00.68, start: 0.000000, bitrate: N/A
    Stream #2:0: Video: mjpeg, yuvj422p(pc, bt470bg/unknown/unknown),
4000x3000, 25 fps, 25 tbr, 25 tbn, 25 tbc
File 'tl11_fast.mp4' already exists. Overwrite ? [y/N] y
Stream mapping:
  Stream #0:0 -> #0:0 (mjpeg (native) -> h264 (libx264))
Press [q] to stop, [?] for help
[swscaler @ 0x107f0b000] deprecated pixel format used, make sure you did
set range correctly
[libx264 @ 0x7f7f77803200] using cpu capabilities: MMX2 SSE2Fast SSSE3
SSE4.2 AVX FMA3 BMI2 AVX2
[libx264 @ 0x7f7f77803200] profile High, level 6.0
[libx264 @ 0x7f7f77803200] 264 - core 155 r2917 0a84d98 - H.264/MPEG-4 AVC
codec - Copyleft 2003-2018 - http://www.videolan.org/x264.html - options:
cabac=1 ref=2 deblock=1:0:0 analyse=0x3:0x113 me=hex subme=6 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=12
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=250 keyint_min=24
scenecut=40 intra_refresh=0 rc_lookahead=30 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 'tl11_fast.mp4':
  Metadata:
    encoder         : Lavf58.20.100
    Stream #0:0: Video: h264 (libx264) (avc1 / 0x31637661), yuv420p,
4000x3000, q=-1--1, 24 fps, 12288 tbn, 24 tbc
    Metadata:
      encoder         : Lavc58.35.100 libx264
    Side data:
      cpb: bitrate max/min/avg: 0/0/0 buffer size: 0 vbv_delay: -1
[image2 @ 0x7f7f76000a00] Thread message queue blocking; consider raising
the thread_queue_size option (current value: 8)
[image2 @ 0x7f7f78000000] Thread message queue blocking; consider raising
the thread_queue_size option (current value: 8)
[image2 @ 0x7f7f78000600] Thread message queue blocking; consider raising
the thread_queue_size option (current value: 8)
frame=  200 fps=3.6 q=-1.0 Lsize=   43124kB time=00:00:08.20
bitrate=43038.0kbits/s dup=0 drop=7 speed=0.147x
video:43121kB audio:0kB subtitle:0kB other streams:0kB global headers:0kB
muxing overhead: 0.007621%
[libx264 @ 0x7f7f77803200] frame I:12    Avg QP:21.04  size:525149
[libx264 @ 0x7f7f77803200] frame P:89    Avg QP:23.66  size:231955
[libx264 @ 0x7f7f77803200] frame B:99    Avg QP:23.79  size:173832
[libx264 @ 0x7f7f77803200] consecutive B-frames: 32.5%  3.0%  4.5% 60.0%
[libx264 @ 0x7f7f77803200] mb I  I16..4:  5.6% 89.4%  5.0%
[libx264 @ 0x7f7f77803200] mb P  I16..4:  4.1% 23.3%  2.5%  P16..4: 45.1%
 6.3%  3.9%  0.0%  0.0%    skip:14.9%
[libx264 @ 0x7f7f77803200] mb B  I16..4: 11.7% 37.1%  0.4%  B16..8: 17.2%
 5.2%  0.2%  direct:15.7%  skip:12.3%  L0:41.2% L1:41.3% BI:17.5%
[libx264 @ 0x7f7f77803200] 8x8 transform intra:78.0% inter:72.4%
[libx264 @ 0x7f7f77803200] coded y,uvDC,uvAC intra: 51.7% 31.0% 0.4% inter:
28.1% 41.6% 0.0%
[libx264 @ 0x7f7f77803200] i16 v,h,dc,p: 25% 23% 25% 26%
[libx264 @ 0x7f7f77803200] i8 v,h,dc,ddl,ddr,vr,hd,vl,hu: 13% 17% 41%  5%
 4%  4%  5%  4%  7%
[libx264 @ 0x7f7f77803200] i4 v,h,dc,ddl,ddr,vr,hd,vl,hu: 14% 22% 21%  8%
 8%  5%  8%  4%  9%
[libx264 @ 0x7f7f77803200] i8c dc,h,v,p: 62% 22% 15%  1%
[libx264 @ 0x7f7f77803200] Weighted P-Frames: Y:1.1% UV:1.1%
[libx264 @ 0x7f7f77803200] ref P L0: 69.8% 30.2%
[libx264 @ 0x7f7f77803200] ref B L0: 86.4% 13.6%
[libx264 @ 0x7f7f77803200] ref B L1: 95.3%  4.7%
[libx264 @ 0x7f7f77803200] kb/s:42388.97


ffprobe tl11_fast.mp4
ffprobe version 4.1.3 Copyright (c) 2007-2019 the FFmpeg developers
  built with Apple LLVM version 10.0.0 (clang-1000.11.45.5)
  configuration: --prefix=/usr/local/Cellar/ffmpeg/4.1.3_1 --enable-shared
--enable-pthreads --enable-version3 --enable-hardcoded-tables
--enable-avresample --cc=clang
--host-cflags='-I/Library/Java/JavaVirtualMachines/adoptopenjdk-11.0.2.jdk/Contents/Home/include
-I/Library/Java/JavaVirtualMachines/adoptopenjdk-11.0.2.jdk/Contents/Home/include/darwin'
--host-ldflags= --enable-ffplay --enable-gnutls --enable-gpl
--enable-libaom --enable-libbluray --enable-libmp3lame --enable-libopus
--enable-librubberband --enable-libsnappy --enable-libtesseract
--enable-libtheora --enable-libvorbis --enable-libvpx --enable-libx264
--enable-libx265 --enable-libxvid --enable-lzma --enable-libfontconfig
--enable-libfreetype --enable-frei0r --enable-libass
--enable-libopencore-amrnb --enable-libopencore-amrwb --enable-libopenjpeg
--enable-librtmp --enable-libspeex --enable-videotoolbox --disable-libjack
--disable-indev=jack --enable-libaom --enable-libsoxr
  libavutil      56. 22.100 / 56. 22.100
  libavcodec     58. 35.100 / 58. 35.100
  libavformat    58. 20.100 / 58. 20.100
  libavdevice    58.  5.100 / 58.  5.100
  libavfilter     7. 40.101 /  7. 40.101
  libavresample   4.  0.  0 /  4.  0.  0
  libswscale      5.  3.100 /  5.  3.100
  libswresample   3.  3.100 /  3.  3.100
  libpostproc    55.  3.100 / 55.  3.100
Input #0, mov,mp4,m4a,3gp,3g2,mj2, from 'tl11_fast.mp4':
  Metadata:
    major_brand     : isom
    minor_version   : 512
    compatible_brands: isomiso2avc1mp41
    encoder         : Lavf58.20.100
  Duration: 00:00:08.33, start: 0.000000, bitrate: 42389 kb/s
    Stream #0:0(und): Video: h264 (High) (avc1 / 0x31637661), yuv420p,
4000x3000, 42389 kb/s, 24 fps, 24 tbr, 12288 tbn, 48 tbc (default)
    Metadata:
      handler_name    : VideoHandler

On Mon, Oct 14, 2019 at 4:19 PM James Tan <jtanman at gmail.com> wrote:

> The inputs are all images which have the same resolution, are taken from
> the same GoPro, etc. If I manually move all the images to one folder, it
> easily concatenates them all and does what I want. I can also do
>
> ffmpeg -pattern_type glob -i '*/*.JPG' \
> -r 24 -c:v libx264 -crf 23 -preset fast -pix_fmt yuv420p tl11_fast.mp4
>
> which does concatenate them all, but this actually puts Burst Sequence 5
> and 6 before Time Lapse 11 because of alphabetical order I assume.
>
> On Mon, Oct 14, 2019 at 3:22 PM Carl Eugen Hoyos <ceffmpeg at gmail.com>
> wrote:
>
>> Am Di., 15. Okt. 2019 um 00:06 Uhr schrieb James Tan <jtanman at gmail.com>:
>>
>> > I'm trying to make a time lapse video from multiple image directories.
>> I'm
>> > trying to do this with glob in this manner:
>> >
>> > ffmpeg -pattern_type glob -i 'Time Lapse 11/*.JPG' \
>> > -pattern_type glob -i 'Burst Sequence 5/*.JPG' \
>> > -pattern_type glob -i 'Burst Sequence 6/*.JPG' \
>> > -r 24 -c:v libx264 -crf 23 -preset fast -pix_fmt yuv420p tl11_fast.mp4
>>
>> (Complete, uncut console output missing.)
>>
>> > but it only reads in the first directory.
>>
>> That's unlikely. Is it possible that you are trying to concatenate
>> different inputs which is not the default behaviour?
>>
>> Carl Eugen
>> _______________________________________________
>> ffmpeg-user mailing list
>> ffmpeg-user at ffmpeg.org
>> https://ffmpeg.org/mailman/listinfo/ffmpeg-user
>>
>> To unsubscribe, visit link above, or email
>> ffmpeg-user-request at ffmpeg.org with subject "unsubscribe".
>
>


More information about the ffmpeg-user mailing list