視頻傳輸方法及設備的制作方法
【專利摘要】本發明公開了網絡通信【技術領域】的視頻傳輸方法及設備。本發明分別通過視頻數據包是否丟失、用戶發來的視頻業務類型請求、視頻數據包的類型和網絡是否達到擁塞閾值等步驟對是否重傳視頻數據進行判斷。本發明根據視頻業務類型、視頻數據包類型及網絡狀況對視頻進行選擇性重傳視頻數據包,減小了網絡負荷,在保證視頻播放流暢性的同時最大限度的保證了視頻數據的準確性。
【專利說明】視頻傳輸方法及設備
【技術領域】
[0001]本發明涉及網絡通信【技術領域】,特別涉及應用于網絡視頻監控系統的視頻傳輸方法及設備。
【背景技術】
[0002]網絡視頻監控系統包含客戶端、視頻監控平臺和視頻監控前端,前端采集視頻發給視頻監控平臺,客戶端從視頻監控平臺請求視頻流。視頻監控前端由模擬發展為數字,由標清發展為高清。
[0003]在現有的主流視頻監控系統中,均需要支持清晰度越來越高的攝像機,如720P、1080P的攝像機。這樣就帶來了對網絡帶寬的要求越來越高。常見的問題有:
[0004]客戶端的視頻存在卡頓、短暫中斷等不夠流暢;
[0005]客戶端視頻關鍵信息不夠清晰(如車牌字符、人臉頭像);
[0006]對于用戶在觀看實時視頻時,用戶最關心的是流暢不中斷,非關鍵區域小的馬賽克并不會對整體監控效果產生影響。
[0007]對于用戶在觀看錄像視頻或者是播放下載的錄像視頻時,最關心的是視頻是否清晰,不清楚的視頻在下載時需要重傳以滿足用戶對清晰度的要求,否則在使用視頻時會造成對關鍵事件的誤判。
[0008]從用戶使用視頻的作用來看,視頻監控領域使用的視頻可以分為兩種類型:
[0009]實時視頻一需要對視頻做實時處理以對用戶產生實時的告警,以提高事件處理的及時性和有效性,這種要求視頻實時性更好。如:視頻會議、智能分析中的行為分析;
[0010]錄像視頻---需要對視頻做事后處理以對已發生事件做出判斷依據,這種要求視頻的質量更高。如公安行業對某一件案件的偵破,需要對某一場景下的視頻做多種處理。
[0011]在視頻監控領域中,傳輸視頻流的協議有可靠的傳輸控制協議TCP(Transmiss1nControl Protocol)協議和不可靠的用戶數據包協議UDP (User Datagram Protocol)協議。
[0012]為了保證在傳輸視頻流時能使用到兩個協議的優點,目前使用較為廣泛的方式是:在UDP協議中引入自動重傳請求ARQ (Automatic Repeat Request)機制。UDP協議是一個無連接協議,傳輸數據之前源端和終端不需要建立連接,當需要傳送數據時就從源端抓取數據,并盡可能的把數據包扔到網絡上。ARQ是通過接收方請求發送方重傳出錯的數據來恢復出錯數據報文。這樣就可以在保證傳輸速度的同時保證傳輸質量。
[0013]現有技術方案在編碼端需要做如下事情:
[0014]1.讀取重傳請求信息和數據信息單元;
[0015]2.將數據信息單元中的視頻流打包后發送到解碼端,并計算包重要性;
[0016]3.統計包重要性的分布函數;
[0017]4.計算重傳門限值,根據發送速率、丟包率、網絡可承載的數據包速率等因素來計算;
[0018]5.判斷是否重傳丟包,若丟包的包重要性值大于重傳門限值,則重傳,否則不重傳;
[0019]在解碼端需要做如下事情:
[0020]1.檢測是否有丟包,若在時延范圍內沒有收到包,則認為該包已丟失,否則認為沒有丟包,進行解碼封裝和視頻解碼;
[0021]2.如果判斷該包丟失,則將丟包的包序號作為重傳請求發送到編碼端
[0022]現有技術的缺點如下:
[0023]1.在編碼端需要實現統計包重要性、重傳門限值、判斷是否重傳等功能,對于編碼端的性能要求很高,也造成了成本高
[0024]2.對于采用包重要性大于重傳門限值來判斷丟包是否需要重傳,僅僅包重要性一個方面來考慮,比較片面;
[0025]3.對于產生了丟包但是由于包重要性小于重傳門限值引起的沒有重傳的分組直接忽略會造成某幀無法解碼或者在解碼后出現馬賽克情況。
【發明內容】
[0026]本發明實施例提供了視頻傳輸方法及系統,以解決現有視頻傳輸技術存在的無法根據用戶的視頻需求提供視頻、設備成本高等不足。
[0027]為了解決上述技術問題,本發明實施例公開了如下技術方案:
[0028]第一方面,提供了一種視頻傳輸方法,其特征是,該方法包括以下步驟:
[0029]視頻監控設備檢測接收的視頻數據包是否丟失;
[0030]視頻監控設備在視頻數據包丟失的情況下查詢用戶發來的視頻業務類型請求;若視頻業務類型請求為錄像類型,則向視頻源設備發出重傳丟失的視頻數據包的請求;
[0031]視頻監控設備在視頻業務類型請求為實時類型的情況下查詢丟失的視頻數據包的類型;若視頻數據包的類型為I幀數據,則視頻監控設備向視頻源設備發出重傳丟失的視頻數據包的請求;
[0032]視頻監控設備在視頻數據包的類型不為I幀數據的情況下查詢網絡是否達到擁塞閾值;若網絡沒有達到擁塞閾值,則向視頻源設備發出重傳丟失的視頻數據包的請求;
[0033]視頻監控設備在網絡達到擁塞閾值的情況下計算丟失的視頻數據包,并向視頻播放單元發送視頻播放通知。
[0034]在第一方面的第一種可能的實現方式中,所述視頻業務類型請求包括:實時瀏覽、實時錄像、錄像下載或錄像回放。
[0035]在第一方面的第二種可能的實現方式中,所述丟失的視頻數據包的計算公式為:
[0036]Xi=avg (X1+...+X1-JXw+…Xn)
[0037]其中:
[0038]Xi為丟失的X幀的第i個視頻數據包,η為X幀的視頻數據包的總數;
[0039]avg為求均值操作。
[0040]第二方面,提供了一種視頻傳輸方法,其特征是,該方法包括以下步驟:
[0041]視頻源設備對視頻源按幀進行編碼,得到視頻幀;
[0042]視頻源設備對所述視頻幀進行分包,得到視頻數據包;
[0043]視頻源設備將所述視頻數據包發送給視頻監控設備,并根據所述視頻監控設備發來的重傳請求發送重傳請求對應的視頻數據包。
[0044]在第二方面的第一種可能的實現方式中,所述視頻源設備對視頻源按幀進行編碼,得到視頻幀具體為:
[0045]視頻源設備對將視頻源分解為獨立的視頻幀,對獨立的視頻幀按時間先后順序進行編碼,得到視頻幀。
[0046]在第二方面的第二種可能的實現方式中,所述視頻源設備對所述視頻幀進行分包,得到視頻數據包具體為:
[0047]視頻源設備將視頻幀按預設大小分成視頻數據包,并對屬于同一個視頻幀的視頻數據包進行編碼。
[0048]在第二方面的第三種可能的實現方式中,所述視頻源設備將所述視頻數據包發送給視頻監控設備,并根據所述視頻監控設備發來的重傳請求發送重傳請求對應的視頻數據包具體為:
[0049]視頻源設備以視頻數據包的形式將視頻源發送給視頻監控設備;視頻監控設備將需要重傳的視頻數據包的信息發送給視頻源設備,視頻源設備根據視頻數據包的信息,將對應的視頻數據包或該視頻數據包對應的視頻幀發送給視頻監控設備。
[0050]第三方面,提供了一種視頻傳輸設備,其特征是,該設備包括:
[0051]丟失檢測單元,用于檢測接收的視頻數據包是否丟失;
[0052]視頻業務類型查詢單元,用于在視頻數據包丟失的情況下查詢用戶發來的視頻業務類型請求;若視頻業務類型請求為錄像類型,則向視頻源設備發出重傳丟失的視頻數據包的請求;
[0053]視頻數據包查詢單元,用于在視頻業務類型請求為實時類型的情況下查詢丟失的視頻數據包的類型;若視頻數據包的類型為I幀數據,則視頻監控設備向視頻源設備發出重傳丟失的視頻數據包的請求;
[0054]網絡查詢單元,用于在視頻數據包的類型不為I幀數據的情況下查詢網絡是否達到擁塞閾值;若網絡沒有達到擁塞閾值,則向視頻源設備發出重傳丟失的視頻數據包的請求;
[0055]視頻數據包計算單元,用于在網絡達到擁塞閾值的情況下計算丟失的視頻數據包,并向視頻播放單元發送視頻播放通知。
[0056]在第三方面的第一種可能的實現方式中,所述丟失檢測單元還包括:
[0057]計數器,用于對丟失的視頻數據包進行計數。
[0058]在第三方面的第二種可能的實現方式中,所述網絡查詢單元還包括:
[0059]報警器,用于網絡達到擁塞閾值時發出報警信號。
[0060]第四方面,提供了一種視頻傳輸設備,其特征是,該設備包括:
[0061]編碼單元,用于對視頻源按幀進行編碼,得到視頻幀;
[0062]分包單元,用于對所述視頻幀進行分包,得到視頻數據包;
[0063]視頻數據包發送單元,用于將所述視頻數據包發送給視頻監控設備,并根據所述視頻監控設備發來的重傳請求發送重傳請求對應的視頻數據包。
[0064]在第四方面的第一種可能的實現方式中,所述編碼單元包括:
[0065]拆分器,用于將視頻源分解為獨立的視頻幀。
[0066]在第四方面的第二種可能的實現方式中,所述編碼單元包括:
[0067]編碼器,用于對所述獨立的視頻幀按時間先后順序進行編碼。
[0068]本發明實施例中,通過查詢用戶發來的視頻類型請求,清楚地知道了用戶的視頻選擇;
[0069]通過查詢丟失的視頻包的類型選擇性重傳重要的視頻包,既簡化了步驟,又保證了實時視頻的流暢顯示,增強了用戶體驗;
[0070]通過查詢網絡是否達到擁塞閾值,選擇性對視頻包進行重傳,減小了網絡負荷,提高了視頻播放的流暢性。
【專利附圖】
【附圖說明】
[0071]為了更清楚地說明本發明實施例或現有技術中的技術方案,下面將對實施例或現有技術描述中所需要使用的附圖作一簡單地介紹,顯而易見地,下面描述中的附圖是本發明的一些實施例,對于本領域普通技術人員來講,在不付出創造性勞動的前提下,還可以根據這些附圖獲得其他的附圖。
[0072]圖1是本發明的第一種視頻傳輸方法的流程圖;
[0073]圖2是本發明的第二種視頻傳輸方法的流程圖;
[0074]圖3是本發明的第一種視頻傳輸設備的結構示意圖;
[0075]圖4是本發明的第二種視頻傳輸設備的結構示意圖;
[0076]圖5是本發明實施例的結構圖。
【具體實施方式】
[0077]為使本發明實施例的目的、技術方案和優點更加清楚,下面將結合本發明實施例中的附圖,對本發明實施例中的技術方案進行清楚地描述,顯然,所描述的實施例是本發明一部分實施例,而不是全部的實施例。基于本發明中的實施例,本領域普通技術人員在沒有做出創造性勞動前提下所獲得的所有其他實施例,都屬于本發明保護的范圍。
[0078]為了解決現有視頻傳輸技術存在的無法根據用戶的視頻需求提供視頻、設備成本高等不足。本發明提出了視頻傳輸方法及設備。
[0079]本發明的一種視頻傳輸方法的流程圖如圖1所示,包括以下步驟:
[0080]視頻監控設備檢測接收的視頻數據包是否丟失,若視頻數據包沒有丟失,則向視頻播放單元發送視頻播放通知;其中,檢測視頻數據包是否丟失具體為:按視頻數據包的編碼逐個檢測視頻數據包是否丟失,若發現對應編碼的視頻數據包缺失或所述編碼順序出現混亂,則視為視頻數據包發生丟失;
[0081]否則,若視頻數據包出現丟失,視頻監控設備查詢用戶發來的視頻業務類型(gp,包括實時瀏覽和實時錄像的實時類型以及包括錄像下載和錄像回放錄像類型)請求;若視頻業務類型請求為錄像類型,則向視頻源設備發出重傳丟失的視頻數據包的請求;
[0082]否則,視頻業務類型請求為實時請求,視頻監控設備查詢丟失的視頻數據包的類型;若視頻數據包的類型為I幀數據,則視頻監控設備向視頻源設備發出重傳丟失的視頻數據包的請求;
[0083]否則,視頻數據包的類型不為I幀數據,視頻監控設備查詢視頻數據包類型不為I幀數據時網絡是否達到擁塞閾值;若網絡沒有達到擁塞閾值,則向視頻源設備發出重傳丟失的視頻數據包的請求;
[0084]否則,網絡達到擁塞閾值,視頻監控設備計算丟失的視頻數據包,并向視頻播放單元發送視頻播放通知。
[0085]其中,丟失的視頻數據包的計算公式為:
[0086]Xi=avg (父!+…+Xh+Xh+...Xn)
[0087]其中:
[0088]Xi為丟失的X幀的第i個視頻數據包,η為X幀的視頻數
[0089]據包的總數;
[0090]avg為求均值操作。
[0091]對應的視頻傳輸設備的結構示意圖如圖3所示,該設備包括:
[0092]丟失檢測單元1,用于檢測接收的視頻數據包是否丟失,若視頻數據包沒有丟失,則向視頻播放單元發送視頻播放通知;其中,檢測視頻數據包是否丟失具體為:按視頻數據包的編碼逐個檢測視頻數據包是否丟失,若發現對應編碼的視頻數據包缺失或所述編碼順序出現混亂,則視為視頻數據包發生丟失;丟失檢測單元I包括計數器,用于對丟失的視頻數據包進行計數。
[0093]視頻業務類型查詢單元2,用于在視頻數據包丟失的情況下查詢用戶發來的視頻業務類型請求;若視頻業務類型請求為錄像類型,則向視頻源設備發出重傳丟失的視頻數據包的請求;
[0094]視頻數據包查詢單元3,用于在視頻業務類型請求為實時類型的情況下查詢丟失的視頻數據包的類型;若視頻數據包的類型為I幀數據,則視頻監控設備向視頻源設備發出重傳丟失的視頻數據包的請求;
[0095]網絡查詢單元4,用于在視頻數據包的類型不為I幀數據的情況下查詢網絡是否達到擁塞閾值;若網絡沒有達到擁塞閾值,則向視頻源設備發出重傳丟失的視頻數據包的請求;網絡查詢單元4還包括報警器,用于網絡達到擁塞閾值時發出報警信號。
[0096]視頻數據包計算單元5,用于在網絡達到擁塞閾值的情況下計算丟失的視頻數據包,并向視頻播放單元發送視頻播放通知。
[0097]本發明的另一種視頻傳輸方法,其特征是,該方法包括以下步驟:
[0098]視頻源設備對視頻源按幀進行編碼,得到視頻幀;具體為:
[0099]視頻源設備對將視頻源分解為獨立的視頻幀,對獨立的視頻幀按時間先后順序進行編碼,得到視頻幀。
[0100]視頻源設備對所述視頻幀進行分包,得到視頻數據包;具體為:
[0101]視頻源設備將視頻幀按預設大小分成視頻數據包,并對屬于同一個視頻幀的視頻數據包進行編碼。
[0102]視頻源設備將所述視頻數據包發送給視頻監控設備,并根據所述視頻監控設備發來的重傳請求發送重傳請求對應的視頻數據包。具體為:
[0103]視頻源設備以視頻數據包的形式將視頻源發送給視頻監控設備;視頻監控設備將需要重傳的視頻數據包的信息發送給視頻源設備,視頻源設備根據視頻數據包的信息,將對應的視頻數據包或該視頻數據包對應的視頻幀發送給視頻監控設備。
[0104]對應的視頻傳輸設備的結構示意圖如圖4所示,該設備包括:
[0105]編碼單元6,用于對視頻源按幀進行編碼,得到視頻幀;所述編碼單元6包括:拆分器,用于將視頻源分解為獨立的視頻幀;編碼器,用于對所述獨立的視頻幀按時間先后順序進行編碼。
[0106]分包單元7,用于對所述視頻幀進行分包,得到視頻數據包;
[0107]視頻數據包發送單元8,用于將所述視頻數據包發送給視頻監控設備,并根據所述視頻監控設備發來的重傳請求發送重傳請求對應的視頻數據包;
[0108]所述編碼單元6和分包單元7連接;分包單元7和視頻數據包發送單元8連接。
[0109]以下通過一個實施例對本發明進行說明:
[0110]視頻監控系統由視頻源設備,視頻監控設備(包括存儲),以及客戶端組成:視頻源設備包含網絡攝像機、模擬攝像機、編碼器、數字視頻錄像機DVR (Digital VideoRecorder)等設備,負責將現場圖像壓縮編碼成媒體流以便網絡傳輸。視頻監控設備包括管理服務器、媒體服務器、平臺軟件和磁盤陣列等。客戶端設備負責運行客戶端軟件,連接到服務器后,可選擇不同的業務,例如:實況瀏覽、實時錄像、錄像下載、錄像回放等。
[0111]視頻源設備需要做的事情如下:
[0112]1.對視頻源進行編碼,并對每一幀編碼數據進行分包;
[0113]2.在一定時間內,當收到視頻監控設備發出的重傳請求時,將緩存中的需要重傳的視頻包重傳;
[0114]視頻監控平臺需要做如下事情:
[0115]1.檢測收到的視頻數據包是否有丟包情況,如果沒有丟包,則執行步驟7,如果有丟包,則執行步驟2;
[0116]2.檢測客戶端發出的視頻業務類型請求,是屬于實時視頻類型還是錄像視頻類型,如果是實時視頻類型,則執行步驟3,如果是錄像視頻,則執行步驟5 ;
[0117]3.檢測視頻數據包是屬于I幀數據還是P幀數據,如果是I幀數據,則執行步驟5,如果不是I幀數據,則執行步驟4 ;
[0118]4.檢測網絡擁塞情況是否達到預設的擁塞閾值,如果沒達到擁塞閾值,則執行步驟5,如果達到了擁塞閾值,則執行步驟6 ;
[0119]5.請求重傳丟包數據;
[0120]6.使用緩存的視頻包來計算丟失的視頻包;
[0121]7.緩存數據,播放視頻;
[0122]假設X來代表一幀數據,并且該幀數據被分成η個視頻數據包,用Xi來代表X幀第i個數據包(I ( i ( n),使用Kj來表示j時刻的網絡擁塞情況,網絡擁塞的閾值使用A來表示,P幀數據使用P來表示,I幀數據使用I來表示。
[0123]需要重傳的條件見公式(I),不需要重傳的條件見公式(2),不重傳時計算出來的丟包數據為公式(3)。
[0124]Xel OR Kj 彡 A (I)
[0125]公式(I)說明:X幀數據屬于I幀數據或者當前時刻網絡擁塞情況小于等于閾值。
[0126]X e P OR Kj>A (2)
[0127]公式(2)說明:X幀數據屬于P幀數據或者當前時刻網絡擁塞情況大于閾值。
[0128]Xi=Bvg (X1+- +Xh+Xh+...Xn) X e P ⑶
[0129]公式(3)說明:使用緩存的X幀數據平均值計算丟包數據Xi。
[0130]舉例如下:
[0131]一、用戶在客戶端選擇錄像視頻業務,視頻監控平臺從前端取視頻流,傳送到客戶端供用戶觀看。在觀看過程中,平臺檢測到了視頻數據丟包情況,假設閾值A為80,如下:
[0132]1.第5幀數據中丟失了第8個視頻數據包,并且該幀數據屬于I幀數據,一共被編碼分為了 200個視頻數據包,網絡擁塞情況K5在50-60區間擺動;
[0133]2.第7幀數據丟失了第10和第15個視頻數據包,并且該幀屬于P幀數據,一共被編碼分成了 50個視頻數據包,K7在80-90區間擺動;
[0134]3.第17幀數據丟失了第13和第18兩個視頻數據包,該幀屬于P幀數據,一共被編碼分成45個視頻數據包,K17在40-50區間擺動;
[0135]4.第34幀數據丟失了第14、第23、第33等三個視頻數據包,該幀屬于I幀數據,一共被編碼分成了 280個視頻數據包,K34在80-90區間擺動;
[0136]處理策略如下:
[0137]1.第5幀的第8個視頻包請求視頻源設備重傳;
[0138]2.第7幀的第10和第15個視頻包不需要重傳,并且
(X +...+ X +X +...+ X +X +...+ χ )
[0139]X = X -TA9-1-^,
10 _ 丨5_48,
[0140]3.第17幀的第13和第18兩個視頻包請求視頻源設備重傳;
[0141]4.第34幀的第14、第23、第33三個視頻包需要重傳;
[0142]二、用戶在客戶端選擇實時視頻業務,視頻監控平臺從前端取視頻流,傳送到平臺進行錄像。在錄像過程中,平臺檢測到了視頻包丟包情況,假設閾值A為80,如下:
[0143]1.第5幀數據中丟失了第8個視頻數據包,并且該幀數據屬于I幀數據,一共被編碼分為了 200個視頻數據包,網絡擁塞情況K5在50-60區間擺動;
[0144]2.第7幀數據丟失了第10和第15個視頻數據包,并且該幀屬于P幀數據,一共被編碼分成了 50個視頻數據包,K7在80-90區間擺動;
[0145]3.第17幀數據丟失了第13和第18兩個視頻數據包,該幀屬于P幀數據,一共被編碼分成45個視頻數據包,K17在40-50區間擺動;
[0146]4.第34幀數據丟失了第14、第23、第33等三個視頻包,該幀屬于I幀數據,一共被編碼分成了 280個視頻數據包,K34在80-90區間擺動;
[0147]處理策略如下:
[0148]1.第5幀的第8個視頻包請求視頻源設備重傳;
[0149]2.第7幀的第10和第15個視頻包需要重傳;
[0150]3.第17幀的第13和第18兩個視頻包請求視頻源設備重傳;
[0151]4.第34幀的第14、第23、第33三個視頻包需要重傳;
[0152]這樣的處理策略考慮了包重要性、網絡擁塞情況、及用戶業務場景。
[0153]對應本發明裝置的組成連接關系如下:
[0154]視頻源設備包括編碼單元6、分包單元7和視頻數據包發送單元8。所述編碼單元6和分包單元7連接;分包單元7和視頻數據包發送單元8連接。
[0155]客戶端包括控制單元9和視頻播放單元10。
[0156]視頻監控設備包括丟失檢測單元1、視頻業務類型查詢單元2、視頻數據包查詢單元3、網絡查詢單元4和視頻數據包計算單元5。丟失檢測單元I分別與視頻業務類型查詢單元2、視頻數據包發送單元8和視頻播放單元10連接;視頻業務類型查詢單元2分別與視頻數據包查詢單元3、視頻數據包發送單元8和控制單元9連接;視頻數據包查詢單元3分別與網絡查詢單元4和視頻數據包發送單元8連接;網絡查詢單元4分別與視頻數據包發送單元8和視頻數據包計算單元5連接;視頻數據包計算單元5和視頻播放單元10連接。
[0157]首先,視頻源設備通過編碼單元6用于對視頻源按幀進行編碼,得到視頻幀;分包單元7對所述視頻幀進行分包,得到視頻數據包;視頻數據包發送單元8將所述視頻數據包發送給視頻監控設備,并根據所述視頻監控設備發來的重傳請求發送重傳請求對應的視頻數據包;
[0158]然后,視頻監控設備的丟失檢測單元I檢測來自視頻包發送單元8的視頻數據包是否丟失,若視頻數據包沒有丟失,則向客戶端的視頻播放單元10發送視頻播放通知;若視頻數據包有丟失情況,則通過視頻業務類型查詢單元2查詢客戶端的控制單元9發來的視頻業務類型請求;若視頻業務類型請求為錄像類型,則向視頻數據包發送單元8發出重傳丟失的視頻包的請求,視頻數據包發送單元8根據請求將相應的視頻數據包重新發送給丟失檢測單元I ;若視頻業務類型請求為實時類型,則通過視頻數據包查詢單元3查詢丟失的視頻數據包的類型;若視頻數據包的類型為I幀數據,則向視頻數據包發送單元8發出重傳丟失的視頻數據包的請求,否則,視頻數據包查詢單元3向網絡查詢單元4發出網絡狀態查詢請求;網絡查詢單元4查詢網絡是否達到擁塞閾值,若沒有達到擁塞閾值,則向視頻數據包發送單元8發出重傳丟失的視頻數據包的請求,否則,網絡查詢單元4向通過視頻數據包計算單元5發出計算視頻數據包的請求,視頻數據包計算單元5根據其他視頻數據包計算丟失的視頻數據包,并通過視頻播放單元10進行播放。
[0159]本發明對于用戶的不同業務類型,有不同的處理方式,更加符合用戶對視頻質量的需求;對于視頻中重要的I幀,重傳才能保證視頻的真實性,才能滿足用戶對視頻的真實性需求;對于視頻中的P幀,在網絡情況不好的時候,使用錯誤遮蔽的方式可以減輕網絡擁塞狀況,而且能夠保證不丟失視頻流中重要信息。
[0160]本領域普通技術人員將會理解,本發明的各個方面、或各個方面的可能實現方式可以被具體實施為系統、方法或者計算機程序產品。因此,本發明的各方面、或各個方面的可能實現方式可以采用完全硬件實施例、完全軟件實施例(包括固件、駐留軟件等等),或者組合軟件和硬件方面的實施例的形式,在這里都統稱為“電路”、“模塊”或者“系統”。此夕卜,本發明的各方面、或各個方面的可能實現方式可以采用計算機程序產品的形式,計算機程序產品是指存儲在計算機可讀介質中的計算機可讀程序代碼。
[0161]計算機可讀介質可以是計算機可讀信號介質或者計算機可讀存儲介質。計算機可讀存儲介質包含但不限于電子、磁性、光學、電磁、紅外或半導體系統、設備或者裝置,或者前述的任意適當組合,如隨機存取存儲器(RAM)、只讀存儲器(ROM)、可擦除可編程只讀存儲器(EPROM或者快閃存儲器)、光纖、便攜式只讀存儲器(CD-ROM)。
[0162]計算機中的處理器讀取存儲在計算機可讀介質中的計算機可讀程序代碼,使得處理器能夠執行在流程圖中每個步驟、或各步驟的組合中規定的功能動作;生成實施在框圖的每一塊、或各塊的組合中規定的功能動作的裝置。
[0163]計算機可讀程序代碼可以完全在用戶的計算機上執行、部分在用戶的計算機上執行、作為單獨的軟件包、部分在用戶的計算機上并且部分在遠程計算機上,或者完全在遠程計算機或者服務器上執行。也應該注意,在某些替代實施方案中,在流程圖中各步驟、或框圖中各塊所注明的功能可能不按圖中注明的順序發生。例如,依賴于所涉及的功能,接連示出的兩個步驟、或兩個塊實際上可能被大致同時執行,或者這些塊有時候可能被以相反順序執行。
[0164]顯然,本領域的技術人員可以對本發明進行各種改動和變型而不脫離本發明的精神和范圍。這樣,倘若本發明的這些修改和變型屬于本發明權利要求及其等同技術的范圍之內,則本發明也意圖包含這些改動和變型在內。
【權利要求】
1.一種視頻傳輸方法,其特征是,該方法包括以下步驟: 視頻監控設備檢測接收的視頻數據包是否丟失; 視頻監控設備在視頻數據包丟失的情況下查詢用戶發來的視頻業務類型請求;若視頻業務類型請求為錄像類型,則向視頻源設備發出重傳丟失的視頻數據包的請求; 視頻監控設備在視頻業務類型請求為實時類型的情況下查詢丟失的視頻數據包的類型;若視頻數據包的類型為I幀數據,則視頻監控設備向視頻源設備發出重傳丟失的視頻數據包的請求; 視頻監控設備在視頻數據包的類型不為I幀數據的情況下查詢網絡是否達到擁塞閾值;若網絡沒有達到擁塞閾值,則向視頻源設備發出重傳丟失的視頻數據包的請求; 視頻監控設備在網絡達到擁塞閾值的情況下計算丟失的視頻數據包,并向視頻播放單元發送視頻播放通知。
2.如權利要求1所述的方法,其特征是,所述視頻業務類型請求包括:實時瀏覽、實時錄像、錄像下載或錄像回放。
3.如權利要求1所述的方法,其特征是,所述丟失的視頻數據包的計算公式為: Xi=Bvg(X^MX1-AXiZ-Xn) 其中: Xi為丟失的X幀的第i個視頻數據包,η為X幀的視頻數據包的總數; avg為求均值操作。
4.一種視頻傳輸方法,其特征是,該方法包括以下步驟: 視頻源設備對視頻源按幀進行編碼,得到視頻幀; 視頻源設備對所述視頻幀進行分包,得到視頻數據包; 視頻源設備將所述視頻數據包發送給視頻監控設備,并根據所述視頻監控設備發來的重傳請求發送重傳請求對應的視頻數據包。
5.如權利要求4所示的方法,其特征是,所述視頻源設備對視頻源按幀進行編碼,得到視頻巾貞具體為: 視頻源設備對將視頻源分解為獨立的視頻幀,對獨立的視頻幀按時間先后順序進行編碼,得到視頻幀。
6.如權利要求4所示的方法,其特征是,所述視頻源設備對所述視頻幀進行分包,得到視頻數據包具體為: 視頻源設備將視頻幀按預設大小分成視頻數據包,并對屬于同一個視頻幀的視頻數據包進行編碼。
7.如權利要求6所示的方法,其特征是,所述視頻源設備將所述視頻數據包發送給視頻監控設備,并根據所述視頻監控設備發來的重傳請求發送重傳請求對應的視頻數據包具體為: 視頻源設備以視頻數據包的形式將視頻源發送給視頻監控設備;視頻監控設備將需要重傳的視頻數據包的信息發送給視頻源設備,視頻源設備根據視頻數據包的信息,將對應的視頻數據包或該視頻數據包對應的視頻幀發送給視頻監控設備。
8.一種視頻傳輸設備,其特征是,該設備包括: 丟失檢測單元,用于檢測接收的視頻數據包是否丟失; 視頻業務類型查詢單元,用于在視頻數據包丟失的情況下查詢用戶發來的視頻業務類型請求;若視頻業務類型請求為錄像類型,則向視頻源設備發出重傳丟失的視頻數據包的請求; 視頻數據包查詢單元,用于在視頻業務類型請求為實時類型的情況下查詢丟失的視頻數據包的類型;若視頻數據包的類型為I幀數據,則視頻監控設備向視頻源設備發出重傳丟失的視頻數據包的請求; 網絡查詢單元,用于在視頻數據包的類型不為I幀數據的情況下查詢網絡是否達到擁塞閾值;若網絡沒有達到擁塞閾值,則向視頻源設備發出重傳丟失的視頻數據包的請求;視頻數據包計算單元,用于在網絡達到擁塞閾值的情況下計算丟失的視頻數據包,并向視頻播放單元發送視頻播放通知。
9.如權利要求8所述的設備,其特征是,所述丟失檢測單元還包括: 計數器,用于對丟失的視頻數據包進行計數。
10.如權利要求8所述的設備,其特征是,所述網絡查詢單元還包括: 報警器,用于網絡達到擁塞閾值時發出報警信號。
11.一種視頻傳輸設備,其特征是,該設備包括: 編碼單元,用于對視頻源按幀進行編碼,得到視頻幀; 分包單元,用于對所述視頻幀進行分包,得到視頻數據包; 視頻數據包發送單元,用于將所述視頻數據包發送給視頻監控設備,并根據所述視頻監控設備發來的重傳請求發送重傳請求對應的視頻數據包。
12.如權利要求11所述的設備,其特征是,所述編碼單元包括: 拆分器,用于將視頻源分解為獨立的視頻幀。
13.如權利要求12所述的設備,其特征是,所述編碼單元包括: 編碼器,用于對所述獨立的視頻幀按時間先后順序進行編碼。
【文檔編號】H04N7/18GK104284135SQ201310275059
【公開日】2015年1月14日 申請日期:2013年7月2日 優先權日:2013年7月2日
【發明者】劉繼旺, 王峰 申請人:華為技術有限公司