專利名稱:極低時(shí)延下的幀內(nèi)編碼碼率控制方法
技術(shù)領(lǐng)域:
本發(fā)明涉及視頻編碼領(lǐng)域,特別是一種極低時(shí)延應(yīng)用環(huán)境下的幀內(nèi)編碼碼率控制 (Rate Control)算法。
背景技術(shù):
現(xiàn)今實(shí)時(shí)視頻流媒體、連接無(wú)線游戲終端的數(shù)字電視等技術(shù)正在成為時(shí)尚,相應(yīng) 的對(duì)極低時(shí)延下的視頻編碼技術(shù)提出更高要求。由于在編碼器和解碼器中,都有用來(lái)暫時(shí) 性存儲(chǔ)編碼數(shù)據(jù)的緩存,緩存的存在造成了所謂的端到端的延時(shí)。因此,在極低時(shí)延的應(yīng)用 環(huán)境中,碼率控制極為重要。很多應(yīng)用都要求端到端的延時(shí)極低,這就不可避免的削減緩存的大小。在緩存大 小受限的前提下保證緩存不下溢也不上溢使得碼率控制極其困難。而且,通常場(chǎng)景的變換 容易誘發(fā)緩存上溢,為了防止這種情況的發(fā)生,緩存大小不應(yīng)小于編碼一幀所產(chǎn)生的比特 數(shù),在考慮到編碼、解碼兩端,端到端的延時(shí)就會(huì)擴(kuò)大到至少兩幀。
發(fā)明內(nèi)容
本幀內(nèi)編碼碼率控制算法可以使端到端的延時(shí)縮小到小于一幀,并且在當(dāng)前編碼 幀的第一行宏塊接收完就開(kāi)始碼率控制,并對(duì)緩存可能出現(xiàn)的上溢進(jìn)行預(yù)測(cè)。本發(fā)明包括幀級(jí)控制、宏塊行級(jí)控制,宏塊級(jí)控制,通過(guò)以下步驟實(shí)現(xiàn)1.計(jì)算分配給第k幀的比特?cái)?shù),公式如下bF(k) = BT/Fr+(Bufsize/2-Bufused) ;(1)其中 為目標(biāo)比特率,F(xiàn)r為視頻序列的幀率。2. 1.計(jì)算分配給第k幀第j行宏塊的比特?cái)?shù),公式如下
權(quán)利要求
1.一種極低時(shí)延應(yīng)用環(huán)境下的幀內(nèi)編碼碼率控制算法,其特征在于,包括如下步驟 1)計(jì)算分配給第k幀的比特?cái)?shù)。2.1)計(jì)算分配給第k幀第j行宏塊的比特?cái)?shù)。 2. 2)計(jì)算判別因子,判別預(yù)測(cè)值并求參數(shù)。2.3)對(duì)分配給第k幀第j行宏塊的比特?cái)?shù)進(jìn)行修正。3.1)計(jì)算分配給第k幀的第(i,j)個(gè)宏塊的比特?cái)?shù)。 3. 2)計(jì)算第k幀宏塊積累的分配比特。3. 3)計(jì)算第k幀宏塊積累的實(shí)際編碼出的比特。 3. 4)確定量化參數(shù)。 3. 5)修正量化參數(shù)。
2.如權(quán)利要求1所述的極低時(shí)延應(yīng)用環(huán)境下的幀內(nèi)編碼碼率控制算法,其特征在于所 述步驟1)中計(jì)算分配給第k幀的比特?cái)?shù)的公式bF(k) = BT/Fr+(Bufsize/2-Bufused) ; (1) 其中 為目標(biāo)比特率,F(xiàn)r為視頻序列的幀率。
3.如權(quán)利要求1所述的極低時(shí)延應(yīng)用環(huán)境下的幀內(nèi)編碼碼率控制算法,其特征在于所 述步驟2. 1)中分配給第k幀第j行宏塊的比特?cái)?shù)的幾個(gè)公式
4.如權(quán)利要求1所述的極低時(shí)延應(yīng)用環(huán)境下的幀內(nèi)編碼碼率控制算法,其特征在于所 述步驟2. 2)中判別因子的計(jì)算公式
5.如權(quán)利要求1所述的極低時(shí)延應(yīng)用環(huán)境下的幀內(nèi)編碼碼率控制算法,其特征在于所 述步驟2. 2)中判別預(yù)測(cè)值原則當(dāng)δ處于(1-Τ1,1+Τ1)區(qū)間時(shí),說(shuō)明預(yù)測(cè)值可用;當(dāng)δ處于上面區(qū)間外時(shí),預(yù)測(cè)值不 可用;考慮到首幀等不存在預(yù)測(cè)值,因此屬于不能預(yù)測(cè)的情況。其中Tl為常數(shù)門(mén)限值。
6.如權(quán)利要求1所述的極低時(shí)延應(yīng)用環(huán)境下的幀內(nèi)編碼碼率控制算法,其特征在于所 述步驟2. 2)中參數(shù)求解公式對(duì)于預(yù)測(cè)值可用的情況,參數(shù)(k)使用公式 Gf (k) = GF(k-l) ;(7)對(duì)于預(yù)測(cè)值不可用或者不能預(yù)測(cè)的情況,參數(shù)(iF(k)使用公式
7.如權(quán)利要求1所述的極低時(shí)延應(yīng)用環(huán)境下的幀內(nèi)編碼碼率控制算法,其特征在于所 述步驟2. 3)中對(duì)分配給第k幀第j行宏塊的比特?cái)?shù)進(jìn)行修正公式
8.如權(quán)利要求1所述的極低時(shí)延應(yīng)用環(huán)境下的幀內(nèi)編碼碼率控制算法,其特征在于所 述步驟3. 1)中計(jì)算分配給第k幀的第(i,j)個(gè)宏塊的比特?cái)?shù)的公式
9.如權(quán)利要求1所述的極低時(shí)延應(yīng)用環(huán)境下的幀內(nèi)編碼碼率控制算法,其特征在于所述步驟3. 2)中計(jì)算第k幀宏塊積累的分配比特的公式
10.如權(quán)利要求1所述的極低時(shí)延應(yīng)用環(huán)境下的幀內(nèi)編碼碼率控制算法,其特征在于所述步驟3. 3)中計(jì)算第k幀宏塊積累的實(shí)際編碼出的比特的公式
11.如權(quán)利要求1所述的極低時(shí)延應(yīng)用環(huán)境下的幀內(nèi)編碼碼率控制算法,其特征在于 所述步驟3. 4)中確定量化參數(shù)的判決公式其中
12.如權(quán)利要求1所述的極低時(shí)延應(yīng)用環(huán)境下的幀內(nèi)編碼碼率控制算法,其特征在于 所述步驟3. 5)中修正量化參數(shù)的原則在步驟2. 2)中所述的預(yù)測(cè)值可用的情況下,在[QPp_l,QPp+l]的區(qū)間中取出量化參數(shù), QPp為前一幀各個(gè)宏塊量化參數(shù)的平均值;其他情況下,量化參數(shù)不修正。
全文摘要
一種極低時(shí)延下的幀內(nèi)編碼碼率控制算法,本算法在極低時(shí)延的應(yīng)用中,根據(jù)與當(dāng)前宏塊在時(shí)域或空域方面相關(guān)聯(lián)的宏塊來(lái)對(duì)當(dāng)前的宏塊進(jìn)行預(yù)測(cè),并根據(jù)預(yù)測(cè)出的復(fù)雜度分配合適的比特預(yù)算。最終通過(guò)比較生成比特?cái)?shù)和分配預(yù)算確定量化參數(shù),來(lái)改善編碼質(zhì)量。盡管為了滿足極低時(shí)延的要求,我們使用了每幀平均比特?cái)?shù)的大約1/3,但我們的算法取得了穩(wěn)定可靠編碼性能。
文檔編號(hào)H04N7/26GK102148978SQ20101010647
公開(kāi)日2011年8月10日 申請(qǐng)日期2010年2月4日 優(yōu)先權(quán)日2010年2月4日
發(fā)明者楊華嵐 申請(qǐng)人:成都市世嘉電子實(shí)業(yè)有限公司