Why setting -r 30 still gives fps=15 in ffmpeg?


fmpeg -loglevel verbose -pixel_format mjpeg -s hd720 -r 30 -i /dev/video1 -f libx264 -preset ultrafast -tune zerolatency -crf 23 -f matroska tcp://


frame=10497 fps= 15 q=22.0 Lsize=  253990kB time=00:11:39.76 bitrate=2973.4kbit

fps= 15 represents the encoding speed, not the output file framerate.

  • What is encoding speed? Sometimes it is fps=30 though. How do I check the frame rate then? – user10024395 Apr 16 '18 at 15:50
  • Shouldn't encoding speed be as fast as output framerate? If it is faster than 30 then maybe it is fine. Now, since it is slower than 30, does it mean I have frame drop? – user10024395 Apr 16 '18 at 15:51
  • encoding speed --> number of frames encoded per second, If there are frame drops, you will see drop=X in your progress readout, Check the speed, if it's close to 1 then your device is only sending 15 fps. – Gyan Apr 16 '18 at 16:15
  • I dont see any drop=X. How to check speed? – user10024395 Apr 16 '18 at 16:46
  • 1
    Only when there is drop. – Gyan Apr 17 '18 at 6:09

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.