專利名稱::在視頻編碼期間改變位率控制設(shè)定的系統(tǒng)與方法
技術(shù)領(lǐng)域:
:此發(fā)明有關(guān)于一種視頻編碼技術(shù),特別是一種在視頻編碼期間改變位率控制設(shè)定的系統(tǒng)與方法(SystemsandMethodsforChangingRate-ControlSettingDuringVideoEncoding)。
背景技術(shù):
:一段視頻序列(videosequence,VS)可以看成是一連串的靜止影像,需要大量的儲(chǔ)存空間與傳輸頻寬。若以分辨率640×480,每秒15張,90分鐘的一段全彩數(shù)字視頻而言,其需要的頻寬為640×480(pixels/frame)×3(bytes/pixel)×15(pictures/sec)=13.18MB/sec而所需的儲(chǔ)存空間為13.18MB/sec×90×60=69.50GB。這么大的數(shù)字視頻串流顯然不利于數(shù)據(jù)的實(shí)時(shí)傳輸與儲(chǔ)存,因此,各種編碼技術(shù)也因應(yīng)而生,以減少所需的內(nèi)存與傳輸頻寬。MPEG標(biāo)準(zhǔn)確保視頻編碼器所產(chǎn)生的標(biāo)準(zhǔn)化文件,能夠在配備有符合標(biāo)準(zhǔn)譯碼器的任何系統(tǒng)上開啟與運(yùn)作。數(shù)字視頻含有空間(spatial)與時(shí)間冗余(temporalredundancy)特性,可在品質(zhì)沒有重大減損的情況下進(jìn)行編碼。MPEG編碼為一個(gè)通用標(biāo)準(zhǔn),非僅針對(duì)特定應(yīng)用,為以時(shí)間與空間上的統(tǒng)計(jì)冗余為基礎(chǔ)的編碼方式??臻g冗余為同一張畫面相鄰近像素(pixels)的顏色值的相似度。MPEG編碼使用離散余弦轉(zhuǎn)換(DiscreteCosineTransform,DCT)對(duì)空間冗余的顏色值進(jìn)行畫面內(nèi)的(Intra-picture)空間上壓縮。時(shí)間冗余指重復(fù)出現(xiàn)于相鄰畫面的相同的像素群,其可在視覺上提供平順與逼真的移動(dòng)感覺。在畫面間的時(shí)間編碼上,MPEG仰賴預(yù)測(cè)(reliesonprediction),更確切地說,為移動(dòng)補(bǔ)償(motion-compensated)預(yù)測(cè)。MPEG利用I畫面、B畫面以及P畫面產(chǎn)生時(shí)間上的編碼。I畫面為框內(nèi)編碼的畫面,為一連串畫面的第一張,僅用來編碼以減少空間冗余,不參考之前或之后的畫面。P畫面為向前預(yù)測(cè)(forward-predicted)畫面,參考先前的I或P畫面來編碼,并擁有指向先前畫面信息的向量。B畫面可利用向前參考畫面、向后參考畫面、或上述兩者的數(shù)據(jù)進(jìn)行編碼。其中產(chǎn)生的移動(dòng)向量(motionvector)可為向前、向后或上述兩者。MPEG先對(duì)影像中的8×8區(qū)塊進(jìn)行離散余弦轉(zhuǎn)換產(chǎn)生DCT系數(shù),透過量化產(chǎn)生量化系數(shù),并透過移動(dòng)補(bǔ)償來進(jìn)行編碼。量化將產(chǎn)生的DCT系數(shù)除以關(guān)聯(lián)于品質(zhì)程序的量化位階來產(chǎn)生量化系數(shù),使用較高的量化位階可獲得較好的編碼效率,但會(huì)獲致較差的品質(zhì),使用較低的量化位階則反。傳統(tǒng)的MPEG視頻編碼器在一個(gè)畫面群組(groupofpicture,GOP)中,不管其中的復(fù)雜度,使用一個(gè)固定位率(constantbitrate,CBR)來進(jìn)行編碼。位率(bit-rate)用以決定視頻品質(zhì),定義一秒鐘的視頻數(shù)據(jù)需配置多少實(shí)體空間(以位為單位)。CBR技術(shù)假設(shè)位會(huì)被均勻的分布在畫面群組中,因而減少了編碼作業(yè)的自由程度。CBR編碼產(chǎn)生的視頻串流在不考慮輸入視頻內(nèi)容的復(fù)雜度的情況下,使用幾乎相同的位率進(jìn)行編碼。因此,對(duì)一個(gè)內(nèi)容簡單的視頻畫面段落而言,擁有良好的編碼品質(zhì),但對(duì)一個(gè)內(nèi)容復(fù)雜的視頻畫面段落而言,卻導(dǎo)致較差的編碼品質(zhì)。簡而言之,使用固定位率編碼會(huì)導(dǎo)致編碼品質(zhì)的不一致。既然視頻串流中的畫面復(fù)雜度本來就是變動(dòng)的,采用變動(dòng)位率(variablebitrate,VBR)進(jìn)行編碼,是較好的一個(gè)方式。簡而言之,在一段時(shí)間中,VBR編碼器產(chǎn)生非固定的位率輸出(non-constantoutputbit-rate),對(duì)于一個(gè)較復(fù)雜的視頻畫面使用較高的位率。因此,變動(dòng)位率編碼產(chǎn)生的編碼品質(zhì)較固定位率編碼來得一致。
發(fā)明內(nèi)容本發(fā)明提供一種改變至少一個(gè)位率控制設(shè)定的方法,由一個(gè)位率控制器來執(zhí)行。改變位率控制設(shè)定方法的實(shí)施例包括下列步驟判斷用以編碼視頻序列的下一部份的位率控制設(shè)定是否允許被改變。如果位率控制設(shè)定此時(shí)可被改變,就在編碼視頻序列的下一部份前,檢測(cè)是否有接收到一個(gè)改變位率控制設(shè)定的請(qǐng)求。當(dāng)允許改變位率控制設(shè)定并且檢測(cè)到請(qǐng)求時(shí),以非中斷的方式,使用變更后的位率控制設(shè)定來執(zhí)行視頻序列的下一部份的視頻編碼。視頻序列依據(jù)多個(gè)視頻編碼階層來被建構(gòu)。本發(fā)明也提供多種能夠改變至少一個(gè)位率控制設(shè)定的系統(tǒng)。該系統(tǒng)的一實(shí)施例包括一個(gè)位率控制控制器及一個(gè)視頻編碼器。視頻編碼器編碼一視頻序列,此視頻序列依據(jù)多個(gè)視頻編碼階層所建構(gòu)。位率控制器判斷用以編碼視頻序列的下一部份的位率控制設(shè)定是否允許被改變,在編碼視頻序列的下一部份前,檢測(cè)是否有接收到改變位率控制設(shè)定的請(qǐng)求,以及當(dāng)允許改變位率控制設(shè)定并且檢測(cè)到請(qǐng)求時(shí),控制視頻編碼器以非中斷的方式使用變更的位率控制設(shè)定來執(zhí)行視頻序列的下一部份的視頻編碼。本發(fā)明可以使變動(dòng)位率編碼產(chǎn)生的編碼品質(zhì)較固定位率編碼來得一致。圖1顯示范例的MPEG-2視頻串流畫面結(jié)構(gòu);圖2表示實(shí)施例的使用一個(gè)位率控制機(jī)制的MPEG編碼的示意圖;圖3為實(shí)施例的位率控制方法的流程圖;圖4a、圖4b為在視頻編碼期間,執(zhí)行視頻序列階層或畫面群組階層的位率控制設(shè)定改變的位率控制方法流程圖;圖5a、圖5b為在視頻編碼期間,執(zhí)行宏區(qū)塊階層的位率控制設(shè)定改變的位率控制方法的實(shí)施例流程圖;圖6a、圖6b、圖6c及圖6d為在視頻編碼期間,切換至另一個(gè)位率控制算法的位率控制方法的實(shí)施例流程圖;圖7a、圖7b、圖7c及圖7d為在視頻編碼期間,在兩個(gè)位率控制算法間作切換的位率控制方法的實(shí)施例流程圖;圖8為可在視頻編碼期間改變位率控制的計(jì)算機(jī)程序儲(chǔ)存于儲(chǔ)存體媒的的示意圖。主要組件符號(hào)說明20~在編碼期間改變位率控制設(shè)定的實(shí)施例的系統(tǒng);21~視頻編碼器;23~位率控制器;S311、S331、....、S373~方法步驟;A4~視頻編碼流程;S411、S431、....、S435、S491、S493~方法步驟;S453、S455、S471、S473~方法步驟;S511、S531、S533、S535~方法步驟;S553、S591、S593、S555、S571、S573~方法步驟;A61~視頻編碼流程;S611、S621、S623、S625~方法步驟;S633、S635、....、S653、S661~方法步驟;A63~視頻編碼流程;S671、S673、S675、S683~方法步驟;S685、S691、....、S697~方法步驟;A71~視頻編碼流程;S7000、S7111、....、S7195~方法步驟;S7153、S7155、....、S7191~方法步驟;A73~視頻編碼流程;S7311、S7331、....、S7395~方法步驟;S7353、S7355、....、S7391~方法步驟;80~儲(chǔ)存媒體;820~在編碼期間改變位率控制設(shè)定的計(jì)算機(jī)程序。具體實(shí)施例方式MPEG或H.26x標(biāo)準(zhǔn)確保視頻編碼系統(tǒng)所產(chǎn)生的標(biāo)準(zhǔn)化文件,能夠在配備有符合標(biāo)準(zhǔn)譯碼器的任何系統(tǒng)上可開啟與運(yùn)作。數(shù)字視頻所包括的空間與時(shí)間冗余的數(shù)據(jù),使其可在品質(zhì)沒有重大減損下進(jìn)行壓縮。MPEG編碼為一個(gè)通用標(biāo)準(zhǔn),非僅針對(duì)特定應(yīng)用,牽涉到以時(shí)間與空間上的統(tǒng)計(jì)冗余為基礎(chǔ)的壓縮方式。空間冗余為同一張畫面相鄰近像素的顏色值的相似度。MPEG編碼使用離散余弦轉(zhuǎn)換(DiscreteCosineTransform,DCT)進(jìn)行畫面內(nèi)的空間上壓縮來移除空間冗余。時(shí)間冗余是指在視頻畫面間的相同的移動(dòng),在視覺上提供平順與逼真的動(dòng)作。在畫面間的時(shí)間補(bǔ)償上,MPEG仰賴預(yù)測(cè),更確切地說,為移動(dòng)補(bǔ)償(motion-compensate)預(yù)測(cè)或畫面間(inter-picture)預(yù)測(cè)。MPEG利用I畫面(Intra-codedpictures)、B畫面(bi-directionallypredictive-pictures)以及P畫面(Predictive-codedpictures)產(chǎn)生時(shí)間上的壓縮。I畫面為框內(nèi)編碼的畫面,為一連串畫面的第一張,而不會(huì)參考之前或之后的畫面。P畫面為向前預(yù)測(cè)畫面,參考先前面的I或P畫面來編碼,并擁有指向先前畫面信息的移動(dòng)向量。B畫面可利用向前參考畫面、向后參考畫面、或上述兩者的數(shù)據(jù)進(jìn)行編碼。其中產(chǎn)生的移動(dòng)向量可用為向前、向后或上述兩者。圖1顯示MPEG-2視頻串流(bitstream)結(jié)構(gòu)的一個(gè)范例。視頻串流(videostream,VS)由多個(gè)畫面或畫面群組(Groupofpictures,GOP)所組成,畫面群組可排列為特定序列,此序列又稱畫面群組結(jié)構(gòu)(GOPstructure)。每一個(gè)畫面可分割為一或多個(gè)片段(slices,S)。每一片段由多個(gè)宏區(qū)塊(macroblocks,MBs)組成。每一宏區(qū)塊通常由四個(gè)8×8像素的亮度(luminance,luma)數(shù)據(jù)區(qū)塊(blocks)及兩個(gè)8×8像素的色度(chrominance,chroma)數(shù)據(jù)區(qū)塊所組成。圖2表示使用一個(gè)位率控制機(jī)制的MPEG編碼實(shí)施例的示意圖。在圖2的實(shí)施例中,編碼期間可改變位率控制設(shè)定的系統(tǒng)20包括視頻編碼器21及位率控制器23。視頻編碼器21通常將輸入的視頻分割成一個(gè)接著一個(gè)的宏區(qū)塊(Macroblock;MB)來處理。一個(gè)宏區(qū)塊包含數(shù)個(gè)亮度數(shù)據(jù)區(qū)塊與相應(yīng)的色度數(shù)據(jù)區(qū)塊。以區(qū)塊為基礎(chǔ)(block-wise)的移動(dòng)補(bǔ)償用來從先前畫面的數(shù)據(jù)預(yù)測(cè)輸入視頻的值。區(qū)塊轉(zhuǎn)換用以減少空間統(tǒng)計(jì)關(guān)聯(lián)性。最廣為采用的轉(zhuǎn)換是8×8的離散余弦轉(zhuǎn)換(DCT)。接著量化(quantized,Q)該轉(zhuǎn)換的輸出結(jié)果,并且將量化值進(jìn)行熵編碼(entropyencoding)。當(dāng)使用離散余弦轉(zhuǎn)換時(shí),通常使用斜向掃描(zig-zagscan)順序來掃描系數(shù),熵編碼通常將數(shù)個(gè)連續(xù)為零的量化系數(shù)與下一個(gè)非零的量化系數(shù)結(jié)合為一個(gè)單一符號(hào),并使用特別的方式來指出剩余的量化系數(shù)皆為零。熵編碼通常使用可變長度編碼(VLC)表。位率控制機(jī)制,例如固定位率(constantbitrate,CBR)控制、可變位率(variablebitrate,VBR)控制等,存在于位率控制器23中,用以控制量化值(例如量化步驟大小),使得輸出的單一位率或多個(gè)位率能符合目標(biāo)位率或多個(gè)可變目標(biāo)位率。固定位率控制讓產(chǎn)生數(shù)據(jù)所使用的位率近乎固定??勺兾宦士刂聘鶕?jù)該段落的數(shù)據(jù)復(fù)雜度來變動(dòng)每一段落所使用的位率。可變位率控制的目標(biāo)是保持固定的品質(zhì),而非保持固定的位率。較復(fù)雜的段落將配置較多位,而較不復(fù)雜的段落將配置較少的位。圖3為實(shí)施例的位率控制方法的流程圖,由位率控制器23(圖2)來執(zhí)行。如步驟S311,執(zhí)行用以編碼一段視頻序列的視頻序列初始作業(yè)。通常,該視頻序列初始作業(yè)決定控制視頻編碼位率的各種位率控制參數(shù)的初始值。視頻序列初始作業(yè)的范例虛擬程序代碼(由MPEG-2參考軟件-TM5而來)如下所示。r=2*bit_rate/frame_rateavg_act=400R=0Xi=160*bit_rate/115Xp=60*bit_rate/115Xb=42*bit_rate/115d0i=10*r/31d0p=10*r/31d0b=14*r/31其中,兩個(gè)預(yù)先設(shè)定的常數(shù)“bit_rate”及“frame_rate”分別代表預(yù)先決定的每秒位數(shù)量以及預(yù)先決定的每秒畫面數(shù)量??杀涣私獾氖?,作為整個(gè)視頻序列的位率控制設(shè)定所依據(jù)的“bit_rate”及“frame_rate”是可進(jìn)行組態(tài)的。以即將編碼的視頻序列而言,該作業(yè)可決定一個(gè)初始反應(yīng)的參數(shù),其表示為“r”、宏區(qū)塊的平均活動(dòng)數(shù)值,其表示為“avg_act”、I畫面、P畫面及B畫面的基準(zhǔn)復(fù)雜度數(shù)值可分別表示為“Xi”、“Xp”及“Xb”,以及基準(zhǔn)量化位階(quantizationscales)分別表示為“d0i”,、“d0p”及“d0b”。需注意的是,改變這些預(yù)先設(shè)定的常數(shù)“bit_rate”、“frame_rate”等會(huì)影響視頻編碼中的所有位率控制,因此,這些常數(shù)可視為是視頻序列階層的位率控制設(shè)定。熟悉此技藝的人士也可在該視頻序列初始作業(yè)中,使用其它或相似的視頻序列階層的位率控制設(shè)定。如步驟S331,判斷取得的即將編碼畫面是否為畫面群組中的第一張畫面。若是,流程進(jìn)行至步驟S333,若否,至步驟S335。如步驟S333,當(dāng)處理每一個(gè)畫面群組中的第一張畫面時(shí),為每一個(gè)畫面群組執(zhí)行一個(gè)畫面群組初始作業(yè)。通常,畫面群組初始作業(yè)決定該畫面群組的各種位率控制參數(shù)的初始值。畫面群組初始作業(yè)的范例的虛擬程序代碼如下所示。R+=(1+np+nb)*bit_rate/frame_rateNp=fieldpic?2*np+1:npNb=fieldpic?2*nb:nb其中,兩個(gè)預(yù)先設(shè)定的常數(shù)“bit_rate”及“frame_rate”分別代表預(yù)先決定的每秒位數(shù)量以及預(yù)先決定的每秒畫面數(shù)量,并且兩個(gè)常數(shù)“np”及“nb”分別代表畫面群組中預(yù)先決定的P畫面數(shù)量及預(yù)先決定的B畫面數(shù)量。可被了解的是,作為整個(gè)畫面群組結(jié)構(gòu)的位率控制設(shè)定的“np”及“nb”是可進(jìn)行組態(tài)的。以即將編碼的畫面群組而言,該作業(yè)可決定一個(gè)位預(yù)算(bitbudget),其表示為“R”、“逐行(progressive)”P畫面、“交錯(cuò)(interlaced)”P畫面等的初始單一方向預(yù)測(cè)區(qū)域數(shù)量,其表示為“Np”,以及“逐行(progressive)”B畫面、“交錯(cuò)(interlaced)”B畫面等的初始雙向預(yù)測(cè)區(qū)域數(shù)量,其表示為“Nb”。需注意的是,改變這些常數(shù)“np”、“nb”等會(huì)影響即將編碼畫面群組的位率控制設(shè)定,因此,這些常數(shù)可視為是畫面群組階層的位率控制設(shè)定。熟悉此技藝的人士也可在該畫面群組初始作業(yè)中使用其它或相似的畫面群組階層的位率控制參數(shù)。如步驟S335,為即將編碼的畫面群組中的每一個(gè)畫面執(zhí)行畫面初始作業(yè)。通常,該畫面初始作業(yè)決定相應(yīng)于一特定畫面類型的畫面中的各種位率控制參數(shù)的初始值,畫面類型例如I畫面、P畫面、B畫面等。該決定通常參考先前視頻序列以及畫面群組的初始作業(yè)所產(chǎn)生的結(jié)果。目前的畫面初始作業(yè)的決定也可參考先前的畫面初始作業(yè)產(chǎn)生的結(jié)果。畫面初始作業(yè)的范例的虛擬程序代碼如下所示。Switch(pict_type){CaseI_TYPET=R/(1+Np*Xp/(Xi*1.0)+Nb*Xb/(Xi*1.4))d=d0ibreakCaseP_TYPET=R/(Np+Nb*1.0*Xb/(Xp*1.4))d=d0pbreakd=d0bbreak}S=bitcount()Q=0calc_actj()act_sum=0.0其中,變量“Np”、“Nb”、“Xp”、“Xb”、“R”、“d0i”、“d0p”及“d0b”是預(yù)先由視頻序列及畫面群組的初始作業(yè)所決定。以即將編碼的畫面而言,該作業(yè)可決定一個(gè)位預(yù)算,其表示為“T”,以及一個(gè)量化位階的相關(guān)參數(shù),其表示為“d”。這些參數(shù)可視為是畫面階層的位率控制設(shè)定。熟悉此技藝的人士也可在該畫面初始作業(yè)中使用其它或相似的畫面階層的位率控制參數(shù)。接著,對(duì)即將編碼畫面中的所有宏區(qū)塊,執(zhí)行一個(gè)宏區(qū)塊初始作業(yè)。通常,該宏區(qū)塊初始作業(yè)決定畫面的所有宏區(qū)塊的各種位率控制參數(shù)的初始值。該決定通常參考先前視頻序列、畫面群組、畫面、以及宏區(qū)塊初始作業(yè)所產(chǎn)生的結(jié)果,并且更考慮特定的量化位階計(jì)算模型,例如線性(linear)模型、非線性(non-linear)模型等等。宏區(qū)塊初始作業(yè)的范例的虛擬程序代碼如下所示。If(q_scale_type){mquant=2d*31/rif(mquant<1)mquant=1if(mquant>112)mquant=112mquant=non_linear_mquant_table[map_non_linear_mquant[mquant]]}else{mquant=d*31/rif(mquant<2)mquant=2if(mquant>62)mquant=62prev_mquant=mquant}其中,變量“d”及“r”是預(yù)先由視頻序列、畫面群組及畫面的初始作業(yè)所決定。以即將編碼畫面的宏區(qū)塊而言,該作業(yè)可使用一個(gè)特定量化位階計(jì)算模型來決定基準(zhǔn)量化位階,表示為“mquant”,。需注意的是,最小的量化位階(例如非線性模型中的“1”及線性模型中的“2”)以及最大的量化位階(例如非線性模型中的“112”及線性模型中的“62”)可由使用者來選擇性的組態(tài)。改變這些最小與最大量化位階等會(huì)影響即將被編碼的宏區(qū)塊中的位率控制設(shè)定,因此,這些參數(shù)可視為是宏區(qū)塊階層的位率控制設(shè)定。熟悉此技藝的人士也可在該宏區(qū)塊初始作業(yè)中,使用其它或相似的宏區(qū)塊階層的位率控制設(shè)定。如步驟S353,為一個(gè)即將被編碼的特定宏區(qū)塊執(zhí)行位率控制參數(shù)計(jì)算作業(yè)。通常,由考量之前編碼過的宏區(qū)塊所使用的位以及目前宏區(qū)塊的復(fù)雜度,該位率控制參數(shù)計(jì)算作業(yè)決定用來編碼該特定宏區(qū)塊的位率控制參數(shù)。該計(jì)算通常參考之前由視頻序列、畫面群組、畫面及宏區(qū)塊的初始作業(yè)所產(chǎn)生的結(jié)果,以及之前所執(zhí)行過的位率控制參數(shù)計(jì)算作業(yè)所產(chǎn)生的結(jié)果,并且更考慮一特定量化位階計(jì)算模型。位率控制參數(shù)計(jì)算作業(yè)的范例的虛擬程序代碼如下所示。dj=d+(bincount()-S)-j*T/(mb_width*mb_height2)Qj=dj*31/ractj=mbinfo[j].actactsum+=actjN_actj=(2*actj+avg_act)/(actj+2*avg_act)If(q_scale_type){mquant=2*Qj*N_actjif(mquant<1)mquant=1if(mquant>112)mquant=112mquant=non_linear_mquant_table[map_non_linear_mquant[mquant]]}else{mquant=Qj*N_actjif(mquant<2)mquant=2if(mquant>62)mquant=62if(mquant>=8&&(mquant-prev_mquant>=-4&&(mquant-prev_mquant<=4)))mquant=prev_mquantprev_mquant=mquant}Q+=mquant其中,兩個(gè)預(yù)先設(shè)定的常數(shù)“mb_width”及“mb_height2”分別代表一個(gè)畫面中的預(yù)先決定的宏區(qū)塊寬度以及宏區(qū)塊高度,并且變量“j”代表將編碼的宏區(qū)塊的序號(hào)。可被了解的是,作為宏區(qū)塊的位率控制設(shè)定的“mb_width”及“mb_height2”是可調(diào)的。參數(shù)“d”、“S”、“actsum”及“r”由之前的視頻序列、畫面群組、畫面及宏區(qū)塊的初始作業(yè)以及之前所執(zhí)行的位率控制參數(shù)計(jì)算作業(yè)來決定。以即將編碼的特定宏區(qū)塊而言,該作業(yè)可決定一個(gè)使用特定量化位階計(jì)算模型的量化位階,其表示為“mquant”。改變“Qj”等會(huì)影響即將編碼的宏區(qū)塊的位率控制設(shè)定,因此,這些位率控制設(shè)定可視為是宏區(qū)塊階層的位率控制設(shè)定。熟悉此技藝的人士也可在該位率控制參數(shù)計(jì)算作業(yè)中使用其它或相似的宏區(qū)塊階層的位率控制設(shè)定。值得注意的是,每一個(gè)宏區(qū)塊依據(jù)該位率控制參數(shù)計(jì)算作業(yè)所產(chǎn)生的結(jié)果循序進(jìn)行編碼。如步驟S355,判斷一個(gè)取得的宏區(qū)塊是否為取得的畫面的最后一個(gè)宏區(qū)塊。若是,流程進(jìn)行至步驟S371,若否,至步驟S353。如步驟S371,依據(jù)所取得畫面的編碼結(jié)果來執(zhí)行位率控制參數(shù)調(diào)整作業(yè)。通常,該位率控制參數(shù)調(diào)整作業(yè)依據(jù)編碼結(jié)果為特定畫面類型調(diào)整位率控制參數(shù),以為后續(xù)位率控制作業(yè)之用。該調(diào)整通常參考在畫面編碼后的實(shí)際位使用量及宏區(qū)塊的復(fù)雜度總和。位率控制參數(shù)調(diào)整作業(yè)的范例的虛擬程序代碼如下所示。S=bitcount()-SR-=SX=S*0.5*Q/(mb_width*mb_height2)d+=S-Tavg_act=actsum/(mb_width*mb_height2)switch(pict_type){caseI_TYPEXi=Xd0i=dbreakcaseP_TYPEXp=Xd0p=dNp--BreakcaseB_TYPEXb=Xd0b=dNb--Break}其中,變量“S”、“Q”及“actsum”由之前的視頻序列、畫面群組、畫面及宏區(qū)塊的初始作業(yè)以及之前所執(zhí)行的位率控制參數(shù)計(jì)算作業(yè)來決定。方程式bitcount()得出目前產(chǎn)生的視頻序列實(shí)際所占用的編碼位數(shù)量。以即將編碼的剩余視頻序列而言,依據(jù)所取得畫面的編碼結(jié)果,該作業(yè)可調(diào)整宏區(qū)塊的平均活動(dòng)數(shù)值,其表示為“avg_act”,以及可調(diào)整I畫面、P畫面及B畫面的基準(zhǔn)復(fù)雜度數(shù)值,分別表示為“Xi”、“Xp”及“Xb”,以及可調(diào)整I畫面、P畫面及B畫面的量化位階相關(guān)參數(shù),分別表示為“d0i”、“d0p”及“d0b”。如步驟S373,判斷是否完成整個(gè)視頻編碼。若是,則流程結(jié)束,若否,則為接續(xù)的畫面執(zhí)行步驟S331的處理。位率控制設(shè)定可在視頻編碼期間讓使用者或內(nèi)存于視頻錄像機(jī)的控制器作動(dòng)態(tài)的改變。在一個(gè)情況下,一個(gè)視頻錄像機(jī)檢測(cè)諸如光盤、硬盤、閃存等儲(chǔ)存媒體的剩余空間,估計(jì)及顯示相應(yīng)于檢測(cè)到的剩余空間所提供的可用錄像時(shí)間。當(dāng)使用者發(fā)覺到所顯示的提供錄像時(shí)間不足以錄制剩余的視頻內(nèi)容時(shí),可由調(diào)整諸如編碼位率、每一畫面的位預(yù)算、以及畫面群組結(jié)構(gòu)等位率控制設(shè)定來延長可錄像的時(shí)間。例如說當(dāng)錄制一個(gè)棒球賽時(shí),比賽進(jìn)行至第九局且兩球隊(duì)的分?jǐn)?shù)相同,有極大的機(jī)率將進(jìn)行延長賽。當(dāng)儲(chǔ)存媒體上的剩余空間不足以使用目前的位率控制設(shè)定來錄制延長局?jǐn)?shù)的比賽時(shí),使用者可調(diào)整這些位率控制設(shè)定中的一或多個(gè)設(shè)定,以使用較差的編碼品質(zhì)來換取以較低的位率錄制較長的節(jié)目。在另一個(gè)情況下,內(nèi)存于視頻錄像機(jī)的控制器收到即將錄像的電視節(jié)目的總時(shí)間,以及,當(dāng)測(cè)定出儲(chǔ)存媒體上沒有足夠的空間來錄像整個(gè)電視節(jié)目時(shí),控制器指示位率控制器調(diào)整位率控制設(shè)定以使用較少的空間。再在另一個(gè)情況下,內(nèi)存于視頻錄像機(jī)的控制器可檢測(cè)在無線環(huán)境下所傳送的數(shù)字電視(digitalTV,DTV)信號(hào)的品質(zhì),當(dāng)檢測(cè)到傳送的品質(zhì)是差的,控制器指示位率控制器修改畫面群組結(jié)構(gòu)以減少畫面群組中B畫面的數(shù)目。圖4a、圖4b為在視頻編碼期間,執(zhí)行視頻序列階層或畫面群組階層的位率控制設(shè)定改變的位率控制方法實(shí)施例流程圖。如步驟S411,執(zhí)行視頻序列初始作業(yè)。步驟S411的細(xì)節(jié)可參考如圖3所示的步驟S311的描述。反復(fù)地在視頻序列的每一個(gè)畫面上執(zhí)行使用各式算法(例如CBR、VBR等)中的一種編碼流程A4,包括步驟S431至S473的作業(yè)。范例的位率控制算法的細(xì)節(jié),可參考步驟S331至S373(如圖3)的內(nèi)容。如步驟S473,判斷是否已完成視頻編碼。若是,流程結(jié)束,若否,流程進(jìn)行至步驟S491。如步驟S491,判斷改變視頻序列階層或畫面群組階層的位率控制設(shè)定是否允許適用在下一個(gè)畫面上。若是,流程進(jìn)行至步驟S493,若否,至步驟S431。舉例來說,針對(duì)視頻序列階層或畫面群組階層的位率控制設(shè)定,可以修改原始畫面群組結(jié)構(gòu)、視頻序列或畫面群組等的預(yù)先決定位率。需注意的是,當(dāng)在步驟S493中接收到一個(gè)用以指示位率控制設(shè)定改變的請(qǐng)求時(shí),必須再執(zhí)行視頻序列初始作業(yè)S411,用以套用該視頻序列階層或畫面群組階層的位率控制設(shè)定在接續(xù)的畫面上。編碼算法可限制改變位率控制設(shè)定的條件,例如,視頻序列階層或畫面群組階層的位率控制設(shè)定的改變,僅限于當(dāng)編碼器在處理畫面群組中的第一張畫面時(shí)。如步驟S493,判斷是否檢測(cè)到用以指示視頻序列階層或畫面群組階層的位率控制設(shè)定改變的請(qǐng)求。若是,流程進(jìn)行至步驟S411,若否,至步驟S431。由使用者接口,例如視頻調(diào)整畫面(On-ScreenDisplay,OSD),使用者或內(nèi)存在視頻錄像機(jī)的控制器可改變相應(yīng)于視頻序列階層或畫面群組階層的一或多個(gè)位率控制設(shè)定,并且在該位率控制設(shè)定改變?cè)试S前,修改過的位率控制設(shè)定可儲(chǔ)存在諸如內(nèi)存緩沖區(qū)、硬盤等的儲(chǔ)存空間中。接著,檢測(cè)到用以指示相應(yīng)于視頻序列階層或畫面群組階層的位率控制設(shè)定改變的請(qǐng)求。圖5a、圖5b為在視頻編碼期間,執(zhí)行宏區(qū)塊階層的位率控制設(shè)定改變的位率控制方法實(shí)施例流程圖。如步驟S511,執(zhí)行視頻序列初始作業(yè)。步驟S511的細(xì)節(jié)可參考如圖3所示的步驟S311的描述。反復(fù)地在視頻序列的每一個(gè)畫面上執(zhí)行使用各式算法(例如CBR、VBR等)中的一種編碼流程,包括步驟S531至S573的作業(yè)。范例的位率控制算法的細(xì)節(jié),可參考步驟S331至S373(如圖3)的內(nèi)容。需注意的是,參考步驟S553,根據(jù)由位率控制參數(shù)計(jì)算作業(yè)所計(jì)算的結(jié)果,來為取得的宏區(qū)塊進(jìn)行編碼。如步驟S591,判斷是否檢測(cè)到用以指示宏區(qū)塊階層的位率控制設(shè)定改變的請(qǐng)求。若是,流程進(jìn)行至步驟S593,若否,至步驟S555。例如,針對(duì)于宏區(qū)塊階層的位率控制設(shè)定的改變,例如,可修改后續(xù)宏區(qū)塊的剩余位預(yù)算等。需注意的是,為根據(jù)修改過的位率控制設(shè)定,也許需要執(zhí)行不同于步驟S535所執(zhí)行作業(yè)的宏區(qū)塊初始作業(yè)。如步驟S593,根據(jù)所檢測(cè)到的請(qǐng)求(包括相應(yīng)于宏區(qū)塊階層的修改后位率控制設(shè)定),以及之前的編碼結(jié)果,更新位率控制參數(shù),之后,流程進(jìn)行至步驟S555,用以進(jìn)行之后的決定。如步驟S555,判斷取得的宏區(qū)塊是否為取得畫面的最后一個(gè)宏區(qū)塊。若是,流程進(jìn)行至步驟S571,若否,至步驟S553。使用者或內(nèi)存于視頻錄像機(jī)的控制器可改變宏區(qū)塊階層的位率控制設(shè)定,并且儲(chǔ)存修改過的位率控制設(shè)定,以供后續(xù)的位率控制參數(shù)更新之用。當(dāng)一個(gè)新的位率控制設(shè)定被儲(chǔ)存時(shí),也就代表檢測(cè)到用以指示宏區(qū)塊階層的位率控制設(shè)定改變的請(qǐng)求。圖6a、圖6b、圖6c及圖6d為在視頻編碼期間,切換至另一個(gè)位率控制算法的位率控制方法實(shí)施例流程圖。如步驟S611,執(zhí)行視頻編碼流程A61的視頻序列初始作業(yè)。反復(fù)地在視頻序列的每一個(gè)畫面上執(zhí)行使用各式算法(例如CBR、VBR等)的一者的視頻編碼流程A61,包括步驟S621至S643的作業(yè)。范例的位率控制算法細(xì)節(jié)可參考步驟S331至S373(如圖3)的內(nèi)容。如步驟S651,判斷是否檢測(cè)到用以指示切換目前位率控制算法為另一個(gè)位率控制算法的請(qǐng)求。若是,流程進(jìn)行至步驟S653,若否,至步驟S635。如步驟S635,判斷取得的宏區(qū)塊是否為取得畫面的最后一個(gè)宏區(qū)塊。若是,流程進(jìn)行至步驟S641,若否,至步驟S633。參考步驟S651,使用者或內(nèi)存在視頻錄像機(jī)的控制器可切換目前的位率控制算法為另一個(gè)位率控制算法,例如,從CBR算法切換為VBR算法。然而,編碼流程可限制位率控制算法的切換時(shí)點(diǎn),例如僅允許發(fā)生在執(zhí)行畫面群組或畫面階層編碼時(shí),才可切換位率控制算法。新的位率控制算法可暫時(shí)地儲(chǔ)存在內(nèi)存裝置、硬盤等,直到位率控制算法的切換被允許。當(dāng)存在新儲(chǔ)存的位率控制算法切換的數(shù)據(jù)時(shí),代表檢測(cè)到切換為另一個(gè)位率控制算法的請(qǐng)求。如圖6a至圖6d的實(shí)施例所示,編碼流程允許發(fā)生在宏區(qū)塊階層的位率控制算法切換,其意指于編碼一畫面的任何宏區(qū)塊后,目前的位率控制算法都可切換為另一個(gè)位率控制算法。需注意的是,在檢測(cè)到位率控制算法切換的請(qǐng)求后,可能必須為剩余的宏區(qū)塊與即將編碼但未完成的此畫面群組的后續(xù)畫面執(zhí)行關(guān)閉作業(yè)。如步驟S653,為剩余的宏區(qū)塊與即將編碼但未完成的此畫面群組的后續(xù)畫面執(zhí)行一個(gè)關(guān)閉作業(yè),接著,流程進(jìn)行至步驟S661。如步驟S661,執(zhí)行使用另一個(gè)算法的視頻編碼流程A63的視頻序列初始作業(yè)。反復(fù)地在每一個(gè)剩余畫面上執(zhí)行使用一個(gè)位率控制算法(例如CBR、VBR等)的視頻編碼流程A63,包括步驟S671至S693的作業(yè)。熟悉此技藝的人士可由步驟S331至S373(圖3)的算法來推測(cè)出執(zhí)行步驟S671至S693的細(xì)節(jié),在此僅簡略描述。如步驟S695,判斷是否檢測(cè)到用以指出切換目前位率控制算法為另一個(gè)位率控制算法的請(qǐng)求。若是,流程進(jìn)行至步驟S697,若否,至步驟S685。如步驟S685,判斷取得的宏區(qū)塊是否為取得畫面的最后一個(gè)宏區(qū)塊。若是,流程進(jìn)行至步驟S691,若否,至步驟S683。參考步驟S695,使用者或內(nèi)存于視頻錄像機(jī)的控制器可切換目前的位率控制算法為另一個(gè)位率控制算法,例如,從VBR算法轉(zhuǎn)換為CBR算法。如步驟S697,為剩余的宏區(qū)塊與即將編碼但未完成的此畫面群組的后續(xù)畫面執(zhí)行一個(gè)關(guān)閉作業(yè),接著,流程進(jìn)行至步驟S611。圖7a、圖7b、圖7c及圖7d為在視頻編碼期間,在兩個(gè)位率控制算法間作切換的位率控制方法實(shí)施例流程圖。如步驟S7000,為視頻編碼選定一個(gè)位率控制算法。若使用位率控制算法A,流程進(jìn)行至步驟S7111來執(zhí)行視頻序列初始作業(yè),以位率控制算法A來進(jìn)行視頻編碼,以及,若使用位率控制算法B,流程進(jìn)行至步驟S7311來執(zhí)行視頻序列初始作業(yè),以位率控制算法B來進(jìn)行視頻編碼。反復(fù)地在每一個(gè)畫面上,執(zhí)行使用位率控制算法A(例如CBR、VBR等)的視頻編碼流程A71,包括步驟S7131至S7173的作業(yè)。熟悉此技藝的人士可由步驟S331至S373(圖3)的步驟說明來類推執(zhí)行步驟S7131至S7173的作業(yè)細(xì)節(jié),在此僅簡略描述。如步驟S7173,判斷是否完成視頻編碼。若是,流程結(jié)束,若否,流程至步驟S7191。如步驟S7191,針對(duì)位率控制算法A,判斷是否允許為下一個(gè)畫面套用視頻序列階層或畫面群組階層的位率控制設(shè)定改變。若是,流程進(jìn)行至步驟S7193,若否,至步驟S7131。例如,針對(duì)視頻序列階層或畫面群組階層的位率控制設(shè)定的改變,可修改原始畫面群組結(jié)構(gòu)、視頻序列或畫面群組的預(yù)先決定的位率或位預(yù)算等。需注意的是,為因應(yīng)位率控制設(shè)定改變套用至后續(xù)的畫面,常要求再執(zhí)行位率控制算法A的視頻序列初始作業(yè)。例如,位率控制設(shè)定僅允許當(dāng)即將編碼畫面群組的第一畫面時(shí)可被修改,以及當(dāng)下一個(gè)畫面為畫面群組的第一個(gè)畫面時(shí),允許視頻序列階層或畫面群組階層的位率控制設(shè)定進(jìn)行改變。如步驟S7193,判斷是否檢測(cè)到用以指出切換成另一個(gè)算法(例如算法B)的請(qǐng)求。若是,流程進(jìn)行至步驟S7311來執(zhí)行算法B的視頻序列初始作業(yè),若否,至步驟S7195。使用者或內(nèi)存于視頻錄像機(jī)的控制器可發(fā)出一個(gè)請(qǐng)求,該請(qǐng)求為切換目前使用的位率控制算法A至位率控制算法B,例如,切換CBR算法為VBR算法,并且該切換的結(jié)果可儲(chǔ)存在儲(chǔ)存裝置以供后續(xù)處理之用。當(dāng)有新儲(chǔ)存的轉(zhuǎn)換結(jié)果時(shí),則代表檢測(cè)出用以指出切換目前使用的位率控制算法A至位率控制算法B的請(qǐng)求。如步驟S7195,判斷是否檢測(cè)到用以指出算法A的位率控制設(shè)定改變的請(qǐng)求。若是,流程進(jìn)行至步驟S7111來更新位率控制參數(shù),若否,至步驟S7131。相似地,可修改視頻序列階層或畫面群組階層的位率控制設(shè)定,并且暫時(shí)地儲(chǔ)存至儲(chǔ)存裝置直到允許位率控制設(shè)定改變。如步驟S7311,執(zhí)行使用位率控制算法B的視頻編碼的視頻序列初始作業(yè)。反復(fù)地在每一個(gè)畫面上執(zhí)行視頻編碼流程A73,包括步驟S73311至S7373的作業(yè)。熟悉此技藝的人士可由步驟S331至S373(圖3)的描述來類推執(zhí)行步驟S7331至S7373的作業(yè)細(xì)節(jié),在此僅簡略描述。如步驟S7373,判斷是否完成視頻編碼。若是,流程結(jié)束,若否,流程進(jìn)行至步驟S7391。如步驟S7391,針對(duì)位率控制算法B,判斷是否允許為下一個(gè)畫面套用位率控制設(shè)定改變。若是,流程進(jìn)行至步驟S7393,若否,至步驟S7331。需注意的是,為因應(yīng)位率控制設(shè)定改變至后續(xù)的畫面,需要再執(zhí)行位率控制算法B的視頻序列初始作業(yè)。如步驟S7393,判斷是否檢測(cè)到用以切換成算法A的請(qǐng)求。若是,流程進(jìn)行至步驟S7111來執(zhí)行算法A的視頻序列初始作業(yè),若否,至步驟S7395。如步驟S7395,判斷是否檢測(cè)到用以指出算法B的位率控制設(shè)定改變的請(qǐng)求。若是,流程進(jìn)行至步驟S7311以更新位率控制參數(shù),若否,至步驟S7331。在視頻編碼期間改變位率控制設(shè)定的方法,或其某些方面或部份,可采用包含于芯片/芯片組的特定邏輯電路的形式。本發(fā)明也揭露一個(gè)儲(chǔ)存媒體80,如圖8所示,其儲(chǔ)存一個(gè)計(jì)算機(jī)程序820,用以執(zhí)行在視頻編碼期間改變位率控制設(shè)定的方法。由從儲(chǔ)存媒體80加載及執(zhí)行計(jì)算機(jī)可讀取程序代碼,使得處理單元在視頻編碼期間執(zhí)行位率控制設(shè)定的改變。本發(fā)明的方法,或其某些方面或部份,可以以程序代碼的型態(tài)包含于實(shí)體媒體,如軟盤、光盤片、硬盤、或是任何其它機(jī)器可讀取(如計(jì)算機(jī)可讀取)儲(chǔ)存媒體,其中,當(dāng)程序代碼被機(jī)器,如計(jì)算機(jī)、光驅(qū)等,加載且執(zhí)行時(shí),此機(jī)器變成用以實(shí)行本發(fā)明的裝置。本發(fā)明的方法也可以以程序代碼型態(tài)透過一些傳送媒體,如電線或電纜、光纖、或是任何傳輸型態(tài)進(jìn)行傳送,其中,當(dāng)程序代碼被機(jī)器,如計(jì)算機(jī)接收、加載且執(zhí)行時(shí),此機(jī)器變成用以實(shí)行本發(fā)明的裝置。當(dāng)在一般用途處理單元(general-purposeprocessingunit)實(shí)際操作時(shí),程序代碼結(jié)合處理器提供一操作類似于應(yīng)用特定邏輯電路的獨(dú)特裝置。針對(duì)一個(gè)特定的系統(tǒng)組件,說明書及權(quán)利要求中會(huì)使用一個(gè)名稱來為其命名。熟習(xí)此技藝人士都了解,消費(fèi)電子設(shè)備的制造者也許會(huì)使用不同的命名來稱呼內(nèi)容中所對(duì)應(yīng)的系統(tǒng)組件。此文件并不欲區(qū)別非功能不同而僅是名稱不同的組件。雖然本發(fā)明已以較佳實(shí)施例揭露如上,然其并非用以限定本發(fā)明,任何熟悉此項(xiàng)技藝者,在不脫離本發(fā)明的精神和范圍內(nèi),當(dāng)可做些許更動(dòng)與潤飾,因此本發(fā)明的保護(hù)范圍當(dāng)視權(quán)利要求所界定者為準(zhǔn)。權(quán)利要求1.一種在視頻編碼期間改變位率控制設(shè)定的方法,該方法用以改變至少一位率控制設(shè)定,其特征在于,所述方法包括以下步驟判斷用以編碼一視頻序列的下一部份的位率控制設(shè)定是否允許被改變;在編碼所述視頻序列的下一部份前,檢測(cè)改變所述位率控制設(shè)定的一請(qǐng)求;以及當(dāng)允許改變位率控制設(shè)定并且檢測(cè)到所述請(qǐng)求時(shí),以非中斷的方式使用變更的位率控制設(shè)定來執(zhí)行所述視頻序列的下一部份的視頻編碼;其中所述視頻序列依據(jù)復(fù)數(shù)的視頻編碼階層來被建構(gòu)。2.如權(quán)利要求1所述的在視頻編碼期間改變位率控制設(shè)定的方法,其特征在于,所述視頻序列的下一部份為一或多個(gè)視頻編碼階層的開始,其中所述視頻編碼階層包括一視頻序列階層、一畫面群組階層、以及一畫面階層,所述位率控制設(shè)定用以決定相應(yīng)于所述視頻序列階層或所述畫面群組階層的至少一位率控制參數(shù)。3.如權(quán)利要求2所述的在視頻編碼期間改變位率控制設(shè)定的方法,其特征在于,執(zhí)行視頻編碼步驟還包括,當(dāng)檢測(cè)到所述請(qǐng)求時(shí),依據(jù)所述變更的位率設(shè)定來執(zhí)行再初始化以更新至少一位率控制參數(shù)。4.如權(quán)利要求3所述的在視頻編碼期間改變位率控制設(shè)定的方法,其特征在于,執(zhí)行再初始化步驟還包括,執(zhí)行畫面群組的再初始化以更新所述畫面群組的至少一位率控制參數(shù),執(zhí)行畫面的再初始化以更新所述畫面的至少一位率控制參數(shù),或所述兩者的結(jié)合。5.如權(quán)利要求1所述的在視頻編碼期間改變位率控制設(shè)定的方法,其特征在于,在執(zhí)行所述視頻序列的下一部份的視頻編碼前,還包括執(zhí)行一畫面群組再初始化作業(yè)來執(zhí)行所述視頻序列的每一畫面群組的位率控制參數(shù)初始化,執(zhí)行一畫面再初始化作業(yè)來執(zhí)行所述視頻序列的每一畫面與所述視頻序列的每一宏區(qū)塊的位率控制參數(shù)初始化,其中執(zhí)行視頻編碼步驟還包括根據(jù)先前的編碼結(jié)果來為所述視頻序列的下一接續(xù)部份進(jìn)行計(jì)算與調(diào)整所述位率控制參數(shù)。6.如權(quán)利要求1所述的在視頻編碼期間改變位率控制設(shè)定的方法,其特征在于,所述視頻序列的下一部份屬于一目前畫面的一宏區(qū)塊,所述位率控制設(shè)定調(diào)整相應(yīng)于所述宏區(qū)塊階層的至少一位率控制參數(shù),當(dāng)檢測(cè)到所述請(qǐng)求時(shí),在編碼所述下一個(gè)宏區(qū)塊前執(zhí)行一宏區(qū)塊初始化作業(yè)來進(jìn)行相應(yīng)位率控制參數(shù)再初始化,用以對(duì)應(yīng)所述宏區(qū)塊階層的所述變更的位率控制參數(shù)。7.如權(quán)利要求1所述的在視頻編碼期間改變位率控制設(shè)定的方法,其特征在于,視頻編碼使用一第一位率控制算法于所述視頻序列中,所述變更的位率控制設(shè)定指出將使用一第二位率控制算法于所述其余的視頻序列中,執(zhí)行所述視頻序列的所述接續(xù)部份的視頻編碼步驟還包括,初始化被所述第二位率控制算法所使用的所述視頻序列階層或所述畫面群組階層的復(fù)數(shù)位率控制參數(shù)。8.如權(quán)利要求7所述的在視頻編碼期間改變位率控制設(shè)定的方法,其特征在于,執(zhí)行所述視頻序列的所述接續(xù)部份的視頻編碼步驟還包括,在使用所述第二位率控制算法為所述視頻序列的所述接續(xù)部份編碼前,執(zhí)行一畫面中的剩余未編碼宏區(qū)塊或一畫面群組中的剩余未編碼畫面的一關(guān)閉作業(yè)。9.一種在視頻編碼期間改變位率控制設(shè)定的系統(tǒng),用以改變至少一位率控制設(shè)定,其特征在于,所述系統(tǒng)包括一視頻編碼器,其編碼一視頻序列,所述視頻序列依據(jù)復(fù)數(shù)視頻編碼階層所建構(gòu);一位率控制器,其判斷用以編碼所述視頻序列的下一部份的位率控制設(shè)定是否允許被改變,在編碼所述視頻序列的下一部份前,檢測(cè)改變所述位率控制設(shè)定的一請(qǐng)求,以及當(dāng)允許改變位率控制設(shè)定并且檢測(cè)到所述請(qǐng)求時(shí),所述位率控制器以非中斷的方式使用所述變更的位率控制設(shè)定來執(zhí)行所述視頻序列的下一部份的視頻編碼。10.如權(quán)利要求9所述的在視頻編碼期間改變位率控制設(shè)定的系統(tǒng),其特征在于,所述視頻序列的下一部份為一或多個(gè)視頻編碼階層的開始,其中所述視頻編碼階層包括一視頻序列階層、一畫面群組階層、以及一畫面階層,所述位率控制設(shè)定用以決定相應(yīng)于所述視頻序列階層或所述畫面群組階層的至少一位率控制參數(shù)。11.如權(quán)利要求10所述的在視頻編碼期間改變位率控制設(shè)定的系統(tǒng),其特征在于,所述位率控制器還在檢測(cè)到所述請(qǐng)求時(shí),依據(jù)所述變更的位率設(shè)定來執(zhí)行再初始化以更新至少一位率控制參數(shù)。12.如權(quán)利要求11所述的在視頻編碼期間改變位率控制設(shè)定的系統(tǒng),其特征在于,所述位率控制器還更新所述畫面群組的至少一位率控制參數(shù),以及/或更新所述畫面的至少一位率控制參數(shù)。13.如權(quán)利要求9所述的在視頻編碼期間改變位率控制設(shè)定的系統(tǒng),其特征在于,所述位率控制器還在執(zhí)行所述視頻序列的下一部份的視頻編碼前,執(zhí)行所述視頻序列的每一畫面群組、所述視頻序列的每一畫面、以及所述視頻序列的每一宏區(qū)塊的位率控制參數(shù)初始化,并且根據(jù)先前的編碼結(jié)果來為所述視頻序列的下一部份進(jìn)行計(jì)算與調(diào)整所述位率控制參數(shù)。14.如權(quán)利要求9所述的在視頻編碼期間改變位率控制設(shè)定的系統(tǒng),其特征在于,所述視頻序列的下一部份屬于一目前畫面的一宏區(qū)塊,所述位率控制設(shè)定調(diào)整相應(yīng)于所述宏區(qū)塊階層的至少一位率控制參數(shù),以及,當(dāng)檢測(cè)到所述請(qǐng)求時(shí),所述位率控制器在編碼所述下一個(gè)宏區(qū)塊前執(zhí)行一宏區(qū)塊初始化作業(yè)來進(jìn)行相應(yīng)位率控制參數(shù)再初始化,用以對(duì)應(yīng)所述宏區(qū)塊階層的所述變更的位率控制參數(shù)。15.如權(quán)利要求9所述的在視頻編碼期間改變位率控制設(shè)定的系統(tǒng),其特征在于,所述視頻編碼使用一第一位率控制算法于所述視頻序列中,所述變更的位率控制設(shè)定指出將使用一第二位控制算法于所述其余的視頻序列中,執(zhí)行所述視頻序列的下一部份的視頻編碼步驟還包括,初始化被所述第二位率控制算法所使用的所述視頻序列階層或所述畫面群組階層的復(fù)數(shù)位率控制參數(shù)。16.如權(quán)利要求15所述的在視頻編碼期間改變位率控制設(shè)定的系統(tǒng),其特征在于,所述位率控制器還在使用所述第二位率控制算法為所述視頻序列的所述接續(xù)部份編碼前,執(zhí)行一畫面中的剩余未編碼宏區(qū)塊或一畫面群組中的剩余未編碼畫面的一關(guān)閉作業(yè)。全文摘要本發(fā)明提供一種在視頻編碼期間改變位率控制設(shè)定的系統(tǒng)與方法。該方法使用一個(gè)位率控制器及一個(gè)視頻編碼器,在視頻編碼期間改變至少一個(gè)位率控制設(shè)定。所述方法包括判斷用來編碼視頻序列的下一部份的位率控制設(shè)定是否允許被改變,若位率控制設(shè)定是允許被改變的,在編碼視頻序列的下一部分前,檢測(cè)改變位率控制設(shè)定的請(qǐng)求,以非中斷的方式使用變更的位率控制設(shè)定來執(zhí)行視頻序列的下一部分的視頻編碼。本發(fā)明可以使變動(dòng)位率編碼產(chǎn)生的編碼品質(zhì)較固定位率編碼來得一致。文檔編號(hào)H04N7/32GK101047854SQ20071008834公開日2007年10月3日申請(qǐng)日期2007年3月16日優(yōu)先權(quán)日2006年3月30日發(fā)明者郭志輝申請(qǐng)人:聯(lián)發(fā)科技股份有限公司