前言
在海思的 SDK 中提供了很多 sample 供开发者参考,但是由于海思没有文档系统详细的 告诉大家如何来跑这些 sample ,所以很多客户就会遇到一些问题,所以我就整理了一下海思 视频编码 sample_vdec 文档供大家参考开发。
一、开发前环境准备
- 开启 Linux 下的网络
① 设置网络
ifconfig eth0 hw ether 00:10:67:20:81:70; ifconfig eth0 10.86.147.170 netmask 255.255.255.0; route add default gw 10.86.147.1 |
以上为举例, IP 以实际为准
② 然后 ping 一下其他 IP,正常情况下网络将能正常工作
ping 10.86.147.188 |
- 挂载 NFS 文件系统进行开发
① 在开发阶段,推荐使用 NFS 作为开发环境,可以省去重新制作和烧写根文件系统的工 作。
② 挂载 NFS 文件系统
mount -t nfs -o nolock -o tcp -o rsize=32768,wsize=32768 10.86.147.188:/ NFS/multi-core /mnt |
③ 然后就可以在 /mnt 目录下访问服务器上的文件,并进行开发工作
- 开启 telnet 服务
网络正常后,运行命令 telnetd& 就可以启动单板 telnet 服务,然后才能使用 telnet 登录到单板
二、修改 sample 并编译
- 修改配置文件
在 Hi3559AV100_SDK_V2.0.3.1/mpp/sample/ 目录下修改 Makefile.param 配置文件
适配 sensor imx334
- 修改视频输出分辨率
在 /mpp/sample/vdec/ 目录下修改 sample_vdec.c
修改输出格式为 1080P60, 否则可能出现输出格式不对黑屏的现象
- 编译
在 /mpp/sample/ 目录下编译
make linuxclean make linux |
在 /mpp/sample/vdec 目录下会生成 sample_vdec 可执行文件
---- 结束
三、加载驱动
挂载 NFS 文件系统后,我们就可以在文件系统下来操作,方便我们调试
- 在 NFS 文件系统下创建 ko/ 文件夹用来放所需的驱动文件夹
- 进入 mpp/out/linux/multi-core/ko 目录下将所有驱动文件拷贝到 /NFS/rootfs/ko/
cp ./* /NFS/rootfs/ko |
- 进入 mpp/out/linux/multi-core/lib 目录下将所有库文件拷贝到 /NFS/rootfs/lib/ 下
cp ./* /NFS/rootfs/lib |
- 增加权限
chmod 775 ./ko/ -R chmod 775 ./lib/ -R |
- 加载驱动
./load3559av100_multicore -i -sensor0 imx334 -sensor1 imx334 |
- HDMI 外接显示器
四、sample_vdec 视频解码
- 准备 source_file 编码文件
将 sdk/mpp/sample/vdec/ 目录下的 source_file 文件全部拷贝至 /NFS/multi-core/ 目录下
cp source_file/ /NFS/multi-core/ -R |
注意:当你要修改 source_file 文件路劲时需同时修改源码路径
- 运行 sample_vdec 例程,查看示例
./sample_vdec |
/************************************/ Usage : ./sample_vdec index: 0: VDEC(H265)-VPSS-VO 1: VDEC(H264)-VPSS-VO 2: VDEC(JPEG->YUV)-VPSS-VO 3: VDEC(JPEG->RGB) 4: VDEC(H264)->VPSS-VO(DHD0-hdmi,DHD1-mipi_tx)
IntfSync : 0: VO HDMI 4K@30fps. 1: VO HDMI 1080P@30fps. /************************************/ |
- 运行 sample_vdec 视频解码
./sample_vdec 2 1 |
这里单Linux 系统下 sample_vdec 视频解码 sample 就完成啦,有些客户可能双系统下跑 sample_vdec 传输source_file 时会使用 sharefs ,这时就会出现我们之前博文《【Hi3559AV100 Camera】Hi3559AV100 双系统下使用 sharefs 》中提到的问题,下一期我将专门写一篇博文来解决双系统下跑 sample_vdec 使用 sharefs 解码太慢的问题,请期待~
---- 结束
五、参考资料
《 【Hi3559AV100 Camera】 Hi3559AV100 sample_vio 视频输出 Dana Xiong_2020.06.16 》
《 WM_Hi3559A╱C V100 SDK 安装及升级使用说明.pdf 》
《 WM_Hi3559A╱C V100 开发环境用户指南.pdf 》
评论