[FFmpeg-user] Why is concat so slow on a powerful machine?
Kevin Duffey
kevinmduffey at yahoo.com
Fri Oct 20 01:43:31 EEST 2017
Man..I dont get it. I am doing exactly like you did. Can you list your .txt file maybe? I only list the two files, thats it. I cant get past 15fps. It is as if it is hard locked to not allow more than that for some reason.
Looking at task manager, the ffmpeg is using .9% of cpu. That is it. This is on a USB 3.1 (gen 2) connected drive. MAYBE that is the problem..
Ok.. copied the files to my Firecuda sshd... tried it again. This one is internal to my machine. So it is NOT going over USB 3.1 (gen2) interface. Running the same command as above.. I am now getting 4fps.
So.. its not the interface.
Very frustrating.. got plenty of RAM, plenty of HD, quad core 6700 cpu.
I feel like I am missing some switch or something.
Here is my output (running on sshd now). Only thing I see (in color in the command prompt) is this bit:[mov,mp4,m4a,3gp,3g2,mj2 @ 000000000262bc40] overread end of atom '⌐mak' by 2 bytes[mov,mp4,m4a,3gp,3g2,mj2 @ 000000000262bc40] overread end of atom '⌐swr' by 3 bytes[concat @ 00000000026224a0] Could not find codec parameters for stream 1 (Unknown: none): unknown codecConsider increasing the value for the 'analyzeduration' and 'probesize' options
I am not sure exactly what that is.. maybe I should increase the analyzeduration and probesize? Oddly though, it DOES show both source files as DNxHR SQ. Or at least STream 0.. guessing it doesnt do anything with stream 1 until stream 0 is finished.
The source files are 460Mbps DNxHR SQ.
Does this thing decode the source, then re-encode? Even so.. if Davinci Resolve 14 can do this at about 45fps, I would have hoped ffmpeg would be quite a bit faster.
Is there some DNxHR driver I need to install on Windows to make things faster?
D:\>ffmpeg -f concat -safe 0 -i demux.txt -c:v copy -c:a copy out.movffmpeg version 3.3.3 Copyright (c) 2000-2017 the FFmpeg developers built with gcc 7.1.0 (GCC) configuration: --enable-gpl --enable-version3 --enable-cuda --enable-cuvid --enable-d3d11va --enable-dxva2 --enable-libmfx --enable-nvenc --enable-avisynth --enable-bzlib --enable-fontconfig --enable-frei0r --enable-gnutls --enable-iconv --enable-libass --enable-libbluray --enable-libbs2b --enable-libcaca --enable-libfreetype --enable-libgme --enable-libgsm --enable-libilbc --enable-libmodplug --enable-libmp3lame --enable-libopencore-amrnb --enable-libopencore-amrwb --enable-libopenh264 --enable-libopenjpeg --enable-libopus --enable-librtmp --enable-libsnappy --enable-libsoxr --enable-libspeex --enable-libtheora --enable-libtwolame --enable-libvidstab --enable-libvo-amrwbenc --enable-libvorbis --enable-libvpx --enable-libwavpack --enable-libwebp --enable-libx264 --enable-libx265 --enable-libxavs --enable-libxvid --enable-libzimg --enable-lzma --enable-zlib libavutil 55. 58.100 / 55. 58.100 libavcodec 57. 89.100 / 57. 89.100 libavformat 57. 71.100 / 57. 71.100 libavdevice 57. 6.100 / 57. 6.100 libavfilter 6. 82.100 / 6. 82.100 libswscale 4. 6.100 / 4. 6.100 libswresample 2. 7.100 / 2. 7.100 libpostproc 54. 5.100 / 54. 5.100[mov,mp4,m4a,3gp,3g2,mj2 @ 000000000262bc40] overread end of atom '⌐mak' by 2 bytes[mov,mp4,m4a,3gp,3g2,mj2 @ 000000000262bc40] overread end of atom '⌐swr' by 3 bytes[concat @ 00000000026224a0] Could not find codec parameters for stream 1 (Unknown: none): unknown codecConsider increasing the value for the 'analyzeduration' and 'probesize' optionsInput #0, concat, from 'demux.txt': Duration: N/A, start: 0.000000, bitrate: 461960 kb/s Stream #0:0(eng): Video: dnxhd (DNXHR SQ) (AVdh / 0x68645641), yuv422p(tv, bt709, progressive), 3840x2160, 461960 kb/s, SAR 1:1 DAR 16:9, 23.98 fps, 23.98 tbr, 24k tbn, 24k tbc Metadata: creation_time : 2024-10-10T23:17:36.000000Z encoder : Avid DNxHR Codec Stream #0:1: Unknown: noneOutput #0, mov, to 'out.mov': Metadata: encoder : Lavf57.71.100 Stream #0:0(eng): Video: dnxhd (DNXHR SQ) (AVdh / 0x68645641), yuv422p(tv, bt709, progressive), 3840x2160 [SAR 1:1 DAR 16:9], q=2-31, 461960 kb/s, 23.98 fps, 23.98 tbr, 24k tbn, 24k tbc Metadata: creation_time : 2024-10-10T23:17:36.000000Z encoder : Avid DNxHR CodecStream mapping: Stream #0:0 -> #0:0 (copy)Press [q] to stop, [?] for helpframe= 976 fps=5.5 q=-1.0 size= 2295552kB time=00:00:40.66 bitrate=462433.4kbits/s speed=0.229x
On Thursday, October 19, 2017, 10:35:52 AM PDT, Christian Johannesen <chrisjohannesen at gmail.com> wrote:
On Thu, Oct 19, 2017 at 11:51 AM, Kevin Duffey <
kevinmduffey-at-yahoo.com at ffmpeg.org> wrote:
> So I would assume that if I can copy the two files in a matter of seconds
> from one dir to another on the SSD, that copying them together would be
> similar speed. However I did try that and it seemed to hang.. or appear to
> do nothing. I unfortunately had to stop it but if it was working, it was
> taking a long while as well.
> Which now has me wondering..why? If it is just copying two files into
> one.. why is that way way slower than copying the two files to another
> location individually? A copy is a copy. It is not rendering.. it is merely
> moving the bits to another location (er.. copying them) no different than
> copying the two files individually.
> Is there any other setting for ffmpeg, like I should specify the output
> codec, or something.. to ensure it is copying and not rendering?
>
>
I tested this using FFmpeg running on a windows server with fiber channel
attached storage. I am able to duplicate the input file at a rate of
460MB/sec. I tested joining two 6 minute 48 second DNxHR SQ 8bit sources at
3840x2160 23.98 fps with this command: ffmpeg.exe -f concat -safe 0 -i
C:\FFMPEG\concat.txt -c:v copy -c:a copy
C:\Volumes\PTLabSAN\ChrisJ\DNxHR\out.mov. With this process, I achieved 126
fps. I would suspect the storage as the concat process only used 5% of my
CPU.
Duration: N/A, start: 0.000000, bitrate: 463496 kb/s
Stream #0:0(eng): Video: dnxhd (DNXHR SQ) (AVdh / 0x68645641),
yuv422p(tv, bt709, progressive), 3840x2160, 461960 kb/s, SAR 1:1 DAR 16:9,
23.98 fps, 23.98 tbr, 24k tbn, 24k tbc
Metadata:
creation_time : 2017-10-19T17:06:59.000000Z
handler_name : Apple Alias Data Handler
encoder : DNxHR/DNxHD
timecode : 00:00:00:00
Stream #0:1(eng): Audio: pcm_s16le (sowt / 0x74776F73), 48000 Hz,
stereo, s16, 1536 kb/s
Metadata:
creation_time : 2017-10-19T17:06:59.000000Z
handler_name : Apple Alias Data Handler
timecode : 00:00:00:00
Stream #0:2: Unknown: none
Output #0, mov, to 'C:\Volumes\PTLabSAN\ChrisJ\DNxHR\out.mov':
Metadata:
encoder : Lavf57.71.100
Stream #0:0(eng): Video: dnxhd (DNXHR SQ) (AVdh / 0x68645641),
yuv422p(tv, bt709, progressive), 3840x2160 [SAR 1:1 DAR 16:9], q=2-31,
461960 kb/s, 23.98 fps, 23.98 tbr, 24k tbn, 24k tbc
Metadata:
creation_time : 2017-10-19T17:06:59.000000Z
handler_name : Apple Alias Data Handler
encoder : DNxHR/DNxHD
timecode : 00:00:00:00
Stream #0:1(eng): Audio: pcm_s16le (sowt / 0x74776F73), 48000 Hz,
stereo, s16, 1536 kb/s
Metadata:
creation_time : 2017-10-19T17:06:59.000000Z
handler_name : Apple Alias Data Handler
timecode : 00:00:00:00
Stream mapping:
Stream #0:0 -> #0:0 (copy)
Stream #0:1 -> #0:1 (copy)
Press [q] to stop, [?] for help
frame=19576 fps=126 q=-1.0 Lsize=46196179kB time=00:13:36.48
bitrate=463500.7kbits/s speed=5.26x
video:46042752kB audio:153090kB subtitle:0kB other streams:0kB global
headers:0kB muxing overhead: 0.000728%
_______________________________________________
ffmpeg-user mailing list
ffmpeg-user at ffmpeg.org
http://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