一種視頻會話中動態調整視頻傳輸效率的方法
2023-09-20 11:36:55
一種視頻會話中動態調整視頻傳輸效率的方法
【專利摘要】本發明提供了一種視頻會話中動態調整視頻傳輸效率的方法。其中視頻發送方客戶端通過流媒體伺服器向視頻接收方客戶端轉發視頻數據,包括如下步驟:a)建立視頻會話b)視頻發送方客戶端向流媒體伺服器發送測試網絡狀況的測試包,記錄收到響應信號所需時間;c)視頻發送方客戶端計算最新的響應時間平均值;d)視頻發送方客戶端實時判斷最新的響應時間平均值是否超過閾值,否則進入步驟e;是則進入步驟f;e)視頻發送方客戶端以第一視頻採集效率向流媒體伺服器傳輸視頻數據;f)視頻發送方客戶端以低於第一視頻採集效率的第二視頻採集效率向流媒體伺服器傳輸視頻數據。利用本發明的方法,能夠動態調整視頻傳輸效率,保證視頻會話的流暢性。
【專利說明】一種視頻會話中動態調整視頻傳輸效率的方法
【技術領域】
[0001]本發明涉及通信領域,特別是一種視頻會話中動態調整視頻傳輸效率的方法。
【背景技術】
[0002]隨著通信技術的發展,視頻會話在網際網路中的應用日益廣泛。視頻會話,是一種可以實現與多人同時進行視頻通訊的會話方式。通過視頻會話方式,可以實現處於多個不同地點的用戶面對面的講話,由於視頻會話的優勢,使得該技術在各領域中得到廣泛的應用。
[0003]但是,由於網絡帶寬、傳輸質量等因素造成的網絡狀況不穩定,此外,由於在視頻會話中的不同用戶的網絡狀況本身不盡相同,導致現有的視頻會話中存在視頻存在延遲,畫面不流暢等問題。
[0004]現有的一種保障視頻會話的實時性的方法是,通過給用戶多個用於調整視頻質量及速度的選擇項,讓用戶根據視頻會話的效果,手動選擇來保證視頻質量及速度。然而,用戶手動選擇視頻質量及速度,對於用戶來說操作門檻較高,而且,在在網絡狀態不好的情況下,可能出現用戶無法進行動態手動調整,出現視頻卡死等情況,從而給用戶帶來了不佳的視頻會話體驗效果。
[0005]因此,需要一種視頻會話中一種動態調整視頻傳輸效率的方法,對視頻進行動態調整,兼顧視頻的質量和視頻的流暢性,提高用戶體驗。
【發明內容】
[0006]本發明的目的是提供一種視頻會話中一種動態調整視頻傳輸效率的方法。
[0007]根據本發明的一個方面,提供了一種視頻會話中動態調整視頻傳輸效率的方法,其中視頻發送方客戶端通過流媒體伺服器向視頻接收方客戶端轉發視頻數據,其特徵在於,包括如下步驟:a)建立視頻會話,所述視頻發送方客戶端以第一視頻採集效率向流媒體伺服器傳輸視頻山)所述視頻發送方客戶端向所述流媒體伺服器發送測試網絡狀況的測試包,記錄收到響應信號所需時間;c)所述視頻發送方客戶端計算最新收到的多個響應信號的響應時間平均值;d)所述視頻發送方客戶端實時判斷所述最新的響應時間平均值是否超過閾值,否則進入步驟e ;是則進入步驟f ;e)所述視頻發送方客戶端以第一視頻採集效率向所述流媒體伺服器傳輸所述視頻數據,並在傳輸所述視頻數據的同時持續重複步驟b-d以判斷網絡狀況;f)所述視頻發送方客戶端以低於所述第一視頻採集效率的第二視頻採集效率向所述流媒體伺服器傳輸所述視頻數據,並在傳輸所述視頻數據的同時持續重複步驟b_d。
[0008]優選地,在所述視頻發送方客戶端通過流媒體伺服器向視頻接收方轉發視頻數據的過程中,採用flash的流媒體服務轉發技術,且流媒體信息的協議是H. 264或H. 263。
[0009]優選地,在步驟c中,計算最新收到的5個響應信號的響應時間平均值。
[0010]優選地,在步驟f中,所述以低於所述第一視頻採集效率的第二視頻採集效率向所述流媒體伺服器傳輸所述視頻數據的方法可以選自下列方式中的任意一種或幾種的組合,所述方式包括:減少原本視頻的採集幀率,以及降低原本視頻的採集解析度。
[0011]優選地,在步驟d中,設置兩個或兩個以上閾值來調整視頻採集效率。
[0012]根據本發明的另一個方面,提供了一種視頻會話中動態調整視頻傳輸效率的方法,其中所述視頻發送方客戶端通過流媒體伺服器向視頻接收方客戶端轉發視頻數據,其特徵在於,包括如下步驟:a)建立視頻會話,所述視頻發送方客戶端以第一視頻採集效率向流媒體伺服器傳輸所述視頻數據山)所述視頻接收方客戶端向所述流媒體伺服器發送測試網絡狀況的測試包,記錄收到響應信號所需時間;c)所述視頻接收方客戶端計算最新收到的多個響應信號的響應時間平均值;d)所述視頻接收方客戶端實時判斷最新的響應時間平均值是否超過閾值,是則進入步驟e ;否則持續重複步驟b-d以判斷網絡狀況;e)所述視頻接收方客戶端通過所述流媒體伺服器向所述視頻發送方客戶端轉發表示其網絡狀態不好從而需要所述視頻發送客戶端以較低採集效率發送視頻的信號;f)所述視頻發送方客戶端以低於所述第一視頻採集效率的第二視頻採集效率向所述流媒體伺服器傳送所述視頻數據。
[0013]優選地,在步驟c中,在所述視頻發送方客戶端以所述第二視頻採集效率傳輸所述視頻數據的過程中,所述視頻接收方客戶端仍持續重複步驟b-d以判斷網絡狀況,若在設定的閾值時間內所述視頻發送方客戶端未接收到來自所述流媒體伺服器轉發的要求以較低採集效率發送所述視頻數據的信號,則所述視頻發送方客戶端恢復以所述第一視頻採集效率進行所述視頻數據的傳輸。
[0014]優選地,在步驟e中,所述以低於所述第一視頻採集效率的第二視頻採集效率向所述流媒體伺服器傳輸所述視頻數據的方法可以選自下列方式中的任意一種或幾種的組合,所述方式包括:減少原本視頻的採集幀率,以及降低原本視頻的採集解析度。
[0015]優選地,在步驟d中,所述視頻接收方客戶端設置兩個或兩個以上閾值來將網絡狀況通知所述視頻發送方客戶端,使所述視頻發送方客戶端調整視頻採集效率。
[0016]優選地,在步驟c中,計算最新收到的5個響應信號的響應時間平均值。
[0017]利用本發明的提高視頻體驗的方法,能夠適應不同的網絡狀態,動態調整視頻傳輸效率,以保證視頻會話通道的流暢性,來為用戶提供良好的視頻會話體驗。
【專利附圖】
【附圖說明】
[0018]參考隨附的附圖,本發明更多的目的、功能和優點將通過本發明實施方式的如下描述得以闡明,其中:
[0019]圖I示意性示出了實現根據本發明的動態調整視頻傳輸效率的方法的系統框圖。
[0020]圖2示意性示出了基於發送方客戶端網絡狀況動態調整視頻傳輸效率的方法流程圖。
[0021]圖3示意性示出了基於接收方客戶端網絡狀況動態調整視頻傳輸效率的方法流程圖。
【具體實施方式】
[0022]通過參考示範性實施例,本發明的目的和功能以及用於實現這些目的和功能的方法將得以闡明。然而,本發明並不受限於以下所公開的示範性實施例;可以通過不同形式來對其加以實現。說明書的實質僅僅是幫助相關領域技術人員綜合理解本發明的具體細節。
[0023]在下文中,將參考附圖描述本發明的實施例。在附圖中,相同的附圖標記代表相同或類似的部件,或者相同或類似的步驟。
[0024]圖I示意性示出了實現根據本發明的動態調整視頻傳輸效率的方法的系統框圖。如圖I所示,應用本發明的視頻會話中動態調整視頻傳輸效率的方法的系統100包括發起視頻會話的至少兩個客戶端以及在客戶端之間傳遞視頻會話的流媒體伺服器。在圖I中,所述客戶端示例性地以PC客戶端110以及移動客戶端120表示,所述流媒體伺服器以伺服器130來表示。PC客戶端110以及移動客戶端120分別和伺服器130之間通過網絡進行視頻數據的傳輸。出於示意性的目的,圖I僅示出了兩個客戶端,即PC客戶端110和移動客戶端120,然而,可以理解的是根據本發明的方法可以應用於多方視頻會話的場景中,因此在其他實施方式中,系統100可以包括更多的客戶端。
[0025]所述網絡例如包括諸如內聯網之類的區域網(「LAN」)和諸如網際網路之類的廣域網(「WAN」)。網絡可被配置為支持利用多種協議設置格式的信息的傳輸。另外,網絡可以是公共網絡、專用網絡或其組合。網絡還可以利用任何一種或多種類型的物理介質來實現,其中包括與多個服務提供商相關聯的有線通信路徑和無線通信路徑。無線通信方式例如WiFi或WLAN、GPRS、蜂窩網絡,例如GSM網絡、3G網絡、LTE網絡或CDMA網絡等等。
[0026]優選地,本發明採用flash的流媒體服務轉發技術,流媒體信息的協議例如是
H.264 或 H. 263。
[0027]圖2示意性示出了基於發送方客戶端網絡狀況動態調整視頻傳輸效率的方法流程圖。
[0028]如圖2所示:
[0029]步驟210,建立視頻會話。具體地,發起視頻會話的客戶端(下文簡稱視頻發送方客戶端,以圖I中的客戶端110為例)通過流媒體伺服器130向任意其他的客戶端(下文簡稱視頻接收方客戶端,以圖I中的客戶端120為例)發起與其進行視頻會話的請求,視頻接收方客戶端同意會話請求後通過流媒體伺服器發送表示同意的響應,視頻接收方客戶端在收到表示同意的響應後,客戶端110與客戶端120通過流媒體伺服器130建立起連接,開始進行視頻會話。在進行視頻會話過程中,客戶端110與客戶端120的視頻信息通過中間層流媒體伺服器進行轉發,以實現正常的視頻會話。其中,流媒體伺服器是用來轉發來自至少兩個客戶端本地採集的視頻信息的中間媒介。
[0030]建立起視頻會話後,視頻發送方客戶端以設定的第一視頻採集效率向流媒體伺服器傳輸視頻,經流媒體伺服器轉發給視頻接收方客戶端進行播放。
[0031]步驟220,視頻發送方客戶端在發送視頻的過程中定時向流媒體伺服器發送測試網絡狀況的測試包,記錄收到流媒體伺服器的響應信號所需時間。由於在視頻會話中的客戶端110以及客戶端120都是視頻發送方,所以為了不對本方法的過程進行贅述,在本實施例中僅對客戶端110向客戶端120進行視頻傳輸的過程進行說明。具體地,客戶端110定時向流媒體伺服器130發送測試網絡狀態包(即req信號),並記錄收到來自流媒體伺服器的回覆信號(即rsp信號)所需的時間。
[0032]步驟230,客戶端110計算最新收到的多個響應信號所需時間的平均值(以下稱為響應時間平均值)。優選地,計算最新收到的5個響應信號的響應時間平均值。計算最新的響應時間平均值A的公式為:
[0033]A= (tj+tg+ts+......+tj) / i (I)
[0034]其中,\為客戶端110收到的響應時間,i為大於I的正整數,表示用於計算平均值的最新收到的多個響應信號的數量。
[0035]步驟240,客戶端110實時判斷步驟230求出的響應時間平均值是否超過閾值,否則說明網絡狀況良好,進入步驟250 ;是則說明網絡狀況不足以進行正常視頻質量的傳輸,進入步驟260。
[0036]步驟250,客戶端110仍以所設定的第一視頻採集效率向流媒體伺服器130傳輸視頻,並在傳輸視頻的同時持續重複步驟220-240以判斷網絡狀況。
[0037]步驟260,客戶端110以低於所述第一視頻採集效率的第二視頻採集效率向流媒體伺服器130傳輸視頻,從而使客戶端120能夠得到流暢且不延遲的視頻畫面傳輸效果。其中,以較低的第二視頻採集效率傳輸視頻的方法可以選自下列方式中的任意一種或幾種的組合,所述方式包括:減少原本視頻的採集幀率,以及降低原本視頻的採集解析度等。其中,採集解析度表示畫面採集像素的多少,例如採集解析度為320X240。視頻採集幀率為視頻畫面的採集頻率,若幀率越大則視頻看起來越流暢,此時的網絡發包量較大;若幀率越小,視頻看起來越不流暢,此時的網絡發包量較小。
[0038]在客戶端110以第二視頻採集效率傳輸視頻的過程中,客戶端110仍持續重複步驟220-240以判斷網絡狀況,若在步驟240判斷出響應時間平均值已低於閾值,則客戶端110恢復第一視頻採集效率進行視頻的傳輸。
[0039]優選地,設置兩個或兩個以上閾值來調整視頻採集效率。例如在設置兩個閾值(閾值A和閾值B,且閾值A小於閾值B)來調整視頻採集效率時,若響應時間平均值小於閾值A則以第一採集效率傳輸視頻,若響應時間平均值大於閾值A且小於閾值B則以第二採集效率傳輸視頻,若響應時間平均值大於閾值B則以第三採集效率傳輸視頻。
[0040]圖3示意性示出了基於接收方客戶端網絡狀況動態調整視頻傳輸效率的方法流程圖。
[0041]如圖3所示:
[0042]步驟310,建立視頻會話。建立起視頻會話後,視頻發送方客戶端(本實施例中以客戶端110為例)以設定的第一視頻採集效率向流媒體伺服器傳輸視頻,經流媒體伺服器轉發給視頻接收方客戶端(本實施例中以客戶端120為例)進行播放。
[0043]步驟320,客戶端120定時向流媒體伺服器發送測試網絡狀況的測試包,記錄收到來自流媒體伺服器的響應信號所需時間;
[0044]步驟330,客戶端120計算最新收到的多個響應信號所需時間的平均值(以下稱為響應時間平均值);
[0045]步驟340,客戶端120實時判斷步驟330求出的響應時間平均值是否超過閾值,是則說明此時視頻接收方客戶端的網絡狀況不好需通知發送方,進入步驟350 ;否則說明此時視頻接收方客戶端的網絡狀況良好,持續重複步驟320-340以判斷網絡狀況;
[0046]步驟350,客戶端120通過流媒體伺服器130向客戶端110轉發表示其網絡狀態不好從而需要客戶端110以低採集效率發送視頻的信號;
[0047]步驟360,客戶端110在收到客戶端120發出的表示網絡狀況不好的信號後,降低採集效率向流媒體伺服器130傳送視頻。具體地,客戶端110以低於所述第一視頻採集效率的第二視頻採集效率向流媒體伺服器130傳輸視頻,從而使客戶端120能夠得到流暢且不延遲的視頻畫面傳輸效果。其中,以較低的第二視頻採集效率傳輸視頻的方法可以選自下列方式中的任意一種或幾種的組合,所述方式包括:減少原本視頻的採集幀率,以及降低原本視頻的採集解析度等。其中,採集解析度表示畫面採集像素的多少,例如採集解析度為320X240。視頻採集幀率為視頻畫面的採集頻率,若幀率越大則視頻看起來越流暢,此時的網絡發包量較大;若幀率越小,視頻看起來越不流暢,此時的網絡發包量較小。
[0048]在客戶端110以第二視頻採集效率傳輸視頻的過程中,客戶端120仍持續重複步驟320-340以判斷網絡狀況,若在設定的閾值時間內客戶端110未接收到來自流媒體伺服器轉發的指示客戶端120網絡狀況不好的信號,則客戶端110恢復第一視頻採集效率進行視頻的傳輸。
[0049]優選地,視頻接收方客戶端設置兩個或兩個以上閾值來將其網絡狀況通知視頻發送方客戶端,來使視頻發送方客戶端調整視頻採集效率。
[0050]在本發明的實施例中雖然只說明了在進行視頻會話的情況下動態調整視頻採集效率的方法,但是不限於此,本發明也可以適用於音頻會話的情況或音視頻會話的情況。
[0051]本發明中,一個用戶可以同多個用於同時進行音視頻交互,所有的流媒體信息都是通過流媒體伺服器130進行轉發的,一個用戶同流媒體伺服器130之間僅需要一條tcp連接,但這條連接上可以傳輸很多流媒體信息流,並且在該條Tcp連接上還包括一條檢測通道狀況的請求,從而能夠使伺服器只提供Tcp —種接入方式,降低開發維護成本,同時,能夠實現多網頁僅保持一條連結,從而大大降低了伺服器接入層的壓力,減少硬體的投入。
[0052]利用本發明的提高視頻體驗的方法,能夠適應不同的網絡狀態,動態調整視頻傳輸效率,以保證視頻會話通道的流暢性,來為用戶提供良好的視頻會話體驗。
[0053]結合這裡披露的本發明的說明和實踐,本發明的其他實施例對於本領域技術人員都是易於想到和理解的。說明和實施例僅被認為是示例性的,本發明的真正範圍和主旨均由權利要求所限定。
【權利要求】
1.一種視頻會話中動態調整視頻傳輸效率的方法,其中視頻發送方客戶端通過流媒體伺服器向視頻接收方客戶端轉發視頻數據,其特徵在於,包括如下步驟: a)建立視頻會話,所述視頻發送方客戶端以第一視頻採集效率向流媒體伺服器傳輸視頻; b)所述視頻發送方客戶端向所述流媒體伺服器發送測試網絡狀況的測試包,記錄收到響應信號所需時間; c)所述視頻發送方客戶端計算最新收到的多個響應信號的響應時間平均值; d)所述視頻發送方客戶端實時判斷所述最新的響應時間平均值是否超過閾值,否則進入步驟e ;是則進入步驟f; e)所述視頻發送方客戶端以第一視頻採集效率向所述流媒體伺服器傳輸所述視頻數據,並在傳輸所述視頻數據的同時持續重複步驟b-d以判斷網絡狀況; f)所述視頻發送方客戶端以低於所述第一視頻採集效率的第二視頻採集效率向所述流媒體伺服器傳輸所述視頻數據,並在傳輸所述視頻數據的同時持續重複步驟b-d。
2.根據權利要求1所述的方法,其特徵在於,在所述視頻發送方客戶端通過流媒體伺服器向視頻接收方轉發視頻數據的過程中,採用flash的流媒體服務轉發技術,且流媒體信息的協議是H. 264或H. 263。
3.根據權利要求1所述的方法,其特徵在於,在步驟c中,計算最新收到的5個響應信號的響應時間平均值。
4.根據權利要求1所述的方法,其特徵在於,在步驟f中,所述以低於所述第一視頻採集效率的第二視頻採集效率向所述流媒體伺服器傳輸所述視頻數據的方法可以選自下列方式中的任意一種或幾種的組合,所述方式包括:減少原本視頻的採集幀率,以及降低原本視頻的採集解析度。
5.根據權利要求1所述的方法,其特徵在於,在步驟d中,設置兩個或兩個以上閾值來調整視頻米集效率。
6.—種視頻會話中動態調整視頻傳輸效率的方法,其中所述視頻發送方客戶端通過流媒體伺服器向視頻接收方客戶端轉發視頻數據,其特徵在於,包括如下步驟: a)建立視頻會話,所述視頻發送方客戶端以第一視頻採集效率向流媒體伺服器傳輸所述視頻數據; b)所述視頻接收方客戶端向所述流媒體伺服器發送測試網絡狀況的測試包,記錄收到響應信號所需時間; c)所述視頻接收方客戶端計算最新收到的多個響應信號的響應時間平均值; d)所述視頻接收方客戶端實時判斷最新的響應時間平均值是否超過閾值,是則進入步驟e ;否則持續重複步驟b-d以判斷網絡狀況; e)所述視頻接收方客戶端通過所述流媒體伺服器向所述視頻發送方客戶端轉發表示其網絡狀態不好從而需要所述視頻發送客戶端以較低採集效率發送視頻的信號; f)所述視頻發送方客戶端以低於所述第一視頻採集效率的第二視頻採集效率向所述流媒體伺服器傳送所述視頻數據。
7.根據權利要求6所述的方法,其特徵在於,在步驟c中,在所述視頻發送方客戶端以所述第二視頻採集效率傳輸所述視頻數據的過程中,所述視頻接收方客戶端仍持續重複步驟b-d以判斷網絡狀況,若在設定的閾值時間內所述視頻發送方客戶端未接收到來自所述流媒體伺服器轉發的要求以較低採集效率發送所述視頻數據的信號,則所述視頻發送方客戶端恢復以所述第一視頻採集效率進行所述視頻數據的傳輸。
8.根據權利要求6所述的方法,其特徵在於,在步驟e中,所述以低於所述第一視頻採集效率的第二視頻採集效率向所述流媒體伺服器傳輸所述視頻數據的方法可以選自下列方式中的任意一種或幾種的組合,所述方式包括:減少原本視頻的採集幀率,以及降低原本視頻的採集解析度。
9.根據權利要求6所述的方法,其特徵在於,在步驟d中,所述視頻接收方客戶端設置兩個或兩個以上閾值來將網絡狀況通知所述視頻發送方客戶端,使所述視頻發送方客戶端調整視頻米集效率。
10.根據權利要求6所述的方法,其特徵在於,在步驟c中,計算最新收到的5個響應信號的響應時間平均值。`
【文檔編號】H04L29/06GK103780869SQ201410025737
【公開日】2014年5月7日 申請日期:2014年1月20日 優先權日:2014年1月20日
【發明者】李曉東 申請人:五八同城信息技術有限公司