[發明專利]一種調節發送緩沖數據量的視頻流量控制方法在審
| 申請號: | 201711120887.8 | 申請日: | 2017-11-14 |
| 公開(公告)號: | CN107809682A | 公開(公告)日: | 2018-03-16 |
| 發明(設計)人: | 張洋 | 申請(專利權)人: | 北京威速科技有限公司 |
| 主分類號: | H04N21/647 | 分類號: | H04N21/647;H04L12/875;H04L12/823 |
| 代理公司: | 暫無信息 | 代理人: | 暫無信息 |
| 地址: | 100085 北京市海*** | 國省代碼: | 北京;11 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 一種 調節 發送 緩沖 數據量 視頻 流量 控制 方法 | ||
技術領域
本發明涉及視頻流量控制方法領域,尤其是一種調節發送緩沖數據量的視頻流量控制方法。
背景技術
計算機發送視頻數據時,會出現數據量超出鏈路帶寬能力的情況。為了使數據量與帶寬匹配,發送端需要適當減小輸出的數據量,即流量控制。
流量控制首先需要知道數據鏈路的帶寬。以往的帶寬估計方法是每次發送數據時,計算從開始發送到完成發送的時間間隔,作為每次的發送用時。單位時間內,把每次發送的數據字節數和每次的發送用時累加,然后二者相除,得到當時的帶寬。但是這種帶寬估計方法在多線程情況下,有可能得到比實際帶寬偏小的結果。原因在于計算發送用時的時候,由于線程切換,計入了多余的時間。多線程情況下,只有操作系統給線程分配了時間片,函數才會被調用。發送開始函數與發送完成函數的調用發生在不同線程之中。如果發生下面這種情況:數據已發送完成,但執行發送完成函數的線程由于沒分配到時間片而在休眠,就會在發送用時當中計入線程的休眠時間。
發明內容
本發明的目的在于克服以上存在的技術問題,提供一種調節發送緩沖數據量的視頻流量控制方法。
為實現上述目的,本發明的技術方案是以下述方式實現的:
一種調節發送緩沖數據量的視頻流量控制方法,包括以下步驟:
S1:首先將準備要發送的視頻數據被送入發送緩沖區,發送緩沖區的視頻數據在數據鏈路空閑時,被取出發送。
S2::每次視頻數據被送入到發送緩沖區時,統計發送緩沖區的數據量和數據增長速度。
S3:然后再定期根據數據增長速度,判斷是否需要進行流量控制。
S4:如果需要流量控制時,根據視頻數據格式,按刪除規則刪除適量數據,從而減少數據量。
進一步地,上述步驟S1中的視頻數據按數據包分包被送入發送緩沖區,一個或多個數據包屬于一個視頻幀;多個視頻幀屬于一個視頻序列,視頻序列和視頻幀分別按順序編號,發送緩沖區中的第一級為視頻序列,按編號順序排列;第二級為每個視頻序列的視頻幀,按幀編號順序排列;第三級為每個視頻幀的數據包,按包編號順序排列。
進一步地,上述步驟S2中的數據量按字節統計,所述數據增長速度按字節每秒統計。
進一步地,上述步驟S3中的定期時間間隔為500毫秒,如果連續3次發現發送緩沖區的數據量持續增長,且增長速度都大于零,則需要進行流量控制。
進一步地,上述步驟S4中的視頻數據格式指視頻序列的第一幀為獨立解碼播放的關鍵幀,后續幀為非關鍵幀,每個非關鍵幀只參考前一幀;刪除規則為按編號從后向前逐幀刪除。。
本發明能夠更加準確地計算發送帶寬,在等同時間內可以發送更多地數據,這樣有效地提高了帶寬的利用率,同時減少了視頻數據發送過程中的堆積量,降低了數據發送延時。
附圖說明
圖1:本發明調節發送緩沖數據量的視頻流量控制方法的工作流程圖。
具體實施方式
下面結合附圖及實施例對本發明進行詳細說明。
如圖1所示,一種調節發送緩沖數據量的視頻流量控制方法,
在步驟401中,發送線程開始運行。
在步驟402中,有視頻數據包輸入,需要發送線程處理。
在步驟403中,按視頻數據包的序列號,從緩沖區中獲取相應的視頻序列對象。例如,序列號為1的第一包數據到來時,此時緩沖區中還沒有序列號為1的視頻序列對象,那么就新建一個序列對象并設置其序列號為1。序列號為1的后續數據包到來時,則找到之前已創建的序列對象。
在步驟404中,檢查獲取到的視頻序列對象是否已經發生過流量控制。如果沒發生過,則繼續下面步驟;如果發生過,則轉到步驟402。例如,一個視頻序列包含10個幀,在第8幀時發生了流量控制,刪除了該幀,那么第9幀以后的數據,都不再插入此視頻序列對象,直接轉到步驟402。直到下一個視頻序列的數據包到來后,緩沖區創建新的序列對象,才執行下面步驟。
在步驟405中,按視頻數據包的幀號,從緩沖區中獲取相應的視頻幀對象。比如,幀號為1的第一包數據到來時,此時當前序列對象中還沒有幀號為1的幀對象,那么就新建一個幀對象并設置其幀號為1,并把它加入到當前視頻序列對象中。幀號為1的后續數據包到來時,則找到之前已創建的幀對象。
在步驟406中,把視頻數據包,加入到視頻幀對象中。按包編號順序排列。
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于北京威速科技有限公司,未經北京威速科技有限公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201711120887.8/2.html,轉載請聲明來源鉆瓜專利網。
- 上一篇:切片視頻傳輸的方法及裝置
- 下一篇:一種基于瀏覽器無插件的直播系統及方法





