从H264的裸流中,PPS,SPS中,一定可以获取到的,有图像的宽,高信息。

这部分信息的提取,用Stream eye 分析:

这里需要特别提一下这两个参数:
  pic_width_in_mbs_minus1 = 119(1920)
  pic_height_in_map_units_minus1 = 67(1088)
分别表示图像的宽和高,以宏块(16x16)为单位的值减1
因此,实际的宽为 (119+1)*16 = 352,高:(67+1)*16=1088

开始的时候,我还以为是哪里不对,1080咋是1088?后面才知道,1080是因为简称,实际是1088,因为要16的倍数。

===================================

给一段264的码流,可以得出帧率信息吗?(来自:http://bbs.chinavideo.org/forum.php?mod=viewthread&tid=17285&highlight=%D6%A1%C2%CA)
下面是网上找到的:
H.264码流中一般没有帧率,比特率信息到使可以得到,你参考码流语法,但是有的吗流有VUI信息,他里面有个标志 timing_info_present_flag 若等于1,则码流中有num_units_in_tick 和 time_scale。
framerate = time_scale/num_units_in_tick.

下面是264标准中给出:

timing_info_present_flag equal to 1 specifies that num_units_in_tick, time_scale and fixed_frame_rate_flag are present in the bitstream. timing_info_present_flag equal to 0 specifies that num_units_in_tick, time_scale and
fixed_frame_rate_flag are not present in the bitstream.

num_units_in_tick is the number of time units of a clock operating at the frequency time_scale Hz that corresponds to one increment (called a clock tick) of a clock tick counter. num_units_in_tick shall be greater than 0. A clock tick is the minimum interval of time that can be represented in the coded data. For example, when the frame rate of a video signal is 30 000 ÷ 1001 Hz, time_scale may be equal to 60 000 and num_units_in_tick may be equal to 1001. See Equation C-1.

time_scale is the number of time units that pass in one second. For example, a time coordinate system that measures time using a 27 MHz clock has a time_scale of 27 000 000. time_scale shall be greater than 0.

从上面红色标注的例子看,应该是framerate=(time_scale/num_unit_in_tick)/2;

PS:后面我专门查看了H264的标准,在VUI里面,确实看到了这段话,所以从上面可以知道,我分析的那段码率的帧率为:framerate=50/1/2=25fps;这确实是我编码的时候设置的帧率。

这是timing_info_present_flag =1才可以知道。如果在timing_info_present_flag =0的时候,那怎么获取呢?

帖子里有人回答了:

但不是每一段264码流都包含了VUI,这部分可有可无,264只是一种压缩标准,但是到实际应用的时候,一般都需要封装到某种容器里,你所需要的帧率是在容器中指定的。

H264裸流分析中,能获取哪些信息?的更多相关文章

  1. 利用FFmpeg 将 rtsp 获取H264裸流并保存到文件中

    既然已经可以通过 RTSP 获取h264 裸流了.那么通过 FFmpeg 将其保存到文件中怎么做呢? 一.首先RTSP获取 h264 裸流 我们上面两篇文章主要讲的是通过 rtsp://Your ip ...

  2. ffmpeg学习(二) 通过rtsp获取H264裸流并保存到mp4文件

    本篇将使用上节http://www.cnblogs.com/wenjingu/p/3977015.html中编译好的库文件通过rtsp获取网络上的h264裸流并保存到mp4文件中. 1.VS2010建 ...

  3. 【嵌入式开发】用 VLC 显示 树莓派摄像头 H264 裸流

    首先树莓派连上网络,并和电脑在同一网段. 树莓派的IP是: 192.168.3.13 电脑的IP是: 192.168.3.6 1.在树莓派上采集 H264裸流,并用UDP发送到电脑. pi@Neil- ...

  4. JAVAEE_Servlet_04_在service()方法中连接数据库获取表信息

    在service()方法中连接数据库获取表信息 代码: package com.shige.controller; import javax.servlet.*; import java.io.IOE ...

  5. 通过GeoIP2分析访问者IP获取地理位置信息

    原文链接:http://blog.csdn.net/johnnycode/article/details/42028841 MaxMind GeoIP2 服务能识别互联网用户的地点位置与其他特征,应用 ...

  6. SpringBoot项目中,获取配置文件信息

    1.在配置文件中设置信息,格式如下 wechat: mpAppId: wxdf2b09f280e6e6e2 mpAppSecret: f924b2e9f140ac98f9cb5317a8951c71 ...

  7. h264码流分析

    ---------------------------------------------------------------------------------------------------- ...

  8. h264码流分析及其工具

    总的来说H264的码流的打包方式有两种,一种为annex-b byte stream format的格式,这个是绝大部分编码器的默认输出格式,就是每个帧的开头的3~4个字节是H264的start_co ...

  9. 转: H264码流分析 --264分析两大利器:264VISA和Elecard StreamEye Tools

    转码: http://www.360doc.com/content/13/0225/19/21412_267854467.shtml ESEYE视频工具全称是什么: Elecard StreamEye ...

随机推荐

  1. 甲骨文关闭OpenSSO后,OpenAM成为其继续者

    消息来源:http://os.51cto.com/art/201003/190108.htm                                        OpenAM主页连接: ht ...

  2. linux yum源安装

    #1.安装remi源mkdir /disk1/toolscd /disk1/toolsrpm -Uvh https://dl.fedoraproject.org/pub/epel/epel-relea ...

  3. HDU 2256 Problem of Precision(矩阵高速幂)

    题目地址:HDU 2256 思路: (sqrt(2)+sqrt(3))^2*n=(5+2*sqrt(6))^n; 这时要注意到(5+2*sqrt(6))^n总能够表示成an+bn*sqrt(6); a ...

  4. paip.中文 分词 ---paoding 3.1 的使用

    paip.中文 分词 ---paoding 3.1 的使用 paoding 3.1 下载: 1 设置字典路径 1 测试代码 1 作者Attilax  艾龙,  EMAIL:1466519819@qq. ...

  5. 使用vim-latex排版

    前几天在某个群上看到了一篇简历,内容不重要,一看排版很漂亮的说.一问才知道是用latex排版工具排版的.一想到我都大三下学期的,也快大四了,是不是要准备一份简历.于是就想使用latex这个排版工具来排 ...

  6. Qt creator 编译错误:无法解析的外部符号(命令)

    问题来自于:仅仅是在creator 中加入了一个新的DIalog类,并在main(),中实例化并show.就出现例如以下的错误: main.obj:-1: error: LNK2019: 无法解析的外 ...

  7. python鸭子类型(duck type)

    1.什么是鸭子类型顾名思义,就是看起来像鸭子的类型,就可以叫做鸭子类型所以,鸭子类型是一种不严格的类型,弱类型有相同方法的类型,可以归为一类鸭子.2.鸭子类型示例 class dog: def run ...

  8. 09、win32 转换为 store app

    1.机制: 微软的 Project Centernial ( Project C) 项目的就是把传统的 windows桌面应用程序 转换为 windows10 store app (appx). 目的 ...

  9. ypbind启动失败

    [root@bs035 test]# cat /etc/yp.conf # /etc/yp.conf - ypbind configuration file# Valid entries are## ...

  10. git使用教程&&问题列表

    git教程[转] http://www.liaoxuefeng.com/wiki/0013739516305929606dd18361248578c67b8067c8c017b000 git push ...