海思 Camera丨【Hi3559AV100 Camera】​Hi3559AV100 sample_vdec 视频解码

前言

一、开发前环境准备

二、修改 sample 并编译

三、加载驱动

四、sample_vdec 视频解码

五、参考资料

 


前言

            在海思的 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

 

  1. 挂载 NFS 文件系统进行开发

         ① 在开发阶段,推荐使用 NFS 作为开发环境,可以省去重新制作和烧写根文件系统的工 作。

         ② 挂载 NFS 文件系统

mount -t nfs -o nolock -o tcp -o rsize=32768,wsize=32768 10.86.147.188:/ NFS/multi-core /mnt

     

         ③ 然后就可以在 /mnt 目录下访问服务器上的文件,并进行开发工作

     

  1. 开启 telnet 服务

         网络正常后,运行命令 telnetd& 就可以启动单板 telnet 服务,然后才能使用 telnet 登录到单板

 

         ---- 结束

二、修改 sample 并编译

  1. 修改配置文件

         在 Hi3559AV100_SDK_V2.0.3.1/mpp/sample/ 目录下修改 Makefile.param 配置文件

         适配 sensor imx334



  1. 修改视频输出分辨率

         在 /mpp/sample/vdec/ 目录下修改 sample_vdec.c



        修改输出格式为 1080P60, 否则可能出现输出格式不对黑屏的现象

 

 

  1. 编译

         在 /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

       

  1. 进入 mpp/out/linux/multi-core/lib 目录下将所有库文件拷贝到 /NFS/rootfs/lib/ 下

cp ./* /NFS/rootfs/lib

 

  1. 增加权限

chmod 775 ./ko/ -R

chmod 775 ./lib/ -R

        

  1. 加载驱动

./load3559av100_multicore -i -sensor0 imx334 -sensor1 imx334

 

  1. HDMI 外接显示器

 

四、sample_vdec 视频解码

  1. 准备 source_file 编码文件

         将 sdk/mpp/sample/vdec/ 目录下的 source_file 文件全部拷贝至 /NFS/multi-core/ 目录下

         

cp source_file/ /NFS/multi-core/ -R

     

      注意:当你要修改 source_file 文件路劲时需同时修改源码路径

        



  1. 运行 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.

/************************************/

        

  1. 运行 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

★博文内容均由个人提供,与平台无关,如有违法或侵权,请与网站管理员联系。

★文明上网,请理性发言。内容一周内被举报5次,发文人进小黑屋喔~

评论