Re: [FFmpeg-user] Multiple Glob Inputs
Am Di., 15. Okt. 2019 um 20:19 Uhr schrieb James Tan : > > > > > A concat filter exists, but I suspect the concat demuxer (that works > > differently and does not use glob) is what you need. > > https://ffmpeg.org/ffmpeg-filters.html#concat > > https://ffmpeg.org/ffmpeg-formats.html#concat-1 > > > Ah so basically you're saying you don't think there is a way to > concatenate with glob No, I would expect the concat filter to work fine but I believe all other options are simpler in your case. (concat demuxer or reordering with symlinks for the image2 demuxer) Carl Eugen ___ ffmpeg-user mailing list ffmpeg-user@ffmpeg.org https://ffmpeg.org/mailman/listinfo/ffmpeg-user To unsubscribe, visit link above, or email ffmpeg-user-requ...@ffmpeg.org with subject "unsubscribe".
Re: [FFmpeg-user] Multiple Glob Inputs
James Tan (12019-10-15): > But I was wondering if there was also a way to add start number to a file > list. I was hoping something like this might be possible? No, options to individual files are not supported. A patch to support that would be appreciated, though, if it does it cleanly. Regards, -- Nicolas George signature.asc Description: PGP signature ___ ffmpeg-user mailing list ffmpeg-user@ffmpeg.org https://ffmpeg.org/mailman/listinfo/ffmpeg-user To unsubscribe, visit link above, or email ffmpeg-user-requ...@ffmpeg.org with subject "unsubscribe".
Re: [FFmpeg-user] Multiple Glob Inputs
> > A concat filter exists, but I suspect the concat demuxer (that works > differently and does not use glob) is what you need. > https://ffmpeg.org/ffmpeg-filters.html#concat > https://ffmpeg.org/ffmpeg-formats.html#concat-1 Ah so basically you're saying you don't think there is a way to concatenate with glob, and I should just do it with numbering? I was able to run a shell script to make a list of all images used, something like this. #! /bin/bash # with a bash for loop for f in ./Time\ Lapse\ 11/*.JPG; do echo "file '$f'" >> mylist.txt; done for f in ./Burst\ Sequence\ 5/*.JPG; do echo "file '$f'" >> mylist.txt; done for f in ./Burst\ Sequence\ 6/*.JPG; do echo "file '$f'" >> mylist.txt; done But I was wondering if there was also a way to add start number to a file list. I was hoping something like this might be possible? ffmpeg -f concat -safe 0 -i mylist.txt \ -c:v libx264 -pix_fmt yuv420p -r 24 -crf 23 -preset fast -y output.mp4 where mylist.txt looks like -start_number 0152396 file './Time Lapse 11/G%07d.JPG' -start_number 0162603 file './Burst Sequence 5/G%07d.JPG' -start_number 0172625 file './Burst Sequence 6/G%07d.JPG' This obviously hasn't worked yet, and just writing all the filenames to mylist.txt does work, but I was just wondering for curiosity's sake. Thank you! ___ ffmpeg-user mailing list ffmpeg-user@ffmpeg.org https://ffmpeg.org/mailman/listinfo/ffmpeg-user To unsubscribe, visit link above, or email ffmpeg-user-requ...@ffmpeg.org with subject "unsubscribe".
Re: [FFmpeg-user] Multiple Glob Inputs
Am Di., 15. Okt. 2019 um 01:20 Uhr schrieb James Tan : > > 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 This command uses one input (one "-i" option) that does not need concatenation... > which does concatenate them all, but this actually puts Burst Sequence 5 > and 6 before Time Lapse 11 because of alphabetical order I assume. ... but as you found out glob has its disadvantages, use numbering instead. Please do not top-post here, Carl Eugen ___ ffmpeg-user mailing list ffmpeg-user@ffmpeg.org https://ffmpeg.org/mailman/listinfo/ffmpeg-user To unsubscribe, visit link above, or email ffmpeg-user-requ...@ffmpeg.org with subject "unsubscribe".
Re: [FFmpeg-user] Multiple Glob Inputs
Am Di., 15. Okt. 2019 um 01:27 Uhr schrieb James Tan : > > 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 (The output option "-r" is not what you want, use the input option "-framerate" instead.) This command has three inputs (three times "-i"), ffmpeg does not concatenate the three inputs. > ffmpeg version 4.1.3 Copyright (c) 2000-2019 the FFmpeg developers Please remember that only current FFmpeg git head is supported on this mailing list (but the behaviour should be identical for all versions of FFmpeg, past and future). A concat filter exists, but I suspect the concat demuxer (that works differently and does not use glob) is what you need. https://ffmpeg.org/ffmpeg-filters.html#concat https://ffmpeg.org/ffmpeg-formats.html#concat-1 Carl Eugen ___ ffmpeg-user mailing list ffmpeg-user@ffmpeg.org https://ffmpeg.org/mailman/listinfo/ffmpeg-user To unsubscribe, visit link above, or email ffmpeg-user-requ...@ffmpeg.org with subject "unsubscribe".
Re: [FFmpeg-user] Multiple Glob Inputs
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 libavformat58. 20.100 / 58. 20.100 libavdevice58. 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 libpostproc55. 3.100 / 55. 3.100 Input #0, image2, from 'Time Lapse 11/*.JPG': Duration: 00:00:08.28, start: 0.00, 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.00, 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.00, 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 @ 0x7f7f7800] 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:12Avg QP:21.04 size:525149 [libx264 @ 0x7f7f77803200] frame P:89Avg QP:23.66 size:231955 [libx264 @ 0x7f7f77803200] frame B:99Avg 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%
Re: [FFmpeg-user] Multiple Glob Inputs
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 wrote: > Am Di., 15. Okt. 2019 um 00:06 Uhr schrieb James Tan : > > > 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@ffmpeg.org > https://ffmpeg.org/mailman/listinfo/ffmpeg-user > > To unsubscribe, visit link above, or email > ffmpeg-user-requ...@ffmpeg.org with subject "unsubscribe". ___ ffmpeg-user mailing list ffmpeg-user@ffmpeg.org https://ffmpeg.org/mailman/listinfo/ffmpeg-user To unsubscribe, visit link above, or email ffmpeg-user-requ...@ffmpeg.org with subject "unsubscribe".
Re: [FFmpeg-user] Multiple Glob Inputs
Am Di., 15. Okt. 2019 um 00:06 Uhr schrieb James Tan : > 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@ffmpeg.org https://ffmpeg.org/mailman/listinfo/ffmpeg-user To unsubscribe, visit link above, or email ffmpeg-user-requ...@ffmpeg.org with subject "unsubscribe".
[FFmpeg-user] Multiple Glob Inputs
Hi all, 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 but it only reads in the first directory. I've tried various concat methods using a text file containing a list of the folders and image file name pattern, but also haven't gotten it to work. Does anyone know how to do this without just creating a massive list of all the image files? Best, James ___ ffmpeg-user mailing list ffmpeg-user@ffmpeg.org https://ffmpeg.org/mailman/listinfo/ffmpeg-user To unsubscribe, visit link above, or email ffmpeg-user-requ...@ffmpeg.org with subject "unsubscribe".