前言
在海思的 SDK 中提供了很多 sample 供开发者参考,但是由于海思没有文档系统详细的 告诉大家如何来跑这些 sample ,所以很多客户就会遇到一些问题,所以我就整理了一下海思 视频编码 sample_vdec 文档供大家参考开发。
一、开发前环境准备
1. 开启 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
2. 挂载 NFS 文件系统进行开发① 在开发阶段,推荐使用 NFS 作为开发环境,可以省去重新制作和烧写根文件系统的工作。
② 挂载 NFS 文件系统
mount -t nfs -o nolock -o tcp -o rsize=32768,wsize=32768 10.86.147.188:/ NFS/multi-core /mnt
③ 然后就可以在 /mnt 目录下访问服务器上的文件,并进行开发工作
3. 开启 telnet 服务
网络正常后,运行命令 telnetd& 就可以启动单板 telnet 服务,然后才能使用 telnet 登录到单板
---- 结束
二、修改 sample 并编译
1. 修改配置文件在 Hi3559AV100_SDK_V2.0.3.1/mpp/sample/ 目录下修改 Makefile.param 配置文件
适配 sensor imx334
2. 修改视频输出分辨率
在 /mpp/sample/vdec/ 目录下修改 sample_vdec.c
修改输出格式为 1080P60, 否则可能出现输出格式不对黑屏的现象
3. 编译
在 /mpp/sample/ 目录下编译
make linuxclean
make linux
在 /mpp/sample/vdec 目录下会生成 sample_vdec 可执行文件
---- 结束
三、加载驱动
挂载 NFS 文件系统后,我们就可以在文件系统下来操作,方便我们调试
1. 在 NFS 文件系统下创建 ko/ 文件夹用来放所需的驱动文件夹
2. 进入 mpp/out/linux/multi-core/ko 目录下将所有驱动文件拷贝到 /NFS/rootfs/ko/
cp ./* /NFS/rootfs/ko
3. 进入 mpp/out/linux/multi-core/lib 目录下将所有库文件拷贝到 /NFS/rootfs/lib/ 下
cp ./* /NFS/rootfs/lib
4. 增加权限
chmod 775 ./ko/ -R
chmod 775 ./lib/ -R
5. 加载驱动
./load3559av100_multicore -i -sensor0 imx334 -sensor1 imx334
---- 结束
四、sample_vdec 视频解码
1. 准备 source_file 编码文件将 sdk/mpp/sample/vdec/ 目录下的 source_file 文件全部拷贝至 /NFS/multi-core/ 目录下
cp source_file/ /NFS/multi-core/ -R
注意:当你要修改 source_file 文件路劲时需同时修改源码路径
2. 运行 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.
/************************************/
3. 运行 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 》
評論