[發明專利]數據包排序去抖方法及裝置在審
| 申請號: | 201410830305.5 | 申請日: | 2014-12-26 |
| 公開(公告)號: | CN104506455A | 公開(公告)日: | 2015-04-08 |
| 發明(設計)人: | 唐澤鵬;陳勇全;趙兵;鄭宏連;廖子強;符鎮一 | 申請(專利權)人: | 深圳市蘭丁科技有限公司 |
| 主分類號: | H04L12/861 | 分類號: | H04L12/861;H04L12/885 |
| 代理公司: | 深圳中一專利商標事務所 44237 | 代理人: | 張全文 |
| 地址: | 518000 廣東省深圳市南山區南海*** | 國省代碼: | 廣東;44 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 數據包 排序 方法 裝置 | ||
技術領域
本發明屬于通信技術領域,尤其涉及數據包排序去抖方法及裝置。
背景技術
現有的視頻直播或者點播技術主要是基于用戶數據包協議UDP來實現音視頻信號的傳輸,然而UDP的傳輸是不可靠的。H264編碼技術是一種新型高效的編碼方式,相對于H263技術,在相同視頻質量的情況下,H264所傳輸的數據量只是H263的一半。針對H264編碼技術,現有的數據包排序去抖方法主要是基于VoIP,然而這種排序去抖方案只適用于傳輸音頻數據,而不適用于傳輸視頻數據,且容易造成人為丟包的情況;排序時所使用的緩存數組的大小是固定的,影響用戶體驗,并且不能對所傳輸的數據進行校驗,容易造成解碼器的崩潰。
發明內容
鑒于此,本發明實施例提供一種數據包排序去抖方法及裝置,以解決現有音視頻傳輸方法導致的解碼器崩潰的問題,降低數據包的丟包率,保持NALU在結構上的完整性,減少NALU組建的復雜度以及動態調整緩存數組的大小。
第一方面,提供了一種數據包排序去抖方法,所述方法包括:
接收數據包;
在所接收到的數據包滿足入隊要求時,計算所述數據包在第一緩存數組中的位置,并將所述數據包存儲到所述位置上以完成數據包入隊;
在數據包入隊完成后,計算所述數據包的網絡抖動,并根據所述網絡抖動調整所述第一緩存數組的大小;
在第一緩存數據的大小調整結束后,若第二緩存數組中存在滿足入隊要求的數據包時,計算所述數據包在第一緩存數組中的位置,并將所述數據包存儲到所述位置上;
在第一緩存數組滿足出隊要求時,若出隊位置上有數據包時,對出隊位置上的數據包執行出隊操作;否則,在出隊位置上沒有數據包時,對出隊位置上的數據包進行恢復后執行出隊操作;
根據已出隊數據包組建網絡抽象層單元NALU。
第二方面,提供了一種數據包排序去抖裝置,所述裝置包括:
接收模塊,用于接收數據包;
第一入隊模塊,用于在所接收到的數據包滿足入隊要求時,計算所述數據包在第一緩存數組中的位置,并將所述數據包存儲到所述位置上以完成數據包入隊;
調整模塊,用于在數據包入隊完成后,計算所述數據包的網絡抖動,并根據所述網絡抖動調整所述第一緩存數組的大小;
第二入隊模塊,用于在第一緩存數據的大小調整結束后,若第二緩存數組中存在滿足入隊要求的數據包時,計算所述數據包在第一緩存數組中的位置,并將所述數據包存儲到所述位置上;
出隊模塊,用于在第一緩存數組滿足出隊要求時,若出隊位置上有數據包時,對出隊位置上的數據包執行出隊操作;否則,在出隊位置上沒有數據包時,對出隊位置上的數據包進行恢復后執行出隊操作;
組建模塊,用于根據已出隊數據包組建網絡抽象層單元NALU。
與現有技術相比,本發明實施例增加了第二緩存數組用于暫存提前到達但不符合入隊要求的數據包;在所接收到的數據包滿足入隊要求時,計算所述數據包在第一緩存數組中的位置,并將所述數據包存儲到所述位置上以完成數據包入隊;在所述數據包入隊完成后,計算所述數據包的網絡抖動,并根據所述抖動調整所述第一緩存數組的大小;在第一緩存數據的大小調整結束后,若第二緩存數組中存在滿足入隊要求的數據包時,計算所述數據包在第一緩存數組中的位置,并將所述數據包存儲到所述位置上;在第一緩存數組滿足出隊要求時,若出隊位置上有數據包時,對出隊位置上的數據包執行出隊操作;否則,在出隊位置上沒有數據包時,對出隊位置上的數據包進行恢復后執行出隊操作;根據已出隊數據包組建網絡抽象層單元NALU;從而實現了數據包的有序排列,并且所述第二緩存數組中暫存提前到達但不符合入隊要求的數據包,避免了人為丟包,在丟包量大的情況下能夠極大地降低數據包在傳輸過程中的丟包率;本發明還實現了動態調整緩存數組的大小,進一步提升了用戶體驗;且在組建網絡抽象層單元NALU的過程中通過恢復丟失的數據包保證了NALU在數據結構上的完整性,減少了NALU組建的復雜度。
附圖說明
圖1是本發明實施例一提供的數據包排序去抖方法的第一實現流程圖;
圖2是本發明實施例二提供的數據包排序去抖方法中數據包入隊操作的實現流程圖;
圖3是本發明實施例三提供的數據包排序去抖方法中數據包出隊操作的實現流程圖;
圖4是本發明實施例三提供的數據包排序去抖方法中數據包出隊操作過程中步驟S302的具體實現流程圖;
圖5是本發明實施例四提供的數據包排序去抖裝置的組成結構圖。
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于深圳市蘭丁科技有限公司,未經深圳市蘭丁科技有限公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201410830305.5/2.html,轉載請聲明來源鉆瓜專利網。





