強大的海思Hi3531D 4K編碼器評測

本文摘自:https://blog.csdn.net/gzast163/article/details/92589984
作者寫該文時中美貿易戰開戰,美國把華爲列入“實體名單”。當我轉載該文時,美國實施極限施壓,全面斷供華爲芯片;爲何美國歇息底裏地遏制,本文也許側面給出答案。

1. 爲啥要做這個評測?

最近中美貿易戰依然沒有消退的跡象,美國政客把華爲公司列入“實體名單”,一時間有關華爲的消息滿天飛。某天在某聊天羣裏,聽行家們在高談闊論,其中一條信息炸開了我的眼球:華爲是良心企業,對外說自己是80分,其實是100120分,不像大部分的企業,對外說自己是100分,其實只有7080分。就拿Hi3531D來說,數據手冊(Datasheet)上說它可以做8路1080p@30的H264/H265編碼,但實際測試能做12路1080p@30的H264/H265編碼。當聽到這個消息時,我覺得他太新奇了,不只是國內的大多企業,就算國外的企業,也是通常是吹噓自己的能力,在宣傳上誇大自己的性能指標。多年以前,我們使用TI達芬奇DM6467方案,手冊上吹噓能做4路D1的H264編碼,結果我們實際做的時候,用原廠評估的庫,勉強能做3路D1,後購買了印度佬細心優化過的收費的編碼庫,勉強能做4路的D1,但幀率經常不足25fps,尤其是輸入信號源畫面變化比較大的時候,幀率就不足25fps了。因此現在聽說有這樣的良心企業,自己決定實際去測試一下,看看羣裏行家是忽悠人還是真有其事,要是是真的,中國有華爲這樣的企業真是國之有幸啊!
    在淘寶上搜素3531d開發板或者海思開發板,出來很多很多產品,看來用華爲芯片的企業還真不少啊!對比了多家之後,決定採購這家公司的產品,因爲他們自帶的軟件能比較方便地評估出Hi3531D的各種絕技,購買鏈接如下:
    https://item.taobao.com/item.htm?spm=a1z10.5-c-s.w4002-22796185927.19.4c5368bcVitKqk&id=619022947575

上面的鏈接是成品,不提供開發資料。下面這個鏈接是開發板的,廠家會提供開發資料,有SDK和Encoder源碼等:
    https://shop66907778.taobao.com/category-716218460.htm?spm=2013.1.w4010-22796185914.8.af5120442Q6r9q&search=y&catName=%BF%AA%B7%A2%B0%E5#bd

你要是個軟件開發者,不防移步去看看他們的SDK以及基於SDK編寫Encoder源碼,我們在這篇文章中使用的軟件就是他們的Encoder軟件。有了這個Encoder源碼,你要做hdmi編碼器就基本上不用再做開發了,也許他們的思路就是閉源硬件開源軟件吧。

2. 編碼性能

2.1 12路1080p@30編碼能力

由於購買的產品只有5個HDMI輸入口,爲了能做12路編碼測試,我們用另外7個網絡流進行解碼然後再進行編碼(轉碼),這樣就可以測試12路同時編碼了(還順帶測試了7路網絡流的解碼,數據手冊上說可以做8路同時解碼,但實際也能做到12路1080p@30解碼)。
    在這裏插入圖片描述
上圖可以看到前面5路是HDMI輸入的,輸入的信號是1080p@60,編碼時可以做1080p@60輸出,但爲了測試傳說中同時12路1080p@30 H264/H265編碼能力,我們設置輸出爲1080p@30。後面7路是網絡流(1080p@30)轉碼:
在這裏插入圖片描述
    配置好以後,請繫好安全帶,馬上就要空中發射火箭了,不是直飛蒼穹,就是墮落大地,反正很刺激。上圖(cat /proc/umap/venc):
在這裏插入圖片描述
    數一數紅色的框,有多少個?12個?沒錯,是12個!!!,而且幀率在29~31之間!看到這,你服了嗎?不管你服不服,反正我服了😄。再往下看看還有啥黑科技。

2.2 2路4K@30(3840x2160)編碼+4路1080p@30編碼能力

購買的產品只有5個HDMI輸入口,每個口都能支持4K@30輸入,但由於編碼能力有限,不能全部做5路4K的編碼,實際測試只能達到2路4K@30編碼+4路1080p@30。
在這裏插入圖片描述

3. 強大的圖像處理(VPSS)能力

VPSS(Video Process Sub-System)支持對一幅輸入圖像進行統一預處理,如去噪、去隔行等,然後再對各通道分別進行縮放、銳化等處理,最後輸出多種不同分辨率的圖像。海思Hi3531D提供強大的VPSS能力。海思Hi3531D的VPSS提供了下列功能:
DCMP(解壓縮)
CMP(壓縮)
FRC(幀率控制)
Crop(裁剪,指VPSS 對輸入圖像進行裁剪)
PreScale(預縮放,對輸入圖像進行水平1/2 或垂直1/2 或水平垂直1/2 的縮放)
DEI(De-interlace,去隔行。將交錯的隔行視頻源還原成逐行視頻源)
NR(去噪。通過參數配置,把圖像中的高斯噪聲去除,使得圖像變得平滑,有助於降低編碼碼率)
LTI/CTI(Luma/Chroma Transition Improvement,亮度/色度過渡增強,即圖像銳化即Sharpen。銳化圖像的邊緣和凸顯圖像細節,對經過縮放(Scale)後的圖像進行頻率補償或增強,使得圖像邊緣銳利,輪廓清晰)
Scale(縮放,對圖像進行縮小或放大。VPSS 最大支持對輸入圖像做水平和垂直16 倍放大,或者水平和垂直15倍縮小。VPSS 放大後的輸出圖像寬度不能超過4096)
ES(邊緣平滑)
IE(圖像增強)
DCI(Dynamic Contrast Improvement,動態對比度調節。對圖像進行動態的對比度調節,即在增強圖像暗區亮度時而不使亮區過亮,或降低亮區亮度時而不使暗區過暗)
Cover(視頻遮擋區域,對VPSS 的輸出圖像填充純色塊。VPSS 僅支持實心Cover,不支持虛心框Cover)
Overlay(視頻疊加區域,在GROUP 上進行位圖的加載和背景色更新,支持ARGB4444、ARGB1555、ARGB8888三種格式的位圖)
Mosaic(視頻馬賽克區域,對VPSS 輸出圖像填充馬賽克塊)。
    板卡廠家的軟件提供下面幾個功能(畫面融合,滾動字幕,打碼,臺標,去隔行等),證明了海思VPSS的強大。

3.1 畫面融合

畫面融合可以把多個視頻源的畫面按既定的佈局拼接成另外一個畫面輸出,拼接的畫面可以在運行狀態界面上預覽,也可以通過板卡的的HDMI輸出接口接到電視機上監看,還可以在編碼輸出界面啓用網絡流輸出。目前板卡軟件預設的混合佈局類型有:9宮格,4分屏,1+2,畫中畫。畫面融合時也可以進行音頻混合,在屏幕右邊區域可以選擇哪幾個頻道的聲音進行混合。混合後的視音頻除了通過編碼壓縮從網絡輸出以外,還可以直接把混合後的視音頻從HDMI口輸出,方便用戶監看。題外話:這個界面還允許配置VGA輸出,VGA輸出可以直接把其他輸入源進行輸出(旁路功能)。板卡廠家提供的SDK很方便定義HMDI和VGA的輸出內容,板卡廠家提供的SDK可以把HDMI和VGA輸出同樣的內容,也可以輸出不同的內容。詳細參見https://gitee.com/LinkPi/LinkLib和https://gitee.com/LinkPi/LinkLib/wikis/pages說明。
在這裏插入圖片描述
    上圖可以看到,9個1080P@60的畫面融合成一個畫面,這得多大的數據量啊,要是全部由CPU來搬運數據,就算是Intel的I7 CPU也忙不過來吧。使用cat /proc/umap/vpss來看看VPSS處理的數據量:
在這裏插入圖片描述
    強大的畫面融合(融屏)能力,在下面的應用中應該是可以大展身手了:

教育錄播行業,經典的融屏佈局是是2+1,左邊是一個大框顯示老師的PPT課件,右邊2個小框,一個顯示學生的畫面,根據上課過程中的需要,自動切換或者手動切換最重要的信息到左邊的大框中。自動切換應該也不難了,配合OPENCV的一些算法可以輕鬆搞定的。這類應用還適合法庭庭審錄播,戒毒所和監獄類的宣教系統中。
指揮中心的大屏方案,指揮中心通常要接入很多點的監控視頻,現在市面上的監控攝像頭大多都是網絡攝像頭了,早些年大多都是TI的芯片方案,最近幾乎是清一色的華爲海思方案了,所以利用海思Hi3531D強大的解碼能力來做大屏顯示方案,應該是不錯的,而且華爲自家解自家芯片出來的視頻流,應該說是最佳搭配了。
切換臺,導播臺。該板卡有5個HDMI輸入口,每個HDMI口最高都支持4K@30(3840x2160)的信號,而且還可以支持12路網絡流輸入(或者12個本地文件),從硬件的角度上看,滿足切換臺和導播臺多種輸入源的要求,再加上強大的VPSS處理能力,做這類產品是得心應手了。

3.2 滾動字幕,打碼(加馬賽克),添加臺標(LOGO)

這幾個功能很常見,監控產品都能做,據說現在監控產品的大廠例如海康和大華也都在用華爲海思的芯片了,所以這幾個功能不算什麼黑科技了。上個圖給大家看看吧:
在這裏插入圖片描述

3.3 全幀率去隔行,裁剪(裁邊)

板卡廠家軟件上有個開關叫全幀率去隔行,我不大理解是什麼意思,聯繫了板卡廠家,板卡廠家解釋說他們的軟件有2種去隔行方法,一個是海思自帶的去隔行算法,一個是板卡廠家自己做的去隔行算法。若使用海思自帶的去隔行算法,幀率就會減半,例如輸入信號源是1080i@60,去隔行後幀率降爲30fps即1080p@30了。若使用板卡廠家的全幀率去隔行算法,則幀率不變,例如輸入信號源是1080i@60,去隔行後爲1080p@60。一開始,我認爲是這個廠家故弄玄虛,把海思去隔行後的數據多複製一份,這樣幀率就可以維持不變了,後來我打開他們神奇的全幀率去隔行開關,錄了一段動作變化很大的視頻(例如遊戲或者賽車足球什麼的),錄好以後用回放軟件一幀一幀播放,發現沒有相同畫面的幀,這足以可以證明廠家不是故弄玄虛的,是貨真價實的。由此可見海思VPSS的架構足夠開放,能讓開發者自行編寫一些算法。有些人懷疑這些算法是跑在CPU上的,這種懷疑是多餘的,人家5個輸入源可以同時做全幀率去隔行,我不相信海思那麼弱的ARM CPU能幹這個事。
    國內由於起步比較晚,1080i的HDMI設備很少見,但在國外,大量1080i的HDMI設備還在使用,所以去隔行還真很有必要的。尤其是遊戲直播,足球賽事直播,賽車直播等,這些畫面變化是非常大的,所以由於隔行引起的百葉窗效果特別明顯,若採用海思內置的去隔行算法,幀率減半,雖然百葉窗效果不見了,但畫面流暢度就不佳,因此板卡廠家做的全幀率去隔行真是國外直播行業的及時雨。
    板卡廠家的軟件還支持畫面裁剪(裁邊)。工程商在施工時經常看到有些信號的邊緣總有各種各樣的現象,有些信號的上邊有一行白色的橫條(例如DVD信號),有些信號的左右兩側有閃爍的綠條紅條白條,這些雖然不致命,但經常被甲方以此爲由拒絕通過驗收,因此讓這些工程商苦不堪言。有了這個裁剪(裁邊)功能,就變得非常容易了,直接裁掉不要就好了,so easy!😜
在這裏插入圖片描述

4. 同時輸出多種網絡流協議

海思的SDK沒有提供網絡流協議,也沒有視頻和音頻的封裝,就幾個基於raw流的sample,sample裏面各種結構體,都不知道如何填寫,真讓視音頻開發小白們抓狂。板卡廠家提供的SDK提供了各種流協議:HTTP, HLS, RTSP, UDP, RTMP拉流和RTMP推流。而且能同時打開這些流協議,可見海思Hi3531D內置的ARM CPU也不是蓋的。而且RTSP, UDP, RTMP的延遲都在1秒以內(最快的可以做到200ms以內)。有了板卡廠家的SDK,想購買h264編碼開發板,h265編碼開發板,海思開發板,Hi3531d開發板,Hdmi開發板的小白們,還猶豫什麼?😍
在這裏插入圖片描述
    該板卡支持豐富的網絡流協議,支持的編碼解碼路數又多(支持編碼的路數是12路1080p@30 H264/H265編碼,支持解碼的路數也是12路1080p@30 H264/H265解碼)。可以適用下面的應用:

轉碼應用,前幾年H265還沒有成熟的硬件方案,所以市面上的大多編碼設備都是以H264爲主。想獲得同等的編碼質量,H265要比H264節省25%的帶寬,對於帶寬成本很高的中國來說,能節省25%是非常誘人的。因此可以輸入H264網絡流,然後轉碼輸出成H265網絡流或者H265文件,這就是轉碼應用了。
轉流協議,該板卡支持不解碼轉流協議,例如http轉rtmp,http轉rtsp,http轉udp,rtsp轉http,rtsp轉rtmp,rtsp轉udp,rtmp轉http,rtmp轉rtsp,rtmp轉udp等等。由於不用解碼,所以不佔海思Hi3531d的編碼解碼資源,只佔一點點ARM CPU的資源(用於數據搬運),所以可以支持很多路的不解碼轉流協議。

5. 軟肋:音頻編碼和解碼

海思Hi3531d擁有強大的視頻編碼和解碼能力,那對音頻編碼和解碼那應該是小菜一碟了吧?錯!錯!!錯!!!,也許是LICENSE的原因,音頻編碼和解碼都不是硬件處理的,而是使用了ARM CPU去做的,那個顆弱小的嵌入式ARM CPU,處理音頻的重採樣(resample),處理回聲消除(EC),做AAC編碼和解碼,都需要做很多優化,否則ARM CPU佔用就爆了。對於做監控行業的人來說,也許並不是什麼大事,畢竟監控行業的音頻通常是單聲道的,8K採樣率的,16bit的採樣精度,數據量少,CPU佔用不明顯,但對於做IPTV編碼器的人來說,要掂量掂量自己的能力了,雙聲道,採樣率48K,採樣精度24bit,這數據量比監控行業大多了,而且IPTV編碼器的音頻音質要求比較高,弄不好產品是出不了貨的。我們評測該板卡廠家的音頻,倒是還不錯,估計花費了不少心思的。而且他們還提供了音頻軟件增益(音量放大)功能,普通的編碼器類產品都沒有這個功能,但這個功能非常實用,有些輸入源聲音實在是太小了,又不可能要求用戶在終端播放設備統一調整。
在這裏插入圖片描述

6. 總結: 華爲是有良心的企業

經過評測,證實了聊天羣裏行家說的話是真的,同時也印證了華爲是有良心的企業,爲了不過分刺激對手,故意隱藏了自己的真實的實力,難怪美國政客們這麼擔心華爲,並極力遏制他,要是某興和某想,人家還沒打早跪了。謹以華爲破飛機的照片做結尾,勉勵那些默默在做自主可控的核心技術企業們。

7 我們的優勢

在這裏插入圖片描述
最後來說說ENC2, ENC5的優勢就是採用了海思Hi3531D編碼芯片。希望這個編碼器評測能給大家帶來幫助,感謝大家辛苦的看完,記得多多支持和點贊,關注我哦!!!!

參考鏈接:https://blog.csdn.net/weixin_41486034/article/details/106240240

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章