Note that there are some explanatory texts on larger screens.

plurals
  1. PO
    primarykey
    data
    text
    <p>I imagine they chose to report TBR because that is <a href="https://stackoverflow.com/questions/3199489/meaning-of-ffmpeg-output-tbc-tbn-tbr">ffmpeg's best guess</a> as to what the framerate actually is. On many containers, the fps field (more specifically <code>AVStream.avg_frame_rate</code>) is not available, so it can't really be relied upon.</p> <p>Here are the comments from the <code>ffmpeg</code> source on the tbr, tbc, and tbn fields:</p> <p><strong>TBR (ffmpeg's best guess):</strong></p> <pre><code>struct AVStream { ... /** * Real base framerate of the stream. * This is the lowest framerate with which all timestamps can be * represented accurately (it is the least common multiple of all * framerates in the stream). Note, this value is just a guess! * For example, if the time base is 1/90000 and all frames have either * approximately 3600 or 1800 timer ticks, then r_frame_rate will be 50/1. */ AVRational r_frame_rate; </code></pre> <p><strong>TBC (the codec timebase):</strong></p> <pre><code>struct AVCodecContext { ... /** * This is the fundamental unit of time (in seconds) in terms * of which frame timestamps are represented. For fixed-fps content, * time base should be 1/framerate and timestamp increments should be 1. * decoding: set by libavformat * encoding: set by libavformat in av_write_header */ AVRational time_base; </code></pre> <p><strong>TBN (the stream (container) timebase):</strong></p> <pre><code>struct AVStream { ... /** * This is the fundamental unit of time (in seconds) in terms * of which frame timestamps are represented. For fixed-fps content, * timebase should be 1/framerate and timestamp increments should be * identically 1. * - encoding: MUST be set by user. * - decoding: Set by libavcodec. */ AVRational time_base; </code></pre> <p>Hopefully, that explains why TBR is reported instead of FPS. It appears <code>ffmpeg</code> is having difficulty determining the time base for your video stream, and the container (e.g., AVI, MP4, DivX, XviD, etc...) supplies the framerate, so <code>ffmpeg</code> displays it even though it can't determine it through analysis. Is it possible to re-encode the video properly?</p>
    singulars
    1. This table or related slice is empty.
    plurals
    1. This table or related slice is empty.
    1. This table or related slice is empty.
    1. This table or related slice is empty.
    1. VO
      singulars
      1. This table or related slice is empty.
    2. VO
      singulars
      1. This table or related slice is empty.
    3. VO
      singulars
      1. This table or related slice is empty.
 

Querying!

 
Guidance

SQuiL has stopped working due to an internal error.

If you are curious you may find further information in the browser console, which is accessible through the devtools (F12).

Reload