最近又开始搞视频相关的东西了。之前一直对H264有畏惧,觉得太难,现在开始慢慢去接触它,了解它。无意中,看到网上有人对H264码流进行分析。地址:http://blog.csdn.net/leixiaohua1020/article/details/17933821。有商业的工具,比如H264VideoESViewer,不过要钱,而且很贵,公司花钱买了一个(真的是“一个”),只有一个人的电脑上装有(不能同时在其它电脑装)。为了学习H264码流,加上自己好久没写MFC了,就参考人家的代码,练练手。好在自己的MFC知识还在。

文中的程序在原作者基础上修改,加上自己的一些理解,同时也参考了一点点H264VideoESViewer界面的设置。

思路:
使用开源库h264bitstream来分析(即自己真正做的工作是封装这个库来显示在MFC中)。
1、先获取所有的NAL信息,包括NAL类型、偏移。
2、双击某一项NAL时,使用文件操作移到指定的偏移,然后读数据,然后分析。

代码放到github上,有时间会更新。代码仓库地址(直接使用git可下载):
https://github.com/latelee/H264BSAnalyzer.git

下面给出不同版本的功能和界面。

v1.0版本:
1、首个版本。
2、“版本”实为“版权”笔误;

v1.1版本(2014.3.4):
1、改善十六进制显示,使用CHexEdit实现(感谢作者!)。

v1.2版本(2014.3.27)
1、添加文件概述信息(路径、分辨率、帧率、profile等)。注:分辨率修正了16倍数问题,如1080P视频,有的工具(如H264Visa)分析得1920*1088,这是错误的计算。
2、支持上下光标移动显示详细信息。
3、支持不同slice的着色显示,显示帧序号。
4、修正h264bitstream关于seq_scaling_matrix_present_flag判断的问题。
5、已知问题:解析文件慢,需要优化。

PS:实然对自己有个感觉:上可搞MFC、SDL,下可移植Linux内核驱动。

免责声明:本文涉及的内容仅为了共享技术而作,限于个人能力,不提供技术支持,但可共同探讨问题。

完成一个分析H264码流的工具相关推荐

  1. H264码流分析工具

    概述 本文作为一个笔记,记录笔者学习H264码流的过程.重点记录使用工具分析H264码流.使用该工具,可方便查看码流中NALU的结构,为我们学习和理解有很大帮助. H264码流介绍 笔者直接参考:ht ...

  2. 实现对rtp H264码流的组帧

    rtp打包h264,包含了三种类型的包: 一个rtp包携带了一帧数据(single) 多个rtp包携带了一帧数据(FU-A) 一个rtp包携带了多帧数据(STAP-A) 在实际应用中绝大部分采用的是前 ...

  3. h264码流及h265码流结构分析,NAL头类型分析

    视频编码标准规定了编码后码流的语法语义,也就阐明了从比特流提取语法元素并进行解释的方法,也就是视频的解码过程.   1.h264码流结构解析:     H.264/AVC(Advanced Video ...

  4. H264码流打包分析(精华)

    H264码流打包分析 SODB 数据比特串-->最原始的编码数据 RBSP 原始字节序列载荷-->在SODB的后面填加了结尾比特(RBSP trailing bits 一个bit" ...

  5. H264码流打包分析

    H264码流打包分析 SODB 数据比特串-->最原始的编码数据 RBSP 原始字节序列载荷-->在SODB的后面填加了结尾比特(RBSP trailing bits 一个bit" ...

  6. 【开源工程】之裸码流提取工具--H264/H265

    序  工程中常常需要分析一些码流,但码流文件过大的话,不利于分析具体的帧数据,由此编写了码流提取软件.  此工具是在业余时间完成,很多功能尚待完善,如果茫茫中,你发现了此工具,也感兴趣研究,希望你将工 ...

  7. 【H.264/AVC视频编解码技术】第二章【H264码流分析】

    H264码流分层 NAL层,视频数据网络抽象层,作用是控制二进制数据的传输,主要用于网络传输.  VCL层,视频数据编码层. VCL结构关系 NALU NAL Header (1B)+ RBSP H2 ...

  8. RTP协议全解(H264码流和PS流)

    1 视频编码的原理 1.1 一个图像或者一个视频序列进行压缩,产生码流. 对图像的处理即是:帧内预测编码 其预测值P,是由已编码的图像做参考,经运动补偿得到的.预测图像P和当前帧Fn相减,得到两图像的 ...

  9. 应用角度理解H264码流

    应用角度理解H264码流 前言 1.NAL 2.SPS.PPS 2.1 SPS 2.2 PPS 3.Slice&MB 3.1.Slice 3.2.MB 4.RTP负载 5.AUD 6.文献 前 ...

最新文章

  1. cleanmymac定时清理与垃圾监测
  2. 大数据WEB阶段Spring框架(一)IOC控制反转、DI注入依赖
  3. JavaScript 图片滑动切换效果
  4. pythonmatplotlib怎么设置曲线_python – Matplotlib的“symlog”选项:如何防止曲线“回来”?...
  5. 三维点云学习(5)4-实现Deeplearning-PointNet-1-数据集的批量读取
  6. vb改变字形的代码是什么_VB怎么改变字体?
  7. 【2021考研数学汤家凤高数辅导讲义】第四章 不定积分
  8. el-table 样式设置
  9. 如何高效构建融资担保场景化分析体系
  10. ESP32 入门笔记06: WIFI时钟 + FreeRTOS+《两只老虎》 (ESP32 for Arduino IDE)
  11. 电商直播的直播类型有哪些?
  12. anguarjs 上传图片预览_前端战五渣学前端——FileReader预览本地文件
  13. 过压过流保护芯片完整篇
  14. 简单易懂的10折交叉法
  15. 毕设java 电脑配件购物商城论文
  16. intouch中DA server的配置文件
  17. 纯色背景图片去除底色工具发布,将背景变透明
  18. php senc.dll下载,PHP如何调用非COM组件的DLL
  19. php7.2 如何安装imagick扩展
  20. 查找Chrome浏览器header中的user-Agent两种方法

热门文章

  1. win2003下APACHE2.050+PHP5+MYSQL4.0.20+PHPMYADMIN2.57 的简易安装配置
  2. 中国电信:1月5G套餐用户数净增826万户
  3. 外媒:苹果明年上半年推出iPhone SE 3 支持5G搭载A14处理器
  4. 妈妈再也不用担心孩子偷玩手机了!微信升级“青少年模式”
  5. 铁路部门调整车票预售期为15天 火车票今年不再“一票难求”
  6. 以拼多多为例,中国互联网企业在农业上都做了哪些努力?
  7. 小米集团公布新任CFO人选:系原瑞信亚太区高管
  8. 首批国产特斯拉车主,被“割了韭菜”
  9. 逐条驳斥天猫精灵抄袭说?百度钱晨解秘小度Play设计
  10. 下月上市!中兴AXON 10 Pro 5G版通过3C认证 加入5G大战