编译及运行应用
- 以管理员帐号登录开发环境,并切换到venc_image样例所在的目录。
- 编译代码。
- 在样例目录下,创建目录用于存放编译文件,例如,本文中,依次创建的目录为“build\intermediates\soc”。
- 以管理员身份执行cmd窗口,切换到“样例目录\build\intermediates\soc”目录下,执行cmake生成编译文件,在“样例目录\out\Debug”或“样例目录\out\release”目录下生成可执行文件main.exe,将Debug或release目录下的main.exe复制到“样例目录\out”目录下,否则会导致运行可执行文件时找不到依赖的文件。
“../../../src”表示CMakeLists.txt文件所在的目录,请根据实际目录层级修改。
- Debug模式时的编译命令如下:
cd 样例目录\build\intermediates\soc cmake ../../../src -DCMAKE_SKIP_RPATH=TRUE -G "Visual Studio 15 2017 Win64" cmake --build .
- Release模式下的编译命令如下:
cd 样例目录\build\intermediates\soc cmake ../../../src -DCMAKE_SKIP_RPATH=TRUE -G "Visual Studio 15 2017 Win64" -DCMAKE_CONFIGURATION_TYPES=release cmake --build . --config release
当前样例的编码字符集为ASCII,编译命令默认都是ASCII编码字符集,不支持Unicode编码字符集,如需支持Unicode编码字符集,需用户自行适配代码。
- Debug模式时的编译命令如下:
- 准备输入图片。
请从以下链接获取该样例的输入图片,并以运行用户将获取的文件上传至开发环境的“venc_image样例目录\data”目录下。如果目录不存在,需自行创建。
https://obs-9be7.obs.cn-east-2.myhuaweicloud.com/models/aclsample/dvpp_venc_128x128_nv12.yuv
- 运行应用。
- 以管理员帐号将开发环境的venc_image样例目录及其子文件上传到运行环境(Host)。
- 以管理员帐号登录运行环境(Host)。
- 以管理员身份执行cmd窗口,切换到可执行文件main所在的目录,运行可执行文件。
执行可执行文件成功后,同时会在main.exe文件同级output目录下生成编码结果文件dvpp_venc_128x128.h265,便于后期查看。
执行可执行文件时,可以增加入参来配置编码的次数,例如“./main 20”,如果不增加入参,则默认编码次数为16次。main.exe
执行成功后,在屏幕上的关键提示信息示例如下。
[INFO] ./main param, param is execute venc times(default 16) [INFO] acl init success [INFO] open device 0 success [INFO] create context success [INFO] get run mode success [INFO] create process callback thread successfully, threadId = 139926343980800 [INFO] start check result fold:output/ [INFO] make directory successfully. [INFO] check result success, fold exist [INFO] process callback thread start [INFO] venc init resource success [INFO] success to callback, stream size:5431 [INFO] success to callback, stream size:704 [INFO] success to callback, stream size:693 [INFO] success to callback, stream size:922 [INFO] success to callback, stream size:1153 [INFO] success to callback, stream size:689 [INFO] success to callback, stream size:857 [INFO] success to callback, stream size:1273 [INFO] success to callback, stream size:785 [INFO] success to callback, stream size:976 [INFO] success to callback, stream size:869 [INFO] success to callback, stream size:1445 [INFO] success to callback, stream size:845 [INFO] success to callback, stream size:1003 [INFO] success to callback, stream size:922 [INFO] success to callback, stream size:905 [INFO] venc process success [INFO] execute sample success [INFO] destory process callback thread success [INFO] end to destroy context [INFO] end to reset device is 0 [INFO] end to finalize acl
父主题: 媒体数据处理V1(视频编码)