[FFmpeg-user] ffprobe: Not using full CPU, regardless of "-threads" parameter
Peter B.
pb at das-werkstatt.com
Wed Sep 17 12:05:07 CEST 2014
Hello,
I've noticed that using ffprobe to analyze an FFV1/AVI file, it only
utilizes a part of the available CPU power.
For example, the following command:
//----------------------------------------------
$ ffprobe_git -f lavfi -i
"movie=qctools.avi,signalstats=stat=tout+vrep+brng,cropdetect=reset=1,split[a][b];[a]field=top[a1];[b]field=bottom[b1],[a1][b1]psnr"
-show_frames -show_versions -of xml=x=1:q=1 -noprivate -threads auto
-loglevel info > qctools.avi.qctools.xml
//----------------------------------------------
According to my CPU graph monitor, there is no difference between
"-threads 1", "-threads 8" or "-threads auto".
However, when I decode the same video with ffmpeg, the whole CPU is
used, so I'd say the disk ain't the bottleneck:
//----------------------------------------------
$ ffmpeg_git -i qctools.avi -an -f framemd5 delme.xxx
//----------------------------------------------
Is there a way of have ffprobe use the whole CPU, too?
Thanks in advance,
Pb
Here's the console output of both commands:
//----------------------------------------------
ffprobe version N-66307-g4b58349 Copyright (c) 2007-2014 the FFmpeg
developers
built on Sep 16 2014 23:57:56 with gcc 4.6 (Ubuntu/Linaro 4.6.3-1ubuntu5)
configuration: --prefix=/usr/local --enable-gpl --enable-nonfree
--enable-version3 --enable-postproc --enable-swscale --enable-avfilter
--enable-pthreads --enable-bzlib --enable-zlib --enable-decoder=png
--enable-encoder=png --enable-libfreetype --enable-libschroedinger
--enable-libopenjpeg --disable-decoder=jpeg2000 --enable-libx264
--enable-libfaac
libavutil 54. 7.100 / 54. 7.100
libavcodec 56. 1.100 / 56. 1.100
libavformat 56. 4.102 / 56. 4.102
libavdevice 56. 0.100 / 56. 0.100
libavfilter 5. 1.101 / 5. 1.101
libswscale 3. 0.100 / 3. 0.100
libswresample 1. 1.100 / 1. 1.100
libpostproc 53. 0.100 / 53. 0.100
Input #0, lavfi, from
'movie=qctools.avi,signalstats=stat=tout+vrep+brng,cropdetect=reset=1,split[a][b];[a]field=top[a1];[b]field=bottom[b1],[a1][b1]psnr':
Duration: N/A, start: 0.000000, bitrate: N/A
Stream #0:0: Video: rawvideo (Y42B / 0x42323459), yuv422p, 720x288
[SAR 1:1 DAR 5:2], 25 tbr, 25 tbn, 25 tbc
//----------------------------------------------
//----------------------------------------------
ffmpeg version N-66307-g4b58349 Copyright (c) 2000-2014 the FFmpeg
developers
built on Sep 16 2014 23:57:56 with gcc 4.6 (Ubuntu/Linaro 4.6.3-1ubuntu5)
configuration: --prefix=/usr/local --enable-gpl --enable-nonfree
--enable-version3 --enable-postproc --enable-swscale --enable-avfilter
--enable-pthreads --enable-bzlib --enable-zlib --enable-decoder=png
--enable-encoder=png --enable-libfreetype --enable-libschroedinger
--enable-libopenjpeg --disable-decoder=jpeg2000 --enable-libx264
--enable-libfaac
libavutil 54. 7.100 / 54. 7.100
libavcodec 56. 1.100 / 56. 1.100
libavformat 56. 4.102 / 56. 4.102
libavdevice 56. 0.100 / 56. 0.100
libavfilter 5. 1.101 / 5. 1.101
libswscale 3. 0.100 / 3. 0.100
libswresample 1. 1.100 / 1. 1.100
libpostproc 53. 0.100 / 53. 0.100
Input #0, avi, from 'qctools.avi':
Metadata:
encoder : Lavf54.37.100
Duration: 00:10:00.00, start: 0.000000, bitrate: 52487 kb/s
Stream #0:0: Video: ffv1 (FFV1 / 0x31564646), yuv422p, 720x576,
52487 kb/s, SAR 16:15 DAR 4:3, 25 fps, 25 tbr, 25 tbn, 25 tbc
Output #0, framemd5, to 'delme.xxx':
Metadata:
encoder : Lavf56.4.102
Stream #0:0: Video: rawvideo (Y42B / 0x42323459), yuv422p, 720x576
[SAR 16:15 DAR 4:3], q=2-31, 200 kb/s, 25 fps, 25 tbn, 25 tbc
Metadata:
encoder : Lavc56.1.100 rawvideo
Stream mapping:
Stream #0:0 -> #0:0 (ffv1 (native) -> rawvideo (native))
Press [q] to stop, [?] for help
frame=15000 fps=226 q=0.0 Lsize= 1172kB time=00:10:00.00 bitrate=
16.0kbits/s
video:12150000kB audio:0kB subtitle:0kB other streams:0kB global
headers:0kB muxing overhead: unknown
//----------------------------------------------
More information about the ffmpeg-user
mailing list