一種多人視頻通信中的視頻編碼方法以及終端

一種多人視頻通信中的視頻編碼方法以及終端

《一種多人視頻通信中的視頻編碼方法以及終端》是騰訊科技(深圳)有限公司於2012年2月22日申請的發明專利,該專利的申請號為201210040481X,公布號為CN102547214A,公布日為2012年7月4日,發明人是谷沉沉。

《一種多人視頻通信中的視頻編碼方法以及終端》公開了一種多人視頻通信中的視頻編碼方法,當任一終端X參與到一多人視頻通信中後,進行以下處理:A、分別統計出自身已啟用的焦點視頻編碼器數和普通視頻編碼器數;B、根據自身的處理能力以及最新的統計結果,分別確定出焦點視頻的編碼參數以及普通視頻的編碼參數,並通知各已啟用的焦點視頻編碼器和普通視頻編碼器分別按照最新確定出的編碼參數進行視頻編碼;當已啟用的焦點視頻編碼器數和普通視頻編碼器數中的至少一個發生變化時,重複執行步驟A和B。該發明同時公開了一種終端。套用該發明所述方案,能夠提高整體視頻通信質量。

2014年11月6日,《一種多人視頻通信中的視頻編碼方法以及終端》獲得第十六屆中國專利優秀獎。

(概述圖為《一種多人視頻通信中的視頻編碼方法以及終端》摘要附圖)

基本介紹

  • 中文名:一種多人視頻通信中的視頻編碼方法以及終端
  • 公布號:CN102547214A
  • 公布日:2012年7月4日
  • 申請號:201210040481X
  • 申請日:2012年2月22日
  • 申請人:騰訊科技(深圳)有限公司
  • 地址:廣東省深圳市福田區振興路賽格科技園2棟東403室
  • 發明人:谷沉沉
  • 分類號:H04N7/15(2006.01)I;H04N7/26(2006.01)I
  • 代理機構:北京德琦智慧財產權代理有限公司
  • 類別:發明專利
  • 代理人:謝安昆、宋志強
專利背景,發明內容,專利目的,技術方案,改善效果,附圖說明,權利要求,實施方式,榮譽表彰,

專利背景

隨著網際網路技術和無線通信技術的發展和普及,群體視頻聊天、視頻會議,以及網路視頻遊戲等多人視頻通信形式使得人與人之間的溝通交流變得更加方便快捷,娛樂方式更加豐富直觀,因此越來越受到人們的歡迎。多人視頻通信是指3人或3人以上同時參與的即時視頻通信。
由於多人視頻通信中需要處理多路視頻數據,為適應多路不同的網路狀況,參與多人視頻通信的終端中通常包括多個視頻編碼器。視頻編碼的計算複雜度通常較高,同時進行多路視頻編碼的計算複雜度會更高,因此,需要在終端的處理能力有限的情況下,合理地設定各視頻編碼器的編碼參數,以便達到合理地控制計算複雜度的目的。
在實際套用中,通常會按照平均或者多數終端的處理能力為各終端上的各視頻編碼器設定統一的編碼參數,如最高編碼幀率等,各視頻編碼器按照所設定的最高編碼幀率等進行視頻編碼,並將編碼後數據進行傳送。
但是,參與到多人視頻通信中的終端可能是個人計算機(PC,Personal Computer)等傳統終端,也可能是移動電子設備,如手機或掌上電腦等新型終端,不同類型的終端在處理能力等方面存在著很大的差別,這樣,如果針對各終端中的各視頻編碼器設定統一的編碼參數,則會導致以下問題:對於處理能力較強的終端,會帶來計算資源等的浪費,從而不能達到最好的視頻通信質量,而對於處理能力較弱的終端,則會造成視頻通信質量下降等。
另外通常,當參與多人視頻通信的終端總數增加或減少時,各仍在參與通信的終端中所啟用的視頻編碼器數也會相應的增加或減少,但各已啟用的視頻編碼器仍只能按照所設定的最高編碼幀率等進行視頻編碼,而無法靈活地進行調整,如當終端中所啟用的視頻編碼器數減少時,增大各已啟用的視頻編碼器的最高編碼幀率等。
無論出現上述哪種情況,均會導致終端中的計算資源等不能被合理地利用,從而影響了整體視頻通信質量。

發明內容

專利目的

《一種多人視頻通信中的視頻編碼方法以及終端》提供了一種多人視頻通信中的視頻編碼方法以及一種終端,能夠提高整體視頻通信質量。

技術方案

一種多人視頻通信中的視頻編碼方法,當任一終端X參與到一多人視頻通信中後,進行以下處理:
A、分別統計出自身已啟用的焦點視頻編碼器數和普通視頻編碼器數;
B、根據自身的處理能力以及最新的統計結果,分別確定出焦點視頻的編碼參數以及普通視頻的編碼參數,並通知各已啟用的焦點視頻編碼器和普通視頻編碼器分別按照最新確定出的編碼參數進行視頻編碼;當已啟用的焦點視頻編碼器數和普通視頻編碼器數中的至少一個發生變化時,重複執行步驟A和B。
一種終端,包括:焦點視頻編碼器、普通視頻編碼器、自適應調節模組;自適應調節模組,用於當終端參與到一多人視頻通信中後,分別統計出終端中已啟用的焦點視頻編碼器數和普通視頻編碼器數;根據終端的處理能力以及最新的統計結果,分別確定出焦點視頻的編碼參數以及普通視頻的編碼參數,並通知各已啟用的焦點視頻編碼器和普通視頻編碼器分別按照最新確定出的編碼參數進行視頻編碼;當已啟用的焦點視頻編碼器數和普通視頻編碼器數中的至少一個發生變化時,重複執行自身功能。

改善效果

採用《一種多人視頻通信中的視頻編碼方法以及終端》所述方案,可針對參與到多人視頻通信中的每個終端,分別根據其處理能力以及所啟用的焦點視頻編碼器數和普通視頻編碼器數等有針對性地確定其焦點視頻的編碼參數以及普通視頻的編碼參數,從而使得終端中的計算資源等能夠得到更為合理的利用,進而提高了整體視頻通信質量;而且,當已啟用的焦點視頻編碼器數和普通視頻編碼器數中的至少一個發生變化,如參與多人視頻通信的終端總數增加或減少,或總數未發生變化,但發生了焦點視頻到普通視頻之間的切換,導致焦點視頻編碼器數和普通視頻編碼器數變化時,可重新確定焦點視頻的編碼參數和普通視頻的編碼參數,從而進一步提高了整體視頻通信質量。

附圖說明

圖1為該發明多人視頻通信中的視頻編碼方法實施例的流程圖。
圖2為該發明終端X確定焦點視頻的最高編碼幀率以及普通視頻的最高編碼幀率的過程示意圖。
圖3為該發明終端實施例的組成結構示意圖。

權利要求

1.一種多人視頻通信中的視頻編碼方法,其特徵在於,當任一終端X參與到一多人視頻通信中後,進行以下處理:
A、分別統計出自身已啟用的焦點視頻編碼器數和普通視頻編碼器數;
B、根據自身的處理能力以及最新的統計結果,分別確定出焦點視頻的編碼參數以及普通視頻的編碼參數,並通知各已啟用的焦點視頻編碼器和普通視頻編碼器分別按照最新確定出的編碼參數進行視頻編碼;
當已啟用的焦點視頻編碼器數和普通視頻編碼器數中的至少一個發生變化時,重複執行步驟A和B;
其中,所述編碼參數包括:最高編碼幀率;所述分別確定出焦點視頻的編碼參數以及普通視頻的編碼參數包括:
b1、根據自身的處理能力以及最新的統計結果,分別初始化焦點視頻的最高編碼幀率fb和普通視頻的最高編碼幀率fs
b2、增大fb和降低fs,並確定最新得到的fb和fs是否滿足預定條件,如果是,則重複執行步驟b2,如果否,則根據最新得到的fb確定出焦點視頻的最高編碼幀率,根據最新得到的fs確定出普通視頻的最高編碼幀率。
2.根據權利要求1所述的方法,其特徵在於,所述增大fb和降低fs包括:令fb=fb+Δf,fs=fs-Δf,Δf>0;所述根據最新得到的fb確定出焦點視頻的最高編碼幀率,根據最新得到的fs確定出普通視頻的最高編碼幀率包括:用最新得到的fb-Δf作為確定出的焦點視頻的最高編碼幀率,用最新得到的fs+Δf作為確定出的普通視頻的最高編碼幀率。
3.根據權利要求1所述的方法,其特徵在於,所述分別初始化焦點視頻的最高編碼幀率fb和普通視頻的最高編碼幀率fs包括:計算fb=fs=F/(m+n·r);其中,m表示最新統計出的普通視頻編碼器數;n表示最新統計出的焦點視頻編碼器數;r表示分別對解析度為wb×hb的焦點視頻和解析度為ws×hs的普通視頻進行編碼時計算資源消耗的比例因子,r=wb×hb/(ws×hs),或者,通過實驗測試得到分別對解析度為wb×hb的焦點視頻和解析度為ws×hs的普通視頻進行編碼時的編碼速度比,將得到的編碼速度比作為r;F表示終端X的處理能力,F=fpsenc·wusage,其中,fpsenc表示終端X的處理器滿負荷編碼一個解析度為ws×hs的視頻時的編碼速度,wusage表示所期望的編碼處理對終端X的處理器的占用率。
4.根據權利要求3所述的方法,其特徵在於,該方法進一步包括:預先通過實驗測試得到各不同主頻的處理器分別對應的fpsenc,並以表格的形式進行存儲;通過查表得到終端X的處理器的主頻對應的fpsenc
5.根據權利要求3所述的方法,其特徵在於,所述確定最新得到的fb和fs是否滿足預定條件包括:根據最新得到的fb確定出焦點視頻的主觀平均意見MOS分值,並根據最新得到的fs確定出普通視頻的MOS分值;如果焦點視頻的MOS分值與普通視頻的MOS分值之差的絕對值小於預定閾值ΔMOSTheshold,且m·fs+n·fb·r≤F,1≤fb,fs≤fmax,則確定最新得到的fb和fs滿足預定條件,fmax表示視頻通信中可能的最高編碼幀率。
6.根據權利要求5所述的方法,其特徵在於,所述根據最新得到的fb確定出焦點視頻的MOS分值,並根據最新得到的fs確定出普通視頻的MOS分值包括:預先按照預定公式分別計算出視頻通信中可能用到的每個編碼幀率對應的MOS分值,並以表格的形式進行存儲;通過查表分別得到最新得到的fb和fs對應的MOS分值;或者,直接按照預定公式分別計算出最新得到的fb和fs對應的MOS分值。
7.根據權利要求6所述的方法,其特徵在於,所述預定公式為以下之一:MOSfps(f)=5-α·[log(fmax)-log(f)],MOSfps(f)=5-ln(fmax/f);其中,α和β均為計算係數。
8.一種套用於多人視頻通信領域的終端,其特徵在於,包括:焦點視頻編碼器、普通視頻編碼器、自適應調節模組;自適應調節模組,用於當終端參與到一多人視頻通信中後,分別統計出終端中已啟用的焦點視頻編碼器數和普通視頻編碼器數;根據終端的處理能力以及最新的統計結果,分別確定出焦點視頻的編碼參數以及普通視頻的編碼參數,並通知各已啟用的焦點視頻編碼器和普通視頻編碼器分別按照最新確定出的編碼參數進行視頻編碼;當已啟用的焦點視頻編碼器數和普通視頻編碼器數中的至少一個發生變化時,重複執行自身功能;其中,所述編碼參數包括:最高編碼幀率;所述自適應調節模組中包括:第一處理單元,用於分別統計終端中已啟用的焦點視頻編碼器數和普通視頻編碼器數,並將統計結果傳送給第二處理單元;第二處理單元,用於根據終端的處理能力以及最新的統計結果,分別初始化焦點視頻的最高編碼幀率fb和普通視頻的最高編碼幀率fs,並傳送給第三處理單元;第三處理單元,用於增大fb和降低fs,並確定最新得到的fb和fs是否滿足預定條件,如果是,則重複執行自身功能,如果否,則根據最新得到的fb確定出焦點視頻的最高編碼幀率,根據最新得到的fs確定出普通視頻的最高編碼幀率,並通知各已啟用的焦點視頻編碼器和普通視頻編碼器分別按照最新確定出的最高編碼幀率進行視頻編碼;第四處理單元,用於當已啟用的焦點視頻編碼器數和普通視頻編碼器數中的至少一個發生變化時,通知第一處理單元重複執行自身功能。
9.根據權利要求8所述的終端,其特徵在於,所述第二處理單元中包括:第一處理子單元,用於計算fb=fs=F/(m+n·r);其中,m表示最新統計出的普通視頻編碼器數;n表示最新統計出的焦點視頻編碼器數;r表示分別對解析度為wb×hb的焦點視頻和解析度為ws×hs的普通視頻進行編碼時計算資源消耗的比例因子,r=wb×hb/(ws×hs),或者,通過實驗測試得到分別對解析度為wb×hb的焦點視頻和解析度為ws×hs的普通視頻進行編碼時的編碼速度比,將得到的編碼速度比作為r;F表示終端的處理能力,F=fpsenc·wusage,其中,fpsenc表示終端的處理器滿負荷編碼一個解析度為ws×hs的視頻時的編碼速度,wusage表示所期望的編碼處理對終端的處理器的占用率;第二處理子單元,用於將計算出的fb和fs傳送給第三處理單元。
10.根據權利要求9所述的終端,其特徵在於,所述第三處理單元中包括:第三處理子單元,用於計算fb=fb+Δf,fs=fs-Δf,Δf>0,並將計算結果傳送給第四處理子單元;第四處理子單元,用於根據最新得到的fb確定出焦點視頻的主觀平均意見MOS分值,根據最新得到的fs確定出普通視頻的MOS分值;如果焦點視頻的MOS分值與普通視頻的MOS分值之差的絕對值小於預定閾值ΔMOSTheshold,且m·fs+n·fb·r≤F,1≤fb,fs≤fmax,fmax表示視頻通信中可能的最高編碼幀率,則確定最新得到的fb和fs滿足預定條件,通知第三處理子單元重複執行自身功能,否則,用最新得到的fb-Δf作為確定出的焦點視頻的最高編碼幀率,用最新得到的fs+Δf作為確定出的普通視頻的最高編碼幀率,並通知各已啟用的焦點視頻編碼器和普通視頻編碼器分別按照最新確定出的最高編碼幀率進行視頻編碼。
11.根據權利要求10所述的終端,其特徵在於,第四處理子單元預先按照預定公式分別計算出視頻通信中可能用到的每個編碼幀率對應的MOS分值,並以表格的形式進行存儲,通過查表分別得到最新得到的fb和fs對應的MOS分值;或者,第四處理子單元直接按照預定公式分別計算出最新得到的fb和fs對應的MOS分值;所述預定公式為:MOSfps(f)=5-α·[log(fmax)-log(f)],或,MOSfps(f)=5-ln(fmax/f);其中,α和β均為計算係數。

實施方式

圖1為該發明多人視頻通信中的視頻編碼方法實施例的流程圖。當任一終端X參與到一多人視頻通信中後,按照圖1所示流程進行處理。
步驟11:終端X分別統計出自身已啟用的焦點視頻編碼器數和普通視頻編碼器數。
為便於表述,該實施例中,用終端X來代表任一終端,終端X可為PC、手機、掌上電腦等。
該發明中,根據關注度將視頻區分為焦點視頻和普通視頻,焦點視頻是指關注度較高的視頻,即需要重點注意的視頻,普通視頻則是指關注度較低的視頻,通常,焦點視頻的解析度較高,而普通視頻的解析度則較低。
當終端X加入到一多人視頻通信中後,需要與參與到該多人視頻通信中的其它每個遠程終端之間分別建立視頻連線;終端X的使用者(用戶)可以根據自身需求,自由選擇將各路遠端視頻作為焦點視頻還是普通視頻,並可在通信過程中進行切換,即將焦點視頻切換為普通視頻,或將普通視頻切換為焦點視頻,比如,對於某一路遠端視頻,之前不太關注,只將其作為普通視頻,但由於某種原因需要對其進行關注,則可切換為焦點視頻,可通過通信界面上顯示的按鈕等來實現切換;同樣,參與到該多人視頻通信中的其它每個遠程終端的使用者也可自由選擇將終端X產生的視頻作為焦點視頻還是普通視頻,並可在通信過程中進行切換。
在一實施方式中,針對每個遠程終端,終端X分別啟用一個視頻編碼器,在某些情況下,也可以多個遠程終端共用一個視頻編碼器。
如果有n個遠程用戶將終端X產生的視頻作為了焦點視頻,那么終端X就需要啟用nb(nb≤n)個焦點視頻編碼器,如果有m個遠程用戶將終端X產生的視頻作為了普通視頻,那么終端X就需要啟用mc(mc≤m)個普通視頻編碼器。
該步驟中,終端X分別統計出自身已啟用的焦點視頻編碼器數和普通視頻編碼器數。
步驟12:終端X根據自身的處理能力以及最新的統計結果,分別確定出焦點視頻的編碼參數以及普通視頻的編碼參數,並通知各已啟用的焦點視頻編碼器和普通視頻編碼器分別按照最新確定出的編碼參數進行視頻編碼。
由於焦點視頻的關注度高於普通視頻,因此針對焦點視頻和普通視頻,可採用不同的編碼參數,所述編碼參數主要是指最高編碼幀率,當然,在實際套用中,也可能包括其它參數,具體包括哪些參數可根據實際需要而定。
即可適當提高焦點視頻的最高編碼幀率,從而將有限的計算資源等集中在關注度高的焦點視頻上,使得焦點視頻具有更高的質量,進而提高用戶對視頻質量的主觀體驗。
但是,焦點視頻的解析度高,提高焦點視頻的最高編碼幀率後,會導致終端的計算資源消耗等急劇上升,因此,在提高焦點視頻的最高編碼幀率的同時,還需要控制終端的計算資源消耗等處於終端的處理能力範圍內。
基於上述介紹,圖2為該發明終端X確定焦點視頻的最高編碼幀率以及普通視頻的最高編碼幀率的過程示意圖。如圖2所示,包括:
步驟21:根據自身的處理能力以及最新的統計結果,分別初始化焦點視頻的最高編碼幀率fb和普通視頻的最高編碼幀率fs
fb=fs=F/(m+n·r);(1)
其中,m表示最新統計出的普通視頻編碼器數;n表示最新統計出的焦點視頻編碼器數;r表示分別對解析度為wb×hb的焦點視頻和解析度為ws×hs的普通視頻進行編碼時計算資源消耗的比例因子,可以簡單地按解析度比例計算:
r=wb×hb/(ws×hs);(2)
或者,也可以通過實驗測試得到分別對解析度為wb×hb的焦點視頻和解析度為ws×hs的普通視頻進行編碼時的編碼速度比,將得到的編碼速度比作為r,所述測試是指在終端X上進行的測試;F表示終端X的處理能力,用編碼一個解析度為ws×hs的視頻允許的最高編碼幀率進行表示,可通過如下方式計算得到:
F=fpsenc·wusage;(3)
其中,fpsenc表示終端X的處理器滿負荷編碼一個解析度為ws×hs的視頻時的編碼速度(用平均每秒鐘編碼的幀數表示),可預先通過實驗測試得到各不同主頻的處理器分別對應的fpsenc,並以表格的形式進行存儲,然後通過查表得到終端X的處理器的主頻對應的fpsenc;wusage表示所期望的編碼處理對終端X的處理器的占用率,具體取值可根據實際需要而定,可由用戶輸入設定,並可根據需要進行調整,如在終端X的電量充足時,設定wusage=60%,而在終端X的電量有限或用戶期望其省電運行時,設定wusage=20%。
步驟22:增大fb和降低fs
該步驟中,提高焦點視頻的最高編碼幀率,並降低普通視頻的最高編碼幀率,如,可以令fb=fb+Δf,fs=fs-Δf,Δf>0。Δf的具體取值可根據實際需要而定,通常為1。
步驟23:確定最新得到的fb和fs是否滿足預定條件,如果是,則重複執行步驟22,如果否,則執行步驟24。
如果最新得到的fb和fs,即經過步驟22處理後的fb和fs同時滿足(a)和(b)兩個條件,則重複執行步驟22,如果否,則執行步驟24。
條件(a):焦點視頻的主觀平均意見(MOS,MeanOpinionScore)分值與普通視頻的MOS分值之差的絕對值小於預定閾值ΔMOSTheshold;ΔMOSTheshold的具體取值可根據實際需要而定,比如為0.5;MOS分值是反映視頻的主觀質量的一種度量值,可以通過不同觀測者對於視頻質量評價得出的主觀分值進行平均得到,一般採用滿分為5分的打分方式;
可根據最新得到的fb確定出焦點視頻的MOS分值,並根據最新得到的fs確定出普通視頻的MOS分值;該發明中,可按照以下公式來計算MOS分值:
MOSfps(f)=5-α·[log(fmax)-log(f)];(4)
或,MOSfps(f)=5-ln(fmax/f);(5)
其中,α和β均為計算係數;fmax表示視頻通信中可能的最高編碼幀率;
在實際套用中,可預先按照公式(4)或(5)分別計算出視頻通信中可能用到的每個編碼幀率對應的MOS分值,並以表格的形式進行存儲,然後當需要時,通過查表分別得到最新得到的fb和fs對應的MOS分值;通常,取α=2,β=1.4,fmax=30,f=1,2,3,...,30,那么,按照公式(4)計算出的表格中將存儲有以下內容:(1,1.5469)、(2,2.4902)、(3,3)、(4,3.3409)、(5,3.5923)、(6,3.7886)、(7,3.9479)、(8,4.0805)、(9,4.1932)、(10,4.2902)、(11,4.3749)、(12,4.4495)、(13,4.5156)、(14,4.5746)、(15,4.6275)、(16,4.6752)、(17,4.7182)、(18,4.7571)、(19,4.7923)、(20,4.8242)、(21,4.8531)、(22,4.8792)、(23,4.9027)、(24,4.9238)、(25,4.9426)、(26,4.9591)、(27,4.9734)、(28,4.9853)、(29,4.9946)、(30,5),其中,括弧中的前一項表示編碼幀率,即f,後一項表示對應的MOS分值;假設最新得到的fb為10,那么經查表可知其對應的焦點視頻的MOS分值為4.2902,假設最新得到的fs為8,那么經查表可知其對應的普通視頻的MOS分值為4.0805;或者,也可以不通過查表的方式,而是直接按照公式(4)或(5)分別計算出最新得到的fb和fs對應的MOS分值。
條件(b):所有視頻的計算資源消耗不超過終端X的處理能力F,即:
m·fs+n·fb·r≤F,1≤fb,fs≤fmax。(6)
步驟24:根據最新得到的fb確定出焦點視頻的最高編碼幀率,根據最新得到的fs確定出普通視頻的最高編碼幀率,即:用最新得到的fb-Δf作為確定出的焦點視頻的最高編碼幀率,用最新得到的fs+Δf作為確定出的普通視頻的最高編碼幀率。
上述步驟21~24可舉例說明如下:
假設初始化後的fb=fs=15;
之後,令fb=16,fs=14;
確定fb=16和fs=14是否滿足預定條件,如果是,則令fb=17,fs=13,並確定fb=17和fs=13是否滿足預定條件,如果否,則將16作為確定出的焦點視頻的最高編碼幀率,將14作為確定出的普通視頻的最高編碼幀率。
經過步驟21~24的處理後,在提高焦點視頻的最高編碼幀率,使得焦點視頻具有更高的質量的同時,又保證了焦點視頻和普通視頻的主觀質量差距在合理範圍內,而且將計算資源消耗控制在了終端的處理能力範圍之內。
步驟13:終端X確定出已啟用的焦點視頻編碼器數和普通視頻編碼器數中的至少一個發生了變化,重複執行步驟11和12。
已啟用的焦點視頻編碼器數和普通視頻編碼器數中的至少一個發生變化,可包括以下情況:參與多人視頻通信的終端總數增加或減少(即有終端加入或退出),或者總數未發生變化,但發生了焦點視頻到普通視頻之間的切換(如一個遠程終端將終端X產生的視頻由焦點視頻切換為了普通視頻),或者為上述各種情況的任意組合等。
該發明中,能夠根據焦點視頻編碼器數和普通視頻編碼器數的變化快速有效地作出調節回響。當終端X關閉後,結束流程。需要說明的是,以上涉及到的各個公式也可以有其它選擇或變形,只要能夠達到相應的目的即可。至此,即完成了關於該發明方法實施例的介紹。
基於上述介紹,圖3為該發明終端實施例的組成結構示意圖。如圖3所示,包括:焦點視頻編碼器(如圖3所示EB1~EBn)、普通視頻編碼器(如圖3所示Es1~Esm)、自適應調節模組31。
其中,自適應調節模組31,用於當終端參與到一多人視頻通信中後,分別統計出終端中已啟用的焦點視頻編碼器數和普通視頻編碼器數;
根據終端的處理能力以及最新的統計結果,分別確定出焦點視頻的編碼參數以及普通視頻的編碼參數,並通知各已啟用的焦點視頻編碼器和普通視頻編碼器分別按照最新確定出的編碼參數進行視頻編碼;
當已啟用的焦點視頻編碼器數和普通視頻編碼器數中的至少一個發生變化時,重複執行自身功能。
所述編碼參數包括:最高編碼幀率。
自適應調節模組31中可具體包括(為簡化附圖,未圖示):第一處理單元,用於分別統計終端中已啟用的焦點視頻編碼器數和普通視頻編碼器數,並將統計結果傳送給第二處理單元;第二處理單元,用於根據終端的處理能力以及最新的統計結果,分別初始化焦點視頻的最高編碼幀率fb和普通視頻的最高編碼幀率fs,並傳送給第三處理單元;第三處理單元,用於增大fb和降低fs,並確定最新得到的fb和fs是否滿足預定條件,如果是,則重複執行自身功能,如果否,則根據最新得到的fb確定出焦點視頻的最高編碼幀率,根據最新得到的fs確定出普通視頻的最高編碼幀率,並通知各已啟用的焦點視頻編碼器和普通視頻編碼器分別按照最新確定出的最高編碼幀率進行視頻編碼;第四處理單元,用於當已啟用的焦點視頻編碼器數和普通視頻編碼器數中的至少一個發生變化時,通知第一處理單元重複執行自身功能。
其中,第二處理單元中又可進一步包括:第一處理子單元,用於計算fb=fs=F/(m+n·r);其中,m表示最新統計出的普通視頻編碼器數;n表示最新統計出的焦點視頻編碼器數;r表示分別對解析度為wb×hb的焦點視頻和解析度為ws×hs的普通視頻進行編碼時計算資源消耗的比例因子,r=wb×hb/(ws×hs),或者,通過實驗測試得到分別對解析度為wb×hb的焦點視頻和解析度為ws×hs的普通視頻進行編碼時的編碼速度比,將得到的編碼速度比作為r;F表示終端的處理能力,F=fpsenc·wusage,其中,fpsenc表示終端的處理器滿負荷編碼一個解析度為ws×hs的視頻時的編碼速度,wusage表示所期望的編碼處理對終端的處理器的占用率;第二處理子單元,用於將計算出的fb和fs傳送給第三處理單元。
第三處理單元中又可進一步包括:第三處理子單元,用於計算fb=fb+Δf,fs=fs-Δf,Δf>0,並將計算結果傳送給第四處理子單元;第四處理子單元,用於根據最新得到的fb確定出焦點視頻的主觀平均意見MOS分值,根據最新得到的fs確定出普通視頻的MOS分值;如果焦點視頻的MOS分值與普通視頻的MOS分值之差的絕對值小於預定閾值ΔMOSTheshold,且m·fs+n·fb·r≤F,1≤fb,fs≤fmax,fmax表示視頻通信中可能的最高編碼幀率,則確定最新得到的fb和fs滿足預定條件,通知第三處理子單元重複執行自身功能,否則,用最新得到的fb-Δf作為確定出的焦點視頻的最高編碼幀率,用最新得到的fs+Δf作為確定出的普通視頻的最高編碼幀率,並通知各已啟用的焦點視頻編碼器和普通視頻編碼器分別按照最新確定出的最高編碼幀率進行視頻編碼。
其中,第四處理子單元預先按照預定公式分別計算出視頻通信中可能用到的每個編碼幀率對應的MOS分值,並以表格的形式進行存儲,通過查表分別得到最新得到的fb和fs對應的MOS分值;或者,第四處理子單元直接按照預定公式分別計算出最新得到的fb和fs對應的MOS分值;所述預定公式為:MOSfps(f)=5-α·[1og(fmax)-log(f)],或,MOSfps(f)=5-ln(fmax/f);其中,α和β均為計算係數。
在實際套用中,除上面提到的外,圖3所示終端中還會進一步包括一些其它組成部分,如捕獲模組32、視頻解碼器(如圖3所示D1~DN)和顯示模組33。
捕獲模組32中可進一步包括:焦點視頻源捕獲單元321和普通視頻源捕獲單元322;其中,焦點視頻源捕獲單元321將捕獲到的視頻數據傳送給各已啟用的焦點視頻編碼器,普通視頻源捕獲單元322將捕獲到的視頻數據傳送給各已啟用的普通視頻編碼器;焦點視頻源捕獲單元321和普通視頻源捕獲單元322捕獲到的視頻內容一樣,但解析度不同。
通常,針對每個遠程終端,都需要啟用一個視頻解碼器,但一個視頻編碼器編碼生成的碼流可以傳送給一個或多個遠程終端。假設圖3所示終端(終端0)針對每個遠程終端,即終端1~N分別啟用了一個視頻編碼器和一個視頻解碼器,那么,終端0中共需要啟用N個視頻編碼器和N個視頻解碼器。
顯示模組33將各視頻解碼器解碼得到的焦點視頻和普通視頻進行顯示。
圖3所示終端實施例的具體工作流程請參照前述方法實施例中的相應說明。
2014年11月6日,《一種多人視頻通信中的視頻編碼方法以及終端》獲得第十六屆中國專利優秀獎。

相關詞條

熱門詞條

聯絡我們