转载的http://bbs.eeworld.com.cn/thread-476334-1-1.html

地址在这里,大家都过去看  http://bbs.eeworld.com.cn/thread-476334-1-1.html

[转载] 如何获取h.264码流的帧率 

   

1091

TA的帖子

3

TA的资源

五彩晶圆(初级)

Rank: 7Rank: 7Rank: 7

电梯直达 跳转到指定楼层
楼主
  发表于 2015-10-30 19:14:16  |  只看该作者  | 倒序浏览  | 阅读模式
        在我的印象里面是H264的流是没有帧率信息的,在用Elecard StreamEye或者是VLC分析H264的视频流的时候,偶尔可以看到帧率信息,有点迷糊,之前有看sps和ssp的相关信息,一直都没有发现,今天仔细研究了一下,和大家分享一下:




        在H.264码流中一般没有帧率,主要是在SPS信息中VUI可以解析出timing_info_present_flag,若timing_info_present_flag等于1,则码流中有num_units_in_tick 和 time_scale,我们可以通过这两个值计算出帧率来;

framerate = time_scale/num_units_in_tick. (个人认为 framerate = time_scale/(2*num_units_in_tick))



        如果在VUI中
timing_info_present_flag 为0,这样就不能直接获取帧率信息了,也可以考虑在H264的容器或者流封装中得到帧率时间等信息;像DVB系统中或者是ts流中,其他格式的流都可以,因为需要把视频播放出来,肯定都有时间和速度控制的信息在里面的;可以在容器中或者协议里面找到帧率或者播放时间信息,可以获取到帧率;

猜你喜欢

转载自blog.csdn.net/qq_16810885/article/details/80998981