0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

VCU視頻編解碼設(shè)計(jì)案例介紹

電子設(shè)計(jì) ? 來(lái)源:zynqnotes ? 作者:Ricky Su ? 2020-11-30 14:18 ? 次閱讀

作者:Ricky Su

現(xiàn)有參考資料

邏輯設(shè)計(jì)

1. 通過(guò) Vivado 內(nèi)置的 ZCU106 模板建立一個(gè)新工程
2. 添加 PS: ZYNQ UltraScale+ MPSoC
3. 添加 VCU: ZYNQ UltraScale+ VCU
4. 點(diǎn)擊上方綠色條形中的 Run Block Automation, 先做 MPSoC,后做 VCU,Vivado 會(huì)自動(dòng)進(jìn)行連接
5. Generate Bitstream
6. Export Design,選擇將 Bit 打包進(jìn) HDF

說(shuō)明

1. VCU 模塊在PL側(cè),一共有五個(gè)AXI接口,它們分別是兩個(gè) Encoder AXI,兩個(gè) Decoder AXI, 和一個(gè) MCU AXI。兩個(gè) Encoder/Decoder 的 AXI 接口必須都連接到 MPSoC PS,即使只用一路編碼,或者一路解碼。運(yùn)行時(shí)使用哪個(gè)引擎是 MCU 控制的,外界無(wú)法干預(yù)。

2. Block Automation 會(huì)將他們分別接在 PS 的多個(gè) HP 和 HPC 通道上,以保證有足夠的帶寬。這里用到的 HPC 接口,其實(shí)沒(méi)有使用其中的 Coherent 功能,還是當(dāng)作普通 HP 來(lái)使用的。

3. 通過(guò)雙擊 VCU IP,在界面中可以進(jìn)行內(nèi)存帶寬的預(yù)估。如果進(jìn)行分辨率比較低的編解碼,或者編解碼路數(shù)比較少,對(duì)內(nèi)存帶寬的需求較低,可以將多路 AXI 通過(guò)一個(gè) AXI Interconnect 合成一個(gè)或兩個(gè) AXI Interface,接到 HP 通道上。這樣可以節(jié)省 HP 通道,以備其他需要使用 PS DDR 的邏輯 IP 使用。

4. 如果將 VCU AXI 通過(guò) AXI Interconnect 合并,最多是 4:1, 因?yàn)?VCU 的 AXI ID 寬度是4,通過(guò) AXI Interconnect 合并 AXI 需要增加 AXI ID 位寬。 而 HP 的最大 AXI ID 只支持 6 位。

5. VCU 輸入時(shí)鐘盡量使用片外時(shí)鐘,保證較小的 Jitter。

上圖為 VCU Encoder 和 Decoder AXI 合并成一個(gè) AXI 連接到 HP 后的框圖

PetaLinux

1. petalinux-create -t project --template zynqMP -n petalinux; cd petalinux 建立工程
2. petalinux-config --get-hw-description= 導(dǎo)入硬件設(shè)計(jì)
3. petalinux-config -c rootfs 增加 packagegroup-petalinux-gstreamer。 gstreamer 是用于驅(qū)動(dòng) VCU 的軟件組件。
4. petalinux-build 生成各組件。
5. cd images/linux; petalinux-package --boot --fsbl zynqmp_fsbl.elf --u-boot --fpga xx.bit 請(qǐng)將 xx.bit 替換為這個(gè)目錄下 bit 的文件名。

說(shuō)明

packagegroup-petalinux-gstreamer 具體包含哪些內(nèi)容,可以在它的描述中看到

#

GSTREAMER_PACKAGES = " /
gstreamer1.0 /
gstreamer1.0-meta-base /
gstreamer1.0-plugins-base /
gstreamer1.0-plugins-good /
gstreamer1.0-plugins-bad /
gstreamer1.0-omx /
gstreamer1.0-rtsp-server /

運(yùn)行

1. 將 images/linux 目錄下的 BOOT.BIN 和 image.ub 拷貝到 SD 卡。
2. 將 ZCU106 設(shè)置為從 SD 卡啟動(dòng): SW6[1:4] = ON, OFF, OFF, OFF,上電啟動(dòng)
3. 連接串口,Interface 0
4. Login: root, password: root
5. Mount SD 卡: mount /dev/mmcblk0p1 /mnt
6. 嘗試從 MP4 文件解碼: gst-launch-1.0 filesrc location=xx.mp4 ! qtdemux ! h264parse ! omxh264dec ! queue max-size-bytes=0 ! filesink location=yy.yuv
7. 嘗試從 RAW YUV Video 文件編碼為 MP4: gst-launch-1.0 filesrc location=xx.yuv ! videoparse format=nv12 width=WW height=HH framerate=20/1 ! omxh264enc ! queue ! h264parse ! mp4mux ! filesink location=yy.mp4

播放編解碼后視頻文件

1. 測(cè)試播放 RAW Video: 在 PC 上安裝 ffmpeg,運(yùn)行指令 ffplay -f rawvideo -pixel_format nv12 -video_size WWxHH -i xx.yuv。WW為寬度,HH為高度。因?yàn)?RAW Video 中沒(méi)有視頻信息,這些參數(shù)都需要手工輸入。

2. MP4 視頻可以用任意播放器播放。

測(cè)試版本

Vivado: 2018.1, 2018.2
FFMPEG: ffmpeg-20180708-3a2d21b-win64-static

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問(wèn)題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • mcu
    mcu
    +關(guān)注

    關(guān)注

    146

    文章

    16898

    瀏覽量

    349932
  • 視頻編解碼
    +關(guān)注

    關(guān)注

    2

    文章

    54

    瀏覽量

    11723
  • AXI
    AXI
    +關(guān)注

    關(guān)注

    1

    文章

    127

    瀏覽量

    16576
  • VCU
    VCU
    +關(guān)注

    關(guān)注

    17

    文章

    80

    瀏覽量

    20407
收藏 人收藏

    評(píng)論

    相關(guān)推薦

    為什么需要視頻編碼,它的原理又是什么?#視頻編解碼

    解碼編解碼視頻技術(shù)
    面包車
    發(fā)布于 :2022年07月29日 15:12:03

    為什么需要視頻編碼,它的原理又是什么?第二集#視頻編解碼 #視頻編解碼

    解碼編解碼視頻技術(shù)
    面包車
    發(fā)布于 :2022年07月29日 15:12:56

    #硬聲創(chuàng)作季 #視頻技術(shù) 視頻技術(shù)-視頻編解碼技術(shù)基礎(chǔ)1-1

    視頻解碼編解碼視頻技術(shù)視頻編解碼
    水管工
    發(fā)布于 :2022年10月12日 16:44:21

    #硬聲創(chuàng)作季 #視頻技術(shù) 視頻技術(shù)-視頻編解碼技術(shù)基礎(chǔ)1-2

    視頻解碼編解碼視頻技術(shù)視頻編解碼
    水管工
    發(fā)布于 :2022年10月12日 16:51:03

    #硬聲創(chuàng)作季 #視頻技術(shù) 視頻技術(shù)-視頻編解碼技術(shù)基礎(chǔ)1-3

    視頻解碼編解碼視頻技術(shù)視頻編解碼
    水管工
    發(fā)布于 :2022年10月12日 16:52:03

    #硬聲創(chuàng)作季 #視頻技術(shù) 視頻技術(shù)-視頻編解碼技術(shù)基礎(chǔ)1-4

    視頻解碼編解碼視頻技術(shù)視頻編解碼
    水管工
    發(fā)布于 :2022年10月12日 16:55:57

    #硬聲創(chuàng)作季 #視頻技術(shù) 視頻技術(shù)-視頻編解碼技術(shù)基礎(chǔ)1-5

    視頻解碼編解碼視頻技術(shù)視頻編解碼
    水管工
    發(fā)布于 :2022年10月12日 16:57:04

    #硬聲創(chuàng)作季 #視頻技術(shù) 視頻技術(shù)-視頻編解碼技術(shù)基礎(chǔ)2-1

    視頻解碼編解碼視頻技術(shù)視頻編解碼
    水管工
    發(fā)布于 :2022年10月12日 16:58:53

    #硬聲創(chuàng)作季 #視頻技術(shù) 視頻技術(shù)-視頻編解碼技術(shù)基礎(chǔ)2-2

    視頻解碼編解碼視頻技術(shù)視頻編解碼
    水管工
    發(fā)布于 :2022年10月12日 16:59:35

    #硬聲創(chuàng)作季 #視頻技術(shù) 視頻技術(shù)-視頻編解碼技術(shù)基礎(chǔ)2-3

    視頻解碼編解碼視頻技術(shù)視頻編解碼
    水管工
    發(fā)布于 :2022年10月12日 17:01:32

    #硬聲創(chuàng)作季 #視頻技術(shù) 視頻技術(shù)-視頻編解碼技術(shù)基礎(chǔ)2-4

    視頻解碼編解碼視頻技術(shù)視頻編解碼
    水管工
    發(fā)布于 :2022年10月12日 17:03:16

    #硬聲創(chuàng)作季 #視頻技術(shù) 視頻技術(shù)-視頻編解碼技術(shù)基礎(chǔ)2-5

    視頻解碼編解碼視頻技術(shù)視頻編解碼
    水管工
    發(fā)布于 :2022年10月12日 17:03:52

    #硬聲創(chuàng)作季 #視頻技術(shù) 視頻技術(shù)-視頻編解碼技術(shù)基礎(chǔ)2-6

    視頻解碼編解碼視頻技術(shù)視頻編解碼
    水管工
    發(fā)布于 :2022年10月12日 17:05:50

    數(shù)字視頻編解碼技術(shù)回顧及展望

    數(shù)字視頻編解碼技術(shù)領(lǐng)域的特點(diǎn)是種類繁多、多類型并存、新舊共存、研發(fā)成果日新月異。目前沒(méi)有那種數(shù)字視頻編解碼技術(shù)可以替代其它所有的數(shù)字視頻
    發(fā)表于 04-03 09:39 ?1072次閱讀

    視頻編碼包括什么?視頻編解碼器是如何工作的?

    視頻編碼包括什么,視頻編解碼器是如何工作的?我們將在下面深入挖掘,并涵蓋我們的流媒體最佳視頻編解碼器列表。
    的頭像 發(fā)表于 04-21 10:42 ?2500次閱讀