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文件拷贝到4Debug的目录下,待编码序列要依据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.yuvstr.bin(HEVC码流)文件。




1 0
原创粉丝点击