4将mpp部署到开发板上(代码片段)

Ocean&Star Ocean&Star     2022-11-20     195

关键词:

在一般的嵌入式开发中,只要将uboot,kernel,rootfs下载到开发板上,就可以进行程序开发了。但是海思又进一步的把一些常用视频编解码算法等封装到MPP平台中,进一步简化了工程师的开发难度。

1、什么是MPP

海思提供的媒体处理软件平台(Media Process Platform,简称 MPP),可支持应用软件快速开发。该平台对应用软件屏蔽了芯片相关的复杂的底层处理,并对应用软件直接提供MPI(MPP Programe Interface)接口完成相应功能。

2、如何部署MPP

  • [ ] (1),ubuntu中打开一个终端
    • 步骤1,sudo showmount -e:发现nfs服务器在/home/aston/rootfs目录下
      技术分享图片
    • 步骤2,ifconfig确定ip地址是192.168.1.141,并且桥接到有线网卡[sudo ifconfig ens33 down关闭网卡]
  • [ ] (2),将开发板挂载到主机的nfs服务器
    • 步骤1:重启开发板进入Hilinux模式
    • 步骤2:在etc目录中添加profile(用户登录后会默认先执行,经测试发现如果不在profile中设置eth0就不能挂载成功)
      • vi /etc/profile在这个文件的末尾添加以下内容,保存退出
        技术分享图片
      • reboot (必须重启以便于设置生效)
      • mount -t nfs -o nolock 192.168.1.141:/home/aston/rootfs /mnt
  • [ ] (3),测试是否挂载成功
    • 步骤1:Ubuntu:进入/home/aston/rootfs目录并创建一个文件
    • 步骤2:开发板:cd /mnt/ (如果和/home/aston/rootfs 中的内容是一样的表示挂载成功)
  • [ ] (4),ubuntu中将测试文件放入nfs目录下
    • 步骤1:进入Hi3518E_SDK_V1.0.3.0/mpp/目录
    • 步骤2:cp ko lib ~/rootfs/ -rf
    • 步骤3:cd ~/rootfs/lib/
    • 步骤4:rm *.a 【这时我们可以看到HiLinux也有了lib和ko文件】
      技术分享图片
  • [ ] (5),在SecurtCRT的HiLinux的mnt目录下载执行以下命令:
    • cp ko / -rf
    • cp lib/* /usr/lib -f
    • ls /usr/lib/ (可以看到很多.so文件)
    • ls /ko (可以看到很多.ko文件)
  • [ ] (6),HiLinux中部署.ko文件
    • 步骤1:vi /etc/profile末尾添加保存退出
      技术分享图片

      cd /ko
      ./load3518e -i -sensor ar0130 -osmem 32 -total 64
      mount -t nfs -o nolock 192.168.1.141:/home/aston/rootfs /mnt  
      cd /mnt      
    • 步骤2:cat /etc/profile (确认该有的都有了)
    • 步骤3:reboot (不打断,可以看到打印很多.ko执行OK)
      技术分享图片

3、测试MPP是否部署成功

通过执行sample可以测试mpp是否部署成功

  • [ ] (1),修改总makefile
    • 步骤1:进入Hi3518E_SDK_V1.0.3.0/mpp/sample/目录
    • 步骤2:sudo vi Makefile.param
      • 将CHIP_ID ?= CHIP_HI3516C_V200----->CHIP_ID ?= CHIP_HI3518E_V200
      • 将SENSOR_TYPE ?= SONY_IMX222_DC_1080P_30FPS----->ENSOR_TYPE ?= APTINA_AR0130_DC_720P_30FPS
  • [ ] (2),进入sample目录,并将编译得到的可执行文件放入rootfs中
    • cd venc
    • make
    • cp sample_venc ~/rootfs/ -f
    • cd ~/rootfs/
    • ls -l (注意时间)
  • [ ] (3),进入HiLinux,执行sample[此时在mnt目录下]
    • ./sample_venc 0
    • 选择c(移动摄像头,录制视频,按ENTER2次就会退出)
    • ls -l (发现多出了3个文件,由于nfs服务器,虚拟机里也有这3个文件)
  • [ ] (4),Ubuntu中,将上面运行得到的文件复制到window的共享文件夹下
    • cd ~/rootfs/
    • cp stream_chn* /mnt/hgfs/winshare/HI3518EV200/ -rf
  • [ ] (5),用VLC播放器打开这3个文件,如果可以播放录制好的视频,就证明mpp部署成功.
    技术分享图片






在developerkit开发板上运行blink例程(代码片段)

...么样在VScode环境下,将AliOSTings提供的blink例程在Developerkit开发板上运行起来。DeveloperKit开发板在例程中分别用到两个led和一个按钮,上图中用红色的框标识出来。本文将介绍怎么样在VScode环境下,将AliOSTings提供的blink例程在Develo... 查看详情

3将uboot,kernel,rootfs下载到开发板上

...fs下载到开发板上1、为什么要下载所谓下载,也称烧录,部署。1.1、什么是u-bootHi3518EV200单板的Bootloader采用U-boot。u-boot是一种普遍用于嵌入式系统中的Bootloader,Bootloader是在操作系统运行之前执行的一小段程序,通过它,我们可以... 查看详情

将springbootrestfulwebservice部署到tomcat时,web.xml仍然丢失(代码片段)

我试图将使用SpringBoot构建的RESTfulWeb服务部署到Tomcat实例中,但收效甚微。我的软件配置如下:我的计算机是运行OSXYosemite10.10.3的Mac,具有OracleJavaJDK81.8.0_45,Gradle2.4和ApacheTomcat7.0.47。我使用IntelliJIDEA14.1.4作为开发平台。我... 查看详情

前端工程化(代码片段)

...编译为最终的目标格式,并且准备好各种静态资源,6、部署。将构建好的代码部署到生产环境。 查看详情

垃圾分类模型训练部署教程,基于maixhub和maixpy-k210(代码片段)

...,将给大家介绍,在MaixHub上训练模型,然后部署到Maixduino开发板上的流程。我这里用于演示的是垃圾分类任务,大家也可以按照该流程训练自己想要的模型。通过MaixHub的迁移学习,在Maix-1系列开发板上部署一... 查看详情

mpp数据库简介及架构分析(代码片段)

目录什么是MPP?特性并行处理超大规模数据仓库真正适合什么典型的分析工作量数据集中化线性可伸缩性MPP架构技术特性数据库架构分析SharedEverythingSharedDiskShareMemorySharedNothingSharedNothing数据库架构优势什么是MPP?  MPP(Mas... 查看详情

linux内核移植入门(代码片段)

...修改配置文件内核编译编译结果:几种linux内核文件的区别开发板上U-Boot启动linux内核内核Kconfig语法使用1.makemenuconfig是如何找到Kconfig?2.Makefile要编译一个.o文件是如何在Kconfig中配置的?添加驱动到内核概念添加步骤1.将我们开... 查看详情

移植sqlite3opencv到rv1126开发板上开发人脸识别项目(代码片段)

一、搭建NFS环境网络文件系统,英文NetworkFileSystem(NFS),是由SUN公司研制的UNIX表示层协议,能使使用者访问网络上别处的文件就像在使用自己的计算机一样。我们可以在Ubuntu上制作板子需要的文件,然后使用NFS来... 查看详情

每天一点点之vue框架开发-部署到线上(代码片段)

 1.在项目根目录下运行如下命令npmrunbuild会生成一个dist目录,2.然后将dist目录上传至服务器就可以访问页面了,不需要配置vue环境了。  查看详情

项目部署(代码片段)

一、手工部署项目(1)在IDEAZ中开发SpringBoot项目并打成jar包(2)将jar包上传到Linux服务器  mkdir/usr/local/app      创建目录,将项目jar包放到此目录(3)启动SpringBoot程序  java-jar[jar包名] (4)改为后台运行SpringBoo... 查看详情

海思芯片部署mpp并验证功能

1.前期准备1.1搭建好开发环境:1.这里说的是以个人电脑进行开发:安装好虚拟机,在虚拟机中搭建好nfs服务器,确保开发板可以挂载上虚拟机;2.确保开发板和PC可以通过串口通信;1.2熟悉海思芯片的SDK开... 查看详情

idea安装阿里cloudtoolkit插件(代码片段)

...CloudToolkit(后文简称CloudToolkit)可以帮助开发者更高效地部署、测试、开发和诊断应用。CloudToolkit与主流IDE及阿里云其他产品无缝集成,帮助您大大简化应用部署到服务器,尤其是阿里云服务器中的操作。您还可以通过其内嵌的... 查看详情

sh将构建部署到服务器(代码片段)

查看详情

如何将传统web框架迁移部署到serverless架构?(代码片段)

...框架为例,目前主流的Web框架“均不支持Serverless模式部署”,因此我们一方面要尝试接触Serverless,一方面又没办法完全放弃传统框架,所以如何将传统框架更 查看详情

markdown将spa部署到azure存储(代码片段)

查看详情

springboot框架开发web项目springboot项目的打包和部署(代码片段)

...个简单的项目了,我们应该怎么将项目打包,并部署到服务器上呢?工具IntelliJIDEA16JDK1.8Maven3.5Tomcat1.8将项目打成war包并部署到Tomcat中1、首先打开我们的pom.xml文件,修改其中的配置<groupId>com.example</groupId>&... 查看详情

saas化开源项目之housekeeper云上部署实践(代码片段)

摘要:华为云DTSE技术专家从源码构建、应用部署到系统调测,详细解读云原生SaaS应用构建的全过程。本文分享自华为云社区《HouseKeeper云上部署实践》,作者:华为云DTSE。HouseKeeper是华为云开发者团队基于SaaS项目技术支持实践... 查看详情

自动化部署实践(代码片段)

1.1早期手动部署代码方式1、纯手工scp上传2、纯手工登录,gitpull、svnupdate3、纯手工xftp往上拉4、开发给打一个压缩包,rz上去然后解压缺点1、运维全程参与,占用大量时间2、上线速度太慢3、人为失误过多,管理混乱4、回滚的太... 查看详情