當(dāng)前位置:首頁 > 智能硬件 > 智能硬件
[導(dǎo)讀] 引言數(shù)字電影,是指以數(shù)字技術(shù)和設(shè)備攝制、制作、存儲(chǔ),并通過衛(wèi)星、光纖、磁盤、光盤等物理媒體傳送,將數(shù)字信號(hào)還原成符合電影技術(shù)標(biāo)準(zhǔn)的影像與聲音,放映在銀幕上的影視作品。與傳統(tǒng)電影相比,它具有畫面清晰、穩(wěn)

 引言

數(shù)字電影,是指以數(shù)字技術(shù)和設(shè)備攝制、制作、存儲(chǔ),并通過衛(wèi)星、光纖、磁盤、光盤等物理媒體傳送,將數(shù)字信號(hào)還原成符合電影技術(shù)標(biāo)準(zhǔn)的影像與聲音,放映在銀幕上的影視作品。與傳統(tǒng)電影相比,它具有畫面清晰、穩(wěn)定性高、節(jié)約成本、利于環(huán)保等特點(diǎn)。從國(guó)際上來看,經(jīng)過初期階段的摸索,數(shù)字電影技術(shù)已經(jīng)相對(duì)成熟,創(chuàng)作人員已從過去單純地運(yùn)用數(shù)字特技逐步轉(zhuǎn)化為將其與傳統(tǒng)攝制、傳統(tǒng)特技融為一體的表現(xiàn)手法。在國(guó)內(nèi),數(shù)字電影經(jīng)歷了引進(jìn)、消化、模仿、創(chuàng)新的過程。為了鼓勵(lì)和推動(dòng)我國(guó)數(shù)字電影的發(fā)展進(jìn)程,國(guó)家投入了大量的資金,在全國(guó)建設(shè)了100多個(gè)數(shù)字影院。根據(jù)我國(guó)國(guó)情,首先是普及和推進(jìn)我國(guó)社區(qū)及農(nóng)村地區(qū)的數(shù)字電影的發(fā)展,因此,需要大量的低端配置的流動(dòng)數(shù)字電影放映設(shè)備。

達(dá)芬奇技術(shù)是一種內(nèi)涵豐富的技術(shù)綜合體,是美國(guó)TI公司推出的針對(duì)數(shù)字多媒體應(yīng)用而定制的基于DSP的系統(tǒng)解決方案組件的集合,其為多媒體設(shè)備開發(fā)者簡(jiǎn)化設(shè)計(jì)并加速產(chǎn)品創(chuàng)新提供了集成的處理器、軟件與工具。TI公司在達(dá)芬奇平臺(tái)上專門為音視頻編解碼(Codec)多媒體應(yīng)用精心設(shè)計(jì)了系統(tǒng)框架,提供了豐富的系統(tǒng)程序接口(SPI)、應(yīng)用程序接口(API)以及視頻、圖像、話音和音頻千余種流媒體算法組件。應(yīng)用系統(tǒng)開發(fā)者只需將它們封裝成運(yùn)行包,就能輕松地設(shè)計(jì)出高可用性和高可靠性的數(shù)字視頻產(chǎn)品。

為了滿足我國(guó)的實(shí)際需求,本文在達(dá)芬奇系統(tǒng)硬件平臺(tái)的基礎(chǔ)上,利用達(dá)芬奇軟件技術(shù),提出了開發(fā)數(shù)字電影放映系統(tǒng)的方案及其具體實(shí)現(xiàn)方法。該方案有利于縮短產(chǎn)品的研發(fā)周期,更快地占領(lǐng)市場(chǎng)。

1 硬件設(shè)計(jì)

數(shù)字電影放映系統(tǒng)主要是以數(shù)字多媒體處理器TMS320DM6446為核心來實(shí)現(xiàn)的。TMS320DM6446是TI公司的高集成度視頻處理芯片,業(yè)界稱為達(dá)芬奇(DaVinci)數(shù)字媒體片上系統(tǒng)(Digital Media system-on-Chip,DMSoC)。圖1為TMS320DM6446功能結(jié)構(gòu)框圖。

 

 

如圖1所示,DMSoC包括ARM子系統(tǒng)、DSP子系統(tǒng)、視頻處理子系統(tǒng)(VPSS)、系統(tǒng)控制模塊、電源管理模塊、外部存儲(chǔ)接口、外圍控制模塊和交換中心資源(SCR)等。其中,ARM子系統(tǒng)主要負(fù)責(zé)TMS320DM6446系統(tǒng)的整體配置和模塊功能控制,以及調(diào)用視頻算法。工作頻率近600 MHz的DSP子系統(tǒng)負(fù)責(zé)視頻算法的執(zhí)行,其最大處理能力可以達(dá)到4800MIPS,極大地增強(qiáng)了音頻和視頻的解碼能力。視頻處理子系統(tǒng)包括1個(gè)視頻前端輸入接口(VPFE)和1個(gè)視頻末端輸出接口(VPBE),視頻前端輸入接口用于捕獲視頻信號(hào),視頻末端輸出接口將圖像輸出到OSD上顯示。

本系統(tǒng)的結(jié)構(gòu)框圖如圖2所示。系統(tǒng)通過異步外部存儲(chǔ)器接口(EMIF)外接64 MB的NAND Flash,用于存儲(chǔ)啟動(dòng)代碼和數(shù)據(jù),以引導(dǎo)加載ARM Linux操作系統(tǒng)。利用ATA控制器接口外接160 GB 2.5 in的ATA硬盤,主要用于Linux系統(tǒng)的文件系統(tǒng)、應(yīng)用程序和大量數(shù)字影片文件的存儲(chǔ)。由于ATA硬盤輸出的是3.3 V電壓信號(hào),而TMS320DM6446硬盤控制器輸出的電壓信號(hào)為1.8 V,為使硬盤與主CPU正常連接,需要電壓轉(zhuǎn)換芯片來保證硬盤的正常工作。此外,為了方便改變視頻節(jié)目及便于實(shí)驗(yàn)的測(cè)試,本系統(tǒng)還通過MMC/SD存儲(chǔ)卡接口擴(kuò)展了2 GB的SD卡和USB2.0接口。利用TMS320DM6446的32位DDR2控制器接256 MB DDR2型SDRAM緩沖視頻輸入圖形數(shù)據(jù),作為OSD的緩沖器來存儲(chǔ)ARM和DSP代碼。

 

 

系統(tǒng)的視頻前端輸入接口(VPFE)支持復(fù)合視頻(CVBS)輸入及S-端子輸入。視頻末端輸出接口VPBE支持模擬視頻輸出,包括復(fù)合視頻(CVB-S)輸出、S端子輸出、分量視頻輸出(YPbPr)及VGA輸出;同時(shí),支持?jǐn)?shù)字視頻輸出(DVI)。視頻解碼模塊采用TI公司的高質(zhì)量視頻解碼芯片TV-P5158,把常見的基帶模擬視頻格式轉(zhuǎn)換為數(shù)字視頻格式。輸入的視頻數(shù)據(jù)通過TVP5158視頻解碼芯片轉(zhuǎn)換成10位YUV4:2:2的格式,然后送至視頻前端處理,處理完的數(shù)據(jù)再經(jīng)視頻末端處理后保存至硬盤。音頻解碼模塊采用TI公司的低功耗立體聲解碼芯片TLV320AIC33。考慮到系統(tǒng)要接多個(gè)模塊,這里利用AIC33串行總線控制支持的I2C協(xié)議,通過I2C接口與DSP的音頻端接口相連。另外,為了監(jiān)控硬件平臺(tái)的啟動(dòng)情況,利用TMS320DM6446集成的UART外設(shè)控制器,擴(kuò)展了UART通用異步串口,配置RS232用于系統(tǒng)啟動(dòng)時(shí)控制臺(tái)。

2 軟件設(shè)計(jì)

數(shù)字電影放映系統(tǒng)的軟件設(shè)計(jì)主要是在Linux系統(tǒng)環(huán)境下,利用達(dá)芬奇軟件框架結(jié)構(gòu)來完成的。通過將符合數(shù)字媒體標(biāo)準(zhǔn)(xDM)的音頻和視頻算法打包在由CodecEngine(代碼引擎)管理的Codec Server(代碼服務(wù)器)里,ARM端的應(yīng)用程序就可以調(diào)用集成在Codec Server里的音頻和視頻算法,解碼來自Linux文件系統(tǒng)的音頻、視頻、語音數(shù)據(jù),輸出到TMS320DM6446上控制視頻和語音外設(shè)的Linux器件驅(qū)動(dòng)器。

2.1 達(dá)芬奇軟件開發(fā)方法

在進(jìn)行本系統(tǒng)軟件開發(fā)時(shí),軟件開發(fā)流程如圖3所示。

 

 

軟件開發(fā)具體步驟如下:

①DSP端,在TI公司推出的CCS3.3開發(fā)環(huán)境下,把音視頻解碼算法修改成符合數(shù)字媒體標(biāo)準(zhǔn)(xDM)的形式,并編譯生成一個(gè)算法的庫(kù)文件*.lib(等同于Linux環(huán)境下的*.a64P,直接在Linux環(huán)境下修改文件后綴名即可)。

②生成一個(gè)在DSP上運(yùn)行的可執(zhí)行程序*.x64P(即.out文件),也就是Codec Server。本系統(tǒng)的Codec Server里集成了MPEG-2、MPEG-4、H.264、AAC、MP3、G.71l多種形式的音視頻解碼器。

③根據(jù)Codec Server的名稱及其中包含的具體的音視頻解碼算法,創(chuàng)建Codec Engine的配置文件*.cfg,包括Engine的不同配置、名稱,每個(gè)Engine里包括的Codec以及每個(gè)Codec運(yùn)行在ARM還是DSP端等。例如,在.cfg文件中,可以修改取得Codec模塊的相關(guān)語句,按需要引用Codec模塊。取得不同模塊的語句如下;

 

 

代碼模塊可以自己開發(fā),也可以充分利用第三方的軟件技術(shù),任何與xDM兼容的算法都可以集成到Codec Server中。這樣就避免了開發(fā)的重復(fù)性,降低了開發(fā)的難度。

④將收集到的不同音視頻Codec包、Codec Server和Engine配置文件*.cfg以及應(yīng)用程序通過編譯、鏈接,最終生成ARM端可執(zhí)行文件。

2.2 達(dá)芬奇中間框架Codec Engine

Codec Engine是介于應(yīng)用程序和代碼服務(wù)器的中間層,是利用DaVinci技術(shù)簡(jiǎn)化數(shù)字產(chǎn)品開發(fā)的關(guān)鍵組件。它為應(yīng)用程序提供了VISA接口,在不必考慮復(fù)雜的視頻、圖像、話音和語音處理算法(VISA)的前提下,利用Codec Engine提供的API,應(yīng)用程序可以方便地調(diào)用符合xDM的算法組件。

2.3 ARM端解碼應(yīng)用程序的設(shè)計(jì)

本系統(tǒng)的應(yīng)用程序是在Linux系統(tǒng)環(huán)境下,利用DaVinci技術(shù)的Codec Engine提供的API來完成的。應(yīng)用程序運(yùn)行在TMS320DM6446雙核處理器的ARM端,解碼存儲(chǔ)在硬盤里的音頻、視頻、語音數(shù)據(jù),通過視頻末端輸出接口(VPBE)輸出,在OSD上實(shí)時(shí)顯示。

解碼線程的流程如圖4所示。

 

 

應(yīng)用程序主要包括5個(gè)POSIX線程:主線程(控制線程)、視頻線程、顯示線程、語音線程以及音頻線程。從圖4中可以看到,視頻、語音、音頻線程在主線程變成控制線程之前產(chǎn)生。顯示線程由視頻線程產(chǎn)生。“MSP430+IR”用來接收用戶輸入的命令,只有在命令行里提供了一個(gè)視頻文件時(shí),才能建立視頻線程。同時(shí),由于音頻和語音要求同樣的外設(shè)(AIC33),因此,不能同時(shí)解碼音頻和語音文件。此外,所有的線程都是搶占式的,基于優(yōu)先級(jí)的時(shí)序(SCHED_FIFO),其中,顯示線程具有最高的優(yōu)先級(jí),接下來是視頻線程,控制線程的優(yōu)先級(jí)最低。線程的初始化由Rendezvous公用程序模塊來同步。該模塊使用POSIX的條件來同步線程的初始化。每個(gè)線程執(zhí)行其初始化后,通知Rendezvous的對(duì)象。所有的線程都結(jié)束初始化后,同時(shí)解鎖,開始執(zhí)行主循環(huán)。

3 測(cè)試結(jié)果

本系統(tǒng)的軟件開發(fā)是在虛擬機(jī)上的Linux操作系統(tǒng)下進(jìn)行的,Linux操作系統(tǒng)的版本為Monta Vista Linux Professional Edition v4。測(cè)試前,用交叉網(wǎng)線將硬件平臺(tái)通過交換機(jī)與主機(jī)相連,并配置NFS(Network File System,網(wǎng)絡(luò)文件系統(tǒng))服務(wù),使得開發(fā)板和主機(jī)可以互相訪問;同時(shí),在主機(jī)的Windows環(huán)境下,將開發(fā)板與主機(jī)用串口線相連,設(shè)置超級(jí)終端,通過超級(jí)終端監(jiān)控硬件系統(tǒng)的啟動(dòng)情況,并設(shè)置命令參數(shù)。

測(cè)試時(shí),在超級(jí)終端里輸入解碼命令,硬件系統(tǒng)通過MSP430解析輸入的命令,讀取存儲(chǔ)在HDD(硬盤)里的音視頻數(shù)據(jù),利用OSD在線顯示解碼的影片。圖5~圖7分別為對(duì)MPEG-2、MPEG-4、H.264音視頻的解碼圖像。

 

 

 

 

 

 

結(jié)語

本文結(jié)合達(dá)芬奇數(shù)字多媒體技術(shù)提出了數(shù)字電影放映系統(tǒng)的硬件解決方案及軟件設(shè)計(jì)方法。利用達(dá)芬奇對(duì)高層Linux的支持、標(biāo)準(zhǔn)化的API以及產(chǎn)品化的底層驅(qū)動(dòng)器,大大降低了設(shè)計(jì)數(shù)字視頻系統(tǒng)的復(fù)雜性,縮短了產(chǎn)品的開發(fā)周期。測(cè)試表明,所設(shè)計(jì)的數(shù)字電影放映系統(tǒng)支持多種格式的數(shù)字影片的高清播放,且具有高穩(wěn)定性和高可靠性。該設(shè)計(jì)方案還可以用于其他數(shù)字產(chǎn)品的開發(fā),如IP機(jī)頂盒、網(wǎng)絡(luò)攝像機(jī)、醫(yī)學(xué)圖像處理、視頻會(huì)議等。

本站聲明: 本文章由作者或相關(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)閉