视音频编解码学习工程:H.264分析器
=====================================================
视音频编解码学习工程系列文章列表:
=====================================================
本文介绍一个自己的开源小项目:H.264码流分析器。在学习过程中,从开源社区获得了很多的资源,在此也算是对开源社区的回馈了。
我这个项目规模不大,主要可以用来学习H.264码流结构。使用VC 2010的MFC开发完成。在对H.264的NAL进行解析的过程中,用到了另外一个开源工程:h264bitstream。h264bitstream工程本身还是挺优秀的,可以比较详细的列出NAL的信息。
软件的exe以及源代码已经上传到了SourceForge上。上传前又增加了一个英文界面,紧跟国际潮流~
项目主页
SourceForge:https://sourceforge.net/projects/h264streamanalysis/
Github:https://github.com/leixiaohua1020/h264_analysis
开源中国:http://git.oschina.net/leixiaohua1020/H264_Analysis
CSDN下载地址(程序+源代码):http://download.csdn.net/detail/leixiaohua1020/6838801
更新记录==============================
1.1版(2014.7.8)
* 更换了界面
* 原工程支持Unicode编码
* 支持中英文切换
* 修复了一个内存泄漏的Bug
* 原版本仅支持鼠标单击NAL显示其详细信息,新版本支持键盘上下键操作浏览NAL详细信息。
编译好的可执行程序:http://download.csdn.net/detail/leixiaohua1020/7767725
CSDN源代码:http://download.csdn.net/detail/leixiaohua1020/7767631
PUDN源代码:http://www.pudn.com/downloads644/sourcecode/multimedia/detail2605169.html
新版(2016.1.1)
* 精简了代码,使之更通俗易懂
* 修改了少量界面UI
* 修正了少量解析错误
* 增加了解析速度
已经更新至SourceForge上
软件使用介绍
其实软件的使用还是相当简单的,一共也没有几个按钮。
软件运行后,首先打开一个码流文件(支持拖拽)。然后单击“开始”,可以解析出一系列NAL,在左侧的列表中显示出来。列表中显示出了每一个NAL的nal_reference_idc、nal_type等信息,不同种类的NAL被标记成了不同的颜色。单击任意一个NAL,可以在右边显示出其详细信息。界面如图所示:
由于传到了SourceForge上。还做了个英文界面。
软件源代码简析
源代码方面和普通的MFC程序差不太多,懂得MFC的人应该很快就能看懂。大部分地方都做了注释。唯一比较特殊的地方,可能就在于对开源项目h264bitstream进行了一个简单的封装,在此就不细说了。注释方面做得比较充分。
如果有什么使用问题,可以反馈给我,以后有时间进行修改升级。代码某些地方还不完善,以后有时间修改。
视音频编解码学习工程:H.264分析器的更多相关文章
- 视音频编解码学习工程:JPEG分析器
=====================================================视音频编解码学习工程系列文章列表: 视音频编解码学习工程:H.264分析器 视音频编解码学习工 ...
- 视音频编解码学习工程:TS封装格式分析器
=====================================================视音频编解码学习工程系列文章列表: 视音频编解码学习工程:H.264分析器 视音频编解码学习工 ...
- 视音频编解码学习工程:AAC格式分析器
=====================================================视音频编解码学习工程系列文章列表: 视音频编解码学习工程:H.264分析器 视音频编解码学习工 ...
- 视音频编解码学习工程:FLV封装格式分析器
===================================================== 视音频编解码学习工程系列文章列表: 视音频编解码学习工程:H.264分析器 视音频编解码学习 ...
- [总结]FFMPEG视音频编解码零基础学习方法--转
ffmpeg编解码学习 目录(?)[-] ffmpeg程序的使用ffmpegexeffplayexeffprobeexe 1 ffmpegexe 2 ffplayexe 3 ffprobeexe ...
- FFMPEG视音频编解码零基础学习方法
在CSDN上的这一段日子,接触到了很多同行业的人,尤其是使用FFMPEG进行视音频编解码的人,有的已经是有多年经验的“大神”,有的是刚开始学习的初学者.在和大家探讨的过程中,我忽然发现了一个问题:在“ ...
- FFMPEG视音频编解码零基础学习方法-b
感谢大神分享,虽然现在还看不懂,留着大家一起看啦 PS:有不少人不清楚“FFmpeg”应该怎么读.它读作“ef ef em peg” 0. 背景知识 本章主要介绍一下FFMPEG都用在了哪里(在这里仅 ...
- [总结]FFMPEG视音频编解码零基础学习方法
在CSDN上的这一段日子,接触到了很多同行业的人,尤其是使用FFMPEG进行视音频编解码的人,有的已经是有多年经验的“大神”,有的是刚开始学习的初学者.在和大家探讨的过程中,我忽然发现了一个问题:在“ ...
- 【转】[总结]FFMPEG视音频编解码零基础学习方法
在CSDN上的这一段日子,接触到了很多同行业的人,尤其是使用FFMPEG进行视音频编解码的人,有的已经是有多年经验的“大神”,有的是刚开始学习的初学者.在和大家探讨的过程中,我忽然发现了一个问题:在“ ...
随机推荐
- Mysql 统一设置utf8字符
无聊的关于有效配置文件路径的备忘 原来阿里云服务器的mysql 5.5 , 配置/etc/my.cnf是没有任何作用的,需要编辑/etc/mysql/my.cnf 妈的, 就是这一点让我测试了两天, ...
- 让你的代码量减少3倍!使用kotlin开发Android(二) --秘笈!扩展函数
本文承接上一篇文章:让你的代码量减少3倍!使用kotlin开发Android(一) 创建Kotlin工程 本文同步自博主的私人博客wing的地方酒馆 上一节说到,kotlin可以省去getter,se ...
- Hibernate设置时间戳的默认值和更新时间的自动更新
Generated and default property values 生成的和默认的属性值 The database sometimes generates a property value, ...
- 解决 oracle IO占用率很高的问题
突然user io占用率很很高,看了一个AWR报告,发现direct path read temp,direct path write temp的的数率很高,后来怀疑是临时表空间不够了,就试着设了一下 ...
- VMware中的桥接模式、NAT(网络地址转换模式)、Host-only(主机模式):转自:http://blog.chinaunix.net/uid-11798538-id-3061551.html
其中VMnet1是虚拟机Host-only模式的网络接口,VMnet8是NAT模式的网络接口,这些后面会详细介绍.在个虚拟交换机,分别是-个虚拟机交换机,而在VMware Workstation 5以 ...
- python 3 黑色魔法元类初探
最近读django源码,发现必须了解元类才能理解一些很神奇的行为. 发现元类实际上是控制class的创建过程.比如类B继承某个看似平淡无奇的类A之后,你在类B中定义的属性或方法可能会遭到彻底改变. 假 ...
- Python 3 智能发音
真是十分神奇.. import win32com.client import time s = win32com.client.Dispatch("SAPI.SpVoice") s ...
- 十六进制字符串转化为十进制值strtoul函数
eg: NSString *strtest =@"7fffffff"; NSUInteger val = strtoul([[strtest substringWithRange: ...
- Cocos2D与SpriteBuilder的问题在哪提问
大熊猫猪·侯佩原创或翻译作品.欢迎转载,转载请注明出处. 如果觉得写的不好请多提意见,如果觉得不错请多多支持点赞.谢谢! hopy ;) 我们知道Cocos2D的教程中文版的非常少,注意我没有说Coc ...
- [Vim]新建python文件自动添加python header
使用vim脚本来实现的,使用了模板,几行代码就能实现很实用. ~/.vimrc 中的代码 "auto add pyhton header --start autocmd BufNewFile ...