- TBN = The time base in Avstream that have come from the container
- TBC = the time base in Avcodeccontext for the codec used for a particular stream
- TBR = TBR is guessed from the video stream and is the value of users want to see when they look for the video frame Rate
Not all parameters can be obtained, and some files do not have this information, it depends on the resolution layer.
The code is as follows:
if(St->codec->codec_type = =Codec_type_video) { if(St->r_frame_rate.den && st->r_frame_rate.num) Print_fps (av_q2d (St->r_frame_rate),"TBR"); if(St->time_base.den && st->time_base.num) Print_fps (1/av_q2d (St->time_base),"TBN"); if(St->codec->time_base.den && st->codec->time_base.num) Print_fps (1/av_q2d (St->codec->time_base),"TBC");}
The TBR represents the frame rate, and the 90k TBN represents the time precision of the file layer (ST), i.e. 1s=1200k, and duration, which represents the time precision of the video layer (ST->CODEC), i.e. 1s=50, and strem-> Duration is associated with timestamps.
The significance of FFmpeg's TBR TBC and TBN