VCU編碼幀率
最近有客戶反饋VCU編碼4K NV12 視頻時, 幀率只能達到42FPS。
Vivado設(shè)計檢查
通過檢查Vivado設(shè)計,發(fā)現(xiàn)以下設(shè)計可能影響幀率,做了改進。
1. VCU與DDR連接的AXI Interconnect的位寬是32-bit。 建議改為64-bit或者128-bit。
2. VCU的AXI Master連接到了DDR的同一個Slave port。 建議同時運行的模塊的AXI Master,連接到DDR的不同的Slave port,防止擁塞,充分利用帶寬。
3. VCU Coding type 被設(shè)置成Intra Frame Only, 導致VCU Encode buffer為0。 建議設(shè)置為Intra & Inter Frame ,并設(shè)置Motion Vector Range為 medium,得到更大的VCU Encode buffer。
4. 使能VCU Encode buffer。
軟件設(shè)計檢查
1. 軟件設(shè)置CacheLevel2為True,使用VCU Encode buffer。
2. 使用HDMI-Rx等Live Vidoe,不使用filesrc,避免數(shù)據(jù)拷貝。
結(jié)論
經(jīng)過以上改進后, 幀率可以達到64FPS。
VCU延時
客戶使用在gst命令前添加GST_DEBUG="GST_TRACER:7" GST_TRACERS="latency" GST_DEBUG_FILE="/run/latency.txt"來測量VCU延時,發(fā)現(xiàn)解碼延時達到5秒鐘。 這是錯誤的結(jié)果。 單板沒有足夠的內(nèi)存保存5秒鐘的原始視頻,甚至沒有足夠的內(nèi)存保存2秒鐘的原始視頻。
建議使用 GST_DEBUG=omx:6 GST_DEBUG_FILE="/run/latency.txt"來測試VCU延時。在記錄文件里搜索“retrieved latency”,可以看到各個模塊的延時。
普通情況下的延時數(shù)據(jù), 編碼延時18ms,解碼延時200ms。
0:00:00.408347321 4876 0xaaab00dce770 DEBUG omxvideoenc gstomxvideoenc.c:2659:gst_omx_video_enc_set_latency: retrieved latency of 18 ms
0:00:00.506572825 4876 0xaaab00e5c770 DEBUG omxvideodec gstomxvideodec.c:2481:gst_omx_video_dec_set_latency: retrieved latency of 200 ms
Low-Latency情況下的延時數(shù)據(jù), 編碼延時4ms,解碼延時17ms。
0:00:00.422535568 8048 0xaaaae02f2770 DEBUG omxvideoenc gstomxvideoenc.c:2659:gst_omx_video_enc_set_latency: retrieved latency of 4 ms
0:00:00.521424529 8048 0xaaaae0382770 DEBUG omxvideodec gstomxvideodec.c:2481:gst_omx_video_dec_set_latency: retrieved latency of 17 ms
Low-Latency情況下的延時數(shù)據(jù), 編碼延時4ms,解碼延時17ms。
PG252中的Glass-to-Glass延時數(shù)據(jù)
Table 69: Glass-to-Glass Latency
審核編輯:湯梓紅
-
amd
+關(guān)注
關(guān)注
25文章
5503瀏覽量
134696 -
Xilinx
+關(guān)注
關(guān)注
71文章
2171瀏覽量
122236 -
編碼
+關(guān)注
關(guān)注
6文章
959瀏覽量
54969 -
AXI
+關(guān)注
關(guān)注
1文章
128瀏覽量
16730
發(fā)布評論請先 登錄
相關(guān)推薦
什么是Xilinx ZynqUltraScale+ MPSoC技術(shù)?
如何調(diào)試Zynq UltraScale+ MPSoC VCU DDR控制器
如何調(diào)試Zynq UltraScale+ MPSoC VCU DDR控制器
Xilinx Zynq UltraScale MPSoC可擴展電源設(shè)計
Xilinx UltraScale+ FPGA和MPSoC互連寬度的使用
Xilinx的Xa Zynq UltraScale MPSOC數(shù)據(jù)手冊免費下載
![<b class='flag-5'>Xilinx</b>的Xa Zynq UltraScale <b class='flag-5'>MPSOC</b>數(shù)據(jù)手冊免費下載](https://file.elecfans.com/web1/M00/85/30/o4YBAFxtChmAHipIAAQHV2rI4R0999.png)
如何調(diào)試 Zynq UltraScale+ MPSoC VCU DDR 控制器?
![如何調(diào)試 Zynq UltraScale+ <b class='flag-5'>MPSoC</b> <b class='flag-5'>VCU</b> DDR 控制器?](https://file.elecfans.com/web1/M00/DC/1C/pIYBAGAJnL2APVJtAADb7Z67qGU377.png)
MPSoC Video Codec Unit提供詳細說明
簡述MPSoC VCU調(diào)試方法和調(diào)試流程
![簡述<b class='flag-5'>MPSoC</b> <b class='flag-5'>VCU</b>調(diào)試方法和調(diào)試流程](https://file.elecfans.com/web2/M00/17/98/poYBAGFmSIeAI71fAAAXdP9WVQo742.png)
MPSoC VCU調(diào)試方法和調(diào)試流程
![<b class='flag-5'>MPSoC</b> <b class='flag-5'>VCU</b>調(diào)試方法和調(diào)試流程](https://file.elecfans.com/web2/M00/1F/68/pYYBAGGYHP2AKmn9AACMyWnjsGU738.png)
MPSoC VCU Ctrl-SW 2020.2編碼不同Stride的YUV文件
AMD MPSoC PS PCIe使用要點
![<b class='flag-5'>AMD</b> <b class='flag-5'>MPSoC</b> PS PCIe使用<b class='flag-5'>要點</b>](https://file1.elecfans.com/web2/M00/8C/68/wKgaomSrxsSAFHNDAAAeapqbImI445.png)
AMD-Xilinx MPSoC的Watchdog在Linux中使用的簡明教程
適用于Xilinx Zynq UltraScale+ MPSoC應(yīng)用的電源參考設(shè)計
![適用于<b class='flag-5'>Xilinx</b> Zynq UltraScale+ <b class='flag-5'>MPSoC</b>應(yīng)用的電源參考設(shè)計](https://file.elecfans.com/web1/M00/D9/4E/pIYBAF_1ac2Ac0EEAABDkS1IP1s689.png)
AMD/Xilinx Zynq? UltraScale+ ? MPSoC ZCU102 評估套件
![<b class='flag-5'>AMD</b>/<b class='flag-5'>Xilinx</b> Zynq? UltraScale+ ? <b class='flag-5'>MPSoC</b> ZCU102 評估套件](http://www.delux-kingway.cn/images/chaijie_default.png)
評論