转载侵删

在一般的嵌入式开发中,只要将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部署成功.

03.将MPP部署到开发板上的更多相关文章

  1. 【Android 系统开发】 编译 Android文件系统 u-boot 内核 并烧写到 OK-6410A 开发板上

    博客地址 : http://blog.csdn.net/shulianghan/article/details/40299813  本篇文章中用到的工具源码下载 : -- ok-6410A 附带的 A ...

  2. 02.将uboot,kernel,rootfs下载到开发板上

    转载,侵删 将uboot,kernel,rootfs下载到开发板上 1.为什么要下载 所谓下载,也称烧录,部署. 1.1.什么是u-boot Hi3518EV200 单板的 Bootloader 采用 ...

  3. 在 S5PV210 的 开发板上 使用 串口 收发信息

    参考学习教程:周立功嵌入式Linux开发教程-(上册) 材料:首先 准备一个 安装好 Linux 的 开发板 使用  xshell 工具 连接 开发板  ,winscp 工具 连接 开发板  ,  准 ...

  4. easycwmp在开发板上的配置

    原创作品,转载请注明出处 copyright:weishusheng   2015.3.18 email:642613208@qq.com 平台: Linux version 2.6.32-279.e ...

  5. FS210开发板上Qt4.7.0移植过程

    作者:冯老师,华清远见嵌入式学院讲师. 1. 搭建Qt开发环境平台 1.开发环境:ubuntu 12.04 2.交叉编译链:arm-cortex_a8-linux-gnueabi 3.开发板:FS21 ...

  6. 开发板上使用core文件调试

    转载:http://www.nginx.cn/1521.html 如果开发板的操作系统也是linux,core调试方法依然适用.如果开发板上不支持gdb,可将开发板的环境(依赖库).可执行文件和cor ...

  7. [转载]在iTOP-4412开发板上调试helloworld应用

    本文转自迅为论坛:http://www.topeetboard.com 1.安装ADB驱动 在开发板上调试 Android 应用,首先要安装 ADB 驱动. 通过“SDK Manager.exe”来安 ...

  8. DE1-SOC开发板上搭建NIOS II处理器运行UCOS II

    DE1-SOC开发板上搭建NIOS II处理器运行UCOS II   今天在DE1-SOC的开发板上搭建NIOS II软核运行了UCOS II,整个开发过程比较繁琐,稍微有一步做的不对,就会导致整个过 ...

  9. 物联网操作系统HelloX已成功移植到MinnowBoard MAX开发板上

    在HelloX开发团队的努力下,以及Winzent Tech公司(总部在瑞典斯德哥尔摩)的支持下,HelloX最新版本V1.78已成功移植到MinnowBoard MAX开发板上.相关源代码已经发布到 ...

随机推荐

  1. 快速读入fread

    struct FastIO { static const int S = 1e7; int wpos; char wbuf[S]; FastIO() : wpos(0) {} inline int x ...

  2. Queue 实现生产者消费者模型

    Python中,队列是线程间最常用的交换数据的形式. Python Queue模块有三种队列及构造函数: 1.Python Queue模块的FIFO队列先进先出. class Queue.Queue( ...

  3. Linux磁盘管理,vi编辑器以及包管理器

    一.Linux磁盘管理 Linux磁盘管理常用的三个命令为df,du,fdisk df:列出文件系统的整体磁盘使用量,利用这个命令来获取磁盘被占用了多少空间,,目前还剩下多少空间用法:df [-ahi ...

  4. JS常用操作方法图表

    截取字符串方法 方法名 参数 返回值 例子 String.prototype.substr() (indexStart, length) 都可为负数,length为负数时自动转为0,length不传默 ...

  5. 管道pipe与dup结合使用

    前面的例子中,子进程可以直接共享父进程的文件描述符.但是如果子进程调用exec函数执行另一个应用程序时,就不能再共享了. 这种情况下可以将子进程中的文件描述符重定向到标准输入,当新执行的程序从标准输入 ...

  6. delphi image控件上画矩形的问题

    画的时候发现鼠标点的位置和矩形的位置有偏移 后来查看发现是由于image控件时stretch属性设置为true,这样在画的时候是缩放了的 也就是画到image显示的图片上去了 所以如果要画矩形,要按照 ...

  7. Oracle 与Sql Server常用函数对比

    来自:http://topic.csdn.net/u/20080704/08/b2b8c42f-b0d6-4cda-98b1-6e4a279b4ff8.html 感谢楼主 函数 SQLServer和O ...

  8. struts2的execAndWait拦截器

    struts2中有许多默认拦截器,这里我们看一下execAndWait拦截器. 当一个页面需要加载一段时间的时候,我们希望它不是一直呆在原页面直到加载完成,而是进入等待页面,加载完毕后自动进入目标页面 ...

  9. 使用 Git & Repo 下载代码

    客户端安装 Git 安装 git,gitk 网络连接正常的情况下: $ sudo apt-get install git-core gitk git-gui 不能上网,有.deb安装包的,请执行: $ ...

  10. 成为java高级程序员需要掌握哪些

    section 1 1.Core Java,就是Java基础.JDK的类库,很多童鞋都会说,JDK我懂,但是懂还不足够,知其然还要知其所以然,JDK的源代码写的非常好,要经常查看,对使用频繁的类,比如 ...