177 Star 484 Fork 435

Ascend / samples

加入 Gitee
与超过 800 万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
克隆/下载
贡献代码
同步代码
取消
提示: 由于 Git 不支持空文件夾,创建文件夹后会生成空的 .keep 文件
Loading...
README_CN.md

中文|English

本样例为大家学习昇腾软件栈提供参考,非商业目的!

本README只提供命令行方式运行样例的指导,如需在Mindstudio下运行样例,请参考Mindstudio运行视频样例wiki

venc样例

功能:调用dvpp的venc接口,实现视频编码功能。
样例输入:原始YUV图片。
样例输出:编码后的h264文件。

前置条件

请检查以下条件要求是否满足,如不满足请按照备注进行相应处理。如果CANN版本升级,请同步检查第三方依赖是否需要重新安装(5.0.4及以上版本第三方依赖和5.0.4以下版本有差异,需要重新安装)。

条件 要求 备注
CANN版本 >=5.0.4 请参考CANN样例仓介绍中的安装步骤完成CANN安装,如果CANN低于要求版本请根据版本说明切换samples仓到对应CANN版本
硬件要求 Atlas200DK/Atlas300(ai1s) 当前已在Atlas200DK和Atlas300测试通过,产品说明请参考硬件平台 ,其他产品可能需要另做适配
第三方依赖 安装准备 需要按照第三方依赖的安装准备,完成环境变量的设置

软件准备

可以使用以下两种方式获取源码包,请选择其中一种进行源码准备。

  • 命令行方式下载(下载时间较长,但步骤简单)。
    # 开发环境,非root用户命令行中执行以下命令下载源码仓。    
    cd ${HOME}     
    git clone https://gitee.com/ascend/samples.git
    注:如果需要切换到其它tag版本,以v0.5.0为例,可执行以下命令。
    git checkout v0.5.0
  • 压缩包方式下载(下载时间较短,但步骤稍微复杂)。
    注:如果需要下载其它版本代码,请先请根据前置条件说明进行samples仓分支切换。
     # 1. samples仓右上角选择 【克隆/下载】 下拉框并选择 【下载ZIP】。    
     # 2. 将ZIP包上传到开发环境中的普通用户家目录中,【例如:${HOME}/ascend-samples-master.zip】。     
     # 3. 开发环境中,执行以下命令,解压zip包。     
     cd ${HOME}    
     unzip ascend-samples-master.zip

样例部署

执行以下命令,执行编译脚本,开始样例编译。

cd ${HOME}/samples/cplusplus/level2_simple_inference/0_data_process/venc/scripts    
bash sample_build.sh

样例运行

注:开发环境与运行环境合一部署,请跳过步骤1,直接执行步骤2即可。

  1. 执行以下命令,将开发环境的 venc 目录上传到运行环境中,例如 /home/HwHiAiUser,并以HwHiAiUser(运行用户)登录运行环境(Host)。

    # 【xxx.xxx.xxx.xxx】为运行环境ip,200DK在USB连接时一般为192.168.1.2,300(ai1s)为对应的公网ip。
    scp -r ${HOME}/samples/cplusplus/level2_simple_inference/0_data_process/venc HwHiAiUser@xxx.xxx.xxx.xxx:/home/HwHiAiUser    
    ssh HwHiAiUser@xxx.xxx.xxx.xxx     
    cd ${HOME}/venc/scripts
  2. 执行运行脚本,开始样例运行。

    bash sample_run.sh

查看结果

运行完成后,会在运行环境的命令行中打印出推理结果,并在运行环境样例目录下的out/output中生成编码后的h264文件。

常见错误

请参考常见问题定位对遇到的错误进行排查。如果wiki中不包含,请在samples仓提issue反馈。

1
https://gitee.com/ascend/samples.git
git@gitee.com:ascend/samples.git
ascend
samples
samples
master

搜索帮助