海思Linux-DEMO(1)-sample_venc(h265,h264)视频流文件的获取

目 录

[前 言](#前 言)

一、BSP编译

二、mmp驱动的构建

[2.1 进入进入Hi3516CV610_SDK_V1.0.1.0/smp/a7_linux/source/out/obj目录](#2.1 进入进入Hi3516CV610_SDK_V1.0.1.0/smp/a7_linux/source/out/obj目录)

[2.2 使用指令将mpp驱动编进内核](#2.2 使用指令将mpp驱动编进内核)

三、uBuntu配置nfs环境

[3.1 创建nfs_rootfs共享文件目录](#3.1 创建nfs_rootfs共享文件目录)

[3.2 如果没有安装,则需要安装nfs,如果已经安装,并且开启了nfs服务,则可以跳到四](#3.2 如果没有安装,则需要安装nfs,如果已经安装,并且开启了nfs服务,则可以跳到四)

[3.3 更改 /etc/exports 文件](#3.3 更改 /etc/exports 文件)

[3.4 通过命令重新加载,应用共享](#3.4 通过命令重新加载,应用共享)

[3.5 确保nfs服务已启动并正常运行](#3.5 确保nfs服务已启动并正常运行)

[3.6 查看当前已导出的共享](#3.6 查看当前已导出的共享)

[四 开发板重新烧录](#四 开发板重新烧录)

[五 开发板挂载nfs文件目录](#五 开发板挂载nfs文件目录)

5.1.登陆开发板

[5.2 配置网络ip](#5.2 配置网络ip)

[5.3 挂载共享文件目录](#5.3 挂载共享文件目录)

[六、 运行ko](#六、 运行ko)

[6.1 进入Hi3516CV610_SDK_V1.0.1.0/smp/a7_linux/source/out目录](#6.1 进入Hi3516CV610_SDK_V1.0.1.0/smp/a7_linux/source/out目录)

[6.2 开发板进入ko/load3516cv610目录](#6.2 开发板进入ko/load3516cv610目录)

七、加载运行原厂自带demo-sample_venc

[7.1 复制sample_venc可执行文件到共享文件目录](#7.1 复制sample_venc可执行文件到共享文件目录)

[7.2 执行sample_venc目录](#7.2 执行sample_venc目录)

八、总结


前 言

芯片选型:HI3516CV610 - 20s

选择的开发板是:酷电科技馆的Hi3516CV610-MINI开发板

上一篇文章:无

下一篇文章:无

说明:该系列文章为学习文章,为参考网上各路大神的开源文章,但是个人天资愚笨,踩了无数坑,然后制作了这些步骤,如有侵权,请联系本人删除。

一、BSP编译

【ubuntu操作】

进入Hi3516CV610_SDK_V1.0.1.0/smp/a7_linux/source/bsp目录,进行bsp的编译

cd Hi3516CV610_SDK_V1.0.1.0/smp/a7_linux/source/bsp
sudo make LIB_TYPE=musl CHIP=hi3516cv610 DEBUG=1 all

等待编译完成

二、mmp驱动的构建

【ubuntu操作】

2.1 进入Hi3516CV610_SDK_V1.0.1.0/smp/a7_linux/source/out/obj目录

使用下面的指令构建mmp驱动

sudo make -j4

等待编译结束

2.2 使用指令将mpp驱动编进内核

sudo make BUILD_DRIVER_TO_KERNEL=y -j4

三、uBuntu配置nfs环境

【uBuntu操作】

3.1 创建nfs_rootfs共享文件目录

使用下面的指令

mkdir nfs_rootfs

3.2 如果没有安装,则需要安装nfs,如果已经安装,并且开启了nfs服务,则可以跳到四

使用下面的指令去安装

sudo apt install nfs-kernel-server nfs-common
sudo systemctl restart nfs-kernel-server

3.3 更改 /etc/exports 文件

(示例,如果没有nfs_rootfs目录则需要先去创建这个目录)

vi /etc/exports

在最后一行添加下面代码 (示例):

/home/spmwgj/nfs_rootfs *(rw,sync,no_subtree_check,no_root_squash)

3.4 通过命令重新加载,应用共享

sudo exportfs -ra

3.5 确保nfs服务已启动并正常运行

sudo systemctl start nfs-server

3.6 查看当前已导出的共享

sudo exportfs -v

四 开发板重新烧录

【ubuntu操作】

下载目录到window系统

Hi3516CV610_SDK_V1.0.1.0/smp/a7_linux/source/bsp/pub/hi3516cv610_image_debug_musl

然后参考博文:

五 开发板挂载nfs文件目录

【开发板操作】

5.1.登陆开发板

开发板接线示意

使用 MobaXterm工具,从串口连接

5.2 配置网络ip

使用下面的指令(示例)

ifconfig eth0 hw ether ee:ef:00:11:22:33
ifconfig eth0 192.168.2.112 netmask 255.255.255.0
route add default gw 192.168.2.1

使用ifconfig,和ping ubuntu网络进行测试

5.3 挂载共享文件目录

使用下面的指令(示例):

mount -t nfs -o nolock -o tcp -o rsize=32768,wsize=32768 192.168.2.218:/home/spmwgj/nfs_rootfs /mnt

在ubuntu的nfs_rootfs目录下创建文件,在开发板的/mnt目录下进行查询,如果能成功看到,说明可行

六、 运行ko

【ubuntu操作】

6.1 进入Hi3516CV610_SDK_V1.0.1.0/smp/a7_linux/source/out目录

使用下面示例指令(自行更改自己的用户名)复制到共享文件夹

sudo cp -r ko /home/spmwgj/nfs_rootfs/

【开发板操作】

6.2 开发板进入ko/load3516cv610目录

使用下面的指令加载ko

./load3516cv610_20s_debug -a

运行成功示意:

七、加载运行原厂自带demo-sample_venc

【ubuntu操作】

7.1 复制sample_venc可执行文件到共享文件目录

执行指令

cd Hi3516CV610_SDK_V1.0.1.0/smp/a7_linux/source/mpp/sample/venc
sudo sudo cp sample_venc /home/spmwgj/nfs_rootfs/

【开发板操作】

7.2 执行sample_venc目录

进入mnt目录

执行下面的指令:

./sample_venc 0

输入0

再输入c,然后等待一段时间,再按下两次回车,这个等待时间即视频录制时间

最后,查询当前文件夹,会输出两个流文件

八、总结

该例程输出了两个流文件

该例程还能进行别的操作。

相关推荐
Lang_xi_2 小时前
Bash Shell的操作环境
linux·开发语言·bash
关关钧2 小时前
【Linux】sed编辑器
linux·运维·编辑器
哦豁灬3 小时前
linux查看硬件信息
linux·运维·服务器
m0_748252603 小时前
在Linux系统上使用nmcli命令配置各种网络(有线、无线、vlan、vxlan、路由、网桥等)
linux·服务器·网络
小白的登仙路3 小时前
进程间通讯
linux·c语言·进程间通讯
PyAIGCMaster3 小时前
docker学习记录:本地部署mongodb
学习·mongodb·docker
架构文摘JGWZ3 小时前
一键完成!!网页打包成桌面应用
开发语言·学习·开源软件·工具
R-sz3 小时前
ubuntu切换到root用户
linux·运维·ubuntu
灵魂画师向阳4 小时前
【CSDN首发】Stable Diffusion从零到精通学习路线分享
人工智能·学习·计算机视觉·ai作画·stable diffusion·midjourney
OopspoO4 小时前
Linux 磁盘与文件系统操作
linux·运维·服务器