[發明專利]網絡音頻MP3流亂序分段解碼方法有效
| 申請號: | 201410472027.0 | 申請日: | 2014-09-16 |
| 公開(公告)號: | CN104202656B | 公開(公告)日: | 2017-08-04 |
| 發明(設計)人: | 云曉春;周游;袁慶升;謝銘;包秀國;周康成;薛晨;鄒學強 | 申請(專利權)人: | 國家計算機網絡與信息安全管理中心;北京賽思信安技術有限公司 |
| 主分類號: | H04N21/439 | 分類號: | H04N21/439;H04N21/443 |
| 代理公司: | 北京永創新實專利事務所11121 | 代理人: | 祗志潔 |
| 地址: | 100029*** | 國省代碼: | 北京;11 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 網絡 音頻 mp3 流亂序 分段 解碼 方法 | ||
1.一種網絡音頻MP3流亂序分段解碼方法,其特征在于,包括兩大步驟:
第一步,從網絡中捕獲音頻MP3數據包并保存,包括如下過程:
步驟1.1、捕獲網絡傳輸來的數據包,當數據包為MP3數據包時,執行步驟1.2,否則繼續捕獲數據包;
步驟1.2、判斷所捕獲的MP3數據包是否屬于一個新session的音頻流數據,若是,為該新session建立緩存,并進入步驟1.3執行;否則,繼續執行步驟1.3;session指會話;
步驟1.3、使用FFmpeg剝離MP3數據包獲取其中未解碼的MP3數據幀,根據MP3數據幀中包含的位置信息,將MP3數據幀保存至緩存中對應的位置;
第二步,遍歷緩存中已保存的所有MP3數據幀,當存在包含達到指定大小的連續MP3數據幀的數據塊時,采用FFmpeg技術對該數據塊進行解碼;采用FFmpeg技術對數據塊進行解碼時,在投入數據塊至解碼引擎前,根據數據塊在音頻流中所處的位置,找到相應的上下文并更新后,再繼續解碼;對于每一塊數據塊,都需要修改FFmpeg中相應的上下文內容,通過偽裝的方式讓FFmpeg繼續解碼工作,讓解碼引擎認為該數據塊已經到了該位置,從而能順利進行解碼;
所述的采用FFmpeg技術對數據塊進行解碼,通過設置在獨立板卡上加速單元實現;所述的板卡上設置有兩個以上的加速單元,每個加速單元采用FFmpeg技術實現,用于音視頻處理;板卡的外部接口為PCI-E,插在支持PCI-E插槽的計算機上;計算機與板卡之間實現DMA方式的數據傳輸,從計算機的緩存中讀取待解碼的數據塊通過DMA方式傳輸給板卡上的加速單元,加速單元將解碼后的結果數據通過DMA方式傳回計算機。
2.根據權利要求1所述的網絡音頻MP3流亂序分段解碼方法,其特征在于,第二步中所述的板卡,其實現數據解碼的方法是:
(1)在主機操作系統的用戶態下設置有API庫和管理工具,在主機操作系統的核心態下設置主機側硬件驅動;在板卡系統的核心態下設置板卡側硬件驅動,在板卡系統的用戶態下設置板卡控制單元和加速單元;API庫提供API函數,以控制板卡啟停音視頻加速處理;主機側硬件驅動與板卡側硬件驅動用于實現DMA數據傳輸方式;
(2)上層應用程序調用API庫提供的API函數,管理工具根據所調用的API函數向板卡控制單元發送音視頻處理的命令,板卡控制單元接收到音視頻處理的命令后,控制加速單元對音視頻數據進行解碼處理;要處理的音視頻數據通過主機側硬件驅動從主機緩存中讀取,然后傳送給板卡側硬件驅動,板卡側硬件驅動將要處理的音視頻數據傳送給加速單元,加速單元在將解碼后的結果數據傳送給板卡側硬件驅動,板卡側硬件驅動再傳送給主機側硬件驅動,最后由主機側硬件驅動將處理后的結果數據寫回內存。
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于國家計算機網絡與信息安全管理中心;北京賽思信安技術有限公司,未經國家計算機網絡與信息安全管理中心;北京賽思信安技術有限公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201410472027.0/1.html,轉載請聲明來源鉆瓜專利網。
- 上一篇:視頻分組播放的方法及系統
- 下一篇:一種音視頻文件下載方法及裝置





