當(dāng)前位置:首頁 > 物聯(lián)網(wǎng) > 《物聯(lián)網(wǎng)技術(shù)》雜志
[導(dǎo)讀]摘 要:由于多媒體在物聯(lián)網(wǎng)技術(shù)浪潮下增加了對(duì)無線傳輸?shù)膽?yīng)用需求,針對(duì)其中數(shù)據(jù)量大的HDMI視頻流,研究設(shè)計(jì)了一種支持HDMI視頻流的無線傳輸系統(tǒng)。該系統(tǒng)采用S5PV210處理器,以ADV7611進(jìn)行視頻前端接收,在Linux操作系統(tǒng)上調(diào)用多格式硬件編碼模塊,實(shí)現(xiàn)編碼后數(shù)據(jù)的打包封裝及無線傳輸。實(shí)驗(yàn)結(jié)果表明,所提設(shè)計(jì)方案能有效實(shí)現(xiàn)高清晰度HDMI視頻流的無線傳輸。

引 言

在當(dāng)前物聯(lián)網(wǎng)技術(shù)浪潮的推動(dòng)下,物與物相連的需求快速增長(zhǎng),而多媒體信息特別是視頻信息因其數(shù)據(jù)量大的特點(diǎn), 一直是通信領(lǐng)域的研究熱點(diǎn)。在應(yīng)用方面,智能家居、智能會(huì)議室、智能教學(xué)等系統(tǒng)得到了不斷推廣,而音視頻的局域網(wǎng)內(nèi)傳輸技術(shù)始終扮演著智能系統(tǒng)的重要角色。雖然傳統(tǒng)的有線傳輸方式能提供高質(zhì)量的音視頻傳輸效果,但在實(shí)際應(yīng)用中人們常常囿于布線困難,因而提出無線傳輸的需求。目前,市場(chǎng)上的音頻無線傳輸方案已經(jīng)相對(duì)成熟,其媒介選擇有 U 段無線、WiFi、藍(lán)牙等。相比而言,無線視頻的發(fā)展相對(duì)緩慢, 因?yàn)槠溟_發(fā)難度和開發(fā)成本都相對(duì)較大。盡管如此,無線視頻的需求依然是市場(chǎng)的熱點(diǎn)。比如安防專用的攝像頭無線監(jiān)控系統(tǒng),拍攝專用的無人機(jī)拍攝無線傳輸系統(tǒng),教學(xué)或會(huì)議專用的無線視頻投影應(yīng)用等。

無線視頻傳輸應(yīng)用中的視頻源和接收端在不同場(chǎng)景中各有不同。例如教學(xué)或會(huì)議中的無線投影,其視頻源可來自個(gè)人電腦的HDMI 輸出或VGA 輸出,接收端則一般是投影儀的HDMI 端口或VGA 端口。由于HDMI 標(biāo)準(zhǔn)對(duì)高清視頻的支持較好,因此在高質(zhì)量視頻傳輸中,研究 HDMI 視頻流的無線傳輸方案具有很好的應(yīng)用價(jià)值。

對(duì)于視頻數(shù)據(jù),未經(jīng)壓縮的原始視頻數(shù)據(jù)量是無線傳輸難以承受的,尤其對(duì)于高清晰度視頻,大數(shù)據(jù)量的無線傳輸將導(dǎo)致系統(tǒng)傳輸方案的成本大大增加[1]。因此對(duì)HDMI視頻流的無線傳輸必須引入合適的編碼方案,平衡編碼效果和無線通信容量之間的矛盾,達(dá)到低延時(shí)的播放效果 [2]。為解決上述問題,本文采用S5PV210 處理器,以 ADV7611 接收HDMI 視頻流,然后通過硬件編碼器進(jìn)行視頻編碼,再由處理器打包無線發(fā)送 ;接收端接收到視頻數(shù)據(jù)后解碼視頻,并由HDMI 接口輸出。

1 系統(tǒng)整體硬件方案設(shè)計(jì)

圖 1所示為高清視頻無線傳輸?shù)南到y(tǒng)原理及實(shí)現(xiàn)結(jié)構(gòu)圖。系統(tǒng)分為發(fā)送端和接收端兩部分,這兩部分是獨(dú)立的系統(tǒng), 可以使用一個(gè)發(fā)送端和一個(gè)接收端進(jìn)行一對(duì)一工作,也可以使用一個(gè)發(fā)送端和多個(gè)接收端同時(shí)工作,或者多個(gè)發(fā)送端和一個(gè)接收端分時(shí)連接工作,這些都可以在軟件應(yīng)用層實(shí)現(xiàn)。底層的編解碼和無線通信架構(gòu)相同,為了描述方便,在此以一個(gè)發(fā)送端對(duì)一個(gè)接收端作為描述實(shí)例。

HDMI視頻流無線傳輸系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)

由圖 1 可知,發(fā)送端包括視頻接收前端模塊和編碼發(fā)送模塊。視頻接收前端主要由ADV7611 實(shí)現(xiàn)HDMI 視頻流的輸入,并將視頻數(shù)據(jù)轉(zhuǎn)為YCbCr 信號(hào),通過板上總線傳輸?shù)骄幋a發(fā)送模塊。編碼發(fā)送模塊主要是S5PV210 處理器,通過處理器內(nèi)部的多格式編解碼器(Multi Format Codec,MFC)對(duì)視頻進(jìn)行壓縮。壓縮后的視頻由RTP 協(xié)議發(fā)送,通過物理層WiFi 實(shí)時(shí)傳輸?shù)浇邮斩薣3]。解碼端將視頻流解碼,獲取LCD 設(shè)備的緩存區(qū)視頻流數(shù)據(jù),將HDMI 流以 HDMI 流媒體的形式輸出。

在應(yīng)用方面,上述系統(tǒng)的發(fā)送端通過HDMI 接口接收電腦或視頻播放器等視頻源的輸出,而接收端也通過HDMI 接口連接投影儀或顯示器等設(shè)備,實(shí)現(xiàn) HDMI 視頻流的無線傳輸。

2 系統(tǒng)軟件設(shè)計(jì)

2.1 系統(tǒng)配置

系統(tǒng)配置包含 Linux 系統(tǒng)內(nèi)核配置與對(duì)ADV7611 的配置。根據(jù)系統(tǒng)需求,ADV7611 與S5PV210 之間以 ITU601 的格式傳輸視頻數(shù)據(jù),因此在Linux 內(nèi)核中需要修改視頻輸入驅(qū)動(dòng)為ITU601 格式,并設(shè)置好 YCbCr 數(shù)據(jù)的順序格式,例如 CbYCrY 等。這兩個(gè)參數(shù)在內(nèi)核中的結(jié)構(gòu)體 s2c_platform_ camera 定義。對(duì)ADV7611 的寄存器配置則是在應(yīng)用程序中通過I2C 驅(qū)動(dòng)實(shí)現(xiàn),具體參數(shù)可根據(jù)需求按芯片文檔說明設(shè)定。

2.2 視頻編碼

為了實(shí)現(xiàn)大數(shù)據(jù)量高清視頻的無線傳輸,平衡視頻效果和無線通信容量之間的矛盾,系統(tǒng)對(duì) HDMI 接收器得到的視頻流進(jìn)行實(shí)時(shí)壓縮,通過減少和去除冗余視頻數(shù)據(jù)的方式, 達(dá)到可靠發(fā)送的目的[4]。為了達(dá)到低延時(shí)的播放效果,可以充分利用S5PV210 中集成的MFC 硬件編碼模塊,以減輕處理器的計(jì)算量。MFC 是ARM 微處理器內(nèi)部一種支持多種硬件編碼方式的硬件電路,視頻編碼支持 MPEG-4、H.263 以及H.264,分辨率可達(dá)到 1 080P@30fps。本文選用H.264 的編碼方式。

圖 2 所示為MFC 硬件編碼流程圖。MFC 硬件編碼在程序?qū)崿F(xiàn)中定義了三個(gè)函數(shù),分別為初始化函數(shù),執(zhí)行函數(shù)和句柄釋放函數(shù),利用這三個(gè)函數(shù)即可實(shí)現(xiàn)整套編碼操作。初始化函數(shù)的作用是對(duì)整個(gè)MFC 的參數(shù)進(jìn)行設(shè)置。打開設(shè)備節(jié)點(diǎn), 進(jìn)行內(nèi)存到應(yīng)用的內(nèi)存映射,初始化關(guān)于 MFC 設(shè)備的結(jié)構(gòu)體, 并提供相應(yīng)的參數(shù),把 _MFCLIB_H264_ENC 參數(shù)傳入MFC 跟深層次的結(jié)構(gòu)體當(dāng)中,通過 ioctl 函數(shù)把參數(shù)傳入內(nèi)核。

初始化 MFC 之后讀取視頻流,得到輸入圖像的地址緩沖指針,等待緩沖區(qū)成像數(shù)據(jù)。成像后讀取一幀視頻數(shù)據(jù),并將這一幀數(shù)據(jù)放入MFC 編碼,第一次的編碼需要傳入配置參數(shù)。編碼完成后得到H.264 編碼格式的網(wǎng)絡(luò)提取層(Network Abstraction Layer,NAL)數(shù)據(jù)。因?yàn)橄到y(tǒng)采用RTP 協(xié)議進(jìn)行網(wǎng)絡(luò)數(shù)據(jù)傳輸,對(duì)于一幀圖像的NAL 數(shù)據(jù)需要根據(jù) RTP 網(wǎng)絡(luò)數(shù)據(jù)的幀長(zhǎng)度進(jìn)行分片,分片后的視頻數(shù)據(jù)添加載荷頭FU-A 打包,添加RTP 包頭并向客戶端發(fā)送一幀視頻數(shù)據(jù)。之后系統(tǒng)重新讀取一幀視頻數(shù)據(jù)再進(jìn)行MFC 編碼。

為了方便描述沒有顯示編碼過程的退出機(jī)制,實(shí)際程序中根據(jù)具體需求以合適的方式退出編碼,釋放句柄,解除映射。

2.3 無線傳輸

編碼后的視頻以 RTP 協(xié)議在局域網(wǎng)傳輸。為了實(shí)現(xiàn)點(diǎn)對(duì)點(diǎn)或點(diǎn)對(duì)多點(diǎn)的視頻傳輸,發(fā)送端利用WiFi 網(wǎng)卡實(shí)現(xiàn)軟接入點(diǎn)的功能。因此多個(gè)接收端可以同時(shí)連接到發(fā)送端的接入點(diǎn),從而訪問RTP 服務(wù)獲得視頻數(shù)據(jù)。對(duì)于多個(gè)發(fā)送端對(duì)一個(gè)接收端的情況,可以設(shè)定接收端為WiFi 接入點(diǎn),發(fā)送端連接到接收端再進(jìn)行數(shù)據(jù)傳輸,但是在應(yīng)用中各發(fā)送端只能以時(shí)分復(fù)用的形式將數(shù)據(jù)發(fā)送到接收端。

HDMI視頻流無線傳輸系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)

2.4 視頻解碼

解碼器對(duì)發(fā)送來的H.264 等壓縮格式的視頻數(shù)據(jù)包進(jìn)行實(shí)時(shí)解碼,通過采用相應(yīng)的解壓縮算法還原視頻的高清晰度, 轉(zhuǎn)化為可播放的非壓縮視頻流格式。FFMPEG 是一個(gè)集音視頻編解碼在內(nèi)的多種功能為一體的開源解決方案,支持H.264 在內(nèi)的 40 多種編碼和 70 多種解碼[5]。解碼端利用FFMPEG 庫(kù)解碼,主要涉及l(fā)ibavcodec 庫(kù)、libswscale 庫(kù)和libavformat 庫(kù)[6]。視頻數(shù)據(jù)流解碼流程 :由 ByteIOContext 表示的廣義輸入文件,在 AVStream 提供的特定文件容器流信息的指引下, 用AVInputFormat 接口的 read_packet() 函數(shù)讀取完整的一幀數(shù)據(jù),分別放到音頻或視頻 PacketQueue 隊(duì)列中,這部分功能由獨(dú)立的解碼線程完成。對(duì)于視頻數(shù)據(jù),視頻處理線程不停從視頻 PacketQueue 隊(duì)列中取出視頻幀,調(diào)用AVCodec 接口的decode() 函數(shù)解碼視頻幀,在適當(dāng)延時(shí)后做顏色空間轉(zhuǎn)化并調(diào)用顯示輸出函數(shù)庫(kù)顯示出來。

3 功能測(cè)試

為了驗(yàn)證系統(tǒng)的功能和效果,本節(jié)搭建一發(fā)一收的演示系統(tǒng),其實(shí)物圖如圖 3 所示。

發(fā)送端由ADV7611 的視頻前端測(cè)試板接收筆記本電腦輸出的HDMI 視頻流,然后通過ITU-R.BT601 標(biāo)準(zhǔn)接口將轉(zhuǎn)碼得到的YCbCr 數(shù)據(jù)傳輸?shù)絊5PV210 開發(fā)板進(jìn)行硬件編碼。發(fā)送端 S5PV210 開發(fā)板配置了 WiFi 的軟接入點(diǎn),并與接收端建立無線連接,同時(shí)開啟視頻 RTP 傳輸服務(wù),支持編碼后的視頻數(shù)據(jù)發(fā)送服務(wù)。

接收端硬件只需提供WiFi網(wǎng)卡和HDMI 視頻輸出接口。接收端處理器通過網(wǎng)卡連接到發(fā)送端接入點(diǎn),然后由RTP 客戶端軟件獲取發(fā)送端的視頻數(shù)據(jù),將視頻數(shù)據(jù)解碼后由HDMI接口輸出。

由圖 3 可知,筆記本電腦直接復(fù)制屏幕并輸出到HDMI 接口;HDMI 接口的視頻流輸入發(fā)送端 S5PV210 開發(fā)板; S5PV210 開發(fā)板將視頻壓縮編碼后通過無線連接發(fā)送給接收端;接收端將視頻解碼輸出到 HDMI 接口,并最終輸出到顯示器顯示。

HDMI視頻流無線傳輸系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)

圖 3 無線視頻傳輸系統(tǒng)

4結(jié) 語

本文針對(duì)HDMI 視頻流給出了一種無線視頻傳輸系統(tǒng)的設(shè)計(jì)方案。該方案將傳輸系統(tǒng)分為發(fā)送端和接收端兩個(gè)獨(dú)立模塊,可以靈活配置為一發(fā)一收、一發(fā)多收、多發(fā)一收等應(yīng)用場(chǎng)景。系統(tǒng)采用硬件編碼的方式實(shí)現(xiàn)了在無線傳輸條件下的視頻清晰度和視頻傳輸延時(shí)的優(yōu)化。針對(duì)該方案,可以從進(jìn)一步提高視頻清晰度著手,因?yàn)镾5PV210 的硬件編碼模塊在1 080P 的輸入分辨率時(shí)最高支持的幀率為 30 fps,而很多高清視頻源可達(dá) 50/60 fps。因此可以在幀率提高方面進(jìn)行研究, 或?qū)Ω叻直媛嗜?2 160 P 的視頻處理進(jìn)行研究。

本站聲明: 本文章由作者或相關(guān)機(jī)構(gòu)授權(quán)發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點(diǎn),本站亦不保證或承諾內(nèi)容真實(shí)性等。需要轉(zhuǎn)載請(qǐng)聯(lián)系該專欄作者,如若文章內(nèi)容侵犯您的權(quán)益,請(qǐng)及時(shí)聯(lián)系本站刪除。
換一批
延伸閱讀

9月2日消息,不造車的華為或?qū)⒋呱龈蟮莫?dú)角獸公司,隨著阿維塔和賽力斯的入局,華為引望愈發(fā)顯得引人矚目。

關(guān)鍵字: 阿維塔 塞力斯 華為

倫敦2024年8月29日 /美通社/ -- 英國(guó)汽車技術(shù)公司SODA.Auto推出其旗艦產(chǎn)品SODA V,這是全球首款涵蓋汽車工程師從創(chuàng)意到認(rèn)證的所有需求的工具,可用于創(chuàng)建軟件定義汽車。 SODA V工具的開發(fā)耗時(shí)1.5...

關(guān)鍵字: 汽車 人工智能 智能驅(qū)動(dòng) BSP

北京2024年8月28日 /美通社/ -- 越來越多用戶希望企業(yè)業(yè)務(wù)能7×24不間斷運(yùn)行,同時(shí)企業(yè)卻面臨越來越多業(yè)務(wù)中斷的風(fēng)險(xiǎn),如企業(yè)系統(tǒng)復(fù)雜性的增加,頻繁的功能更新和發(fā)布等。如何確保業(yè)務(wù)連續(xù)性,提升韌性,成...

關(guān)鍵字: 亞馬遜 解密 控制平面 BSP

8月30日消息,據(jù)媒體報(bào)道,騰訊和網(wǎng)易近期正在縮減他們對(duì)日本游戲市場(chǎng)的投資。

關(guān)鍵字: 騰訊 編碼器 CPU

8月28日消息,今天上午,2024中國(guó)國(guó)際大數(shù)據(jù)產(chǎn)業(yè)博覽會(huì)開幕式在貴陽舉行,華為董事、質(zhì)量流程IT總裁陶景文發(fā)表了演講。

關(guān)鍵字: 華為 12nm EDA 半導(dǎo)體

8月28日消息,在2024中國(guó)國(guó)際大數(shù)據(jù)產(chǎn)業(yè)博覽會(huì)上,華為常務(wù)董事、華為云CEO張平安發(fā)表演講稱,數(shù)字世界的話語權(quán)最終是由生態(tài)的繁榮決定的。

關(guān)鍵字: 華為 12nm 手機(jī) 衛(wèi)星通信

要點(diǎn): 有效應(yīng)對(duì)環(huán)境變化,經(jīng)營(yíng)業(yè)績(jī)穩(wěn)中有升 落實(shí)提質(zhì)增效舉措,毛利潤(rùn)率延續(xù)升勢(shì) 戰(zhàn)略布局成效顯著,戰(zhàn)新業(yè)務(wù)引領(lǐng)增長(zhǎng) 以科技創(chuàng)新為引領(lǐng),提升企業(yè)核心競(jìng)爭(zhēng)力 堅(jiān)持高質(zhì)量發(fā)展策略,塑強(qiáng)核心競(jìng)爭(zhēng)優(yōu)勢(shì)...

關(guān)鍵字: 通信 BSP 電信運(yùn)營(yíng)商 數(shù)字經(jīng)濟(jì)

北京2024年8月27日 /美通社/ -- 8月21日,由中央廣播電視總臺(tái)與中國(guó)電影電視技術(shù)學(xué)會(huì)聯(lián)合牽頭組建的NVI技術(shù)創(chuàng)新聯(lián)盟在BIRTV2024超高清全產(chǎn)業(yè)鏈發(fā)展研討會(huì)上宣布正式成立。 活動(dòng)現(xiàn)場(chǎng) NVI技術(shù)創(chuàng)新聯(lián)...

關(guān)鍵字: VI 傳輸協(xié)議 音頻 BSP

北京2024年8月27日 /美通社/ -- 在8月23日舉辦的2024年長(zhǎng)三角生態(tài)綠色一體化發(fā)展示范區(qū)聯(lián)合招商會(huì)上,軟通動(dòng)力信息技術(shù)(集團(tuán))股份有限公司(以下簡(jiǎn)稱"軟通動(dòng)力")與長(zhǎng)三角投資(上海)有限...

關(guān)鍵字: BSP 信息技術(shù)
關(guān)閉
關(guān)閉