HM-16.0编码过程:将YUV文件编码成HEVC格式的码流
来源:互联网 发布:乐视手机mac拨号 编辑:程序博客网 时间:2024/05/19 06:48
HM-16.0编码:将YUV文件编码成HEVC格式的码流
注:
1 为了快速优化运行(不调程序的时候),可以将程序的版本设为“release”,否则还是设为“debug”。
2 该程序中工作目录设为:C:\Users\Administrator\Desktop\HM-16.0\HM-16.0\bin\vc10\Win32\Debug,如果设为其他的路径,就需要在别的路径中运行操作了。
3 不想一下子运行所有的程序,可以选中要运行的程序,右击,重新生成,不用按(F7)运行整个项目。
文章链接下载地址:http://download.csdn.net/detail/smilehehe110/9695306
1、下载好HM-16.0代码和测试视频序列,解压
视频测试序列:akiyo_qcif.yuv
2、不同的开发平台要选择不同的工程文件,苹果的xcode工程文件在HM.xcodeproj中,windows和linux的工程文件build文件夹中。我所使用的是visual studio 2012,因此选择build文件夹中的HM_vc10.sln打开。
3、在visualstudio 2012中打开后,发现整个solution包含九个工程下图所示),将TAppEncoder设为活动工程(在该工程上单击右键->Set as StartUp Project [设为启动项目] )
4、编译整个Solution(F7),等待9个工程编译完成后,根目录下新生成了一个文件夹,路径为:(根目录位置..\HM-16.0\HM-16.0\bin\vc10\Win32\Debug),其中有成功编译完成的两个可执行文件TAppDecoder.exe和TAppEncoder.exe,以及其他一些副产品。
5、工程目录中的cfg文件夹中有多个预先设定好的配置文件,分别代表了不同的编码模式。该目录中的pre-sequence文件夹中指定了多个输入测试序列的配置信息。我们在这里选择encoder_intra_main.cfg作为编码的配置文件,另外用akiyo_qcif.yuv作为测试序列。[新建一个cfg文件命名为akiyo.cfg](也可以从pre-sequence文件夹下选择),内容如下:
(方便起见,可以把测试序列放入Debug目录下)
6、将两个cfg文件拷贝到4中Debug的目录下,待编码序列要依据cfg的路径存放,否则会出现找不到文件的错误。
7、配置工程属性。在TAppEncoder工程上右键—>Properties[属性]—>configuration properties[配置属性]—>debuging[调试]。将命令行参数和工作目录改成下图所示:
commandArguments[命令参数]: -cencoder_intra_main.cfg-cakiyo.cfg
WorkingDirectory[工作目录]: C:\Users\Administrator\Desktop\HM-16.0\HM-16.0\bin\vc10\Win32\Debug
8、编译运行(Ctrl+F5:防止程序执行结束,DOS窗口闪退),DOS窗口运行程序如下:(50帧,与前面对应)
9、运行结束在Debug下新生成rec.yuv和str.bin(HEVC码流)文件。
1 0
- HM-16.0编码过程:将YUV文件编码成HEVC格式的码流
- HM-16.0的解码过程:将编码后的*.bin文件解码
- 将视频 YUV 格式编码成 H264
- YUV编码为HEVC(H.265)
- HM编码器代码阅读(21)——熵编码的概念以及在HEVC中应用
- 文件的编码格式
- HEVC的算数编码
- HEVC的算数编码
- HEVC的算数编码
- YCbCr 编码格式(YUV)
- YCbCr 编码格式(YUV)
- 使用ffmpeg接口将YUV编码封装为文件
- HEVC中编码每个CTU的码流跟踪
- 【HEVC学习与研究】37、HM编码器的基本结构2:帧内编码部分的代码骨架
- VS2013将新建的源码文件的编码格式自动设置成UTF8
- VS2013将新建的源码文件的编码格式自动设置成UTF8
- VS2013将新建的源码文件的编码格式自动设置成UTF8
- VS2012将新建的源码文件的编码格式自动设置成UTF8
- js移动端双指缩放和旋转
- 最简单的加法运算1001,1002
- Jsp脚本段与声明的区别
- Leetcode.寻找不重复的最长子字符串
- WebStorage
- HM-16.0编码过程:将YUV文件编码成HEVC格式的码流
- 2017年能叫醒你的25张图,你看到第几张会醒?
- 计算机原理学习(2)-- 存储器和I/O设备和总线
- office 2013最新激活密钥及破解激活方法
- R语言编程命令集(一):输入输出数据
- ibatis 遍历
- Oracle Database Instance
- Alfred 问:为什么要在 Mac 上使用效率启动器类应用?
- 唯爱小粽子:maven常用命令