專利名稱::用于視頻電話的視頻源速率控制的制作方法
技術(shù)領域:
:本發(fā)明涉及視頻電話(VT),且更明確地說涉及用于VT系統(tǒng)中的視頻源速率控制的技術(shù)。
背景技術(shù):
:視頻電話(VT)涉及載運音頻和視頻數(shù)據(jù)的包的實時通信。VT裝置包含視頻編碼器,其從例如視頻相機或視頻檔案的視頻捕獲裝置獲得視頻,并產(chǎn)生視頻包。類似地,VT裝置中的音頻編碼器從例如麥克風或語音合成器的音頻捕獲裝置獲得音頻,并產(chǎn)生音頻包。視頻包和音頻包放置在無線電鏈路協(xié)議(RLP)隊列中。媒體接入控制(MAC)層模塊從RLP隊列的內(nèi)容產(chǎn)生媒體接入控制(MAC)層包。將MAC層包轉(zhuǎn)換為物理(PHY)層包以用于在通信信道上傳輸?shù)搅硪籚T裝置。在移動VT應用中,VT裝置經(jīng)由從基站到作為無線終端的VT裝置的無線前向鏈路(FL)(或"下行鏈路")接收物理層包。VT裝置經(jīng)由到基站的無線反向鏈路(RL)(或"上行鏈路")傳輸PHY層包。每一VT裝置包含PHY和MAC層以轉(zhuǎn)換所接收的PHY和MAC層包,并將包有效負載重新組合為音頻包和視頻包。VT裝置內(nèi)的視頻解碼器對視頻數(shù)據(jù)進行解碼以用于經(jīng)由顯示裝置向用戶呈現(xiàn)。VT裝置內(nèi)的音頻解碼器對音頻數(shù)據(jù)進行解碼以用于經(jīng)由音頻揚聲器輸出。無線環(huán)境中的移動VT可為挑戰(zhàn)性的。無線信道的數(shù)據(jù)速率有限且隨著時間變化。舉例來說,在CDMA2000lxEV-DO版本0網(wǎng)絡中,數(shù)據(jù)速率可能由于無線覆蓋區(qū)域內(nèi)的信道條件或多個VT用戶之間的業(yè)務擁塞而變化。另外,當數(shù)據(jù)速率降到零時,例如當沒有要發(fā)送的數(shù)據(jù)時,恢復到合理的數(shù)據(jù)速率可能需要時間。因此,移動VT可能易于受到不合意的視頻和音頻延遲的影響,這損害了實時進行流暢的視頻會議的能力。
發(fā)明內(nèi)容大體上,本發(fā)明針對用于VT應用的視頻源速率控制的技術(shù)。信道條件、過量的視頻內(nèi)容或兩者可引起視頻傳輸中的顯著延遲。例如,當反向鏈路(RL)通過量減小時,視頻可占滿RL并增加視頻傳輸延遲。本發(fā)明提供用于控制源視頻編碼速率以減小信道條件范圍內(nèi)的視頻延遲的技術(shù)。在此意義上,視頻源速率控制技術(shù)可為信道自適應的。所述技術(shù)在當視頻源編碼速率由于信道條件或過量的視頻內(nèi)容或復雜性而減小時減少空間和時間質(zhì)量降級方面是有效的。在一些實施例中,使用幀預算的基于雙緩沖器的估計來控制源視頻編碼速率,所述幀預算界定可用于所述視頻幀的編碼位數(shù)目?;陔p緩沖器的估計技術(shù)可跟蹤物理視頻緩沖器相對于閾值的充滿度和虛擬視頻緩沖器相對于閾值的充滿度。接著基于所得的幀預算來控制源視頻編碼速率。所述虛擬視頻緩沖器的內(nèi)容取決于由目標編碼速率強加的位限制,而所述物理視頻緩沖器的內(nèi)容取決于由變化的信道條件(例如,RL通過量)強加的信道限制。對物理視頻緩沖器充滿度的考慮允許視頻源速率控制技術(shù)為信道自適應的。物理視頻緩沖器中經(jīng)編碼視頻量至少部分是信道可容納額外視頻包的速率的函數(shù)。對虛擬視頻緩沖器充滿度的考慮允許視頻源速率控制技術(shù)避免對可占滿信道的過量視頻進行編碼。視頻源速率控制技術(shù)可結(jié)合信道自適應視頻包成形技術(shù)使用,所述成形技術(shù)基于信道條件控制從物理視頻緩沖器提取的視頻包的大小。信道條件影響從物理視頻緩沖器移除的視頻量,所述量提供對用于制訂幀預算的信道條件的間接指示。一旦幀預算確立,那么也可在P域中估計視頻塊預算,以將幀預算的一部分分配到每一幀內(nèi)的個別視頻塊。在一個實施例中,本發(fā)明提供一種方法,其包括將經(jīng)編碼視頻添加到物理視頻緩沖器;從所述物理視頻緩沖器移除所述經(jīng)編碼視頻包以用于在信道上傳輸;維持虛擬視頻緩沖器,其表示相對于目標編碼速率的經(jīng)編碼視頻的量;以及基于所述物理視頻緩沖器的充滿度和所述虛擬視頻緩沖器的充滿度控制所述視頻的實際編碼速率。本發(fā)明還預期一種計算機可讀媒體,其包括用以致使一個或一個以上處理器執(zhí)行此方法的指令。舉例來說,本發(fā)明還提供一種計算機可讀媒體,其包括用以致使一個或一個以上處理器進行以下操作的指令將經(jīng)編碼視頻添加到物理視頻緩沖器;從所述物理視頻緩沖器移除所述經(jīng)編碼視頻包以用于在信道上傳輸;維持虛擬視頻緩沖器,其表示相對于目標編碼速率的經(jīng)編碼視頻的量;以及基于所述物理視頻緩沖器的充滿度和所述虛擬視頻緩沖器的充滿度控制所述視頻的實際編碼速率。在另一實施例中,本發(fā)明提供一種系統(tǒng),其包括視頻編碼器;物理視頻緩沖器,其存儲由所述視頻編碼器編碼的視頻;包成形器,其從所述物理視頻緩沖器移除所述經(jīng)編碼視頻以用于在信道上傳輸;虛擬視頻緩沖器,其表示相對于目標編碼速率的所述經(jīng)編碼視頻量;以及控制器,其基于所述物理視頻緩沖器的充滿度和所述虛擬視頻緩沖器的充滿度控制所述視頻的實際編碼速率。在附圖和下文的描述中陳述一個或一個以上實施例的細節(jié)。從描述和圖式以及從權(quán)利要求書將明了其它特征、目的和優(yōu)點。圖1是說明用于VT應用的音頻/視頻編碼和解碼系統(tǒng)的框圖。圖2是說明實施視頻源速率控制的視頻編碼系統(tǒng)的框圖。圖3是說明圖2的視頻編碼系統(tǒng)的示范性實施例的框圖,其中視頻源速率控制使用基于雙緩沖器的幀預算估計。圖4是說明圖2的視頻編碼系統(tǒng)集成在實施信道自適應視頻包成形的音頻/視頻編碼系統(tǒng)內(nèi)的框圖。圖5是說明用于視頻源速率控制的技術(shù)的流程圖。圖6是更詳細說明用于視頻源速率控制的技術(shù)的流程圖。具體實施例方式圖1是說明視頻編碼和解碼系統(tǒng)10的框圖。如圖l所示,系統(tǒng)10包含編碼器系統(tǒng)12和解碼器系統(tǒng)14,其通過傳輸信道16連接。在圖l的實例中,編碼器系統(tǒng)12與第一視頻通信裝置相關(guān)聯(lián),且包含音頻源17、視頻源18、視頻編碼器20、音頻編碼器22、視頻包成形器24、實時傳送協(xié)議(RTP)/用戶數(shù)據(jù)報協(xié)議(UDP)/因特網(wǎng)協(xié)議(IP)/點對點協(xié)議(PPP)轉(zhuǎn)換模塊26、無線電鏈路協(xié)議(RLP)隊列28、MAC層模塊30和物理(PHY)層模塊32。解碼器系統(tǒng)14與另一視頻通信裝置相關(guān)聯(lián),且包含PHY層模塊34、MAC層模塊36、RLP隊列38、RTP/UDP/IP/PPP轉(zhuǎn)換模塊40、視頻解碼器42、音頻解碼器44、音頻輸出裝置46和視頻輸出裝置48。如將描述,視頻編碼器20提供信道自適應視頻源速率控制以減少可變信道通過量條件(例如存在于例如CDMA2000lxE'V-DO版本0網(wǎng)絡中的那些條件)下的視頻延遲。反向鏈路(RL)通過量是EV-DO版本0網(wǎng)絡內(nèi)視頻延遲的關(guān)鍵因素。視頻編碼器20可至少部分地根據(jù)RL通過量來控制視頻源編碼速率。視頻編碼器20可有用于具有較低端到端延遲要求(例如,小于500毫秒)的環(huán)境中。端到端延遲指例如在移動無線VT系統(tǒng)中發(fā)送者與接收者之間視頻傳輸?shù)难舆t。如本發(fā)明中描述的信道自適應源速率控制可自適應地控制視頻傳輸?shù)亩说蕉搜舆t,同時當以恒定位速率(CBR)或可變位速率(VBR)傳輸信道(例如無線信道)操作時在空間與時間視覺質(zhì)量之間做出折衷。視頻編碼器20可有效減少在視頻源編碼速率由于信道條件或過量視頻內(nèi)容或復雜性而減小時的空間和時間質(zhì)量的降級?,F(xiàn)有的速率控制方案不支持在空間與時間視頻質(zhì)量之間的合理折衷的情況下合意的端到端延遲。例如較小的固定視頻緩沖器大小的使用可導致較大百分比的跳幀,從而引起急跳運動和低空間視覺質(zhì)量。相反地,較大視頻緩沖器大小的使用可產(chǎn)生較好的空間質(zhì)量,但往往導致可讓最終用戶不安和煩擾的較大可變延遲。大體上,可通過參考包含緩沖和傳輸延遲的端到端延遲、空間視覺質(zhì)量、跳過視頻幀的數(shù)目、指示帶寬利用不足的編碼器緩沖下溢、引起幀跳過的編碼器緩沖溢出、指示沒有數(shù)據(jù)要解碼和較少顯示刷新的解碼器緩沖下溢、指示丟失數(shù)據(jù)的解碼器緩沖溢出、接收器顯示刷新速率、音頻-視頻同步、編碼器側(cè)峰值信噪比(PSNR)以及第一內(nèi)(I)幀后的初始緩沖延遲來評估視頻源編碼速率控制的性能。根據(jù)本發(fā)明的視頻編碼器20可采用基于雙緩沖器的方案以用于估計幀預算,所述幀預算界定可用于視頻幀的編碼位的數(shù)目。基于雙緩沖器的估計技術(shù)可跟蹤物理視頻緩沖器相對于閾值的充滿度和虛擬視頻緩沖器相對于閾值的充滿度。接著基于所得的幀預算來控制源視頻編碼速率。虛擬視頻緩沖器的內(nèi)容取決于由目標編碼速率強加的位限制,而物理視頻緩沖器的內(nèi)容取決于由變化的信道條件(例如,反向鏈路(RL)通過量)強加的信道限制。以此方式,視頻編碼器20可能能夠以較低跳幀和良好空間質(zhì)量支持指定的目標編碼速率以及指定的端到端延遲。在一些實施例中,視頻編碼器20可結(jié)合視頻包成形器24而工作,所述視頻包成形器24基于信道條件執(zhí)行視頻包成形。舉例來說,視頻包成形器24可以至少部分基于信道條件的包大小將視頻包化。在一些實施例中,視頻包成形器可將音頻包傳輸優(yōu)先于視頻包傳輸,以便避免過量的音頻延遲。視頻包成形器24可控制視頻包的大小以及為在信道16上傳輸而從物理視頻緩沖器移除視頻包的速率。視頻包的大小和速率又影響物理視頻緩沖器的充滿度。對于不良信道條件,視頻包的大小以及產(chǎn)生視頻包的速率可由視頻包成形器24減小以避免占滿RL。對于較好的信道條件,視頻包的大小以及產(chǎn)生視頻包的速率可由視頻包成形器24增加。視頻編碼器20監(jiān)視物理視頻幀緩沖器充滿度以及虛擬視頻幀緩沖器充滿度,以根據(jù)信道條件和位限制自適應地控制編碼速率。系統(tǒng)IO可提供雙向視頻和音頻傳輸以例如用于經(jīng)由傳輸信道16的視頻電話。因此,通??稍谛诺?6的相對端上提供可逆編碼、解碼和轉(zhuǎn)換模塊。在一些實施例中,編碼器系統(tǒng)12和解碼器系統(tǒng)14可實施在視頻通信裝置內(nèi),例如為視頻串流、視頻電話或兩者而裝備的無線移動終端。移動終端可根據(jù)例如RTP、UDP、IP或PPP的包交換標準來支持VT。RTP/UDP/IP/PPP轉(zhuǎn)換模塊將適當?shù)腞TP/UDP/IP/PPP標頭數(shù)據(jù)添加到從音頻編碼器22和視頻包成形器24接收的音頻和視頻數(shù)據(jù),并將數(shù)據(jù)放置在RLP隊列28中。RTP在UDP的頂部運行,而UDP在IP的頂部運行,且IP在PPP的頂部運行。MAC層模塊30從RLP隊列28的內(nèi)容產(chǎn)生MACRLP包。PHY層模塊32將MACRLP包轉(zhuǎn)換為PHY層包以用于在信道16上傳輸。解碼系統(tǒng)14的PHY層模塊34和MAC層模塊36以可逆方式操作。PHY層模塊34將從信道16接收的PHY層包轉(zhuǎn)換為MACRLP包。MAC層模塊36將MACRLP包放置到RLP隊列38中。RTP/UDP/IP/PPP轉(zhuǎn)換模塊40從RLP隊列38中的數(shù)據(jù)剝離標頭信息,并重新組合視頻和音頻數(shù)據(jù)以用于分別傳達到視頻解碼器42和音頻解碼器44。系統(tǒng)10可經(jīng)設計以支持一個或一個以上無線通信技術(shù),例如碼分多址(CDMA)、頻分多址(FDMA)、時分多址(TDMA)、或正交頻分多路復用(OFDM)或另一合適的無線技術(shù)??筛鶕?jù)多種無線電接入技術(shù)中的任一者來傳達以上無線通信技術(shù)。舉例來說,可根據(jù)cdma2000或?qū)拵DMA(WCDMA)標準來傳達CDMA。可根據(jù)全球移動通信系統(tǒng)(GSM)標準來傳達TDMA。通用移動電信系統(tǒng)(UMTS)標準允許GSM或WCDMA操作。通常對于VT應用,系統(tǒng)IO將經(jīng)設計以支持高數(shù)據(jù)速率(HDR)技術(shù),例如cdma2000lxEV-DO版本0或后續(xù)的EV-DO版本。視頻編碼器20根據(jù)例如MPEG-4的視頻壓縮方法產(chǎn)生經(jīng)編碼的視頻數(shù)據(jù)。可使用其它視頻壓縮方法,例如國際電信聯(lián)盟(ITU)H.263、ITUH.264或MPEG-2方法。音頻編碼器22編碼音頻數(shù)據(jù)以伴隨視頻數(shù)據(jù)。視頻源18可以是視頻捕獲裝置,例如一個或一個以上視頻相機、一個或一個以上視頻檔案或視頻相機與視頻檔案的組合??筛鶕?jù)例如自適應多速率窄帶(AMR-NB)或其它技術(shù)的音頻壓縮方法來編碼音頻數(shù)據(jù)。音頻源n可以是音頻捕獲裝置,例如麥克風或語音合成器裝置。對于VT應用,視頻將允許一方觀看VT會議,且音頻將允許所述方的說話聲音被聽見。在操作中,RTP/UDP/IP/PPP轉(zhuǎn)換模塊26從視頻編碼器20和音頻編碼器22獲得視頻和音頻數(shù)據(jù)包。如先前提到,RTP/UDP/IP/PPP轉(zhuǎn)換模塊26將適當?shù)臉祟^信息添加到音頻包,并將所得的數(shù)據(jù)插入在RLP隊列28內(nèi)。同樣,RTP/UDP/IP/PPP轉(zhuǎn)換模塊26將適當?shù)臉祟^信息添加到視頻包,并將所得的數(shù)據(jù)插入在RLP隊列28內(nèi)。MAC層模塊30檢索來自RLP隊列28的數(shù)據(jù),并形成MAC層包。每個MAC層包載運RTP/UDP/IP/PPP標頭信息和包含在RLP隊列28內(nèi)的音頻或視頻包數(shù)據(jù)。音頻包獨立于視頻包而插入RLP隊列28。然而,包成形器24控制添加到RLP隊列28的視頻包的大小以使得每個音頻包可由下一可用的MAC層包載運。在一些情況下,從RLP隊列28的內(nèi)容產(chǎn)生的MAC層包將僅載運標頭信息和視頻包數(shù)據(jù)。在其它情況下,MAC層包將僅載運標頭信息和音頻包數(shù)據(jù)。在許多情況下,MAC層包將載運標頭信息、音頻包數(shù)據(jù)和視頻包數(shù)據(jù),其取決于RLP隊列28的內(nèi)容。MAC層包可根據(jù)無線電鏈路協(xié)議(RLP)來配置,且可稱為MACRLP包。PHY層模塊32將MACRLP音頻-視頻包轉(zhuǎn)換為PHY層包以用于在信道16上傳輸。信道16將PHY層包載運到解碼器系統(tǒng)14。信道16可為編碼器系統(tǒng)12與解碼器系統(tǒng)14之間的任何物理連接。舉例來說,信道16可以是有線連接,例如局域或廣域有線網(wǎng)絡?;蛘呷绫疚乃觯诺?6可以是例如蜂窩式、衛(wèi)星或光學連接的無線連接。信道條件可為有線和無線信道的重點,但對于經(jīng)由無線信道16執(zhí)行的移動VT應用來說尤其成問題,其中信道條件可能由于衰退或擁塞而受影響。根據(jù)本發(fā)明,視頻編碼器20對來自視頻源18的視頻進行編碼,并將經(jīng)編碼視頻添加到物理視頻緩沖器。視頻包成形器24將物理視頻緩沖器內(nèi)的視頻內(nèi)容包化,并從物理視頻緩沖器移除經(jīng)編碼視頻包以用于在信道16上傳輸。視頻包成形器24從物理視頻緩沖器移除視頻包的速率以及包的大小部分地取決于與信道16相關(guān)聯(lián)的信道條件。舉例來說,信道16的特征可在于具有根據(jù)信道條件而變化的通過量的反向鏈路(RL)。視頻編碼器20維持虛擬視頻緩沖器,所述虛擬視頻緩沖器表示相對于目標編碼速率的經(jīng)編碼視頻的量。目標編碼速率可為針對在信道16上傳輸?shù)囊曨l包指定的最大編碼速率。視頻編碼器20基于物理視頻緩沖器的充滿度和虛擬視頻緩沖器的充滿度來控制來自視頻源18的視頻的實際編碼速率。對物理視頻緩沖器充滿度的考慮允許視頻編碼器20應用的視頻源速率控制為信道自適應的。物理視頻緩沖器中的視頻量部分地是信道可容納額外視頻包的速率的函數(shù)。對虛擬視頻緩沖器充滿度的考慮允許視頻編碼器20應用的視頻源速率控制技術(shù)避免了在給定最大目標編碼速率時對可占滿信道的過量視頻進行編碼。視頻包成形器24控制提供到RTP/UDP/IP/PPP轉(zhuǎn)換模塊26的每個視頻包的大小。視頻包成形器24可為任何包化器,其將物理視頻緩沖器中的視頻包化并移除視頻包以用于在信道16上傳輸。然而在一些實施例中,視頻源速率控制技術(shù)可結(jié)合信道自適應視頻包成形技術(shù)而使用,所述成形技術(shù)部分地基于信道條件控制從物理視頻緩沖器提取的視頻包的大小,并將來自音頻編碼器22的音頻包的傳輸列入優(yōu)先。舉例來說,視頻包成形器24可調(diào)整視頻包的大小以使得每個音頻包可由下一可用的MAC層包容納。受控的對視頻包的大小調(diào)整防止了由信道條件、較大視頻包或兩者引起的音頻延遲。當音頻包可用時,其被置于RLP隊列中用于包含在由MAC層模塊30產(chǎn)生的下一可用的MACRLP包中。音頻包可與經(jīng)大小調(diào)整以允許用于將音頻包置于MACRLP包內(nèi)的空間的視頻包相組合。通過將音頻列入優(yōu)先,可在沒有實質(zhì)延遲的情況下傳送VT會議的音頻部分,即使視頻部分可能經(jīng)受由于信道條件帶來的延遲。盡管視頻可能受到信道條件損害,但視頻包成形器24將音頻列入優(yōu)先以確保VT會議的各方仍能夠流暢地進行口頭對話。視頻包成形器24可經(jīng)配置以在其能夠基于信道條件調(diào)節(jié)視頻包大小的意義上為信道自適應的。以此方式,編碼器系統(tǒng)12可將音頻包的傳輸列入優(yōu)先以避免在信道條件不良時的音頻延遲。同時,視頻包成形器24可確保音頻列入優(yōu)先不會導致視頻包不完全包化。換句話說,視頻包成形器24將視頻包的大小調(diào)整為足夠小,以允許在下一可用的MACRLP包中包含一個或一個以上音頻包,但不是太小而使得浪費MACRLP包中的過量空間。因此,視頻包成形器24可支持音頻包的列入優(yōu)先和視頻包的有效傳輸。當應用信道自適應視頻包成形時,可以視頻延遲增加為代價實現(xiàn)對音頻數(shù)據(jù)給定的較高優(yōu)先級。當反向鏈路(RL)通過量減小時視頻延遲增加。根據(jù)本發(fā)明,為了避免過量的視頻延遲,根據(jù)信道通過量控制視頻源速率。解碼器系統(tǒng)14的PHY層模塊34識別MAC層包與PHY層包,并將內(nèi)容重新組合為MACRLP包。MAC層模塊36接著重新組合MACRLP包的內(nèi)容以提供用于插入RLP隊列38內(nèi)的視頻和音頻包。RTP/UDP/IP/PPP模塊40移除伴隨的標頭信息并將視頻包提供到視頻解碼器42,將音頻包提供到音頻解碼器44。視頻解碼器42對視頻數(shù)據(jù)幀進行解碼以產(chǎn)生用于驅(qū)動顯示裝置的視頻數(shù)據(jù)流。音頻解碼器44對音頻數(shù)據(jù)進行解碼以產(chǎn)生用于例如經(jīng)由音頻揚聲器呈現(xiàn)給用戶的音頻信息。如上論述,視頻包成形器24控制提交給RTP/UDP/IP/PPP轉(zhuǎn)換模塊26的視頻包的大小。具體來說,視頻包成形器24可經(jīng)配置以控制視頻包的大小以便將MACRLP包中的音頻包的傳輸列入優(yōu)先,并防止視頻包占滿RLP隊列38。以此方式,可在沒有實質(zhì)延遲的情況下傳送VT會議的音頻部分,即使視頻部分可能經(jīng)受由于信道條件帶來的延遲。盡管視頻可能受到信道條件損害,但視頻包成形器24確保VT會議的各方仍能夠流暢地進行口頭對話。視頻包成形器24應用的包成形技術(shù)可應用一個或一個以上規(guī)則以確保音頻包的優(yōu)先傳輸。例如根據(jù)一個規(guī)則,應在從RLP隊列28的內(nèi)容產(chǎn)生的剛好下一可用的MACRLP包中發(fā)送音頻包。音頻幀由音頻編碼器22在第一周期性間隔產(chǎn)生。MACRLP包由MAC層模塊30在第二周期性間隔產(chǎn)生。在給定間隔產(chǎn)生的音頻幀應置于由MAC層模塊30產(chǎn)生的下一可用的MACRLP包中。在一些實施例中,作為選擇,RLP隊列28的總輸出隊列大小以及音頻包大小應能夠在一個MACRLP包中載運??上鄬τ赩T序列的每個包應用各種規(guī)則。盡管可以確??稍趩我籑ACRLP包中載運音頻和視頻的方式固有地調(diào)整一些視頻包的大小,但其它視頻包可能較大,且需要減小大小以便確保尤其是在信道條件降級時可在單一MACRLP包中載運音頻和視頻。通過相對于VT序列的每個包應用所述技術(shù),即使視頻的內(nèi)容非常多或者信道帶寬實質(zhì)有限,也可確保令人滿意的語音通信。視頻包成形器24控制提交給RTP/UDP/IP/PPP轉(zhuǎn)換模塊26的每個視頻包的大小以用于插入RLP隊列28中。視頻包成形器24可確保音頻包不會由于非常多的視頻內(nèi)容對連續(xù)MACRLP包的消耗而延遲。替代地,當音頻可用時,將來自視頻編碼器20的視頻劃分為具有經(jīng)選擇以允許每個MACRLP包載運音頻和視頻的大小的包。每個音頻幀可用作提供到RLP隊列28的音頻包?;蛘咴谝恍嵤├?,音頻包可捆扎以連續(xù)間隔提供的多個音頻幀。在一些實施例中,視頻包成形器24可基于針對在連續(xù)音頻幀之間產(chǎn)生的MAC層包的估計信道通過量確定每個MAC層包的視頻包大小。可基于由當前無線信道傳輸速率、無線基站活動以及傳輸功率限制中的一者或一者以上表示的信道條件來估計通過量。舉例來說,可基于當前MAC層數(shù)據(jù)速率、反向活動(RA)位以及功率放大器(PA)限制來確定信道條件。根據(jù)本發(fā)明,視頻編碼器20部分地基于物理視頻緩沖器充滿度而應用自適應源速率控制。在此情況下,如果信道條件不支持視頻編碼速率,那么視頻編碼器20可減小源視頻編碼速率。圖2是說明實施視頻源速率控制的視頻編碼系統(tǒng)IO的框圖。如圖2所示,視頻編碼器20包含視頻編碼引擎50、物理視頻緩沖器52和視頻速率控制器54。視頻編碼引擎50從視頻源18獲得視頻數(shù)據(jù),并以視頻速率控制器54控制的速率對視頻數(shù)據(jù)進行編碼。視頻編碼引擎50接著將經(jīng)編碼視頻置于物理視頻緩沖器52中。視頻包成形器24從視頻緩沖器52移除視頻數(shù)據(jù),并將視頻數(shù)據(jù)包化以用于在信道16上傳輸。視頻包的大小可部分地隨信道16上的信道條件(例如RL通過量)而變。視頻速率控制器54監(jiān)視物理視頻緩沖器52的充滿度,并至少部分地基于所述充滿度來控制視頻編碼引擎50應用的視頻編碼速率??筛鶕?jù)物理視頻緩沖器52的當前充滿度以逐幀為基礎更新編碼速率。另外,如將描述,視頻速率控制器54可維持虛擬視頻緩沖器。以此方式,視頻速率控制器54可使用幀預算的基于雙緩沖器的估計來控制源視頻編碼速率,所述預算界定可用于視頻幀的編碼位的數(shù)目?;陔p緩沖器的估計技術(shù)跟蹤物理視頻緩沖器52相對于闊值的充滿度和虛擬視頻緩沖器相對于閾值的充滿度。接著視頻速率控制器54基于所得的幀預算來控制源視頻編碼速率。虛擬視頻緩沖器的內(nèi)容取決于由目標編碼速率強加的位限制,而物理視頻緩沖器52的內(nèi)容取決于由變化的信道條件(例如,RL通過量)強加的信道限制。可根據(jù)RL通過量縮放虛擬視頻緩沖器的大小。對物理視頻緩沖器52的充滿度的考慮允許視頻源速率控制技術(shù)為信道自適應的。物理視頻緩沖器52中的視頻量部分地隨信道16可容納額外視頻包的速率而變化。對虛擬視頻緩沖器充滿度的考慮允許視頻速率控制器54避免對可占滿信道16的過量視頻進行編碼。虛擬視頻緩沖器的充滿度可隨目標編碼速率而變化,例如包含目標位速率和目標幀速率。實際上,虛擬視頻緩沖器可用于控制幀位分配和/或跳幀。視頻編碼器20可提供若干合意的特征。舉例來說,視頻編碼器20可提供大體上CODEC獨立的視頻源速率控制方案。舉例來說,可根據(jù)MPEG4、ITUH.263或ITUH.264來調(diào)整視頻編碼器20以用于視頻編碼。另外,視頻編碼器20可能容易受DSP或嵌入式邏輯核心內(nèi)的簡單實施方案的影響。在一些實施例中,視頻編碼器20可應用基于模型的速率控制,例如在P域中應用視頻塊速率控制。舉例來說,一旦針對特定視頻幀確立幀位預算,那么可使用P域速率控制在幀內(nèi)的視頻塊(例如,宏塊(MB))之間分配幀位預算。接著可將個別MB的P域值映射到量化參數(shù)(QP)值。圖3是說明圖2的視頻編碼系統(tǒng)10的示范性實施例的框圖,其中視頻源速率控制使用基于雙緩沖器的幀預算估計。如圖3所示,視頻編碼引擎50從視頻源18獲得視頻并例如根據(jù)MPEG4或其它編碼技術(shù)產(chǎn)生經(jīng)編碼視頻數(shù)據(jù)位流。將經(jīng)編碼視頻置于物理視頻緩沖器52中。在圖3的實例中,視頻速率控制器54包含速率控制單元56、緩沖器信息單元58以及虛擬視頻緩沖器60。緩沖器信息單元58監(jiān)視物理視頻緩沖器52的充滿度,其隨由視頻包成形器24從物理視頻緩沖器移除的視頻包的大小而變化。視頻包的大小又隨例如RL通過量的信道限制而變化。另外,緩沖器信息單元58監(jiān)視虛擬視頻緩沖器60的充滿度,其隨由視頻編碼器20編碼的視頻量以及例如目標編碼速率(包含目標位速率和目標幀速率)的位速率限制而變化?;谖锢硪曨l緩沖器52的充滿度和虛擬視頻緩沖器60的充滿度,緩沖器信息單元58產(chǎn)生緩沖器值以供速率控制單元56分析。在一些實施例中,緩沖器信息單元58可產(chǎn)生物理視頻緩沖器充滿度和虛擬視頻緩沖器充滿度的最大值,作為提供到速率控制單元56的緩沖器值。物理視頻緩沖器充滿度或虛擬視頻緩沖器充滿度可通過系數(shù)加權(quán)以將物理視頻緩沖器52優(yōu)先于虛擬視頻緩沖器60,反之亦然。速率控制單元56可首先將從緩沖器信息單元58接收的緩沖器值與跳過閾值Tskip相比較。如果緩沖器值滿足或超過跳過閾值Tskip,那么速率控制單元56指示視頻編碼引擎50跳過下一視頻幀的編碼。在此情況下,不需要確定幀預算,因為將不對下一幀進行編碼。如果緩沖器值小于跳過閾值Tskip,那么速率控制單元56確定將由視頻編碼引擎50使用幀預算來編碼下一幀。幀預算界定為編碼下一視頻幀而分配的編碼位的數(shù)目。除估計幀位預算(即用于整個幀的位數(shù)目)以外,速率控制單元56還可估計視頻塊預算。視頻塊預算界定將分配到幀內(nèi)每個視頻塊(例如,宏塊(MB))的編碼位的數(shù)目??稍谝曨l塊上均勻分配幀預算,或基于視頻塊預算方案分配幀預算。舉例來說,視頻塊預算可將幀與MB位預算的MB級參數(shù)P域映射應用于每個MB的量化參數(shù)(QP)。在一些實施例中,可對每個MBQP進行后處理以維持均勻的幀內(nèi)空間質(zhì)量??煽紤]可能跳過的MB的QP以便產(chǎn)生符合MPEG-4的位流。在一些實施例中,物理視頻緩沖器52可經(jīng)配置以在視頻數(shù)據(jù)駐留在緩沖器內(nèi)歷時超過一閾值的時間周期時丟棄所述視頻數(shù)據(jù)。舉例來說,在視頻編碼引擎50已將特定視頻數(shù)據(jù)幀置于視頻緩沖器52中之后,其可能由于不良信道條件而維持在物理視頻緩沖器中歷時延長的時間周期。在此情況下,盡管可從視頻編碼引擎50得到較多的經(jīng)編碼視頻,但在物理視頻緩沖器52中可能沒有可用的空間。為了容納新編碼的數(shù)據(jù),物理視頻緩沖器52可經(jīng)配置以例如在先入先丟棄基礎上丟棄最老的視頻數(shù)據(jù)。丟棄視頻數(shù)據(jù)可能僅涉及拋棄視頻數(shù)據(jù)并用新編碼的視頻數(shù)據(jù)覆寫由視頻數(shù)據(jù)先前占據(jù)的緩沖器空間。丟棄的數(shù)據(jù)可為一幀數(shù)據(jù)或某個預定量的數(shù)據(jù)(例如,以字節(jié)為單位測量)。當視頻數(shù)據(jù)已在物理視頻緩沖器52中歷時超過閾值的時間周期時可丟棄所述視頻數(shù)據(jù)?;蛘撸糜趶奈锢硪曨l緩沖器52丟棄視頻數(shù)據(jù)的標準可包含超過閾值的時間以及來自編碼引擎50的正在編碼額外視頻數(shù)據(jù)的指示,所述額外數(shù)據(jù)需要物理視頻緩沖器內(nèi)的空間。在任一情況下,物理視頻緩沖器52中視頻數(shù)據(jù)的至少一部分被丟棄以為新編碼視頻數(shù)據(jù)騰出空間。結(jié)合丟棄視頻數(shù)據(jù),物理視頻緩沖器52可提供反饋到編碼引擎50以指示視頻數(shù)據(jù)將被丟棄。響應于反饋,編碼引擎50可在編碼過程中應用早期錯誤控制技術(shù)來減輕丟棄的視頻數(shù)據(jù)對視頻質(zhì)量的影響。圖4是說明圖2的視頻編碼系統(tǒng)10在實施信道自適應視頻包成形的音頻/視頻編碼系統(tǒng)內(nèi)的集成的框圖。如先前提到,信道自適應視頻源速率控制可結(jié)合任何視頻包化方案使用。然而在一些應用中,可能希望將信道自適應視頻源速率控制與信道自適應視頻包成形方案一起應用,所述方案例如為先前描述的將音頻優(yōu)先于視頻以用于在信道16上傳輸?shù)囊曨l包成形方案。如圖4所示,視頻包成形器24從物理視頻緩沖器52移除視頻數(shù)據(jù),并將視頻數(shù)據(jù)包化以用于傳達到RTP/UDP/IP/PPP轉(zhuǎn)換模塊26。而且可根據(jù)由視頻包成形器24接收的信道信息和RLP隊列大小所證明的信道條件來確定每個包的大小。音頻編碼器22包含音頻編碼引擎61和音頻緩沖器/捆扎器62。音頻編碼引擎61對從音頻源接收的音頻進行編碼。音頻緩沖器/捆扎器62接收來自音頻編碼引擎61的音頻數(shù)據(jù)并產(chǎn)生音頻幀以用于傳達到RTP/UDP/IP/PPP轉(zhuǎn)換模塊26。RTP/UDP/IP/PPP轉(zhuǎn)換模塊26將MACRLP包置于RLP隊列28內(nèi)以用于在信道16上傳輸。反向業(yè)務信道(RTC)MAC單元64實施RTCMAC協(xié)議以提供通信裝置在信道16的反向鏈路(RL)上進行傳輸所遵循的程序。為了方便,圖4中未展示MAC層模塊30和PHY層模塊32。視頻包成形器24基于一個或一個以上輸入控制每個視頻包的大小。輸入可與信道條件、RLP隊列特性以及音頻包大小和狀態(tài)有關(guān)。視頻包成形器24產(chǎn)生具有基于輸入估計的大小的視頻包。視頻包大小可服從最小大小。視頻緩沖器52緩沖從視頻編碼器20接收的視頻信息,并存儲視頻信息以供視頻包成形器24進行包化。音頻緩沖器62緩沖從音頻編碼器22接收的音頻幀信息并將信息傳遞到RTP/UDP/IP/PPP轉(zhuǎn)換模塊26。音頻和視頻包彼此獨立地插入RLP隊列28中??煽刂朴梢曨l包成形器24產(chǎn)生的視頻包的大小以確保在由MAC層模塊30(圖4中未圖示)產(chǎn)生的下一可用MACRLP包中將存在用于音頻包的足夠空間。特定來說,RLP隊列28沒有被視頻包占滿,從而確保RLP隊列中的音頻包可隨下一MACRLP包一起發(fā)送。在圖4的實例中,視頻包成形器24可接收若干輸入,包含音頻包定時器、音頻優(yōu)先級值、RLP隊列大小以及信道信息。音頻包定時器指示音頻信息目前在音頻緩沖器62中是否可用,且如果是,那么指示將傳達每個音頻幀的時序。如果以例如每20ms的間隔傳達音頻幀,那么在音頻幀可用時音頻包定時器將被設定為20ms。在一些實施例中,音頻緩沖器62可經(jīng)配置以捆扎連續(xù)的音頻幀以用于并入單個包中。在此情況下,音頻包定時器可為對應于捆扎成音頻包的幀數(shù)目的倍數(shù)。換句話說,音頻包定時器可具有與捆扎的幀的數(shù)目成比例或另外相關(guān)的值。如果例如三個音頻幀被捆扎,那么音頻定時器可被設定為60ms。因此,音頻包定時器還指示由音頻緩沖器62產(chǎn)生以用于經(jīng)由RTP/UDP/IP/PPP轉(zhuǎn)換模塊26插入RLP隊列28的音頻包的大小。音頻優(yōu)先級值界定音頻和視頻的相對優(yōu)先級,且因此影響與音頻和視頻相關(guān)聯(lián)的延遲。舉例來說,可確立音頻優(yōu)先級值以使得優(yōu)先級值越小,音頻延遲越低。因此,隨著音頻優(yōu)先級值增加,音頻延遲增加且視頻延遲減小。相反地,隨著音頻優(yōu)先級值減小,音頻延遲減小且視頻延遲增加。因此,音頻延遲跟蹤音頻優(yōu)先級值。視頻包成形器24可使用音頻優(yōu)先級值來控制每個視頻包的大小,從而導致規(guī)定的音頻包延遲,如下文將更詳細描述。由視頻包成形器24接收的RLP隊列大小表示RLP隊列28中緩沖的當前數(shù)據(jù)的大小。視頻包成形器24使用RLP隊列大小來控制視頻包的大小。如果RLP隊列28相對滿,那么視頻包成形器24可向下調(diào)節(jié)視頻包的大小以避免占滿RL和引起過量的音頻延遲。如果RLP隊列28較不滿,那么視頻包成形器24可增加視頻包的大小,同時仍提供用于音頻包的足夠空間。通過RLP隊列大小,視頻包成形器24能夠根據(jù)RLP隊列28的充滿度動態(tài)地調(diào)節(jié)視頻包大小。RLP隊列充滿度可指示過量的視頻內(nèi)容、信道條件的降級或兩者。RLP隊列大小的使用是視頻包成形器24可對視頻內(nèi)容的過載或信道條件的改變做出反應的方式之一。視頻包成形器24也可通過監(jiān)視反向業(yè)務信道(RTC)MAC單元64提供的信道信息來對信道條件的改變做出更直接的反應。RTCMAC單元64產(chǎn)生與信道特性有關(guān)的信息,例如當前MACRL速率、組合RA位以及凈空限制。MACRL速率指示在RL上可用的當前傳輸速率。RA位是反向活動位,其指示相關(guān)的無線基站是否繁忙。凈空限制可指示基于當前傳輸功率在傳輸中允許使用的最大速率。RA位指示何時RL由于基站不活動而擁塞或不可用。PA限制表示傳輸功率凈空且指示何時信道條件已降級?;诟鞣N輸入,視頻包成形器24產(chǎn)生有效負載大小估計值。選擇有效負載大小估計值以允許將音頻包包含在下一可用的MACRLP包中,如果音頻優(yōu)先級值指定音頻將符合高優(yōu)先級。視頻包成形器24接收來自視頻緩沖器52的視頻,并基于有效負載大小估計和最小視頻包大小將視頻包化。最小視頻包大小表示將由視頻包成形器24產(chǎn)生的視頻包的最小大小。實際上,最小視頻包大小控制視頻包大小的粒度和帶寬效率。對于較小的最小視頻包大小值,視頻包成形在容納音頻且因此避免音頻延遲方面更有效,但帶寬效率較低。對于較大的最小視頻包大小值,視頻包成形器在避免音頻延遲方面效率較低,但提供較高的帶寬效率。如圖4進一步展示,視頻編碼器20經(jīng)配置以包含視頻速率控制器54,其響應于來自物理視頻緩沖器52的物理視頻緩沖器充滿度值。視頻編碼器20基于視頻緩沖器充滿度提供自適應源速率控制特征。當視頻緩沖器52相對滿時,視頻速率控制器54通過減小視頻編碼引擎50應用的視頻編碼速率而做出響應。當視頻緩沖器52較不滿時,視頻速率控制器54增加源視頻編碼速率。以此方式,如果信道條件無法支持當前視頻編碼速率,那么減小視頻編碼速率。如本文所述,此信道自適應源速率控制特征可實施為雙緩沖器幀預算估計技術(shù)。下文描述雙緩沖器幀預算估計技術(shù)的額外細節(jié)。大體上,視頻速率控制器54基于物理視頻緩沖器52和由視頻速率控制器維持的虛擬視頻緩沖器的狀態(tài)來控制視頻源編碼速率。物理視頻緩沖器52接收由視頻編碼引擎50編碼的視頻幀。虛擬視頻緩沖器60(圖3)以逐幀為基礎更新,以表示相對于目標編碼速率的經(jīng)編碼視頻的量。目標編碼速率特征可在于目標位速率R和目標幀速率F。目標位速率R的實例是每秒24千位(Kbps)。目標幀速率的實例是每秒7.5幀(fps)。虛擬緩沖器充滿度值可由以下表達式表示-Wn=max(Wn-l+Bn-l-R/F,0)(1)其中Wn是經(jīng)編碼視頻幀n處的虛擬緩沖器充滿度,Wn-l是幀n-l處的虛擬緩沖器充滿度,Bn-l是視頻編碼引擎50用于編碼幀n-l的實際編碼位數(shù)目,R是目標位速率且F是目標幀速率。表達式(1)產(chǎn)生零或Wn-1+Bn-1-R/F的最大值。如果\¥11-1+811-1-R/F的值為負,那么經(jīng)編碼視頻的量相對低。緩沖器信息單元58(圖3)基于物理視頻緩沖器52和虛擬視頻緩沖器60的充滿度產(chǎn)生緩沖器值Xn。舉例來說,緩沖器值Xn可由以下表達式表示Xn=max(w*Vn,Wn)(2)其中系數(shù)w是正整數(shù),且Vn表示幀n處物理視頻緩沖器52的充滿度。系數(shù)w是加權(quán)值,其確定將符合物理視頻緩沖器充滿度對虛擬視頻緩沖器充滿度的權(quán)數(shù)。表達式(2)產(chǎn)生w*Vn或Wn中的較大者作為緩沖器值Xn。速率控制單元56使用緩沖器值Xn來確定是否跳過下一幀。特定來說,如果緩沖器值Xn大于或等于跳過閾值Tskip(即,Xn>=Tskip),那么速率控制單元56指示視頻編碼引擎50跳過下一幀n+l的編碼。當Xn滿足或超過跳過閾值Tskip時,視頻編碼器20處于超過其位限制的危險,如虛擬視頻緩沖器充滿度所證明,或物理視頻緩沖器52例如由于信道條件而太滿。舉例來說,如果信道條件不良,那么視頻包成形器24可減小從物理視頻緩沖器52移除的視頻包的大小和/或移除包的速率。在此情況下,必須減小視頻編碼器20應用的編碼速率。信道自適應視頻包成形提供橋接信道條件與視頻源速率控制的介接。緩沖器值Xn將信道條件信息變換為視頻緩沖器充滿度,其提供信道通過量的間接指示。如果緩沖器值Xn不滿足或超過跳過閾值Tskip(即,Xn<Tskip),那么速率控制單元56(圖3)確定幀預算,其界定經(jīng)分配以用于編碼下一幀的位數(shù)目。速率控制單元56可根據(jù)以下表達式確定幀n的幀預算BmBn=R/F-厶(3)其中,如果Xn>Z*Tskip,那么A=Xn/F,如果Xn<=Z*M,那么△=Xn-Z*Tskip,且Z為系數(shù)。大體上,變化量值A是緩沖器充滿度(Wn或Vn)、幀速率(F)以及信道通過量(R)的函數(shù)。值R(目標位速率)表示信道通過量。值F(目標幀速率)表示幀可傳輸?shù)乃俾?。值R/F(即,信道通過量R除以幀速率)表示每幀的信道通過量。如果緩沖器值大于Z乘以跳過閾值Tskip,那么適用的虛擬或物理緩沖器相對滿。在此情況下,將緩沖器值Xn除以幀速率F,且將結(jié)果從R/F中減去,R/F為目標位速率除以目標幀速率。大體上,此A(-Xn/F)的值將導致視頻編碼引擎50所應用的編碼速率的減小。如果緩沖器值小于或等于Z乘以跳過閾值Tskip,那么適用的虛擬或物理緩沖器具有足夠的空間來容納更多的經(jīng)編碼視頻。在此情況下,將緩沖器值(Z乘以跳過閾值Tskip的乘積)從緩沖器值Xn中減去。大體上,此A^Xn-ZtTskip)的值將導致視頻編碼引擎50所應用的編碼速率的增加。作為說明,在一個實施方案中,可將以下要求應用于視頻編碼器20所應用的視頻源速率控制。如果信道位速率R是48Kbps(6000字節(jié)/秒)且?guī)俾蕿?5fps,那么相應的幀預算為480000/15=3200位=400字節(jié)。假定0.4到0.6秒的最大端到端延遲要求(例如,400到600ms,且更特定來說500ms),那么物理視頻緩沖器延遲要求小于或等于200毫秒(ms)。在此情況下,虛擬視頻緩沖器60的大小可設定為1200字節(jié)(200ms*6000字節(jié)/秒)。為了滿足以上要求,視頻源速率控制設計應具有小于或等于每幀1200字節(jié)的物理視頻緩沖器充滿度。另外,物理視頻緩沖器52中的編碼器緩沖延遲應小于或等于每幀200ms。視頻編碼器20在RL通過量減小時減小視頻編碼速率,但溫和地適應于RL通過量以防止對RL通過量的過度反應或反應不足。理想上,在物理視頻緩沖器52中應沒有緩沖器下溢,或最小緩沖器下溢,以及沒有緩沖器溢出或最小緩沖器溢出。緩沖器下溢指示帶寬的利用不足,而緩沖器溢出導致跳過幀,即在物理視頻緩沖器52中沒有足夠空間用于容納經(jīng)編碼視頻幀時跳過幀的編碼。通過本文描述的基于雙緩沖器的速率控制方案,可減小端到端視頻延遲,同時增強空間質(zhì)量。以此方式,可實現(xiàn)良好平衡以實質(zhì)上最大化給定帶寬量下的編碼質(zhì)量。舉例來說,可能滿足具有低幀跳過且沒有或具有最少的緩沖器下溢的嚴格的低端到端延遲要求,例如小于或等于500ms。虛擬視頻緩沖器60通過使用基于緩沖器的位分配和跳幀來幫助滿足延遲要求。物理視頻緩沖器52允許視頻編碼速率對信道條件的適應。根據(jù)以上表達式(1)-(3),虛擬視頻緩沖器充滿度值Wn用于在信道條件良好時的速率控制。來自RTP層的物理視頻緩沖器充滿度值Vn用于在信道條件不良時減小編碼速率。以此方式,可能滿足在由于時變信道通過量而變化的信道條件下的所分配幀預算。MB級速率控制充當改進速率控制精度的另一特征。通過這些特征,對于給定的位速率可增強總體端到端視覺質(zhì)量,從而支持例如在VT應用中或其它應用中的更有效的音頻4見頻通信。圖5是說明用于視頻源速率控制的技術(shù)的流程圖。在圖5的實例中,視頻編碼引擎50對視頻幀n-l進行編碼(70),并將經(jīng)編碼視頻幀添加到物理視頻緩沖器52(72)。速率控制單元56例如根據(jù)表達式(1)更新虛擬緩沖器74以用于下一幀n,從而產(chǎn)生新的虛擬緩沖器充滿度值Wn(74)。在更新虛擬視頻緩沖器時,Bn-l是視頻編碼引擎50用于對添加到物理視頻緩沖器52的幀n-l進行編碼的位的量。緩沖器信息單元58確定物理視頻緩沖器充滿度值Vn(76)和虛擬視頻緩沖器充滿度值Wn(78)。速率控制單元56基于物理視頻緩沖器充滿度值Vn和虛擬視頻緩沖器充滿度值Wn控制視頻編碼引擎50的視頻編碼速率(80)。接著,過程進行到下一待編碼的幀(82)并重復。圖6是更詳細說明用于視頻源速率控制的技術(shù)的流程圖。在圖6的實例中,視頻編碼引擎50對視頻幀n-l進行編碼(84),并將經(jīng)編碼視頻幀添加到物理視頻緩沖器52(86)。速率控制單元56例如根據(jù)表達式(1)更新虛擬緩沖器74以用于下一幀n,從而產(chǎn)生新的虛擬緩沖器充滿度值Wn(88)。緩沖器信息單元58確定物理視頻緩沖器充滿度值Vn(90)和虛擬視頻緩沖器充滿度值Wn(92)。速率控制單元56從緩沖器信息單元58接收緩沖器值Xn。緩沖器值Xn=max(w*Vn,Wn),其中w是加權(quán)系數(shù)。這對應于以上的表達式(2)。如果max(wfVn,Wn)大于或等于跳過閾值Tskip(94),速率控制單元56指示視頻編碼引擎50跳過下一幀n的編碼(96)。一旦跳過下一幀n,過程就進行到跳過幀之后的下一幀(101)并重復。如果max(w*Vn,Wn)不大于或等于跳過閾值Tskip(94),那么速率控制單元56基于目標編碼速率(例如,目標位速率R和目標幀速率F)、物理視頻緩沖器充滿度值Vn、虛擬視頻緩沖器充滿度值Wn以及跳過閾值Tskip估計下一幀的幀預算(98)。特定來說,速率控制單元56可應用以上表達式(3)來確定幀預算Bn,其界定可用于編碼下一幀的位數(shù)目。一旦確定幀預算,速率控制單元56就可引導視頻編碼引擎50在待編碼幀內(nèi)的視頻塊(例如,宏塊(MB))上均勻地分配幀預算中的位。或者,可使用P域MB位分配來分配幀預算位(99)。接著可將每個MB的P域MB位分配映射到相應的QP值(100)。一旦針對當前幀確定編碼速率,過程就進行到下一幀(101)并重復。本發(fā)明中描述的技術(shù)可實施在通用微處理器、數(shù)字信號處理器(DSP)、專用集成電路(ASIC)、現(xiàn)場可編程門陣列(FPGA)或其它等效邏輯裝置內(nèi)。舉例來說,視頻編碼器12及其組件和模塊可實施為在數(shù)字信號處理器(DSP)、微處理器、嵌入式核心或其它處理裝置上運行的編碼過程或編碼/解碼(CODEC)過程的部分。因此,描述為模塊的組件可形成編碼過程或單獨過程的硬件組件或可編程特征。在一些實施例中,可在不同的硬件組件之間劃分編碼功能。舉例來說,可在嵌入式邏輯核心中執(zhí)行幀級速率控制,且可在DSP中執(zhí)行MB級速率控制。作為說明,給定目標位速率(RKbps)和幀速率(Ffps),嵌入式邏輯核心內(nèi)的幀級速率控制可能涉及在編碼每一幀之后更新速率控制模型參數(shù)(例如,P域模型參數(shù))、估計用于下一幀的幀預算B,以及例如經(jīng)由P表或P參數(shù)等式使用預算到P和P到QP的映射來將幀預算映射到幀QP(例如,1到31)。一旦對QP值進行后處理,包含對幀QP的任何額外限制,嵌入式邏輯核心就將幀QP、p預算和新模型參數(shù)發(fā)送到DSP。DSP接著使用P到QP映射計算每個MB的QP,并對QP值執(zhí)行后處理。DSP可保留MB增量QP值在+2和-2內(nèi)的規(guī)則,以及對MBQP的任何額外限制。一旦在編碼一MB之后更新P域模型參數(shù),DSP就針對適用的視頻幀內(nèi)的其它MB重復所述過程。在MB編碼完成之后,過程返回到嵌入式邏輯核心以處理待編碼的下一視頻幀。視頻編碼器系統(tǒng)12可具有用于存儲指令和數(shù)據(jù)的專用存儲器,以及專用硬件、軟件、固件或其組合。如果在軟件中實施,所述技術(shù)可實施為計算機可讀媒體上的指令,所述媒體例如為隨機存取存儲器(RAM)、只讀存儲器(ROM)、非易失性隨機存取存儲器(NVRAM)、電可擦可編程只讀存儲器(EEPROM)、快閃存儲器等。指令致使一個或一個以上處理器執(zhí)行本發(fā)明中描述的功能性的某些方面?,F(xiàn)在將描述示范性視頻包成形器24的額外細節(jié)。以下描述提供可用于本發(fā)明中描述的視頻源速率控制技術(shù)的視頻包成形技術(shù)的實例。然而,根據(jù)本發(fā)明的用于視頻源速率控制的技術(shù)可以多種包成形技術(shù)中的任一種來實踐。因此,以下細節(jié)是出于實例的目的而提供,且不應視為對本發(fā)明中廣義實施和描述的視頻源速率控制技術(shù)的限制。在此實例中,視頻包成形器24控制提供到RTP/UDP/IP/PPP轉(zhuǎn)換模塊26(圖1和4)的每個視頻包的大小,以便將音頻的傳輸列入優(yōu)先。特定來說,視頻包經(jīng)大小調(diào)整以使得每個音頻包可由下一可用的MAC層包容納。受控的對視頻包的大小調(diào)整防止了由信道條件、較大視頻包或兩者引起的音頻延遲。當音頻包可用時,其被置于RLP隊列中用于包含在由MAC層模塊30產(chǎn)生的下一可用的MACRLP包中。音頻包可與經(jīng)大小調(diào)整以允許用于將音頻包置于MACRLP包內(nèi)的空間的視頻包相組合。視頻包成形器24經(jīng)配置以在其能夠基于信道條件調(diào)節(jié)視頻包大小的意義上為信道自適應的。以此方式,編碼器系統(tǒng)12可將音頻包的傳輸列入優(yōu)先以避免在信道條件不良時的音頻延遲。同時,視頻包成形器24可確保音頻列入優(yōu)先不會導致視頻包不完全包化。換句話說,視頻包成形器24將視頻包的大小調(diào)整為足夠小,以允許在下一可用的MACRLP包中包含一個或一個以上音頻包,但不是太小而使得浪費MACRLP包中的過量空間。因此,視頻包成形器24可支持音頻包的列入優(yōu)先和視頻包的有效傳輸。如上文論述,提供視頻包成形器24以控制提交給RTP/UDP/IP/PPP轉(zhuǎn)換模塊26的視頻包的大小。視頻包成形器24控制視頻包的大小以便將MACRLP包中的音頻包的傳輸列入優(yōu)先,并防止視頻包占滿RLP隊列28。以此方式,可在沒有實質(zhì)延遲的情況下傳送VT會議的音頻部分,即使視頻部分可能經(jīng)受由于信道條件帶來的延遲。盡管視頻可能受到信道條件損害,但視頻包成形器24確保VT會議的各方仍能夠流暢地進行口頭對話。視頻包成形器24應用的包成形技術(shù)可應用一個或一個以上規(guī)則以確保音頻包的優(yōu)先傳輸。例如根據(jù)一個規(guī)則,應在從RLP隊列28的內(nèi)容產(chǎn)生的剛好下一可用的MACRLP包中發(fā)送音頻包。音頻幀由音頻解碼器22在第一周期性間隔產(chǎn)生。MACRLP包由MAC層模塊30在第二周期性間隔產(chǎn)生。在給定間隔產(chǎn)生的音頻幀應置于由MAC層模塊30產(chǎn)生的下一可用的MACRLP包中。在一些實施例中,作為選擇,RLP隊列28的總輸出隊列大小以及音頻包大小應能夠在一個MACRLP包中載運??上鄬τ赩T序列的每個包應用各種規(guī)則。盡管可以確??稍趩蝹€MACRLP包中載運音頻和視頻的方式固有地調(diào)整一些視頻包的大小,但其它視頻包可能較大,且需要減小大小以便確保尤其是在信道條件降級時可在單個MACRLP包中載運音頻和視頻。通過相對于VT序列的每個包應用技術(shù),即使視頻的內(nèi)容非常多或者信道帶寬實質(zhì)有限,也可確保令人滿意的語音通信??刂埔曨l包成形器24提交給RTP/UDP/IP/PPP轉(zhuǎn)換模塊26以用于插入RLP隊列28中的每個視頻包的大小。以上規(guī)則確保音頻包不會由于非常多的視頻內(nèi)容對連續(xù)MACRLP包的消耗而延遲。替代地,當音頻可用時,將來自視頻編碼器20的視頻劃分為具有經(jīng)選擇以允許每個MACRLP包載運音頻和視頻的大小的包。每個音頻幀可用作提供到RLP隊列28的音頻包。或者在一些實施例中,音頻包可捆扎以連續(xù)間隔提供的多個音頻幀。在一些實施例中,視頻包成形器24可基于針對在連續(xù)音頻幀之間產(chǎn)生的MAC層包的估計信道通過量確定每個MAC層包的視頻包大小。可基于由當前無線信道傳輸速率、無線基站活動以及傳輸功率限制中的一者或一者以上表示的信道條件來估計通過量。舉例來說,可基于當前MAC層數(shù)據(jù)速率、反向活動(RA)位以及功率放大器(PA)限制來確定信道條件。另外,在一些實施例中,視頻編碼器20可基于視頻緩沖器占用度而進一步包含自適應源速率控制。在此情況下,如果在對優(yōu)先音頻包化的需要給定的情況下,信道條件不支持視頻編碼速率,那么視頻編碼器20可減小源視頻編碼速率。音頻編碼器22產(chǎn)生音頻幀,且視頻編碼器20產(chǎn)生視頻幀。一系列連續(xù)MACRLP包可用于載運從在RLP隊列28中緩沖的幀導出的音頻包和視頻包。在音頻編碼器22產(chǎn)生第一音頻幀之后,MAC層模塊30產(chǎn)生的下一可用的MACRLP包載運第一音頻幀。第二包也可用于在必要時載運第一音頻幀。然而如果RLP隊列28的內(nèi)容由視頻包占滿,那么第一音頻幀可能在長時期內(nèi)不會傳達。每個MACRLP包具有從RL信道條件信息導出的相關(guān)聯(lián)的數(shù)據(jù)速率。在良好RL條件下,每個MACRLP包可承受每秒76.8千位(Kbps)的數(shù)據(jù)速率。然而在不良RL信道條件下,數(shù)據(jù)速率波動且常常較低,例如為19.2Kbps或38.4Kbps。過量視頻內(nèi)容、不良信道條件或兩者均可引起音頻包的傳輸中的顯著延遲。過量視頻包大小可占滿RL并增加音頻延遲,尤其是在RL通過量由于低數(shù)據(jù)速率而減小時。視頻包如果保持未受控制,那么就可能消耗過多量的MACRLP包空間,從而導致音頻包的連續(xù)傳輸之間的延遲。在一些情況下,視頻可消耗若干連續(xù)的MACRLP包,從而防止音頻被迅速傳輸。每個MACRLP包提供大約26.67ms的空間用于并入音頻和視頻包信息??紤]其中一較大視頻幀與一音頻幀實質(zhì)同時產(chǎn)生的情況。在此情形中,假定連續(xù)視頻幀在時間上彼此間隔133ms而產(chǎn)生。然而連續(xù)音頻幀在時間上僅彼此間隔60ms而產(chǎn)生。甚至在良好RL條件下,也可能沒有足夠的空間用于并入用于第一音頻幀以及用于第二和第三音頻幀的音頻包。替代地,與較大視頻幀相關(guān)聯(lián)的視頻包可能消耗大多數(shù)的MACRLP包,從而導致顯著的音頻延遲。當信道條件降級時,例如在不良RL條件的情況下,此問題尤其具有挑戰(zhàn)性。為了緩解在多種信道條件下的音頻延遲,圖1的系統(tǒng)10可并入有視頻包成形器24,其控制從視頻幀導出的視頻包的大小。通過相對于VT序列的每個包應用視頻限制,視頻包成形器24可確保與VT序列相關(guān)聯(lián)的音頻不受損害。固定長度視頻包成形提出了對音頻延遲問題的部分解決方案。然而,固定長度視頻包成形不考慮信道條件。因此,視頻在RL通過量減少時仍可占滿信道。另外,固定長度包成形不考慮兩個連續(xù)音頻包之間的通過量,從而導致視頻數(shù)據(jù)過度包化或包化不足。對于固定長度視頻包成形,通過將視頻幀分段為每60ms的固定大小包(例如300字節(jié))來控制視頻包的大小。還將音頻幀分段為例如每60ms的固定大小包。在MACRLP包內(nèi)的音頻數(shù)據(jù)包之后立即傳輸視頻包。在正常操作條件下,固定長度視頻包化促進了MACRLP包內(nèi)的音頻包的及時傳輸。固定長度視頻包成形方法確保在良好RL條件下傳輸音頻包而沒有延遲。然而如果RL條件降級,那么固定長度視頻包可占滿RL,從而導致連續(xù)音頻包之間的延遲。由于視頻包的固定長度,因此沒有對RL條件的變化做出反應的能力。在一些實例中,在良好RL條件下,視頻數(shù)據(jù)可能包化不足,從而導致每個MACRLP包提供的空間的利用不足以及大體的帶寬低效率。在不良RL條件下,視頻包的固定大小可能對于RL來說太大而不能處理,從而導致音頻延遲。出于此原因,可能提供信道自適應視頻包成形以產(chǎn)生可調(diào)節(jié)長度的視頻包,其具有可響應于視頻內(nèi)容或帶寬而調(diào)整的大小以便維持整個VT序列的音頻質(zhì)量。對于信道自適應視頻包成形,基于信道條件調(diào)節(jié)視頻包大小以使得可在沒有實質(zhì)延遲的情況下傳輸音頻包。替代于固定視頻包大小,基于音頻包的大小和信道條件動態(tài)調(diào)節(jié)每個視頻包的大小。在良好RL條件下,可增加視頻包大小,但不會達到視頻包將占滿RL并引入音頻延遲的程度。在不良RL條件下,減小視頻包的大小以為將包化并置于下一可用MACRLP包中的音頻幀提供空間。當音頻幀可用時,視頻幀經(jīng)大小調(diào)整以使得相應音頻幀可置于下一可用的MACRLP包中。每個音頻幀經(jīng)包化并接著置于RLP隊列28中以用于包含在由MAC層模塊30產(chǎn)生的下一可用MACRLP包中,從而消除音頻包的傳輸之間的過量延遲。每個MACRLP包可僅載運音頻、僅載運視頻或音頻與視頻兩者,這取決于RLP隊列28的內(nèi)容。然而,在每個音頻包間隔,視頻包經(jīng)大小調(diào)整以允許將音頻包并入下一可用的MACRLP包。應注意,隨著可用RL速率例如由于信道條件而減小,音頻包的大小相對于MACRLP包的大小而增加。換句話說,隨著RL速率因為視頻包大小減小而降低,每個音頻包消耗更高比例的MACRLP包。相反地,動態(tài)調(diào)節(jié)每個視頻包的大小以使得其隨著RL速率降低而消耗較小比例的MACRLP包。以此方式,視頻包經(jīng)大小調(diào)整以允許將每個音頻包置于下一可用的MACRLP包中。結(jié)果是對音頻給出的優(yōu)先級高于視頻以減小音頻延遲。RTCMAC單元64(圖4)可經(jīng)配置以實施RTCMAC協(xié)議以提供通信裝置經(jīng)由RL進行傳輸所遵循的程序。在特定實施例中,視頻包成形器24可包含有效負載大小估計器,其基于一個或一個以上輸入控制每個視頻包的大小。輸入可與信道條件、RLP隊列特性以及音頻包大小和狀態(tài)相關(guān)。在特定實施例中,視頻包成形器24還可包含帶寬有效包化器,其基于由有效負載大小估計器指定的估計有效負載大小(服從于最小視頻包大小)產(chǎn)生視頻包。視頻緩沖器52緩沖從視頻編碼器20接收的視頻信息,并將視頻信息傳遞到視頻包成形器24。音頻緩沖器62緩沖從音頻編碼器22接收的音頻幀信息并將信息傳遞到RTP/UDP/IP/PPP轉(zhuǎn)換模塊26。音頻和視頻包彼此獨立地插入RLP隊列28中。由視頻包成形器24產(chǎn)生的視頻包的大小確保在由MAC層模塊30產(chǎn)生的下一可用MACRLP包中將存在用于音頻包的足夠空間。特定來說,RLP隊列28沒有被視頻包占滿,從而確保RLP隊列中的音頻包可隨下一MACRLP包一起發(fā)送。在此實例中,視頻包成形器24的有效負載大小估計器接收若干輸入,包含音頻包定時器、音頻優(yōu)先級值ACPredNumberPIus、RLP隊列大小以及信道信息。音頻包定時器指示音頻信息目前在音頻緩沖器62中是否可用,且如果是,那么指示將傳達每個音頻幀的時序。如果以例如每20ms的間隔傳達音頻幀,那么在音頻幀可用時音頻包定時器將被設定為20ms。在一些實施例中,音頻緩沖器62可經(jīng)配置以捆扎連續(xù)的音頻幀以用于并入單個包中。在此情況下,音頻包定時器可為對應于捆扎成音頻包的幀數(shù)目的倍數(shù)。換句話說,音頻包定時器可具有與捆扎的幀的數(shù)目成比例或另外相關(guān)的值。如果例如三個音頻幀被捆扎,那么音頻定時器可被設定為60ms。因此,音頻包定時器還指示由音頻緩沖器62產(chǎn)生以用于經(jīng)由RTP/UDP/IP/PPP模塊26插入RLP隊列28的音頻包的大小。音頻優(yōu)先級值MACPredNumberPlus界定音頻和視頻的相對優(yōu)先級,且因此影響與音頻和視頻相關(guān)聯(lián)的延遲。舉例來說,確立MACPredNumberPlus以使得優(yōu)先級值越小,音頻延遲越低。因此,隨著MACPredNumberPlus增加,音頻延遲增加且視頻延遲減小。相反地,隨著MACPredNumberPlus減小,音頻延遲減小且視頻延遲增加。因此,音頻延遲跟蹤音頻優(yōu)先級值MACPredNumberPlus。視頻包成形器24的有效負載大小估計器使用MACPredNumberPlus值來控制每個視頻包的大小,從而導致規(guī)定的音頻包延遲,如下文將更詳細描述。由有效負載大小估計器接收的RLP隊列大小表示RLP隊列28中緩沖的當前數(shù)據(jù)的大小。有效負載大小估計器使用RLP隊列大小來控制視頻包的大小。如果RLP隊列28相對滿,那么有效負載大小估計器可向下調(diào)節(jié)視頻包的大小以避免占滿RL和引起過量的音頻延遲。如果RLP隊列28較不滿,那么有效負載大小估計器可增加視頻包的大小,同時仍提供用于音頻包的足夠空間。通過RLP隊列大小,有效負載大小估計器能夠根據(jù)RLP隊列28的充滿度動態(tài)地調(diào)節(jié)視頻包大小。隊列充滿度可指示過量的視頻內(nèi)容、信道條件的降級或兩者。RLP隊列大小的使用是有效負載大小估計器可對視頻內(nèi)容的過載或信道條件的改變做出反應的方式之一。視頻包成形器24的有效負載大小估計器也可通過監(jiān)視RTCMAC單元64提供的信道信息來對信道條件的改變做出更直接的反應。RTCMAC單元64產(chǎn)生與信道特性有關(guān)的信息,例如當前MACRL速率、組合RA位以及凈空限制。MACRL速率指示在RL上可用的當前傳輸速率。RA位是反向活動位,其指示相關(guān)的無線基站是否繁忙。凈空限制可指示基于當前傳輸功率在傳輸中允許使用的最大速率。RA位指示何時RL由于基站不活動而擁塞或不可用。PA限制表示傳輸功率凈空且指示何時信道條件已降級?;诟鞣N輸入,視頻包成形器24的有效負載大小估計器產(chǎn)生有效負載大小估計值。選擇有效負載大小估計值以允許將音頻包包含在下一可用的MACRLP包中,如果MACPredNumPlus優(yōu)先級值指定音頻將符合高優(yōu)先級。視頻包成形器24的帶寬有效包化器接收來自視頻緩沖器52的視頻,并基于有效負載大小估計器指定的有效負載大小估計和最小視頻包大小將視頻包化。最小視頻包大小表示將由視頻包成形器24產(chǎn)生的視頻包的最小大小。實際上,最小視頻包大小控制視頻包大小的粒度和帶寬效率。對于較小的最小視頻包大小值,視頻包成形在容納音頻且因此避免音頻延遲方面更有效,但帶寬效率較低。對于較大的最小視頻包大小值,視頻包成形在避免音頻延遲方面效率較低,但提供較高的帶寬效率。將出于說明目的而描述額外的實施方案細節(jié)。而且,這些細節(jié)應視為示范性的,且不應視為對本發(fā)明中廣義實施和描述的技術(shù)的限制。對于cdma2000lxEV-DO版本0實施方案,可基于信道條件估計RL通過量。3GPP2規(guī)范C.S0024-A(也稱為TIAIS-856-A)第11-143頁表11.9.6.1指定了在給定以Kbps傳輸速率表達的不同信道條件下,對于MACRLP包的以字節(jié)計的最小和最大有效負載大小。表11.9.6.1再現(xiàn)如下表<table>tableseeoriginaldocumentpage30</column></row><table>如果上表中的每個傳輸級表達為指數(shù)值,那么包含音頻與視頻的每個MACRLP包的最大有效負載大小如下最大有效負載大小=^^+4-3。對于以上表達式,將指數(shù)值1、2、3、4和5分別指派于9.6、19.2、38.4、76.8和153.6Kbps的傳輸速率級。音頻幀和視頻幀經(jīng)包化并包含在MACRLP包中。MACRLP包每一者均具有相關(guān)聯(lián)的RL傳輸速率,且能夠載運對應于那些傳輸速率的不同最大有效負載大小。舉例來說,一些MACRLP包可具有38.4Kbps的RL傳輸速率,且每一者能夠載運125字節(jié)的最大有效負載大小。其它MACRLP包可具有76.8Kbps的RL傳輸速率,且能夠載運253字節(jié)的最大有效負載大小。還有其它MACRLP包可具有19.2Kbps的RL傳輸速率,且每一者均能夠載運61字節(jié)的最大有效負載大小。在示范性實施例中,視頻包成形器24的有效負載大小估計器的運算可表達為以偽碼進行的算法。算法依賴于以下輸入RA位、PA限制、RL速率、RLPQueueSize、AudioPacketSize和MACPredNumberPlus。AudioPacketSize可從應用于視頻包成形器24的音頻包定時器導出。如先前提到,組合RA位是反向活動位,其指示基站活動的狀態(tài),PA限制表示由功率要求強加的傳輸功率凈空限制且指示何時信道條件已降級,RL速率是RL的傳輸速率,RLPQueueSize指示RLP隊列28的充滿度。AudioPacketSize指示當前音頻包(即,將添加到下一可用MACRLP包的音頻包)的大小。MACPredNumberPlus指示音頻包對視頻包將符合的相對優(yōu)先級。算法的輸出是VideoPayloadSize。對于算法的初始化,值MACPredNumber設定如下MACPrcdNumbcr=floor((AudioFramcsBundlcd*AudioFramcIntcrval)/26.67)+1+MACPredNumberPlusMacPredNumber表示載運含有單個音頻幀或捆扎音頻幀組的包所必要的MACRLP包的數(shù)目。AudioFramelnterval表示音頻幀之間的時間間隔。值26.67是為每個MACRLP包分配的時間。因此,如果三個音頻幀經(jīng)擁扎且音頻幀間隔是20ms,且MACPredNumberPlus為0,指示高音頻優(yōu)先級,那么MACPredNumber為3。這意味著將估計視頻有效負載大小的MACRLP包的預測數(shù)目是3。對于每個經(jīng)捆扎的音頻包,在發(fā)送經(jīng)捆扎音頻包之后,視頻包成形器24的有效負載大小估計器做出MAC音頻通過量確定。MAC通過量確定可如下偽碼指示而進行<formula>formulaseeoriginaldocumentpage31</formula>在以上MAC通過量確定中,MACThroughput是音頻傳輸所需的通過量值,MACRatelncrease指示MACRL速率是否將基于反向活動而增加,CurRate是當前MACRL速率,MACPredRate是MACRL速率增加的量,表達為指數(shù)值。如上指示,MACThroughput是對于三個預測MACRLP包中每一者可用的最大有效負載大小。給定每個MACRLP包的最大有效負載大小MACThroughput,視頻有效負載大小估計器如下估計最大視頻有效負載大小(VideoPayloadSize):VideoPayloadSize=MAX(MACThroughput—RLPQueueSize,0)VideoPayloadSize=MAX(VidcoPayloadSizc-2*AudioPackctSizc—45,0),其中RLPQueueSize指示RLP隊列28的充滿度,且AudioPacketSize表示將添加到下一MACRLP包的音頻包的大小。值45是以字節(jié)計的固定數(shù)字,以考慮由RTP/UDP/IP/PPP轉(zhuǎn)換模塊26引入的標頭信息的RTP/UDP/IP/PPP額外開銷。此固定額外開銷數(shù)字的值在其它實施方案中可不同。對于在一信道條件范圍內(nèi)的信道自適應視頻包成形,視頻包成形器24的有效負載大小估計器適應于變化的信道條件(如RL傳輸速率部分表示),以調(diào)節(jié)為從RLP隊列28的內(nèi)容并入由MAC層模塊30產(chǎn)生的MACRLP包中而呈現(xiàn)的視頻包有效負載的大小。在一個實例中,以60ms的間隔產(chǎn)生音頻幀。在此情況下,關(guān)于接下來三個MACRLP包中的可用有效負載大小而每60ms做出決定。在第一決定點,當前MACRL速率以3為指數(shù)以表示38.4Kbps,且RA位設定于O,PA限制等于4且RLP隊列含有XI個字節(jié)。在此情況下,根據(jù)以上公式,接下來三個MACRLP包中每一者的通過量估計為253個字節(jié)。因此,接下來三個MACRLP包上的總通過量是253+253+253字節(jié)減去己置于RLP隊列28中的內(nèi)容Xl。因此,第一決定點50處的MACThroughput值是253+253+253-XI字節(jié)。在60ms之后的第二決定點,當前RL速率再次以3為指數(shù),且PA限制為4,但RA位設定為1而不是0。在此情況下,RA位指示基站繁忙且導致在接下來三個MACRLP包上通過量減小的預測。特定來說,估計的通過量MACThroughput是125+125+125-X2字節(jié),其中X2表示在第二決定點80的時間RLP隊列28的內(nèi)容。在第二決定點之后60ms的第三決定點,RA位為0,但RL速率己下降到指數(shù)值2(19.2Kbps)且PA限制已下降到指數(shù)值2。因此,在接下來三個MACRLP包上的總通過量MACThroughput減小到61+61+61-X3字節(jié),其中X3表示在第三決定點82的時間RLP隊列28的內(nèi)容。當MACThroughput減小時,由于音頻包的列入優(yōu)先,視頻包可用的空間也減小。在此情況下,視頻包成形器24的有效負載大小估計器減小用于包化的視頻有效負載的估計大小。然而當MACThroughput增加時,有效負載大小估計器通過增加估計的視頻有效負載大小而做出響應。以此方式,視頻包成形器24不僅將音頻包列入優(yōu)先,而且支持帶寬有效視頻包化。在此實例中,每次對三個MACRLP包做出決定。然而在其它實施例中,可應用更迅速的決定過程。舉例來說,可每20ms做出對MACThroughput的估計的決定。在第一個20ms間隔中,針對三個MACRLP包做出決定。接著在第二個20ms間隔中,針對一組三個連續(xù)MACRLP包中的其余兩個MACRLP包做出決定。最后,可在下一20ms間隔期間針對三包的組中的最后一個MACRLP包做出決定。在此情況下,在60ms間隔的過程中做出決定且針對信道條件或RLP隊列充滿度可能發(fā)生的任何改變而每20ms進行更新。在60ms之后,過程針對下一個60ms和接下來三個MACRLP包重復,并反復繼續(xù)進行。一旦估計出MACThroughput,那么視頻有效負載大小估計器就估計在給定MACThroughput值下可容納的視頻有效負載大小,如上文解釋。接著,帶寬有效包化器使用估計的視頻有效負載大小和最小視頻包大小值來產(chǎn)生用于提交到RTP/UDP/IP/PPP轉(zhuǎn)換模塊26的視頻包。現(xiàn)在將更詳細描述視頻包成形器24的帶寬有效包化器的操作。大體上,如果使用MPEG4視頻編碼,那么視頻包化應符合2000年11月頒發(fā)的網(wǎng)絡工作組意見請求(RFC)3016,或者如果使用ITUH.263視頻編碼,那么應符合1997年9月頒發(fā)的RFC21卯或1998年10月頒發(fā)的RFC2429。RFC3016概述了MPEG4流的RTP有效負載格式。RFC2429概述了ITUH.263流的1998版本的RTP有效負載格式,且RFC2190概述了ITUH.263流的原始版本的RTP格式。RFC3016指定了視頻包(a)必須以視頻對象平面(VOP)標頭或視頻包(VP)標頭開始,如果其任一者存在,(b)如果滿足前一規(guī)則,那么可含有一個以上VP標頭,(c)其中可僅含有視頻數(shù)據(jù)而沒有任何VOP和VP標頭,以及(d)無法含有兩個視頻幀上的數(shù)據(jù)。RFC2190指定了視頻包(a)必須以圖片開始代碼(PSC)或塊群組(GOB)開始,(b)不必具有GOB標頭或完整的GOB,以及(c)不必為GOB字節(jié)對準的。RFC2429指定了視頻包(a)可以字節(jié)對準的PSC、GOB標頭、切片標頭以及切片結(jié)束(EOS)標記開始,以及(b)可為繼續(xù)進行(Follow-on)包,其不以任何同步代碼開始但允許視頻包中間的同步代碼。給定以上要求,視頻編碼器20可經(jīng)配置而以MPEG4的VOP和VP形式或H.263的PSC、GOB和SSC形式將視頻數(shù)據(jù)插入視頻緩沖器52中。符合MPEG4的編碼器以VOP或VP為單位產(chǎn)生數(shù)據(jù)。H.263編碼器以PSC、GOB或SSC(GOB字節(jié)對準)為單位產(chǎn)生數(shù)據(jù)。當使用RFC21卯時,模式A是默認的。在示范性實施例中,視頻包成形器24的帶寬有效包化器的操作可表達為利用以下輸入的算法VideoDatalnBuffer、EstimatedVideoPayloadSize、minVPSize。VideoDatalnBuffer表示視頻緩沖器52中視頻的大小。EstimatedVideoPayloadSize表示由視頻包成形器24的有效負載大小估計器確定的估計視頻有效負載大小。值minVPsize是視頻包成形器24將產(chǎn)生的最小視頻包大小,且用于控制粒度和帶寬效率。帶寬有效包化算法的輸出是用于提交到RTP/UDP/IP/PPP轉(zhuǎn)換模塊26的一個或一個以上視頻包。在示范性實施例中,帶寬有效包化器的操作由以下偽碼表示RemainingVideoPayloadSize=EstimatedVideoPayloadSize;VideoPayloadSize=0;VideoPayloadData[]:anarray;for(;;)if(RemainingVideoPayloadSize<minVPSizc/2)RemainingVideoPayloadSize=0;elseif(RemainingVideoPayloadSize<minVPSize)RemainingVideoPayloadSize=minVPSize;If((RemainingVideoPayloadSize=0)|j(VideoDatalnBufferNULL))break;If(VideoDataInBuffer->Size>=RemainingVideoPayloadSize十minVPSize)if(RemainingVideoPayloadSize>=(miuVPSize/2))if(RFC3016IIRFC2429)memcpy(VideoPayloadData+VideoPayloadSize,VideoDatalnBuffer-〉Data,RemainingVideoPayloadSize);VideoPayloadSize+=RemainingVideoPayloadSize;memcpy(VideoDataloBuffer->Data,VideoDataInBuffer->Data+RemainingVideoPayloadSize,VideoDataInBuffer->Size-RemainingVideoPayloadSize-VideoDataIi)Buffer->Size--RemainkigVideoPayloadSize);"VideoDatalnBuffer-〉Fragmented=1;elseif(RFC2190)memcpy(VideoPayloadData+VideoPayloadSize,VideoDatalnBuffer-〉Data,VideoDatalnBufifer》SizeO;VidcoPayloadSizc+=VidcoDataInBuffcr->Sizc;MakeoneVideoPacketfromVideoPayloadData[]withpayloadsizeofVideoPayloadSize;35RemainingVideoPayloadSize=0;elsememcpy(VideoPayloadData+VideoPayloadSize,VideoDatalnBuffer->Data,VideoDataInBuffer->Size);VideoPayloadSize+=VideoDataInBuffer->Size;RemainingVideoPayloadSize=MAX(RemainingVideoPayloadSize—VidcoBuffcrSizc->Sizc—45,0);if(Nomoredatain"buffer|1th6currentTS!=thenextTS||RemainingVideoPayloadSize==0||VideoDataInBuffer->Fragmented==1)MakeoneVideoPacketfromVideoPayloadData[]withpayloadsizeofVideoPayloadSize;VideoPayloadSize=0;VideoDatalnBuffer=thenextframe/GOB/sliceunitinthevideobuffer,ifany,orNULL,ifnomoredata如以上偽碼表示,視頻包成形器24的帶寬有效包化器基于有效負載大小估計器提供的EstimatedVideoPayloadSize和minVPSize產(chǎn)生視頻包。RemainingVideoPayloadSize表示在視頻包產(chǎn)生期間的任一點仍可用的有效負載量。初始地,RemainingVideoPayloadSize等于由視頻有效負載大小估計器提供的整個EstimatedVideoPayloadSize。VideoPayloadSize表示包中視頻有效負載的實際大小,且初始設定為0。VideoPayloadData()識別視頻緩沖器52中的視頻數(shù)據(jù)段陣列。帶寬有效包化器首先確定RemainingVideoPayloadSize是否小于minVPSizc/2。如果是,那么將值RemainingVideoPayloadSize設定為0?;蛘撸绻鸕emainingVideoPayloadSize小于minVPSize,那么將RemainingVideoPayloadSize的值設定為等于minVPSize。接著,如果RemainingVideoPayloadSize等于0或VideoDataTnBuffer為空值,那么過程復位,因為在下一可用MACRLP包中沒有剩余空間或在視頻緩沖器52中沒有剩余視頻。如果VideoInBuffer的大小大于或等于值RemainingVideoPayloadSize力口上minVPSize,那么帶寬有效包化器接下來確定RemainingVideoPayloadSize是否大于或等于minVPsize/2。如果是,那么帶寬有效包化器確定RFC3016還是RFC2429適用。如果RFC3016或RFC2429均不適用,那么帶寬有效包化器確定RFC2190是否適用,即ITUH.263的原始版本的RTP有效負載格式是否適用。如果RFC3016或RFC2429適用,那么帶寬有效包化器如開始地址VideoPayloadData和偏移量VideoPayloadSize所確定,將來自視頻緩沖器52的視頻復制(memcpy)到由VideoDatalnBuffer識別的輸入緩沖器。初始地,VideoPayloadSize設定為0。從視頻緩沖器52復制的視頻量等于RemainingVideoPayloadSize,其初始設定為EstimatedVideoPayloadSize。帶寬有效包化器接著調(diào)節(jié)VideoPayloadSize為等于RemainingVideoPayloadSize。接著,帶寬有效包化器以RemainingVideoPayloadSize確定的量將來自輸入緩沖器的視頻數(shù)據(jù)復制到由偏移量RemainingVideoPayload大小識別的地址。接著將VideoDatalnBuffer的內(nèi)容分段以用于包化。如果RFC2190適用,那么帶寬有效包化器如開始地址VideoPayloadData和偏移量VideoPayloadSize所確定,將來自視頻緩沖器52的視頻復制(memcpy)到由VideoDatalnBuffer識別的輸入緩沖器。再次,VideoPayloadSize初始設定為0。從視頻緩沖器52復制的視頻量等于VideoDatalnBuffer的大小。接著使VideoPayloadSize等于VideoDatalnBuffer的大小。一旦退出RFC3016/RFC2429操作或RFC2190操作,那么帶寬有效包化器接著從VideoPayloadData產(chǎn)生視頻包,其具有等于VideoPayloadSize的當前值的有效負載大小。接著將值RemainingVideoPayloadSize設定為0。在此點,帶寬有效包化器已產(chǎn)生視頻包用于提交到RTP/UDP/IP/PPP轉(zhuǎn)換模塊26。如果RemainingVideoPayloadSize不小于minVPSize,那么RemainingVideoPayloadSize不等于0,VideoDatalnBuffer不為空值,且VideoDatalnBuffer的大小不大于或等于RemainingVideoPayloadSize+minVPSize,那么帶寬有效包化器使用地址VideoPayloadData加上偏移量VideoPayloadSize來將數(shù)據(jù)從緩沖器52復制到VideoDatalnBuffer。在此情況下,復制的數(shù)據(jù)量等于VideoPayloadSize。接著,帶寬有效包化器將VideoPayloadSize設定為等于VideoDatalnBuffer的大小。視頻包成形器24的帶寬有效包化器接著將RemainingVideoPayloadSize設定為等于RemainingVideoPayloadSize減去VideoBufferSize與0中的最大值。VideoBufferSize表示視頻緩沖器52的大小。如果在視頻緩沖器52中不再有數(shù)據(jù),或當前時間戳(TS)不等于下一TS,或RemainingVideoPayloadSize等于0,或VideoDatalnBuffer經(jīng)分段,那么帶寬有效包化器從VideoPayloadData產(chǎn)生一個具有有效負載大小VideoPayloadSize的視頻包,并將VideoPayloadSize設定為0。否則,帶寬有效包化器設定VideoDatalnBuffer以獲取視頻緩沖器52中的下一幀、GOB或切片單元(如果存在),或設定為空值,如果在視頻緩沖器中不再有數(shù)據(jù)。作為信道自適應視頻包成形的實例,假定音頻緩沖器62產(chǎn)生音頻包。RTP/UDP/IP/PPP模塊26將音頻包添加到RLP隊列28。視頻包成形器24的有效負載大小估計器確定RLP隊列大小、音頻-視頻優(yōu)先級值以及信道條件?;谀切┐_定,視頻包成形器24的有效負載大小估計器估計將產(chǎn)生的下一視頻包的有效負載大小。帶寬有效包化器產(chǎn)生視頻包并基于估計的有效負載大小和最小視頻包大小來調(diào)整視頻包的大小。帶寬有效包化器將視頻包添加到RLP隊列28。MAC層模塊30從RLP隊列28的內(nèi)容產(chǎn)生MACRLP包。本發(fā)明中描述的技術(shù)可實施在通用微處理器、數(shù)字信號處理器(DSP)、專用集成電路(ASIC)、現(xiàn)場可編程門陣列(FPGA)或其它等效邏輯裝置內(nèi)。舉例來說,視頻編碼器系統(tǒng)12、視頻解碼器系統(tǒng)14以及相關(guān)聯(lián)的組件和模塊可實施為在數(shù)字信號處理器(DSP)或其它處理裝置上運行的編碼過程或編碼/解碼(CODEC)過程的部分。因此,描述為模塊的組件可形成此過程或單獨過程的可編程特征。視頻編碼器系統(tǒng)12可具有用于存儲指令和數(shù)據(jù)的專用存儲器,以及專用硬件、軟件、固件或其組合。如果以軟件實施,那么技術(shù)可實施為可由一個或一個以上處理器執(zhí)行的指令。指令可存儲在計算機可讀媒體上,例如隨機存取存儲器(RAM)、只讀存儲器(ROM)、非易失性隨機存取存儲器(NVRAM)、電可擦可編程只讀存儲器(EEPROM)、快閃存儲器、磁性或光學數(shù)據(jù)存儲裝置等。指令致使一個或一個以上處理器執(zhí)行本發(fā)明中描述的功能性的某些方面。已經(jīng)描述各種實施例。這些和其它實施例在所附權(quán)利要求書的范圍內(nèi)。權(quán)利要求1.一種方法,其包括將經(jīng)編碼視頻添加到物理視頻緩沖器;從所述物理視頻緩沖器中移除所述經(jīng)編碼視頻的包以用于在信道上傳輸;維持虛擬視頻緩沖器,所述虛擬視頻緩沖器表示相對于目標編碼速率的所述經(jīng)編碼視頻的量;以及基于所述物理視頻緩沖器的充滿度和所述虛擬視頻緩沖器的充滿度控制所述視頻的實際編碼速率。2.根據(jù)權(quán)利要求l所述的方法,其中所述信道展現(xiàn)變化的信道條件,所述方法進一步響應于所述變化的信道條件而從所述物理視頻緩沖器中隨著時間移除變化量的所述經(jīng)編碼視頻。3.根據(jù)權(quán)利要求l所述的方法,其中控制實際編碼速率包含如果所述物理視頻緩沖器的充滿度和所述虛擬視頻緩沖器的充滿度的最大值大于或等于跳過闊值,那么跳過視頻幀的編碼。4.根據(jù)權(quán)利要求3所述的方法,其進一步包括如果所述物理視頻緩沖器的充滿度和所述虛擬視頻緩沖器的充滿度的最大值小于所述跳過閾值,那么估計界定可用于所述視頻幀的編碼位數(shù)目的幀預算,并基于所述幀預算控制所述實際編碼速率。5.根據(jù)權(quán)利要求4所述的方法,其中估計幀預算包含基于目標位速率、目標幀速率、所述物理視頻緩沖器的充滿度、所述虛擬視頻緩沖器的充滿度以及所述跳過閾值來估計所述編碼位數(shù)目。6.根據(jù)權(quán)利要求5所述的方法,其進一步包括-大致基于以下表達式確定所述虛擬視頻緩沖器的充滿度-Wn=max(Wn-1+Bn-l-R/F,0)其中Wn是用于視頻幀n的所述虛擬視頻緩沖器的充滿度,Wn-l是用于視頻幀n-l的所述虛擬視頻緩沖器的充滿度,Bn-l是分配到視頻幀n-l的實際編碼位,R是所述目標位速率,且F是所述目標幀速率;以及大致根據(jù)以下表達式確定所述實際編碼速率Xn=max(w*Vn,Wn),以及Bn=R/F-A,其中如果Xn〉Z承M,那么A-Xn/F,如果Xn<==Z*M,那么△=Xn-Z*M,Vn是用于視頻幀n的所述物理視頻緩沖器的充滿度,w是正整數(shù),M是所述跳過閾值,且Z是系數(shù)。7.根據(jù)權(quán)利要求l所述的方法,其進一步包括如果所述物理視頻緩沖器的充滿度和所述虛擬視頻緩沖器的充滿度的最大值小于所述跳過閾值,那么估計界定可用于所述視頻幀的編碼位數(shù)目的幀預算,并基于所述幀預算控制所述實際編碼速率。8.根據(jù)權(quán)利要求7所述的方法,其中估計幀預算包含基于目標位速率、目標幀速率、所述物理視頻緩沖器的充滿度、所述虛擬視頻緩沖器的充滿度以及所述跳過閾值來估計所述編碼位數(shù)目。9.根據(jù)權(quán)利要求8所述的方法,其進一步包括大致基于以下表達式確定所述虛擬視頻緩沖器的充滿度Wn=max(Wn-1+Bn-1-R/F,0)其中Wn是用于視頻幀n的所述虛擬視頻緩沖器的充滿度,Wn-1是用于視頻幀n-1的所述虛擬視頻緩沖器的充滿度,Bn-1是分配到視頻幀n-1的實際編碼位,R是所述目標位速率,且F是所述目標幀速率;以及大致根據(jù)以下表達式確定所述實際編碼速率Xn=max(w*Vn,Wn),以及Bn=R/F-A,其中如果Xn〉Z承M,那么A-Xn/F,如果Xn<==Z*M,那么△=Xn-Z*M,Vn是用于視頻幀n的所述物理視頻緩沖器的充滿度,w是正整數(shù),M是所述跳過閾值,且Z是系數(shù)。10.根據(jù)權(quán)利要求l所述的方法,其中所述信道是無線信道,所述方法進一步包括估計所述無線信道的通過量;以及從所述物理視頻緩沖器產(chǎn)生具有基于所述估計的通過量確定的視頻包大小的視頻包。11.根據(jù)權(quán)利要求10所述的方法,其進一步包括產(chǎn)生音頻包,其中所述視頻包大小是基于所述估計的通過量和所述音頻包的大小確定的。12.根據(jù)權(quán)利要求11所述的方法,其進一步包括基于所述音頻包和所述視頻包產(chǎn)生物理層包,以及將所述物理層包傳輸?shù)竭h程裝置以支持移動無線視頻電話會議。13.根據(jù)權(quán)利要求12所述的方法,其中所述物理層包大致符合cdma2000lxEV-DO版本O標準。14.根據(jù)權(quán)利要求l所述的方法,其進一步包括基于所述實際編碼速率估計界定可用于所述視頻幀的編碼位數(shù)目的幀預算;以及基于所述幀預算將P域值分配到所述幀內(nèi)的宏塊。15.根據(jù)權(quán)利要求14所述的方法,其進一步包括將所述P域值映射到相應的量化參數(shù)(QP)值以將若干編碼位分配到所述宏塊中的每一者。16.根據(jù)權(quán)利要求l所述的方法,其進一步包括當所述經(jīng)編碼視頻的至少一部分已經(jīng)在所述物理視頻緩沖器中歷時超過一閾值的時間周期時從所述物理視頻緩沖器丟棄所述經(jīng)編碼視頻的所述部分。17.—種系統(tǒng),其包括視頻編碼器;物理視頻緩沖器,其存儲由所述視頻編碼器編碼的視頻;包成形器,其從所述物理視頻緩沖器中移除所述經(jīng)編碼視頻以用于在信道上傳輸;虛擬視頻緩沖器,其表示相對于目標編碼速率的所述經(jīng)編碼視頻的量;以及控制器,其基于所述物理視頻緩沖器的充滿度和所述虛擬視頻緩沖器的充滿度控制所述視頻的實際編碼速率。18.根據(jù)權(quán)利要求17所述的系統(tǒng),其中所述信道展現(xiàn)變化的信道條件,且所述包成形器響應于所述變化的信道條件而從所述物理視頻緩沖器中隨著時間移除變化量的所述經(jīng)編碼視頻。19.根據(jù)權(quán)利要求17所述的系統(tǒng),其中如果所述物理視頻緩沖器的充滿度和所述虛擬視頻緩沖器的充滿度的最大值大于或等于跳過閾值,那么所述控制器跳過視頻幀的編碼。20.根據(jù)權(quán)利要求19所述的系統(tǒng),其中如果所述物理視頻緩沖器的充滿度和所述虛擬視頻緩沖器的充滿度的最大值小于所述跳過閾值,那么所述控制器估計界定可用于所述視頻幀的編碼位數(shù)目的幀預算,并基于所述幀預算控制所述實際編碼速率。21.根據(jù)權(quán)利要求20所述的系統(tǒng),其中所述控制器基于目標位速率、目標幀速率、所述物理視頻緩沖器的充滿度、所述虛擬視頻緩沖器的充滿度以及所述跳過閾值來估計所述幀預算。22.根據(jù)權(quán)利要求21所述的系統(tǒng),其中所述控制器大致基于以下表達式確定所述虛擬視頻緩沖器的充滿度Wn=max(Wn-1+Bn-l-R/F,0)其中Wn是用于視頻幀n的所述虛擬視頻緩沖器的充滿度,Wn-l是用于視頻幀n-l的所述虛擬視頻緩沖器的充滿度,Bn-l是分配到視頻幀ii-l的實際編碼位,R是所述目標位速率,且F是所述目標幀速率;以及大致根據(jù)以下表達式確定所述實際編碼速率Xn=max(w*Vn,Wn),以及Bn=R/F-A,其中如果Xn〉Z承M,那么A:Xn/F,如果Xn<==Z*M,那么A=Xn-Z*M,Vn是用于視頻幀n的所述物理視頻緩沖器的充滿度,w是正整數(shù),M是所述跳過閾值,且Z是系數(shù)。23.根據(jù)權(quán)利要求17所述的系統(tǒng),其中如果所述物理視頻緩沖器的充滿度和所述虛擬視頻緩沖器的充滿度的最大值小于所述跳過閾值,那么所述控制器估計界定可用于所述視頻幀的編碼位數(shù)目的幀預算,并基于所述幀預算控制所述實際編碼速率。24.根據(jù)權(quán)利要求23所述的系統(tǒng),其中所述控制器基于目標位速率、目標幀速率、所述物理視頻緩沖器的充滿度、所述虛擬視頻緩沖器的充滿度以及所述跳過閾值來估計所述幀預算。25.根據(jù)權(quán)利要求24所述的系統(tǒng),其中所述控制器大致基于以下表達式確定所述虛擬視頻緩沖器的充滿度Wn=max(Wn-1+Bn-l-R/F,0)其中Wn是用于視頻幀n的所述虛擬視頻緩沖器的充滿度,Wn-l是用于視頻幀n-l的所述虛擬視頻緩沖器的充滿度,Bn-l是分配到視頻幀n-1的實際編碼位,R是所述目標位速率,且F是所述目標幀速率;以及根據(jù)以下表達式確定所述實際編碼速率Xn=max(w*Vn,Wn),以及Bn=R/F-△,其中如果Xn〉Z豐M,那么A-Xn/F,如果Xn<==Z*M,那么△=Xn-Z*M,Vn是用于視頻幀n的所述物理視頻緩沖器的充滿度,w是正整數(shù),M是所述跳過閾值,且Z是系數(shù)。26.根據(jù)權(quán)利要求17所述的系統(tǒng),其中所述信道是無線信道,其中所述包成形器估計所述無線信道的通過量,并從所述物理視頻緩沖器產(chǎn)生具有基于所述估計的通過量確定的視頻包大小的視頻包。27.根據(jù)權(quán)利要求26所述的系統(tǒng),其進一步包括產(chǎn)生音頻包的音頻編碼器,其中所述視頻包大小是基于所述估計的通過量和所述音頻包的大小確定的。28.根據(jù)權(quán)利要求27所述的系統(tǒng),其進一步包括物理層模塊,所述物理層模塊基于所述音頻包和所述視頻包產(chǎn)生物理層包,并將所述物理層包傳輸?shù)竭h程裝置以支持移動無線視頻電話會議。29.根據(jù)權(quán)利要求28所述的系統(tǒng),其中所述物理層包大致符合cdma2000lxEV-DO版本0標準。30.根據(jù)權(quán)利要求17所述的系統(tǒng),其中所述控制器基于所述實際編碼速率估計界定可用于所述視頻幀的編碼位數(shù)目的幀預算;以及基于所述幀預算將P域值分配到所述幀內(nèi)的宏塊。31.根據(jù)權(quán)利要求30所述的系統(tǒng),其中所述控制器將所述P域值映射到相應的量化參數(shù)(QP)值以將若干編碼位分配到所述宏塊中的每一者。32.根據(jù)權(quán)利要求17所述的系統(tǒng),其中當所述經(jīng)編碼視頻的至少一部分已經(jīng)在所述物理視頻緩沖器中歷時超過一閾值的時間周期時,所述物理視頻緩沖器從所述物理視頻緩沖器丟棄所述經(jīng)編碼視頻的所述部分。33.—種系統(tǒng),其包括用于編碼視頻的裝置;物理視頻緩沖器裝置,其用于存儲所述經(jīng)編碼視頻;包成形裝置,其用于從來自所述物理視頻緩沖器裝置的所述經(jīng)編碼視頻中產(chǎn)生視頻包以用于在信道上傳輸;虛擬緩沖器裝置,其用于維持表示相對于目標編碼速率的所述經(jīng)編碼視頻的量的虛擬視頻緩沖器;以及控制裝置,其用于基于所述物理視頻緩沖器的充滿度和所述虛擬視頻緩沖器的充滿度控制所述視頻的實際編碼速率。34.根據(jù)權(quán)利要求33所述的系統(tǒng),其中所述信道展現(xiàn)變化的信道條件,且所述包成形裝置響應于所述變化的信道條件而從所述物理視頻緩沖器中隨著時間移除變化量的所述經(jīng)編碼視頻。35.根據(jù)權(quán)利要求33所述的系統(tǒng),其中所述控制裝置包含用于如果所述物理視頻緩沖器的充滿度和所述虛擬視頻緩沖器的充滿度的最大值大于或等于跳過閾值那么就跳過視頻幀的編碼的裝置。36.根據(jù)權(quán)利要求35所述的系統(tǒng),其中所述控制裝置包含用于如果所述物理視頻緩沖器的充滿度和所述虛擬視頻緩沖器的充滿度的最大值小于所述跳過閾值那么就估計界定可用于所述視頻幀的編碼位數(shù)目的幀預算的裝置,以及用于基于所述幀預算控制所述實際編碼速率的裝置。37.根據(jù)權(quán)利要求36所述的系統(tǒng),其中所述用于估計幀預算的裝置包含用于基于目標位速率、目標幀速率、所述物理視頻緩沖器的充滿度、所述虛擬視頻緩沖器的充滿度以及所述跳過閾值來估計所述編碼位數(shù)目的裝置。38.根據(jù)權(quán)利要求33所述的系統(tǒng),其中所述信道是無線信道,且所述包成形裝置包含用于估計所述無線信道的通過量的裝置,以及用于從所述物理視頻緩沖器產(chǎn)生具有基于所述估計的通過量確定的視頻包大小的視頻包的裝置。39.根據(jù)權(quán)利要求38所述的系統(tǒng),其進一步包括用于產(chǎn)生音頻包的裝置,其中所述包成形裝置基于所述估計的通過量和所述音頻包的大小確定所述視頻包大小。40.根據(jù)權(quán)利要求38所述的系統(tǒng),其進一步包括用于基于所述音頻包和所述視頻包產(chǎn)生物理層包的裝置,以及用于將所述物理層包傳輸?shù)竭h程裝置以支持移動無線視頻電話會議的裝置。41.根據(jù)權(quán)利要求40所述的系統(tǒng),其中所述物理層包大致符合cdma2000lxEV-DO版本0標準。42.根據(jù)權(quán)利要求33所述的系統(tǒng),其中所述控制裝置包含用于基于所述實際編碼速率估計界定可用于所述視頻幀的編碼位數(shù)目的幀預算的裝置;用于基于所述幀預算將P域值分配到所述幀內(nèi)的宏塊的裝置;以及用于將所述P域值映射到相應的量化參數(shù)(QP)值以將若干編碼位分配到所述宏塊中的每一者的裝置。43.根據(jù)權(quán)利要求33所述的方法,其進一步包括用于當所述經(jīng)編碼視頻的至少一部分已經(jīng)在所述物理視頻緩沖器中歷時超過一閾值的時間周期時從所述物理視頻緩沖器裝置丟棄所述經(jīng)編碼視頻的所述部分的裝置。44.一種計算機可讀媒體,其包括用以致使一個或一個以上處理器進行以下操作的指令將經(jīng)編碼視頻添加到物理視頻緩沖器;從所述物理視頻緩沖器中移除所述經(jīng)編碼視頻包以用于在信道上傳輸;維持虛擬視頻緩沖器,所述虛擬視頻緩沖器表示相對于目標編碼速率的經(jīng)編碼視頻的量;以及基于所述物理視頻緩沖器的充滿度和所述虛擬視頻緩沖器的充滿度控制所述視頻的實際編碼速率。全文摘要本發(fā)明涉及用于視頻電話(VT)應用的視頻源速率控制的技術(shù)。可使用幀預算的基于雙緩沖器的估計來控制源視頻編碼速率,所述幀預算界定可用于視頻幀的編碼位數(shù)目?;陔p緩沖器的估計技術(shù)可跟蹤物理視頻緩沖器的充滿度和虛擬視頻緩沖器的充滿度。接著基于所得的幀預算來控制源視頻編碼速率。所述虛擬緩沖器的內(nèi)容取決于由目標編碼速率強加的限制,而所述物理緩沖器的內(nèi)容取決于由變化的信道條件強加的限制。對物理視頻緩沖器充滿度的考慮允許視頻源速率控制技術(shù)是信道自適應的。對虛擬視頻緩沖器充滿度的考慮允許視頻源速率控制技術(shù)避免對可占滿信道的過量視頻進行編碼。文檔編號H04N7/26GK101341756SQ200680048468公開日2009年1月7日申請日期2006年10月27日優(yōu)先權(quán)日2005年10月27日發(fā)明者哈立德·希勒米·厄勒-馬列,李彥輯,蔡明章申請人:高通股份有限公司