HM代码编译
一样,之前提到的教程还没看完,这回接着分解。在上一回,我们已经将代码完整的下载下来了,所以接下来,只需要到 build 文件夹下,打开.sln文件即可。我用的的是 VS 2017,所以我打开 HM_vc2015.sln,如下图1所示。

接下来到 VS 下,把启动项目改成 TAppEncoder ,如下图 2 所示。

接着试着按 Ctrl+F5
编译运行一下,反正我什么也没调,就得到如下图 3 所示的内容。

接下来,有一个地方比较让人头疼,那就是下载测试文件。由于我实在找不到样例的下载源,我只好从这里找一些yuv文件做测试。但是问题是要自己写一个配置文件,这个对我来说有难度,因为我不知道下载来的文件的 InputBitDepth、InputChromaFormat、FrameSkip、FrameRate分别是多少。不过我也不管了,总之我是下载了一个叫做Akiyo的视频,然后根据已经给的那些cfg文件将参数设置为以下所示:
#======== File I/O ===============
InputFile : H:\svn\svndemo\newwc\build\vc2015\Win32\Debug\Akiyo.yuv
InputBitDepth : 8 # Input bitdepth
InputChromaFormat : 420 # Ratio of luminance to chrominance samples
FrameRate : 60 # Frame Rate per second
FrameSkip : 0 # Number of frames to be skipped in input
SourceWidth : 352 # Input frame width
SourceHeight : 288 # Input frame height
FramesToBeEncoded : 50 # Number of frames to be coded
Level : 3.1
然后把Akiyo.yuv
、Akiyo.cfg
、encoder_intra_main10.cfg
这三个文件都放在...\build\vc2015\Win32\Debug
目录下。接着运行。果然,还是错了。提示 failed to open Input YUV file
。

那天晚上,我彻夜难眠。好在第二天,我及时发现了错误。
原来,我生成解决方案的目录设置错了,所以在我的debug目录下也没有出现exe文件,这点我之前一直没有发现。于是,把项目属性>>配置属性>>常规>>输出目录
改成了H:\svn\svndemo\newwc\build\vc2015\Win32\Debug
。如图5所示:

然后重新生成解决方案:

如图7所示,可以看到.../Debug
目录下出现了.exe文件,说明生成成功了。

好了,这时候再来跑一跑,发现成功了!

因为我調了50帧,所以下面还在慢慢跑,但至少是跑起来了!很高兴!
网友评论