1. 程式人生 > >將MPP部署到開發板上

將MPP部署到開發板上

轉載侵刪

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

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