本發(fā)明是有關(guān)于一種視頻串流處理方法與視頻串流處理系統(tǒng),且特別是有關(guān)于一種視頻串流解碼方法與視頻串流解碼系統(tǒng)。
背景技術(shù):
請參照圖1,其繪示了已知視頻串流解碼系統(tǒng)100的示意圖。視頻串流解碼系統(tǒng)100例如可設(shè)置于一電視、或一電腦中。視頻串流解碼系統(tǒng)100包括一視頻解碼器110、一畫面編碼器120、一暫存器130及一畫面解碼器140,畫面編碼器120包含一壓縮器122,畫面解碼器140包含一解壓縮器142。視頻解碼器110接收一視頻串流(videostream),視頻串流中包含數(shù)個編碼后畫面(codedframe)。視頻解碼器110對編碼后畫面進行解碼后產(chǎn)生一畫面,該畫面包含多個編碼區(qū)塊(codingblock),編碼區(qū)塊是最小可獨立編碼或解碼的單位,畫面編碼器120以一編碼區(qū)塊為單位對該畫面進行編碼。畫面編碼器120中的壓縮器122對該畫面中的一編碼區(qū)塊內(nèi)的一影像數(shù)據(jù)群(imagedatagroup)進行壓縮后產(chǎn)生一壓縮后影像數(shù)據(jù)群,其中,壓縮器122為一固定長度編碼器(fixedlengthencoder)或一變動長度編碼器(variablelengthencoder)。接著,壓縮器122將該壓縮后影像數(shù)據(jù)群經(jīng)由總線b1輸出至?xí)捍嫫?30,該壓縮后影像數(shù)據(jù)群暫存于暫存器130中,以供視頻解碼器110于解碼程序中參考。當(dāng)視頻解碼器110于解碼程序中需要參考該壓縮后影像數(shù)據(jù)群時,暫存器130經(jīng)由總線b1輸出該壓縮后影像數(shù)據(jù)群至畫面解碼器140,畫面解碼器140中的解壓縮器142對該壓縮后影像數(shù)據(jù)群進行解壓縮后產(chǎn)生該影像數(shù)據(jù)群,并輸出該影像數(shù)據(jù)群至視頻解碼器110以供視頻解碼器110于解碼程序中參考。
一般來說,變動長度編碼演算法的壓縮效率較高。然而,對于像素值變動較小的影像數(shù)據(jù)群,變動長度編碼演算法的壓縮效率可能會低于固定長度編碼演算法的壓縮效率。當(dāng)壓縮器122為一固定長度編碼器或一變動長度編碼器時,便無法針對不同的影像數(shù)據(jù)群選擇合適的編碼器來提高壓縮效率,以降低總線b1的頻寬使用量。
技術(shù)實現(xiàn)要素:
本發(fā)明有關(guān)于一種視頻串流解碼方法與視頻串流解碼系統(tǒng),其可針對不同的影像數(shù)據(jù)群選擇合適的編碼器來提高壓縮效率,以降低總線頻寬使用量。
根據(jù)本發(fā)明的一方面,提出一種視頻串流解碼系統(tǒng)。該系統(tǒng)包含一視頻解碼器、一畫面編碼器、一暫存器及一畫面解碼器。視頻解碼器接收一視頻串流,并對該視頻串流中的一編碼后畫面進行解碼,以產(chǎn)生一畫面,該畫面包含多個編碼區(qū)塊(codingblock)。畫面編碼器包括一第一壓縮器、一第二壓縮器及一選擇器。第一壓縮器以一第一壓縮演算法壓縮一編碼區(qū)塊中的一影像數(shù)據(jù)群(imagedatagroup),并產(chǎn)生一第一壓縮后影像數(shù)據(jù)群。第二壓縮器以一第二壓縮演算法壓縮該編碼區(qū)塊中的該影像數(shù)據(jù)群,并產(chǎn)生一第二壓縮后影像數(shù)據(jù)群,其中該第一壓縮演算法與該第二壓縮演算法不同。選擇器根據(jù)該第一壓縮后影像數(shù)據(jù)群與該第二壓縮后影像數(shù)據(jù)群,輸出該第一壓縮后影像數(shù)據(jù)群至一暫存器。暫存器暫存該第一壓縮后影像數(shù)據(jù)群。畫面解碼器自該暫存器接收該第一壓縮后影像數(shù)據(jù),對該第一壓縮后影像數(shù)據(jù)進行解壓縮,以產(chǎn)生該影像數(shù)據(jù)群,并輸出該影像數(shù)據(jù)群至該視頻解碼器,以供該視頻解碼器參考該影像數(shù)據(jù)群對該視頻串流中的另一編碼后畫面進行解碼。根據(jù)本發(fā)明的另一方面,提出一種視頻串流解碼方法,該方法包含以下步驟。接收一視頻串流,該視頻串流包含多個編碼后畫面(codedframes)。對該視頻串流中的一編碼后畫面進行解碼,以產(chǎn)生一畫面,該畫面包含多個編碼區(qū)塊(codingblock)。以一第一壓縮演算法壓縮一編碼區(qū)塊中的一影像數(shù)據(jù)群(imagedatagroup),并產(chǎn)生一第一壓縮后影像數(shù)據(jù)群。以一第二壓縮演算法壓縮該編碼區(qū)塊中的該影像數(shù)據(jù)群,并產(chǎn)生一第二壓縮后影像數(shù)據(jù)群,其中該第一壓縮演算法與該第二壓縮演算法不同。根據(jù)該第一壓縮后影像數(shù)據(jù)群與該第二壓縮后影像數(shù)據(jù)群,輸出該第一壓縮后影像數(shù)據(jù)群至一暫存器。自該暫存器接收該第一壓縮后影像數(shù)據(jù)。對該第一壓縮后影像數(shù)據(jù)進行解壓縮,以產(chǎn)生該影像數(shù)據(jù)群。參考該影像數(shù)據(jù)群對該視頻串流中的另一編碼后畫面進行解碼。
為了對本發(fā)明的上述及其他方面有更佳的了解,下文特舉較佳實施例,并配合附圖,作詳細說明如下:
附圖說明
圖1繪示了已知視頻串流解碼系統(tǒng)的示意圖。
圖2繪示了根據(jù)一范例的視頻串流解碼系統(tǒng)的示意圖。
圖3繪示了根據(jù)一范例的視頻串流解碼方法的流程圖。
符號說明
100、200:視頻串流解碼系統(tǒng)
110、210:視頻解碼器
120、220:畫面編碼器
122:壓縮器
130、230:暫存器
140、240:畫面解碼器
142:解壓縮器
222:第一壓縮器
224:第二壓縮器
226:選擇器
242:解壓縮器
300:視頻串流解碼方法
b1、b2:總線
cidg1:第一壓縮后影像數(shù)據(jù)群
cidg2:第二壓縮后影像數(shù)據(jù)群
s310、s320、s330、s340、s350、s360、s370、s380、s390:流程步驟
具體實施方式
本發(fā)明透過兩個或以上的不同壓縮器對同一影像數(shù)據(jù)用不同壓縮演算法進行壓縮,以產(chǎn)生以二或以上的壓縮后影像數(shù)據(jù)群,并輸出壓縮效率最好的一壓縮后影像數(shù)據(jù)群至?xí)捍嫫鳎越档涂偩€頻寬使用量。
請參照圖2,其繪示了根據(jù)一范例的視頻串流解碼系統(tǒng)200的示意圖。視頻串流解碼系統(tǒng)200例如可設(shè)置于一電視或一電腦中。視頻串流解碼系統(tǒng)200包括一視頻解碼器210、一畫面編碼器220、一暫存器230及一畫面解碼器240。畫面編碼器220包括一第一壓縮器222、一第二壓縮器224與一選擇器226。視頻解碼器210、畫面編碼器220、暫存器230及畫面解碼器240均由硬體電路實現(xiàn)。
視頻解碼器210接收一視頻串流,該視頻串流中包含數(shù)個編碼后畫面。視頻解碼器210對該視頻串流的一編碼后畫面進行解碼,以產(chǎn)生一畫面,該畫面包含多個編碼區(qū)塊,編碼區(qū)塊是最小可獨立編碼或解碼的單位。
畫面編碼器220以編碼區(qū)塊為單位對該畫面進行編碼,并輸出一壓縮后影像數(shù)據(jù)群至?xí)捍嫫?30。詳細來說,畫面編碼器220中的第一壓縮器222以一第一壓縮演算法壓縮該畫面中的一編碼區(qū)塊內(nèi)的一影像數(shù)據(jù),以產(chǎn)生一第一壓縮后影像數(shù)據(jù)群cidg1,并輸出第一壓縮后影像數(shù)據(jù)群cidg1至畫面編碼器220中的選擇器226。畫面編碼器220中的第二壓縮器224以一第二壓縮演算法壓縮該畫面中的該編碼區(qū)塊內(nèi)的該影像數(shù)據(jù)群,以產(chǎn)生一第二壓縮后影像數(shù)據(jù)群cidg2,并輸出第二壓縮后影像數(shù)據(jù)群cidg2至選擇器226。其中,第一壓縮器222的第一壓縮演算法與第二壓縮器224的第二壓縮演算法不同;舉例來說,第一壓縮器222為一固定長度編碼器,第一壓縮演算法為一固定長度編碼法,第二壓縮器224為一變動長度編碼器,第二壓縮演算法為一變動長度編碼法。
接著,選擇器226根據(jù)第一壓縮后影像數(shù)據(jù)群cidg1與第二壓縮后影像數(shù)據(jù)群cidg1,輸出第一壓縮后影像數(shù)據(jù)群cidg1與第二壓縮后影像數(shù)據(jù)群cidg1中之一。舉例來說,選擇器226可根據(jù)第一壓縮后影像數(shù)據(jù)群cidg1得知第一壓縮后影像數(shù)據(jù)群cidg1的壓縮后數(shù)據(jù)量,并可根據(jù)第二壓縮后影像數(shù)據(jù)群cidg2得知第二壓縮后影像數(shù)據(jù)群cidg2的壓縮后數(shù)據(jù)量,并比較第一壓縮后影像數(shù)據(jù)群cidg1的壓縮后數(shù)據(jù)量與第二壓縮后影像數(shù)據(jù)群cidg2的壓縮后數(shù)據(jù)量,以判斷第一壓縮器222與第二壓縮器224的壓縮效率。若第一壓縮后影像數(shù)據(jù)群cidg1的數(shù)據(jù)量小于第二壓縮后影像數(shù)據(jù)群cidg2的數(shù)據(jù)量,則選擇器226便可據(jù)以判斷針對該編碼區(qū)塊內(nèi)的該影像數(shù)據(jù),第一壓縮器222的壓縮效率大于第二壓縮器224的壓縮效率,進而經(jīng)由總線b10輸出第一壓縮后影像數(shù)據(jù)群cidg1至?xí)捍嫫?30;若第二壓縮后影像數(shù)據(jù)群cidg2的數(shù)據(jù)量小于第一壓縮后影像數(shù)據(jù)群cidg1的數(shù)據(jù)量,則選擇器226便可據(jù)以判斷針對該編碼區(qū)塊內(nèi)的該影像數(shù)據(jù),第二壓縮器224的壓縮效率大于的壓縮效率第一壓縮器222,進而經(jīng)由總線b20輸出第二壓縮后影像數(shù)據(jù)群cidg2至?xí)捍嫫?30。第一壓縮后影像數(shù)據(jù)群cidg1(或第二壓縮后影像數(shù)據(jù)群cidg2)便暫存于暫存器230中。
當(dāng)視頻解碼器210于解碼程序中需要參考該編碼區(qū)塊內(nèi)的該影像數(shù)據(jù)群時,畫面解碼器240便經(jīng)由總線b2自暫存器230接收暫存于其中的第一壓縮后影像數(shù)據(jù) 群cidg1(或第二壓縮后影像數(shù)據(jù)群cidg2),并對第一壓縮后影像數(shù)據(jù)群cidg1(或第二壓縮后影像數(shù)據(jù)群cidg2)進行解壓縮,以產(chǎn)生該影像數(shù)據(jù)群,并輸出該影像數(shù)據(jù)群至視頻解碼器210,視頻解碼器210便根據(jù)該影像數(shù)據(jù)群對該畫面中的另一編碼后畫面進行解碼。
如此一來,畫面編碼器220便可針對不同的影像數(shù)據(jù)群選擇合適的編碼器來提高壓縮效率,以降低總線b2的頻寬使用量。
在一范例中,針對同一影像數(shù)據(jù),若固定長度編碼器(例如:第一壓縮器222)與變動長度編碼器(例如:第二壓縮器224)的壓縮效率相等時(例如:第一壓縮后影像數(shù)據(jù)群cidg1的數(shù)據(jù)量等于第二壓縮后影像數(shù)據(jù)群cidg2的數(shù)據(jù)量),選擇器226可選擇輸出固定長度編碼器的壓縮后影像數(shù)據(jù)群(例如:第一壓縮后影像數(shù)據(jù)群cidg1)至?xí)捍嫫?,以供解碼器210于后續(xù)解碼程序中參考。由于透過固定長度編碼法壓縮而得到的壓縮后影像數(shù)據(jù)群的解壓縮速率大于透過變動長度編碼法壓縮而得到的壓縮后影像數(shù)據(jù)群的解壓縮速率,因此可提升視頻解碼器210的解碼速率。
請參照圖3,其繪示根據(jù)一范例的視頻串流解碼方法300的流程圖。視頻串流解碼方法300包含下列步驟:
步驟s310:接收一視頻串流;
步驟s320:對該視頻串流中的一編碼后畫面進行解碼以產(chǎn)生一畫面;
步驟s330:以一第一壓縮演算法壓縮該畫面中的一編碼區(qū)塊內(nèi)的一影像數(shù)據(jù),以產(chǎn)生一第一壓縮后影像數(shù)據(jù)群;
步驟s340:以一第二壓縮演算法壓縮該畫面中的該編碼區(qū)塊內(nèi)的該影像數(shù)據(jù),以產(chǎn)生一第二壓縮后影像數(shù)據(jù)群;
步驟s350:根據(jù)第一壓縮后影像數(shù)據(jù)群與該二壓縮后影像數(shù)據(jù)群,判斷第一壓縮演算法的壓縮效率大于第二壓縮演算法的壓縮效率;
步驟s360:輸出該第一壓縮后影像數(shù)據(jù)群至一暫存器;
步驟s370:自該暫存器接收該第一壓縮后影像數(shù)據(jù);
步驟s380:對該第一壓縮后影像數(shù)據(jù)進行解壓縮,以產(chǎn)生該影像數(shù)據(jù)群;以及
步驟s390:參考該影像數(shù)據(jù)群對該視頻串流中的另一編碼后畫面進行解碼。
視頻串流解碼方法300可由視頻串流解碼系統(tǒng)200執(zhí)行。其中,步驟s310、s320、s390可由視頻解碼器210所執(zhí)行,步驟s330可由畫面編碼器220中的第一 壓縮器222所執(zhí)行,步驟s340可由畫面編碼器220中的第二壓縮器224所執(zhí)行,步驟s350、s360可由畫面編碼器220中的選擇器226所執(zhí)行,步驟s370、s380可由畫面解碼器240中的解壓縮器242所執(zhí)行。本領(lǐng)域技術(shù)人員在閱讀完關(guān)于視頻串流解碼系統(tǒng)200的說明后,應(yīng)該了解如何利用串流壓縮系統(tǒng)200執(zhí)行視頻串流解碼方法300,因此相關(guān)說明在此省略。
其中,步驟s330與步驟s340可同時被執(zhí)行。舉例來說,在畫面編碼器120中的第一壓縮器122以一第一壓縮演算法壓縮該畫面中的一編碼區(qū)塊內(nèi)的一影像數(shù)據(jù)的同時,畫面編碼器120中的第二壓縮器124可以以一第二壓縮演算法壓縮該畫面中的該編碼區(qū)塊內(nèi)的該影像數(shù)據(jù)。
在一實施例中,第一壓縮演算法為一固定長度編碼法,第二壓縮演算法為一變動長度編碼法;舉例來說,第一壓縮器222為一固定長度編碼器,第二壓縮器224為一變動長度編碼器。在另一實施例中,第一壓縮演算法為一變動長度編碼法,第二壓縮演算法為一固定長度編碼法;舉例來說,第一壓縮器222為一變動長度編碼器,第二壓縮器224為一固定長度編碼器。
請注意,在上述范例中,視頻解碼器210、畫面編碼器220及畫面解碼器240均由硬體電路實現(xiàn),但并非本發(fā)明的限制。換句話說,視頻解碼器210、畫面編碼器220及畫面解碼器240亦可由處理器搭配軟體程式來實現(xiàn)。
綜上所述,雖然本發(fā)明已以較佳實施例揭示如上,然其并非用以限定本發(fā)明。本發(fā)明所屬技術(shù)領(lǐng)域中具有通常知識者,在不脫離本發(fā)明的精神和范圍內(nèi),當(dāng)可作各種的更動與潤飾。因此,本發(fā)明的保護范圍當(dāng)以權(quán)利要求書界定為準。