[發(fā)明專(zhuān)利]網(wǎng)絡(luò)音頻MP3流亂序分段解碼方法有效
| 申請(qǐng)?zhí)枺?/td> | 201410472027.0 | 申請(qǐng)日: | 2014-09-16 |
| 公開(kāi)(公告)號(hào): | CN104202656B | 公開(kāi)(公告)日: | 2017-08-04 |
| 發(fā)明(設(shè)計(jì))人: | 云曉春;周游;袁慶升;謝銘;包秀國(guó);周康成;薛晨;鄒學(xué)強(qiáng) | 申請(qǐng)(專(zhuān)利權(quán))人: | 國(guó)家計(jì)算機(jī)網(wǎng)絡(luò)與信息安全管理中心;北京賽思信安技術(shù)有限公司 |
| 主分類(lèi)號(hào): | H04N21/439 | 分類(lèi)號(hào): | H04N21/439;H04N21/443 |
| 代理公司: | 北京永創(chuàng)新實(shí)專(zhuān)利事務(wù)所11121 | 代理人: | 祗志潔 |
| 地址: | 100029*** | 國(guó)省代碼: | 北京;11 |
| 權(quán)利要求書(shū): | 查看更多 | 說(shuō)明書(shū): | 查看更多 |
| 摘要: | |||
| 搜索關(guān)鍵詞: | 網(wǎng)絡(luò) 音頻 mp3 流亂序 分段 解碼 方法 | ||
技術(shù)領(lǐng)域
本發(fā)明涉及音頻流處理技術(shù)領(lǐng)域,具體是一種網(wǎng)絡(luò)音頻MP3流亂序分段解碼方法。
背景技術(shù)
在網(wǎng)絡(luò)音頻MP3流處理領(lǐng)域,傳統(tǒng)的處理方案一般為根據(jù)音頻流按序處理。實(shí)際運(yùn)用中,由于P2P、分段下載以及UDP協(xié)議的特性,使得亂序的音頻流存在。目前已有的處理方法只能跳過(guò)亂序的數(shù)據(jù)流,導(dǎo)致解碼不完整,不能還原整個(gè)數(shù)據(jù)流。
發(fā)明內(nèi)容
本發(fā)明的目的是為了最大程度的正確處理亂序的音頻MP3流,提出了一種網(wǎng)絡(luò)音頻MP3流亂序分段解碼方法,通過(guò)本地緩存、分段處理以進(jìn)行最大程度解碼。
本發(fā)明提供的網(wǎng)絡(luò)音頻MP3流亂序分段解碼方法,包括兩大步驟:
第一步,從網(wǎng)絡(luò)中捕獲音頻MP3數(shù)據(jù)包并保存;包括如下步驟1.1~步驟1.3;
步驟1.1、捕獲網(wǎng)絡(luò)傳輸來(lái)的數(shù)據(jù)包,當(dāng)數(shù)據(jù)包為MP3數(shù)據(jù)包時(shí),執(zhí)行步驟1.2,否則繼續(xù)捕獲數(shù)據(jù)包;
步驟1.2、判斷所捕獲的MP3數(shù)據(jù)包是否屬于一個(gè)新session(會(huì)話)的音頻流數(shù)據(jù),若是,為該新session建立緩存,并進(jìn)入步驟1.3執(zhí)行;否則,繼續(xù)執(zhí)行步驟1.3;
步驟1.3、使用FFmpeg剝離MP3數(shù)據(jù)包獲取其中未解碼的MP3數(shù)據(jù)幀,根據(jù)MP3數(shù)據(jù)幀中包含的位置信息,將MP3數(shù)據(jù)幀保存至緩存中對(duì)應(yīng)的位置。
第二步,遍歷緩存中已保存的所有MP3數(shù)據(jù)幀,當(dāng)存在包含達(dá)到指定大小的連續(xù)MP3數(shù)據(jù)幀的數(shù)據(jù)塊時(shí),采用FFmpeg技術(shù)對(duì)該數(shù)據(jù)塊進(jìn)行解碼;采用FFmpeg技術(shù)對(duì)數(shù)據(jù)塊進(jìn)行解碼時(shí),根據(jù)數(shù)據(jù)塊在音頻流中所處的位置,找到相應(yīng)的上下文并更新后,繼續(xù)解碼。
本發(fā)明第二步采用FFmpeg技術(shù)對(duì)數(shù)據(jù)塊進(jìn)行解碼,可通過(guò)設(shè)置在獨(dú)立板卡上加速單元實(shí)現(xiàn)。所述的板卡上設(shè)置有兩個(gè)以上的加速單元,每個(gè)加速單元采用FFmpeg技術(shù)實(shí)現(xiàn),用于音視頻處理;板卡的外部接口為PCI-E,插在支持PCI-E插槽的計(jì)算機(jī)上;計(jì)算機(jī)與板卡之間實(shí)現(xiàn)DMA方式的數(shù)據(jù)傳輸,從計(jì)算機(jī)的緩存中讀取待解碼的數(shù)據(jù)塊通過(guò)DMA方式傳輸給板卡上的加速單元,加速單元將解碼后的結(jié)果數(shù)據(jù)通過(guò)DMA方式傳回計(jì)算機(jī)。
所述的板卡,其實(shí)現(xiàn)數(shù)據(jù)解碼的方法是:
(1)在主機(jī)操作系統(tǒng)的用戶態(tài)下設(shè)置有API庫(kù)和管理工具,在主機(jī)操作系統(tǒng)的核心態(tài)下設(shè)置主機(jī)側(cè)硬件驅(qū)動(dòng);在板卡系統(tǒng)的核心態(tài)下設(shè)置板卡側(cè)硬件驅(qū)動(dòng),在板卡系統(tǒng)的用戶態(tài)下設(shè)置板卡控制單元和加速單元;API庫(kù)提供API函數(shù),以控制板卡啟停音視頻加速處理;主機(jī)側(cè)硬件驅(qū)動(dòng)與板卡側(cè)硬件驅(qū)動(dòng)用于實(shí)現(xiàn)DMA數(shù)據(jù)傳輸方式;
(2)上層應(yīng)用程序調(diào)用API庫(kù)提供的API函數(shù),管理工具根據(jù)所調(diào)用的API函數(shù)向板卡控制單元發(fā)送音視頻處理的命令,板卡控制單元接收到音視頻處理的命令后,控制加速單元對(duì)音視頻數(shù)據(jù)進(jìn)行解碼處理;要處理的音視頻數(shù)據(jù)通過(guò)主機(jī)側(cè)硬件驅(qū)動(dòng)從主機(jī)緩存中讀取,然后傳送給板卡側(cè)硬件驅(qū)動(dòng),板卡側(cè)硬件驅(qū)動(dòng)將要處理的音視頻數(shù)據(jù)傳送給加速單元,加速單元在將解碼后的結(jié)果數(shù)據(jù)傳送給板卡側(cè)硬件驅(qū)動(dòng),板卡側(cè)硬件驅(qū)動(dòng)再傳送給主機(jī)側(cè)硬件驅(qū)動(dòng),最后由主機(jī)側(cè)硬件驅(qū)動(dòng)將處理后的結(jié)果數(shù)據(jù)寫(xiě)回內(nèi)存。
本發(fā)明的優(yōu)點(diǎn)與積極效果在于:無(wú)論網(wǎng)絡(luò)音頻MP3以何種順序接收,均能以固定數(shù)量的音頻幀為單位拼接并進(jìn)行最大程度解碼;連續(xù)MP3數(shù)據(jù)幀形成的數(shù)據(jù)塊大小可根據(jù)實(shí)際應(yīng)用調(diào)整,并可支持多數(shù)據(jù)流并發(fā)解碼,提高了音頻流有效幀數(shù)的接收率和解碼率。
附圖說(shuō)明
圖1是本發(fā)明的網(wǎng)絡(luò)音頻MP3流亂序分段解碼方法的步驟流程圖;
圖2是本發(fā)明通過(guò)FFmpeg技術(shù)實(shí)現(xiàn)并發(fā)解碼的結(jié)構(gòu)示意圖。
具體實(shí)施方式
下面將結(jié)合附圖和實(shí)施例對(duì)本發(fā)明作進(jìn)一步的詳細(xì)說(shuō)明。
本發(fā)明提出一種基于網(wǎng)絡(luò)音頻MP3流的無(wú)序分段解碼方法,目的是最大程度的正確處理亂序的音頻MP3流。
如圖1所示,本發(fā)明的無(wú)序分段解碼方法具體包括以下步驟:
第一步,從網(wǎng)絡(luò)中捕獲音頻MP3數(shù)據(jù)包并保存;包括如下步驟1.1~步驟1.3。
步驟1.1、捕獲網(wǎng)絡(luò)傳輸來(lái)的數(shù)據(jù)包,當(dāng)數(shù)據(jù)包為音頻MP3數(shù)據(jù)包時(shí),執(zhí)行步驟1.2,否則繼續(xù)捕獲數(shù)據(jù)包。
步驟1.2、分析所捕獲的MP3數(shù)據(jù)包是否屬于一個(gè)新session(會(huì)話)的音頻流數(shù)據(jù),若是,為該新session建立緩存,并進(jìn)入步驟1.3執(zhí)行;否則,取得該session的上下文數(shù)據(jù),繼續(xù)執(zhí)行步驟1.3。
該專(zhuān)利技術(shù)資料僅供研究查看技術(shù)是否侵權(quán)等信息,商用須獲得專(zhuān)利權(quán)人授權(quán)。該專(zhuān)利全部權(quán)利屬于國(guó)家計(jì)算機(jī)網(wǎng)絡(luò)與信息安全管理中心;北京賽思信安技術(shù)有限公司,未經(jīng)國(guó)家計(jì)算機(jī)網(wǎng)絡(luò)與信息安全管理中心;北京賽思信安技術(shù)有限公司許可,擅自商用是侵權(quán)行為。如果您想購(gòu)買(mǎi)此專(zhuān)利、獲得商業(yè)授權(quán)和技術(shù)合作,請(qǐng)聯(lián)系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201410472027.0/2.html,轉(zhuǎn)載請(qǐng)聲明來(lái)源鉆瓜專(zhuān)利網(wǎng)。
- 上一篇:視頻分組播放的方法及系統(tǒng)
- 下一篇:一種音視頻文件下載方法及裝置
- 同類(lèi)專(zhuān)利
- 專(zhuān)利分類(lèi)
H04N 圖像通信,如電視
H04N21-00 可選的內(nèi)容分發(fā),例如交互式電視,VOD〔視頻點(diǎn)播〕
H04N21-20 .專(zhuān)門(mén)適用于內(nèi)容分發(fā)的專(zhuān)用服務(wù)器,例如:VOD服務(wù)器;其操作
H04N21-40 .專(zhuān)門(mén)適用于接收內(nèi)容或者與內(nèi)容交互的客戶端設(shè)備,如STB[機(jī)頂盒];相關(guān)操作
H04N21-60 .用于在服務(wù)器和客戶端之間或者在遠(yuǎn)程客戶端之間的視頻分配的網(wǎng)絡(luò)結(jié)構(gòu)或者處理
H04N21-80 .通過(guò)內(nèi)容產(chǎn)生器獨(dú)立于分配過(guò)程實(shí)現(xiàn)的內(nèi)容或附加數(shù)據(jù)的生成或處理;內(nèi)容本身
H04N21-81 ..其單媒體部件
- 網(wǎng)絡(luò)和網(wǎng)絡(luò)終端
- 網(wǎng)絡(luò)DNA
- 網(wǎng)絡(luò)地址自適應(yīng)系統(tǒng)和方法及應(yīng)用系統(tǒng)和方法
- 網(wǎng)絡(luò)系統(tǒng)及網(wǎng)絡(luò)至網(wǎng)絡(luò)橋接器
- 一種電力線網(wǎng)絡(luò)中根節(jié)點(diǎn)網(wǎng)絡(luò)協(xié)調(diào)方法和系統(tǒng)
- 一種多網(wǎng)絡(luò)定位方法、存儲(chǔ)介質(zhì)及移動(dòng)終端
- 網(wǎng)絡(luò)裝置、網(wǎng)絡(luò)系統(tǒng)、網(wǎng)絡(luò)方法以及網(wǎng)絡(luò)程序
- 從重復(fù)網(wǎng)絡(luò)地址自動(dòng)恢復(fù)的方法、網(wǎng)絡(luò)設(shè)備及其存儲(chǔ)介質(zhì)
- 神經(jīng)網(wǎng)絡(luò)的訓(xùn)練方法、裝置及存儲(chǔ)介質(zhì)
- 網(wǎng)絡(luò)管理方法和裝置
- 自動(dòng)配置藍(lán)牙A2DP傳輸音頻編碼格式的方法和系統(tǒng)
- 一種多路音頻處理方法、音頻播放終端及音頻接收裝置
- 一種音頻處理方法、裝置及終端設(shè)備
- 一種音頻質(zhì)量的檢測(cè)方法、裝置、電子設(shè)備及存儲(chǔ)介質(zhì)
- 音頻分離方法、裝置、設(shè)備及計(jì)算機(jī)可讀存儲(chǔ)介質(zhì)
- 一種音頻播放方法、裝置、以及計(jì)算機(jī)存儲(chǔ)介質(zhì)
- 一種音頻錄制系統(tǒng)
- 一種音頻共享系統(tǒng)及方法
- 音頻樣本生成方法、裝置、計(jì)算機(jī)設(shè)備及存儲(chǔ)介質(zhì)
- 音頻處理方法和裝置
- 視頻幀流處理方法、視頻服務(wù)器及終端設(shè)備
- 一種面向制造物聯(lián)網(wǎng)海量亂序數(shù)據(jù)流復(fù)雜事件檢測(cè)方法
- 一種IP數(shù)據(jù)包亂序模擬仿真電路及方法
- 一種差異化TCP鏈接管理方法及設(shè)備
- 亂序處理器Cache缺失服務(wù)時(shí)間的評(píng)估方法
- 基于聚類(lèi)獲取應(yīng)用程序亂序訪存行為模式的方法
- 一種亂序數(shù)據(jù)流分布式聚合查詢方法、系統(tǒng)及介質(zhì)
- 加密、解密方法、裝置、電子設(shè)備及存儲(chǔ)介質(zhì)
- 報(bào)文亂序檢測(cè)方法、裝置及系統(tǒng)
- 亂序數(shù)據(jù)處理方法、裝置、設(shè)備及可讀存儲(chǔ)介質(zhì)





