Discussion:
[FFmpeg-user] Framerate issues
Calvin Arndt
2018-10-30 13:01:59 UTC
Permalink
It is clearly apparent to me I don't understand something going on
here!

I clearly select an output framerate of 7fps.
My camera's set to limit each connection to 7fps (and I have verified
it is doing so).
The camera I am using is a high end AXIS quite capable of 60fps.
Resultant videos are the full 3600 seconds, but they play in 900
seconds!
Verified via time time stamp on the images and vlc's playtime.
Why is fps=2.0? Totally not what I selected, nor what is provided by
camera.
Why is drop=1320. The machine doing this is quite capable of the full
framerate.
What am I missing?

Thanks in advance


ffmpeg -i http://192.168.2.1:9080/mjpg/video.mjpg -r 7 -t 3600
recording.avi
ffmpeg version 2.8.15-0ubuntu0.16.04.1 Copyright (c) 2000-2018 the
FFmpeg developers
built with gcc 5.4.0 (Ubuntu 5.4.0-6ubuntu1~16.04.10) 20160609
configuration: --prefix=/usr --extra-version=0ubuntu0.16.04.1
--build-suffix=-ffmpeg --toolchain=hardened
--libdir=/usr/lib/x86_64-linux-gnu
--incdir=/usr/include/x86_64-linux-gnu --cc=cc --cxx=g++ --enable-gpl
--enable-shared --disable-stripping --disable-decoder=libopenjpeg
--disable-decoder=libschroedinger --enable-avresample --enable-avisynth
--enable-gnutls --enable-ladspa --enable-libass --enable-libbluray
--enable-libbs2b --enable-libcaca --enable-libcdio --enable-libflite
--enable-libfontconfig --enable-libfreetype --enable-libfribidi
--enable-libgme --enable-libgsm --enable-libmodplug --enable-libmp3lame
--enable-libopenjpeg --enable-libopus --enable-libpulse --enable-librtmp
--enable-libschroedinger --enable-libshine --enable-libsnappy
--enable-libsoxr --enable-libspeex --enable-libssh --enable-libtheora
--enable-libtwolame --enable-libvorbis --enable-libvpx
--enable-libwavpack --enable-libwebp --enable-libx265 --enable-libxvid
--enable-libzvbi --enable-openal --enable-opengl --enable-x11grab
--enable-libdc1394 --enable-libiec61883 --enable-libzmq --enable-frei0r
--enable-libx264 --enable-libopencv
libavutil 54. 31.100 / 54. 31.100
libavcodec 56. 60.100 / 56. 60.100
libavformat 56. 40.101 / 56. 40.101
libavdevice 56. 4.100 / 56. 4.100
libavfilter 5. 40.101 / 5. 40.101
libavresample 2. 1. 0 / 2. 1. 0
libswscale 3. 1.101 / 3. 1.101
libswresample 1. 2.101 / 1. 2.101
libpostproc 53. 3.100 / 53. 3.100
[mjpeg @ 0x11cd0e0] ignoring invalid SAR: 10/11
[mjpeg @ 0x11cd0e0] Changeing bps to 8
Input #0, mjpeg, from 'http://192.168.2.1:9080/mjpg/video.mjpg':
Duration: N/A, bitrate: N/A
Stream #0:0: Video: mjpeg, yuvj420p(pc, bt470bg/unknown/unknown),
720x480, 25 tbr, 1200k tbn, 25 tbc
[swscaler @ 0x1216b40] deprecated pixel format used, make sure you did
set range correctly
Output #0, avi, to 'recording.avi':
Metadata:
ISFT : Lavf56.40.101
Stream #0:0: Video: mpeg4 (FMP4 / 0x34504D46), yuv420p, 720x480,
q=2-31, 200 kb/s, 7 fps, 7 tbn, 7 tbc
Metadata:
encoder : Lavc56.60.100 mpeg4
Stream mapping:
Stream #0:0 -> #0:0 (mjpeg (native) -> mpeg4 (native))
Press [q] to stop, [?] for help
frame= 515 fps=2.0 q=20.7 Lsize= 2069kB time=00:01:13.57 bitrate=
230.3kbits/s dup=0 drop=1320
video:2051kB audio:0kB subtitle:0kB other streams:0kB global
headers:0kB muxing overhead: 0.871691%
--
Calvin
--
Calvin Arndt
(217) 377-2979
***@macksrecycling.com
_______________________________________________
ffmpeg-user mailing list
ffmpeg-***@ffmpeg.org
http://ffmpeg.org/mailman/listinfo/ffmpeg-user

To unsubscribe, visit link above, or email
ffmpeg-user-request@
Paul B Mahol
2018-10-30 13:15:36 UTC
Permalink
Post by Calvin Arndt
It is clearly apparent to me I don't understand something going on
here!
I clearly select an output framerate of 7fps.
My camera's set to limit each connection to 7fps (and I have verified
it is doing so).
The camera I am using is a high end AXIS quite capable of 60fps.
Resultant videos are the full 3600 seconds, but they play in 900
seconds!
Verified via time time stamp on the images and vlc's playtime.
Why is fps=2.0? Totally not what I selected, nor what is provided by
camera.
Why is drop=1320. The machine doing this is quite capable of the full
framerate.
What am I missing?
Perhaps you need "-framerate 7" before -i ?
Post by Calvin Arndt
Thanks in advance
ffmpeg -i http://192.168.2.1:9080/mjpg/video.mjpg -r 7 -t 3600
recording.avi
ffmpeg version 2.8.15-0ubuntu0.16.04.1 Copyright (c) 2000-2018 the
FFmpeg developers
built with gcc 5.4.0 (Ubuntu 5.4.0-6ubuntu1~16.04.10) 20160609
configuration: --prefix=/usr --extra-version=0ubuntu0.16.04.1
--build-suffix=-ffmpeg --toolchain=hardened
--libdir=/usr/lib/x86_64-linux-gnu
--incdir=/usr/include/x86_64-linux-gnu --cc=cc --cxx=g++ --enable-gpl
--enable-shared --disable-stripping --disable-decoder=libopenjpeg
--disable-decoder=libschroedinger --enable-avresample --enable-avisynth
--enable-gnutls --enable-ladspa --enable-libass --enable-libbluray
--enable-libbs2b --enable-libcaca --enable-libcdio --enable-libflite
--enable-libfontconfig --enable-libfreetype --enable-libfribidi
--enable-libgme --enable-libgsm --enable-libmodplug --enable-libmp3lame
--enable-libopenjpeg --enable-libopus --enable-libpulse --enable-librtmp
--enable-libschroedinger --enable-libshine --enable-libsnappy
--enable-libsoxr --enable-libspeex --enable-libssh --enable-libtheora
--enable-libtwolame --enable-libvorbis --enable-libvpx
--enable-libwavpack --enable-libwebp --enable-libx265 --enable-libxvid
--enable-libzvbi --enable-openal --enable-opengl --enable-x11grab
--enable-libdc1394 --enable-libiec61883 --enable-libzmq --enable-frei0r
--enable-libx264 --enable-libopencv
libavutil 54. 31.100 / 54. 31.100
libavcodec 56. 60.100 / 56. 60.100
libavformat 56. 40.101 / 56. 40.101
libavdevice 56. 4.100 / 56. 4.100
libavfilter 5. 40.101 / 5. 40.101
libavresample 2. 1. 0 / 2. 1. 0
libswscale 3. 1.101 / 3. 1.101
libswresample 1. 2.101 / 1. 2.101
libpostproc 53. 3.100 / 53. 3.100
Duration: N/A, bitrate: N/A
Stream #0:0: Video: mjpeg, yuvj420p(pc, bt470bg/unknown/unknown),
720x480, 25 tbr, 1200k tbn, 25 tbc
set range correctly
ISFT : Lavf56.40.101
Stream #0:0: Video: mpeg4 (FMP4 / 0x34504D46), yuv420p, 720x480,
q=2-31, 200 kb/s, 7 fps, 7 tbn, 7 tbc
encoder : Lavc56.60.100 mpeg4
Stream #0:0 -> #0:0 (mjpeg (native) -> mpeg4 (native))
Press [q] to stop, [?] for help
frame= 515 fps=2.0 q=20.7 Lsize= 2069kB time=00:01:13.57 bitrate=
230.3kbits/s dup=0 drop=1320
video:2051kB audio:0kB subtitle:0kB other streams:0kB global
headers:0kB muxing overhead: 0.871691%
--
Calvin
--
Calvin Arndt
(217) 377-2979
_______________________________________________
ffmpeg-user mailing list
http://ffmpeg.org/mailman/listinfo/ffmpeg-user
To unsubscribe, visit link above, or email
_______________________________________________
ffmpeg-user mailing list
ffmpeg-***@ffmpeg.org
http://ffmpeg.org/mailman/listinfo/ffmpeg-user

To unsubscribe, visit link above, or email
ffmpeg-user-***@ffmpeg.org with subje
Moritz Barsnick
2018-10-30 13:24:37 UTC
Permalink
Post by Calvin Arndt
I clearly select an output framerate of 7fps.
My camera's set to limit each connection to 7fps (and I have verified
it is doing so).
[...]
Post by Calvin Arndt
Why is fps=2.0? Totally not what I selected, nor what is provided by
camera.
It is a bit confusing if you don't understand what it means: It's the number of
output frames ffmpeg is *processing* per second - not the framerate of
the actual video.
Post by Calvin Arndt
Why is drop=1320. The machine doing this is quite capable of the full
framerate.
You are grabbing input video at (presumably) 25 fps, but requesting
ffmpeg to output 7 fps. ffmpeg achieves this by dropping frames -
therefore, drops are reported.

Indeed, 7 / 25 is approximately equal to 515 / (1230 + 515).
Post by Calvin Arndt
Resultant videos are the full 3600 seconds, but they play in 900 seconds!
Presumably, your input MJPEG stream doesn't have any timestamps (or
ffmpeg is incapable of processing them. ffmpeg assumes 25 fps when it
really is 7, therefore the speedup. You could tell ffmpeg via an
*input* option what the actual input framerate is. Or you can tell
ffmpeg to use wallclock timestamps, i.e. use the arrival time.
Post by Calvin Arndt
frame= 515 fps=2.0 q=20.7 Lsize= 2069kB time=00:01:13.57 bitrate=
230.3kbits/s dup=0 drop=1320
BTW, your ffmpeg is very old. Newer versions have a speed indicator,
possibly showing you that you are not capable of processing this video
in realtime (i.e. speed < 1.0x).

Cheers,
Moritz
_______________________________________________
ffmpeg-user mailing list
ffmpeg-***@ffmpeg.org
http://ffmpeg.org/mailman/listinfo/ffmpeg-user

To unsubscribe, visit link above, or email
ffmpeg-user-***@ffmpeg.org with subjec

Loading...