專利名稱:基于龍芯的流媒體解碼方法
技術(shù)領(lǐng)域:
本發(fā)明涉及通信技術(shù)領(lǐng)域,尤其涉及一種基于龍芯的流媒體解碼方法。
背景技術(shù):
在網(wǎng)絡(luò)上傳輸音/視頻等多媒體信息,目前主要有下載和流式傳輸兩種方案。A/V 文件一般都較大,所以需要的存儲容量也較大;同時由于網(wǎng)絡(luò)帶寬的限制,下載常常要花數(shù)分鐘甚至數(shù)小時,所以這種處理方法延遲也很大。流式傳輸時,聲音、影像或動畫等時基媒體由音視頻服務(wù)器向用戶計算機(jī)的連續(xù)、實時傳送,用戶不必等到整個文件全部下載完畢, 而只需經(jīng)過幾秒或十?dāng)?shù)秒的啟動延時即可進(jìn)行觀看。當(dāng)聲音等時基媒體在客戶機(jī)上播放時,文件的剩余部分將在后臺從服務(wù)器內(nèi)繼續(xù)下載。流式不僅使啟動延時成十倍、百倍地縮短,而且不需要太大的緩存容量。流式傳輸避免了用戶必須等待整個文件全部從^ternet 上下載才能觀看的缺點。流媒體指在hternet/Intranet中使用流式傳輸技術(shù)的連續(xù)時基媒體,如音頻、 視頻或多媒體文件。流式媒體在播放前并不下載整個文件,只將開始部分內(nèi)容存入內(nèi)存,流式媒體的數(shù)據(jù)流隨時傳送隨時播放,只是在開始時有一些延遲。流媒體實現(xiàn)的關(guān)鍵技術(shù)就是流式傳輸。流式傳輸定義很廣泛,現(xiàn)在主要指通過網(wǎng)絡(luò)傳送媒體(如視頻、音頻)的技術(shù)總稱。其特定含義為通過^ternet將影視節(jié)目傳送到PC機(jī)。實現(xiàn)流式傳輸有兩種方法實時流式傳輸(Realtime streaming)禾口順序流式傳輸(progressive streaming)。一般說來,如視頻為實時廣播,或使用流式傳輸媒體服務(wù)器,或應(yīng)用如RTSP的實時協(xié)議,即為實時流式傳輸。如使用HTTP服務(wù)器,文件即通過順序流發(fā)送。采用哪種傳輸方法依賴你的需求。 當(dāng)然,流式文件也支持在播放前完全下載到硬盤。隨著流媒體技術(shù)的不斷成熟,流媒體在龍芯上的應(yīng)用也不斷展開,為保證流媒體應(yīng)用在龍芯上流暢運行,需要一種機(jī)制,既能夠保留流媒體的諸多特性,又能夠支持龍芯應(yīng)用。
發(fā)明內(nèi)容
本發(fā)明解決的技術(shù)問題在于提供一種基于龍芯的流媒體解碼方法,該方法充分利用流媒體即時即地的特征,可以提升龍芯針對媒體傳輸流的處理及解碼速度、效率以及媒體傳輸流數(shù)據(jù)復(fù)用性。本發(fā)明解決前述技術(shù)問題的技術(shù)方案是由用于流媒體播放系統(tǒng)應(yīng)用客戶端的媒體流接收模塊、媒體流處理模塊、視頻解碼模塊、音頻解碼模塊、視頻輸出模塊、音頻輸出模塊、視頻輸出驅(qū)動模塊和音頻輸出驅(qū)動模塊完成解碼。所述的媒體流接收模塊通過特定的方式對媒體傳輸流進(jìn)行接收,接收后的媒體傳輸流片段傳遞給媒體流處理模塊;所述的媒體流處理模塊使用特定的標(biāo)記識別方式對媒體流數(shù)據(jù)接收模塊的輸出進(jìn)行處理,識別之后的媒體流數(shù)據(jù)以時間軸排序,摘取出正在播放的媒體流數(shù)據(jù)傳分別傳送到視頻解碼模塊和音頻解碼模塊;所述的視頻解碼模塊從媒體流處理模塊中接收的排序視頻數(shù)據(jù)分幀進(jìn)行解碼,作為輸入輸入到視頻輸出模塊;所述的音頻解碼模塊從媒體流處理模塊中接收的排序音頻數(shù)據(jù)分片進(jìn)行解碼,作為輸入輸入到音頻輸出模塊;所述的視頻輸出模塊從視頻解碼模塊中接收到解碼后的視頻幀數(shù)據(jù)并找到指定的視頻輸出設(shè)備,調(diào)用該視頻輸出設(shè)備驅(qū)動,將視頻幀數(shù)據(jù)輸出到指定視頻輸出設(shè)備上;所述的音頻輸出模塊從音頻解碼模塊中接收到解碼后的音頻數(shù)據(jù)并找到指定的音頻輸出設(shè)備,調(diào)用該音頻輸出設(shè)備驅(qū)動,將音頻數(shù)據(jù)輸出到指定的音頻輸出設(shè)備上;所述的視頻輸出驅(qū)動模塊是一組視頻輸出設(shè)備的驅(qū)動集,支持龍芯所支持的多種視頻輸出設(shè)備;所述的音頻輸出驅(qū)動模塊是一組音頻輸出設(shè)備的驅(qū)動集,支持龍芯所支持的多種音頻輸出設(shè)備。所述媒體流處理模塊對媒體流初始化、摘取和解復(fù)用操作外,還執(zhí)行選擇性存儲, 即將排序媒體流文件保存在臨時目錄下。在媒體流接收階段包括以下步驟A、與流媒體服務(wù)器建立連接;B、開始接收媒體傳輸流;C、將接收到的媒體傳輸流保存到指定緩沖區(qū)。在媒體流處理階段包括以下步驟:A、使用特定的標(biāo)記識別方式對媒體流接收模塊的輸出進(jìn)行處理,B、識別特定標(biāo)記的媒體流數(shù)據(jù)以時間軸排序,C、摘取出正在播放的媒體流數(shù)據(jù)傳分別傳送到視頻解碼模塊和音頻解碼模塊。本發(fā)明可提升龍芯針對媒體傳輸流的處理及解碼速度、效率以及媒體傳輸流數(shù)據(jù)復(fù)用性。
下面結(jié)合附圖對本發(fā)明進(jìn)一步說明圖1是本發(fā)明流媒體解碼功能模塊框圖;圖2是本發(fā)明中媒體流接收階段的示意圖。
具體實施例方式見圖1所示,由用于流媒體播放系統(tǒng)應(yīng)用客戶端的媒體流接收模塊1、媒體流處理模塊2、視頻解碼模塊3、音頻解碼模塊4、視頻輸出模塊5、音頻輸出模塊6、視頻輸出驅(qū)動模塊7和音頻輸出驅(qū)動模塊8完成解碼。具體而言,媒體流接收模塊1通過特定的方式對媒體傳輸流進(jìn)行接收,接收后的媒體傳輸流片段傳遞給媒體流處理模塊2 ;媒體流處理模塊2 使用特定的標(biāo)記識別方式對媒體流數(shù)據(jù)接收模塊的輸出進(jìn)行處理,識別之后的媒體流數(shù)據(jù)以時間軸排序,摘取出正在播放的媒體流數(shù)據(jù)傳分別傳送到視頻解碼模塊3和音頻解碼模塊4 ;視頻解碼模塊3從媒體流處理模塊2中接收的排序視頻數(shù)據(jù)分幀進(jìn)行解碼,作為輸入輸入到視頻輸出模塊5 ;音頻解碼模塊4從媒體流處理模塊2中接收的排序音頻數(shù)據(jù)分片進(jìn)行解碼,作為輸入輸入到音頻輸出模塊6 ;視頻輸出模塊5從視頻解碼模塊3中接收到解碼后的視頻幀數(shù)據(jù)并找到指定的視頻輸出設(shè)備,調(diào)用該視頻輸出設(shè)備驅(qū)動,將視頻幀數(shù)據(jù)輸出到指定視頻輸出設(shè)備上;音頻輸出模塊6從音頻解碼模塊4中接收到解碼后的音頻數(shù)據(jù)并找到指定的音頻輸出設(shè)備,調(diào)用該音頻輸出設(shè)備驅(qū)動,將音頻數(shù)據(jù)輸出到指定的音頻輸出設(shè)備上;視頻輸出驅(qū)動模塊7是一組視頻輸出設(shè)備的驅(qū)動集,支持龍芯所支持的多種視頻輸出設(shè)備;音頻輸出驅(qū)動模塊8是一組音頻輸出設(shè)備的驅(qū)動集,支持龍芯所支持的多種音頻輸出設(shè)備。所述媒體流處理模塊2對媒體流初始化、摘取和解復(fù)用操作外,還執(zhí)行選擇性存儲,即將排序媒體流文件保存在臨時目錄下。如圖2所示,在媒體流接收階段包括以下步驟:A、與流媒體服務(wù)器建立連接;B、開始接收媒體傳輸流;C、將接收到的媒體傳輸流保存到指定緩沖區(qū)。在媒體流處理階段包括以下步驟:A、使用特定的標(biāo)記識別方式對媒體流接收模塊 1的輸出進(jìn)行處理,B、識別特定標(biāo)記的媒體流數(shù)據(jù)以時間軸排序,C、摘取出正在播放的媒體流數(shù)據(jù)傳分別傳送到視頻解碼模塊3和音頻解碼模塊4。在視頻解碼階段包括以下步驟A、從媒體流處理模塊中接收的排序視頻數(shù)據(jù)分幀進(jìn)行解碼,B、輸入到視頻輸出模塊。在音頻解碼階段包括以下步驟A、從媒體流處理模塊中接收的排序音頻數(shù)據(jù)分片進(jìn)行解碼,B、輸入到音頻輸出模塊。在視頻輸出階段包括以下步驟A、從視頻解碼模塊中接收到解碼后的視頻幀數(shù)據(jù)并找到指定的視頻輸出設(shè)備,B、調(diào)用該視頻輸出設(shè)備驅(qū)動,將視頻幀數(shù)據(jù)輸出到指定視頻輸出設(shè)備上。在音頻輸出階段包括以下步驟A、從音頻解碼模塊中接收到解碼后的音頻數(shù)據(jù)并找到指定的音頻輸出設(shè)備,B、調(diào)用該音頻輸出設(shè)備驅(qū)動,將音頻數(shù)據(jù)輸出到指定的音頻輸出設(shè)備上。在視頻驅(qū)動階段包括以下步驟準(zhǔn)備好一組視頻輸出設(shè)備的驅(qū)動集,支持龍芯所支持的多種視頻輸出設(shè)備在音頻驅(qū)動階段包括以下步驟準(zhǔn)備好一組音頻輸出設(shè)備的驅(qū)動集,支持龍芯所支持的多種音頻輸出設(shè)備。
權(quán)利要求
1.一種基于龍芯的流媒體解碼方法,其特征在于由用于流媒體播放系統(tǒng)應(yīng)用客戶端的媒體流接收模塊(1)、媒體流處理模塊( 、視頻解碼模塊( 、音頻解碼模塊(4)、視頻輸出模塊(5)、音頻輸出模塊(6)、視頻輸出驅(qū)動模塊(7)和音頻輸出驅(qū)動模塊(8)完成解碼。
2.根據(jù)權(quán)利要求1所述的流媒體解碼方法,其特征在于所述的媒體流接收模塊(1)通過特定的方式對媒體傳輸流進(jìn)行接收,接收后的媒體傳輸流片段傳遞給媒體流處理模塊(2);所述的媒體流處理模塊( 使用特定的標(biāo)記識別方式對媒體流數(shù)據(jù)接收模塊的輸出進(jìn)行處理,識別之后的媒體流數(shù)據(jù)以時間軸排序,摘取出正在播放的媒體流數(shù)據(jù)傳分別傳送到視頻解碼模塊( 和音頻解碼模塊;所述的視頻解碼模塊C3)從媒體流處理模塊O)中接收的排序視頻數(shù)據(jù)分幀進(jìn)行解碼,作為輸入輸入到視頻輸出模塊(5);所述的音頻解碼模塊(4)從媒體流處理模塊O)中接收的排序音頻數(shù)據(jù)分片進(jìn)行解碼,作為輸入輸入到音頻輸出模塊(6);所述的視頻輸出模塊( 從視頻解碼模塊(3)中接收到解碼后的視頻幀數(shù)據(jù)并找到指定的視頻輸出設(shè)備,調(diào)用該視頻輸出設(shè)備驅(qū)動,將視頻幀數(shù)據(jù)輸出到指定視頻輸出設(shè)備上;所述的音頻輸出模塊(6)從音頻解碼模塊(4)中接收到解碼后的音頻數(shù)據(jù)并找到指定的音頻輸出設(shè)備,調(diào)用該音頻輸出設(shè)備驅(qū)動,將音頻數(shù)據(jù)輸出到指定的音頻輸出設(shè)備上;所述的視頻輸出驅(qū)動模塊(7)是一組視頻輸出設(shè)備的驅(qū)動集,支持龍芯所支持的多種視頻輸出設(shè)備;所述的音頻輸出驅(qū)動模塊(8)是一組音頻輸出設(shè)備的驅(qū)動集,支持龍芯所支持的多種音頻輸出設(shè)備。
3.根據(jù)權(quán)利要求1或2所述的流媒體解碼方法,其特征在于所述媒體流處理模塊(2) 對媒體流初始化、摘取和解復(fù)用操作外,還執(zhí)行選擇性存儲,即將排序媒體流文件保存在臨時目錄下。
4.根據(jù)權(quán)利要求1或2所述的流媒體解碼方法,其特征在于在媒體流接收階段包括以下步驟:A、與流媒體服務(wù)器建立連接;B、開始接收媒體傳輸流;C、將接收到的媒體傳輸流保存到指定緩沖區(qū)。
5.根據(jù)權(quán)利要求3所述的流媒體解碼方法,其特征在于在媒體流接收階段包括以下步驟A、與流媒體服務(wù)器建立連接B、開始接收媒體傳輸流C、將接收到的媒體傳輸流保存到指定緩沖區(qū)。
6.根據(jù)權(quán)利要求1或2所述的流媒體解碼方法,其特征在于在媒體流處理階段包括以下步驟:A、使用特定的標(biāo)記識別方式對媒體流接收模塊(1)的輸出進(jìn)行處理,B、識別特定標(biāo)記的媒體流數(shù)據(jù)以時間軸排序,C、摘取出正在播放的媒體流數(shù)據(jù)傳分別傳送到視頻解碼模塊( 和音頻解碼模塊(4)。
7.根據(jù)權(quán)利要求3所述的流媒體解碼方法,其特征在于在媒體流處理階段包括以下步驟:A、使用特定的標(biāo)記識別方式對媒體流接收模塊(1)的輸出進(jìn)行處理,B、識別特定標(biāo)記的媒體流數(shù)據(jù)以時間軸排序,C、摘取出正在播放的媒體流數(shù)據(jù)傳分別傳送到視頻解碼模塊(3)和音頻解碼模塊(4)。
8.根據(jù)權(quán)利要求4所述的流媒體解碼方法,其特征在于在媒體流處理階段包括以下步驟:A、使用特定的標(biāo)記識別方式對媒體流接收模塊(1)的輸出進(jìn)行處理,B、識別特定標(biāo)記的媒體流數(shù)據(jù)以時間軸排序,C、摘取出正在播放的媒體流數(shù)據(jù)傳分別傳送到視頻解碼模塊(3)和音頻解碼模塊(4)。
9.根據(jù)權(quán)利要求5所述的流媒體解碼方法,其特征在于在媒體流處理階段包括以下步驟A、使用特定的標(biāo)記識別方式對媒體流接收模塊(1)的輸出進(jìn)行處理,B、識別特定標(biāo)記的媒體流數(shù)據(jù)以時間軸排序,C、摘取出正在播放的媒體流數(shù)據(jù)傳分別傳送到視頻解碼模塊(3)和音頻解碼模塊(4)。
全文摘要
本發(fā)明涉及通信技術(shù)領(lǐng)域,尤其涉及一種基于龍芯的流媒體解碼方法。由用于流媒體播放系統(tǒng)應(yīng)用客戶端的媒體流接收模塊、媒體流處理模塊、視頻解碼模塊、音頻解碼模塊、視頻輸出模塊、音頻輸出模塊、視頻輸出驅(qū)動模塊和音頻輸出驅(qū)動模塊完成解碼。具體而言,包括在流媒體接收模塊對媒體傳輸流進(jìn)行初始化、摘取、解復(fù)、標(biāo)記用等操作;流媒體處理模塊對摘取出的媒體傳輸流進(jìn)行標(biāo)記識別、存儲、分發(fā)等操作。本發(fā)明可提升龍芯針對媒體傳輸流的處理及解碼速度、效率以及媒體傳輸流數(shù)據(jù)復(fù)用性;可以廣泛應(yīng)用于基于龍芯的流媒體解碼中。
文檔編號H04L29/06GK102307179SQ20111010109
公開日2012年1月4日 申請日期2011年4月21日 優(yōu)先權(quán)日2011年4月21日
發(fā)明者季統(tǒng)凱, 岳強(qiáng), 楊松, 肖翱, 莫展鵬 申請人:廣東電子工業(yè)研究院有限公司