欧美在线观看视频网站,亚洲熟妇色自偷自拍另类,啪啪伊人网,中文字幕第13亚洲另类,中文成人久久久久影院免费观看 ,精品人妻人人做人人爽,亚洲a视频

一種mpeg視頻文件的丟包檢測方法

文檔序號:7741615閱讀:157來源:國知局
專利名稱:一種mpeg視頻文件的丟包檢測方法
技術領域
本發(fā)明屬于網絡通信領域,涉及一種MPEG視頻文件的丟包檢測方法。

背景技術
在視頻傳輸過程中,一旦發(fā)生丟包將降低用戶對視頻的滿意程度,丟包決定了用戶對視頻的體驗質量,因此準確地測量在網絡傳輸過程中發(fā)生的丟包具有重要的研究和現(xiàn)實意義。這里的丟包測量指的是測量視頻包在網絡傳輸過程中丟失的情況。
現(xiàn)有的丟包測量工具主要有Ping、Zing、Badabing等。眾所周知,Windows自帶的Ping工具使用ICMP,統(tǒng)計發(fā)往指定地點反饋數(shù)據包的丟失數(shù)量來確定丟包率的。但是發(fā)送過程中,一旦遇到防火墻屏蔽ICMP,或者ICMP包在返回途中丟失,均會被誤認為丟包。
華為公司提出的使用定界包測量的方法通過在接收端統(tǒng)計收到的包總數(shù),并與發(fā)送端發(fā)送定界包對比來確定丟包數(shù)量。雖然定界包的方法可以克服ICMP包的一些缺陷,但是測試流的丟包率與鏈路的丟包存在一定誤差。
Badabing分析各種鏈路丟包測量方法后,提出包列的方式發(fā)送探測流,并依概率發(fā)送,經理論及實驗證明該方法對于測量鏈路丟包效果較好。
現(xiàn)有的測量工具主要基于以下假設測量流的丟包情況反映的是鏈路的丟包情況。然而鏈路的丟包情況卻不一定反映具體某個應用的丟包情況;因此,不能使用鏈路丟包測量方法來測量具體視頻應用丟包。此外,由于IP鏈路丟包的測量采用的是主動測量,會給實際網絡帶來較大入侵度,造成網絡擁塞。


發(fā)明內容
本發(fā)明所要解決的技術問題是提供一種MPEG視頻文件的丟包檢測方法。
為解決上述技術問題,本發(fā)明采用如下技術方案。
一種MPEG視頻文件的丟包檢測方法包括以下步驟 步驟A,獲取MPEG視頻文件,所述MPEG視頻文件由若干個視頻序列構成,每個所述視頻序列均包含有若干個I、P、B幀;在第一個視頻序列頭中加入標識本次測量的特殊標記,在每個所述I、P、B幀尾的用戶數(shù)據域加入I、P、B幀的自身幀信息和I、P、B幀的冗余信息; 步驟B,客戶端打開測量工具并點播視頻,服務器將所述視頻文件打成數(shù)據包開始網絡傳輸; 步驟C,客戶端測量工具找到第一個Mpeg視頻數(shù)據包并獲取數(shù)據包的最大載荷量max、提取數(shù)據包的五元組信息; 步驟D,根據五元組過濾數(shù)據包進而統(tǒng)計收到的視頻數(shù)據包總數(shù)Y; 步驟E,通過幀的大小和max計算應收數(shù)據包的總數(shù)X,丟包率為
作為本發(fā)明的一種優(yōu)選方案,所述I、P、B幀的自身幀信息分別為I幀的自身幀信息,P幀的自身幀信息,B幀的自身幀信息;所述I幀的自身幀信息包括I幀的數(shù)量,I幀的大??;所述P幀的自身幀信息包括P幀的數(shù)量,P幀的大??;所述B幀的自身幀信息包括B幀的數(shù)量,B幀的大小。
作為本發(fā)明的另一種優(yōu)選方案,所述I、P、B幀的冗余信息分別為I幀的冗余信息,P幀的冗余信息,B幀的冗余信息;所述I幀的冗余信息包括除I幀的自身幀信息之外的幀信息;所述P幀的冗余信息包括除P幀的自身幀信息之外的幀信息;所述B幀的冗余信息包括除B幀的自身幀信息之外的幀信息。
作為本發(fā)明的再一種優(yōu)選方案,所述數(shù)據包的最大載荷量max的獲取方法為從數(shù)據包的第一個0x000001位置到所述數(shù)據包的最后位置的字節(jié)長度即為數(shù)據包的最大載荷量max。
作為本發(fā)明的再一種優(yōu)選方案,所述應收數(shù)據包的總數(shù)X的獲得方法為第i個視頻序列中I幀數(shù)據包數(shù)為

i=1,2,…n,P幀數(shù)據包數(shù)為

B幀數(shù)據包數(shù)為

則傳輸總數(shù)據包數(shù)為

其中Iij為第i個序列中第j個I幀的大小,Pij為第i個序列中第j個P幀的大小,Bij為第i個序列中第j個B幀的大小,k(i),l(i),m(i)分別為第i個序列中I、P、B幀的個數(shù),n為視頻序列的個數(shù)。
作為本發(fā)明的再一種優(yōu)選方案,所述丟包率為
作為本發(fā)明的再一種優(yōu)選方案,所述五元組信息包括源IP地址,目的IP地址,源端口,目的端口,協(xié)議類型。
作為本發(fā)明的再一種優(yōu)選方案,當所述MPEG視頻文件通過網絡傳輸協(xié)議傳輸時,所述數(shù)據包的最大載荷量max的獲取方法為用網絡傳輸?shù)腗TU大小減去應用層的傳輸協(xié)議頭大小,所得結果即為數(shù)據包的最大載荷量max。
作為本發(fā)明的再一種優(yōu)選方案,所述I、P、B幀的自身幀信息分別為I幀的自身幀信息,P幀的自身幀信息,B幀的自身幀信息;所述I幀的自身幀信息包括傳輸I幀所用的數(shù)據包數(shù);所述P幀的自身幀信息包括傳輸P幀所用的數(shù)據包數(shù);所述B幀的自身幀信息包括傳輸B幀所用的數(shù)據包數(shù)。
本發(fā)明的有益效果在于本發(fā)明所述方法將測量有效信息寫入user data域中,在較少的附加信息情況下準確檢測出MPEG視頻的丟包情況;本發(fā)明所述方法不受應用層傳輸協(xié)議限制,適用于各種傳輸層協(xié)議;更因嵌入在視頻內部的冗余數(shù)據保證了檢測值的準確性。



圖1為實施例二的用戶數(shù)據位置示意圖; 圖2為網絡拓撲示意圖; 圖3為丟包率檢測結果對比圖; 圖4為本發(fā)明所述方法的流程圖。

具體實施例方式 下面結合附圖對本發(fā)明的具體實施方式
作進一步詳細說明。
實施例一 本實施例所述的MPEG視頻文件的丟包檢測方法的具體實現(xiàn)步驟為 步驟A,獲取MPEG視頻文件,所述MPEG視頻文件由若干個視頻序列構成,每個所述視頻序列均包含有若干個I、P、B幀;在第一個視頻序列頭中加入標識本次測量的特殊標記,在每個所述I、P、B幀尾的用戶數(shù)據域加入I、P、B幀的自身幀信息和I、P、B幀的冗余信息; 步驟B,客戶端打開測量工具并點播視頻,服務器將所述視頻文件打成數(shù)據包開始網絡傳輸; 步驟C,客戶端測量工具找到第一個Mpeg視頻數(shù)據包并獲取數(shù)據包的最大載荷量max、提取數(shù)據包的五元組信息; 步驟D,根據五元組過濾數(shù)據包進而統(tǒng)計收到的視頻數(shù)據包總數(shù)Y;步驟E,通過幀的大小和max計算應收數(shù)據包的總數(shù)X,丟包率為
所述I、P、B幀的自身幀信息分別為I幀的自身幀信息,P幀的自身幀信息,B幀的自身幀信息;所述I幀的自身幀信息包括I幀的數(shù)量,I幀的大??;所述P幀的自身幀信息包括P幀的數(shù)量,P幀的大小;所述B幀的自身幀信息包括B幀的數(shù)量,B幀的大小。所述I、P、B幀的冗余信息分別為I幀的冗余信息,P幀的冗余信息,B幀的冗余信息;所述I幀的冗余信息包括除I幀的自身幀信息之外的幀信息;所述P幀的冗余信息包括除P幀的自身幀信息之外的幀信息;所述B幀的冗余信息包括除B幀的自身幀信息之外的幀信息。所述數(shù)據包的最大載荷量max的獲取方法為從數(shù)據包的第一個0x000001位置到所述數(shù)據包的最后位置的字節(jié)長度即為數(shù)據包的最大載荷量max。
所述應收數(shù)據包的總數(shù)X的獲得方法為第i個視頻序列中I幀數(shù)據包數(shù)為

i=1,2,…n,P幀數(shù)據包數(shù)為

B幀數(shù)據包數(shù)為

則傳輸總數(shù)據包數(shù)為

其中Iij為第i個序列中第j個I幀的大小,Pij為第i個序列中第j個P幀的大小,Bij為第i個序列中第j個B幀的大小,k(i),l(i),m(i)分別為第i個序列中I、P、B幀的個數(shù),n為視頻序列的個數(shù)。所述丟包率為

所述五元組信息包括源IP地址,目的IP地址,源端口,目的端口,協(xié)議類型。
當所述MPEG視頻文件通過網絡傳輸協(xié)議傳輸時,所述數(shù)據包的最大載荷量max的獲取方法為用網絡傳輸?shù)腗TU大小減去應用層的傳輸協(xié)議頭大小,所得結果即為數(shù)據包的最大載荷量max。所述I、P、B幀的自身幀信息分別為I幀的自身幀信息,P幀的自身幀信息,B幀的自身幀信息;所述I幀的自身幀信息包括傳輸I幀所用的數(shù)據包數(shù);所述P幀的自身幀信息包括傳輸P幀所用的數(shù)據包數(shù);所述B幀的自身幀信息包括傳輸B幀所用的數(shù)據包數(shù)。
實施例二 本實例提供了一種MPEG4視頻文件的丟包檢測方法,該方法主要包括以下步驟 步驟A,獲取MPEG視頻文件,所述MPEG視頻文件由若干個視頻序列構成,每個所述視頻序列均包含有若干個I、P、B幀;在第一個視頻序列頭中加入標識本次測量的特殊標記,在每個所述I、P、B幀尾的用戶數(shù)據域加入I、P、B幀的自身幀信息和I、P、B幀的冗余信息; 步驟B,客戶端打開測量工具并點播視頻,服務器將所述視頻文件打成數(shù)據包開始網絡傳輸; 步驟C,客戶端測量工具找到第一個Mpeg視頻數(shù)據包并獲取數(shù)據包的最大載荷量max、提取數(shù)據包的五元組信息; 步驟D,根據五元組過濾數(shù)據包進而統(tǒng)計收到的視頻數(shù)據包總數(shù)Y;步驟E,通過幀的大小和max計算應收數(shù)據包的總數(shù)X,丟包率為
本實施例所述方法首先在視頻服務器端的源MPEG4視頻文件中加入用于標識測量的特殊標記,如圖1所示,之后客戶端通過網絡訪問加入特殊標記的視頻文件,并開始實時分析檢測。視頻文件序列化后形成視頻序列,視頻序列打包成數(shù)據包后經網絡開始傳輸。在檢測過程中首先尋找接收到的含有用戶數(shù)據(userdata)的起始標記0x000001B200ff的數(shù)據包,其中0x000001B2為用戶數(shù)據固定的起始標記,0x00ff為測量流標記,所述測量流標記可替換為其他不與特殊碼流標識重復的代碼。MPEG4碼流標識如表1所示,MPEG4幀標記如表2所示,表3為舉例說明。
表1 表2
表3
在用戶數(shù)據(user data)的起始標記之后存放的是視頻序列的幀序號(即表示第幾個視頻序列)及每個幀的大小,幀序號占2個字節(jié),I幀的數(shù)量占1個字節(jié),每個I幀的大小占4個字節(jié),P幀的數(shù)量占1個字節(jié),每個P幀的大小占4個字節(jié),B幀的數(shù)量占1個字節(jié),每個B幀的大小占4個字節(jié)。這樣一組數(shù)據就標識了一個視頻序列里所有幀的大小。
在user data內冗余寫入另外兩個視頻序列的信息,以防用戶數(shù)據的數(shù)據丟失;即在I幀序列的user data內寫入P幀和B幀的序列信息,在P幀序列的user data內寫入I幀和B幀的序列信息,在B幀序列的user data內寫入P幀和I幀的序列信息。此方法可以防止因丟失包含幀信息的數(shù)據包而導致的丟包檢測結果錯誤。
每個數(shù)據包的IP報頭中均包含五元組信息,所述五元組信息為源IP地址,目的IP地址,源端口,目的端口,協(xié)議類型。根據數(shù)據包中的五元組信息可以唯一識別每一次傳輸,這樣就可以避免繁瑣的流識別,同時也可以統(tǒng)計出客戶端所收到的數(shù)據包數(shù)Y。最后分析這個含有用戶數(shù)據的起始標記的數(shù)據包,此含有用戶數(shù)據的起始標記的數(shù)據包的第一個用戶數(shù)據位置(0x000001)到最后一個用戶數(shù)據位置所占用的字節(jié)長度即為一個IP數(shù)據包所能傳輸?shù)淖疃嘁曨l字節(jié)數(shù)max。如此一來就可以獲知每個幀序列會被分成多少個數(shù)據包進行傳輸。
統(tǒng)計傳輸所有視頻序列所用的數(shù)據包數(shù)X的方法為 第i個視頻序列中I幀數(shù)據包數(shù)為

i=1,2,…n,P幀數(shù)據包數(shù)為

B幀數(shù)據包數(shù)為

則傳輸總數(shù)據包數(shù)為

其中Iij為第i個序列中第j個I幀的大小,Pij為第i個序列中第j個P幀的大小,Bij為第i個序列中第j個B幀的大小,k(i),l(i),m(i)分別為第i個序列中I、P、B幀的個數(shù)。
將統(tǒng)計出的傳輸所有視頻序列所用的數(shù)據包數(shù)X與通過五元組過濾后收到的數(shù)據包數(shù)Y比對,得出兩者之差X-Y,該差值即為丟包數(shù),

即為丟包率。
圖3為丟包率檢測結果對比圖,其中有三種測量結果,一種是通過本實施例的檢測方法獲得的;另一種是通過傳統(tǒng)的檢測方法獲得的;最后一種為通過wireshark抓包工具獲得的,此結果反映的是實際情況中的丟包率。
從圖中可以看出,本發(fā)明在測量MPEG視頻文件丟包率方面有較高的準確性。
實施例三 本實施例與實施例二的區(qū)別在于,實施例二傳輸MPEG4視頻,而本實施例使用RTP(Real-time Transport protocol,實時傳輸協(xié)議)傳輸MPEG2視頻。在知道網絡MTU(Maximum Transmission Unit)大小,RTP頭大小等信息后,MTU-RTP即為一個IP數(shù)據包所能傳輸?shù)淖畲筝d荷量max,各I、P、B幀的大小除以max之和即為傳輸?shù)臄?shù)據包數(shù)量。MTU是網絡上傳送的最大數(shù)據包,單位是字節(jié)。本實施例中,在每個視頻序列頭中的user data中直接寫入的是傳輸?shù)臄?shù)據包數(shù)量,而不是每個幀的大小,因此接收端不需要用每個幀的大小除以max值來計算應收包總數(shù)。這個實例的受限之處在于要知道網絡傳輸?shù)腗TU大小。此外,需要知道應用層的傳輸協(xié)議頭大小等。本實施例結果與使用實施例二的結果一樣。MPEG2碼流標識如表4所示,MPEG2幀標記如表5所示,表6為舉例說明。
表4 表5

表6
總之,通過在user data記錄相關數(shù)據用于測量丟包數(shù)量的方法均在本發(fā)明的權利要求范圍之內。
這里本發(fā)明的描述和應用是說明性的,并非想將本發(fā)明的范圍限制在上述實施例中。這里所披露的實施例的變形和改變是可能的,對于那些本領域的普通技術人員來說實施例的替換和等效的各種部件是公知的。本領域技術人員應該清楚的是,在不脫離本發(fā)明的精神或本質特征的情況下,本發(fā)明可以以其他形式、結構、布置、比例,以及用其他元件、材料和部件來實現(xiàn)。
權利要求
1.一種MPEG視頻文件的丟包檢測方法,其特征在于,包括以下步驟
步驟A,獲取MPEG視頻文件,所述MPEG視頻文件由若干個視頻序列構成,每個所述視頻序列均包含有若干個I、P、B幀;在第一個視頻序列頭中加入標識本次測量的特殊標記,在每個所述I、P、B幀尾的用戶數(shù)據域加入I、P、B幀的自身幀信息和I、P、B幀的冗余信息;
步驟B,客戶端打開測量工具并點播視頻,服務器將所述視頻文件打成數(shù)據包開始網絡傳輸;
步驟C,客戶端測量工具找到第一個Mpeg視頻數(shù)據包并獲取數(shù)據包的最大載荷量max、提取數(shù)據包的五元組信息;
步驟D,根據五元組過濾數(shù)據包進而統(tǒng)計收到的視頻數(shù)據包總數(shù)Y;
步驟E,通過幀的大小和max計算應收數(shù)據包的總數(shù)X,丟包率為
2.根據權利要求1所述的MPEG視頻文件的丟包檢測方法,其特征在于所述I、P、B幀的自身幀信息分別為I幀的自身幀信息,P幀的自身幀信息,B幀的自身幀信息;所述I幀的自身幀信息包括I幀的數(shù)量,I幀的大??;所述P幀的自身幀信息包括P幀的數(shù)量,P幀的大?。凰鯞幀的自身幀信息包括B幀的數(shù)量,B幀的大小。
3.根據權利要求2所述的MPEG視頻文件的丟包檢測方法,其特征在于所述I、P、B幀的冗余信息分別為I幀的冗余信息,P幀的冗余信息,B幀的冗余信息;所述I幀的冗余信息包括除I幀的自身幀信息之外的幀信息;所述P幀的冗余信息包括除P幀的自身幀信息之外的幀信息;所述B幀的冗余信息包括除B幀的自身幀信息之外的幀信息。
4.根據權利要求1所述的MPEG視頻文件的丟包檢測方法,其特征在于,所述數(shù)據包的最大載荷量max的獲取方法為從數(shù)據包的第一個0x000001位置到所述數(shù)據包的最后位置的字節(jié)長度即為數(shù)據包的最大載荷量max。
5.根據權利要求1所述的MPEG視頻文件的丟包檢測方法,其特征在于,所述應收數(shù)據包的總數(shù)X的獲得方法為第i個視頻序列中I幀數(shù)據包數(shù)為
P幀數(shù)據包數(shù)為
B幀數(shù)據包數(shù)為
則傳輸總數(shù)據包數(shù)為
其中Iij為第i個序列中第j個I幀的大小,Pij為第i個序列中第j個P幀的大小,Bij為第i個序列中第j個B幀的大小,k(i),l(i),m(i)分別為第i個序列中I、P、B幀的個數(shù),n為視頻序列的個數(shù)。
6.根據權利要求1所述的MPEG視頻文件的丟包檢測方法,其特征在于所述丟包率為
7.根據權利要求1所述的MPEG視頻文件的丟包檢測方法,其特征在于所述五元組信息包括源IP地址,目的IP地址,源端口,目的端口,協(xié)議類型。
8.根據權利要求1所述的MPEG視頻文件的丟包檢測方法,其特征在于,當所述MPEG視頻文件通過網絡傳輸協(xié)議傳輸時,所述數(shù)據包的最大載荷量max的獲取方法為用網絡傳輸?shù)腗TU大小減去應用層的傳輸協(xié)議頭大小,所得結果即為數(shù)據包的最大載荷量max。
9.根據權利要求1所述的MPEG視頻文件的丟包檢測方法,其特征在于所述I、P、B幀的自身幀信息分別為I幀的自身幀信息,P幀的自身幀信息,B幀的自身幀信息;所述I幀的自身幀信息包括傳輸I幀所用的數(shù)據包數(shù);所述P幀的自身幀信息包括傳輸P幀所用的數(shù)據包數(shù);所述B幀的自身幀信息包括傳輸B幀所用的數(shù)據包數(shù)。
全文摘要
本發(fā)明公開了一種MPEG視頻文件的丟包檢測方法,該方法包括以下步驟步驟A,在源MPEG4視頻中用戶數(shù)據域內加入測量信息。步驟B,客戶端打開測量工具并點播視頻,服務器將所述視頻文件打成數(shù)據包開始網絡傳輸;步驟C,客戶端測量工具找到第一個Mpeg視頻數(shù)據包并獲取數(shù)據包的最大載荷量max、提取數(shù)據包的五元組信息;步驟D,根據五元組過濾數(shù)據包進而統(tǒng)計收到的視頻數(shù)據包總數(shù)Y;步驟E,通過幀的大小和max計算應收數(shù)據包的總數(shù)X,丟包率為本發(fā)明將測量有效信息寫入用戶數(shù)據域中,能準確檢測出MPEG視頻的丟包情況。
文檔編號H04N17/00GK101778294SQ20101010690
公開日2010年7月14日 申請日期2010年2月8日 優(yōu)先權日2010年2月8日
發(fā)明者張大陸, 朱小慶, 胡治國, 周華磊, 張俊生 申請人:同濟大學
網友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1
长汀县| 崇阳县| 南充市| 刚察县| 巴塘县| 义乌市| 靖边县| 舟曲县| 中西区| 昌吉市| 德昌县| 织金县| 漳州市| 曲周县| 泸定县| 萝北县| 赤城县| 德钦县| 安徽省| 西安市| 涞源县| 乌审旗| 承德县| 府谷县| 保康县| 怀化市| 得荣县| 上高县| 大方县| 手游| 雷州市| 全州县| 墨脱县| 邵阳市| 登封市| 万盛区| 开化县| 淮北市| 惠水县| 汉中市| 泸州市|