Mpeg-2的同步及時(shí)間恢復(fù) |
蔡新國(guó) 廣州市廣播電視網(wǎng)絡(luò)有限公司 (廣東廣州 510010)
摘要:Mpeg-2同步及時(shí)間恢復(fù)在編碼、傳輸和解碼中占有重要的地位,它不僅直接影響視音頻的解碼質(zhì)量,還是衡量整個(gè)傳輸網(wǎng)絡(luò)優(yōu)劣的重要指標(biāo)。本文將從原理上介紹Mpeg-2同步及時(shí)間恢復(fù)方法,并給出PCR測(cè)量的幾個(gè)項(xiàng)目。 關(guān)鍵字:STC,PCR,DTS,PTS
一、引言 Mpeg-2用于視音頻同步以及系統(tǒng)時(shí)鐘恢復(fù)的時(shí)間標(biāo)簽分別在ES,PES和TS這3個(gè)層次中。在ES層,與同步有關(guān)的主要是視頻緩沖驗(yàn)證VBV(Video Buffer Verifier),用以防止解碼器的緩沖器出現(xiàn)上溢或者下溢;在PES層,主要是在PES頭信息里出現(xiàn)的顯示時(shí)間標(biāo)簽PTS(Presentation Time Stamp)和解碼時(shí)間標(biāo)簽DTS(Decoding Time Stamp);在TS層中,TS頭信息包含了節(jié)目時(shí)鐘參考PCR(Program Clock Reference),用于恢復(fù)出與編碼端一致的系統(tǒng)時(shí)序時(shí)鐘STC(System Time Clock)。 通常的視頻壓縮算法都采用了可變長(zhǎng)編碼,編碼生成的視頻碼流是可變碼率的。為了能夠在實(shí)際的固定碼率信道或者可變碼率信道上傳輸,需要引入緩沖區(qū)緩存視頻碼流數(shù)據(jù)。因此,視頻編碼算法必須提供一個(gè)有效的緩沖區(qū)管理策略,確保緩沖區(qū)不會(huì)發(fā)生上溢和下溢。編碼器通過(guò)碼率控制算法,調(diào)整生成的視頻碼流滿足既定的緩沖區(qū)管理策略;同時(shí)在碼率控制算法中使用自適應(yīng)量化方法,確保壓縮視頻的質(zhì)量。 緩沖區(qū)管理策略通常都是建立在一個(gè)假想的解碼器模型上,該解碼器模型直接和編碼器的輸出相連接,緩沖區(qū)管理策略通過(guò)控制編碼視頻數(shù)據(jù)流移入和移出解碼器緩沖區(qū)的時(shí)間以保證解碼器模型的數(shù)據(jù)緩沖區(qū)不上溢也不下溢。在Mpeg標(biāo)準(zhǔn)中,該解碼器模型稱為VBV。VBV在ES層中定義。 在Mpeg-2編碼器中有單一的共同系統(tǒng)時(shí)鐘,此時(shí)鐘用來(lái)產(chǎn)生指示音頻和視頻的正確顯示和解碼時(shí)序的時(shí)間標(biāo)簽,同時(shí)可用來(lái)指示在抽樣瞬間系統(tǒng)時(shí)鐘時(shí)間的瞬時(shí)值。正是編碼器中共同系統(tǒng)時(shí)鐘的出現(xiàn),以及解碼器中時(shí)鐘的重新生成和時(shí)間標(biāo)簽的正確使用,才為解碼器中操作的正確同步提供了基準(zhǔn)。 Mpeg-2規(guī)定的系統(tǒng)時(shí)鐘頻率為27MHz,傳輸流中的PCR,PTS/DTS等均為對(duì)該共同系統(tǒng)時(shí)鐘的采樣值。解碼端捕獲PCR,恢復(fù)出本地的STC,作為音視頻同步控制的基準(zhǔn),并依據(jù)PTS(DTS)時(shí)間標(biāo)簽來(lái)安排解碼和顯示時(shí)間表,使音視頻分別同步于STC,以實(shí)現(xiàn)音視頻之間的同步。標(biāo)準(zhǔn)規(guī)定在原始音頻和視頻流中,PTS的間隔不能超過(guò)0.7s,而出現(xiàn)在TS包頭的PCR間隔不能超過(guò)0.1s。
二、STC與PCR STC是視音頻同步控制的基準(zhǔn),它是一串頻率為27MHz的脈沖,觸發(fā)計(jì)數(shù)器而形成一個(gè)二進(jìn)制表示的時(shí)間基準(zhǔn),再通過(guò)對(duì)該時(shí)間基準(zhǔn)SCT進(jìn)行取樣得到PCR、PTS和DTS等時(shí)間標(biāo)簽。在編碼和解碼端,系統(tǒng)時(shí)鐘脈沖是由振蕩器等硬件產(chǎn)生,在解碼端STC通過(guò)在碼流中定時(shí)傳送的PCR利用鎖相環(huán)(PLL)技術(shù)來(lái)與編碼端STC保持一致。 PCR是由對(duì)系統(tǒng)時(shí)鐘脈沖觸發(fā)的計(jì)數(shù)器狀態(tài)抽樣而來(lái),是放在TS包頭的自適應(yīng)區(qū)中傳送。PCR共占6Bytes,其中6bits預(yù)留,42bits有效位。42bits的PCR分為兩部分:33bits的PCR-Base和9bits的PCR-Ext。PCR-Base是由27MHz脈沖經(jīng)300分頻后的90kHz脈沖觸發(fā)計(jì)數(shù)器,再對(duì)計(jì)數(shù)器狀態(tài)進(jìn)行取樣得到的。PCR-Ext是由27MHz脈沖直接觸發(fā)計(jì)數(shù)器,再對(duì)計(jì)數(shù)器狀態(tài)進(jìn)行取樣得到的。PCR的具體編碼方式如下(編碼在PCR(i)中的數(shù)值代表了t(i),i指包含PCR-Base字段的最后一位的字節(jié)): PCR-Base(i)=90kHz×t(i), mod(233) PCR-Ext(i)=27MHz×t(i), mod(300) PCR(i)=PCR-Base(i)×300+PCR-Ext(i) 當(dāng)新節(jié)目的PCR到達(dá)解碼器時(shí),需要更新時(shí)間基點(diǎn),STC就被置位。通常第一個(gè)從解復(fù)用器中解出的PCR被直接裝入到STC計(jì)數(shù)器,其后PLL閉環(huán)操作。每當(dāng)一個(gè)新節(jié)目的PCR到達(dá)解碼器時(shí),此值被認(rèn)為是鎖相環(huán)的參考頻率,用來(lái)與STC的當(dāng)前值比較,產(chǎn)生的差值e經(jīng)過(guò)脈寬調(diào)制后被輸入低通濾波器并經(jīng)放大,輸出控制信號(hào)f,用來(lái)控制振蕩器(VCO)的瞬時(shí)頻率,VCO輸出的頻率是在27MHz左右振蕩的信號(hào),作為解碼器的系統(tǒng)時(shí)鐘。27MHz時(shí)鐘經(jīng)過(guò)波形整理后輸入到計(jì)數(shù)器中,產(chǎn)生當(dāng)前的STC值,其33bits的90kHz部分用于和PTS/DTS比較,產(chǎn)生解碼和顯示的同步信號(hào)。 PCR-Base的作用是在解碼器切換節(jié)目時(shí),提供對(duì)解碼器PCR計(jì)數(shù)器的初始值,以讓該PCR值與PTS、DTS最大可能地達(dá)到相同的時(shí)間起點(diǎn)。PCR-ext的作用是通過(guò)解碼器端的鎖相環(huán)電路修正解碼器的系統(tǒng)時(shí)鐘,使其達(dá)到和編碼器一致的27MHz。 圖1顯示了解碼器如何用PCR 來(lái)重建每個(gè)節(jié)目的遠(yuǎn)地27MHz時(shí)鐘。
圖1 用PCR重建遠(yuǎn)地27MHz時(shí)鐘
三、DTS和PTS DTS是編碼器在編碼時(shí)定義的,為解碼器預(yù)定的解碼時(shí)間。該時(shí)間標(biāo)記出現(xiàn)在PES層,在PES頭部時(shí)間域中存在。它也是一個(gè)33bits的計(jì)數(shù)值,也是對(duì)系統(tǒng)時(shí)鐘的300分頻的時(shí)鐘的計(jì)數(shù)值。由于它和PCR有相同的起點(diǎn),在PCR值連續(xù)的情況下,可以起到時(shí)間定時(shí)的作用,當(dāng)本機(jī)PCR值(連續(xù))和DTS值相等時(shí),表示它們計(jì)算了同樣的時(shí)鐘,也即它們經(jīng)過(guò)了相同的時(shí)間。本機(jī)PCR起到的是連續(xù)計(jì)數(shù)的功能,DTS則是在等待這個(gè)時(shí)間,一旦等到這個(gè)時(shí)間,就表明它的解碼次序排好了,因?yàn)檫@個(gè)解碼次序是在編碼的時(shí)候規(guī)定的,對(duì)編碼的具體細(xì)節(jié)我們可以不做了解,我們只要查詢到DTS就可以進(jìn)行下一步的工作。這個(gè)也有利于編碼器和解碼器研發(fā)的獨(dú)立性,少了一些捆綁,多了一些兼容。DTS就視頻來(lái)說(shuō),因?yàn)橐曨l編碼的時(shí)候用到了雙向預(yù)測(cè),一個(gè)圖像單元被解出,并非馬上就被顯示,可能在存儲(chǔ)器中留一段時(shí)間,作為其余圖像單元的解碼參考,在被參考完畢后,才被顯示。針對(duì)視頻的顯示,Mpeg還提出了一個(gè)視頻PTS。針對(duì)音頻和視頻的同步顯示,又提出了一個(gè)音頻PTS。由于聲音沒(méi)有用到雙向預(yù)測(cè),它的解碼次序就是它的顯示次序,故對(duì)它只提出PTS的概念。 PTS是編碼器定義的,為解碼器規(guī)定某個(gè)單元的顯示時(shí)間。它也是一個(gè)33b的計(jì)數(shù)值,也是對(duì)系統(tǒng)時(shí)鐘的300分頻的時(shí)鐘的計(jì)數(shù)值。要注意的是,PCR、DTS、PTS應(yīng)該具有相同的時(shí)間起點(diǎn),選在模擬圖像的場(chǎng)同步處開(kāi)始計(jì)時(shí)是很好的辦法。一個(gè)單元解碼后被顯示,PCR計(jì)數(shù)器重新計(jì)數(shù),開(kāi)始下一個(gè)單元的工作。
四、PCR測(cè)量 ㈠PCR 精度(PCR_AC):接收PCR中所含27MHz時(shí)鐘的不準(zhǔn)確度,但不包含任何傳輸定時(shí)損傷。測(cè)量時(shí)傳輸碼流中PCR字節(jié)位置作為起點(diǎn),計(jì)算出PCR 到達(dá)時(shí)間。 ㈡PCR 漂移率(PCR_DR):PCR漂移率測(cè)量指的是PCR中的低頻誤差并計(jì)入了由PCR發(fā)生和再生引起的誤差以及由傳輸損傷所引起的到達(dá)時(shí)間誤差。即PCR內(nèi)所含27MHz時(shí)鐘的低頻變化速率,測(cè)量時(shí)以某一穩(wěn)定外部基準(zhǔn)作為參考,因此包含了任何傳輸定時(shí)變化。下面的例子可用來(lái)說(shuō)明PCR 漂移率的重要性: 我們來(lái)看一下由PLL控制的本地時(shí)鐘再生器。再生器輸出端的信號(hào)頻率應(yīng)當(dāng)跟蹤輸入信號(hào)頻率,隨著輸入信號(hào)頻率的變化,PLL也隨之作出響應(yīng),本地再生器將跟蹤輸入信號(hào),隨著輸入信號(hào)變化速率的增加,PLL的跟蹤能力會(huì)有所降低,最后將導(dǎo)致本地發(fā)生信號(hào)失鎖而丟失節(jié)目。PCR 漂移率的測(cè)量給出了一種測(cè)定方法,即如何更好地使去復(fù)用器/ 解碼器或再?gòu)?fù)用器的節(jié)目時(shí)鐘鎖定于輸入TS中所包含的PCR(注意這里指的是漂移率的測(cè)量而不是絕對(duì)頻率的測(cè)量,接收機(jī)端的PLL電路可以鎖定于系統(tǒng)時(shí)鐘,該時(shí)鐘有著固定的頻率誤差-如果是快速變化或漂移率大,則會(huì)出現(xiàn)問(wèn)題)。 ㈢PCR 總抖動(dòng)(PCR_OJ):PCR內(nèi)所含27MHz時(shí)鐘的高頻變化,測(cè)量時(shí)以某一穩(wěn)定外部基準(zhǔn)作為參考,因此包含了任何傳輸定時(shí)變化。它是PCR測(cè)量中最重要的一項(xiàng),是PCR中高頻誤差的總體測(cè)量并且還包括來(lái)自PCR發(fā)生和PCR 再生的誤差以及由傳輸損傷引起的到達(dá)時(shí)間誤差。例如該項(xiàng)傳輸損傷可能會(huì)引入到接收機(jī)中的RF解調(diào)器中。接收機(jī)內(nèi)再生的TS時(shí)鐘以及去復(fù)用器/解碼器所使用的TS時(shí)鐘可能包含有基本高頻變化,它會(huì)對(duì)PCR的恢復(fù)帶來(lái)直接影響。在這種情形下,解碼器在復(fù)原PCR 中所發(fā)現(xiàn)的PCR 到達(dá)時(shí)間誤差可能是±500ns容限的許多倍,給PCR精度帶來(lái)不利。任何解碼器均靠接收PCR以準(zhǔn)確再生其節(jié)目時(shí)鐘并提供穩(wěn)定的視頻輸出。與此相同,任何再?gòu)?fù)用器均靠接收PCR以在其輸出端精確地重新作出PCR標(biāo)記。PCR的到達(dá)時(shí)間是嚴(yán)格的;因此,測(cè)量包含有到達(dá)時(shí)間誤差和精度誤差的總抖動(dòng)(PCR_OJ)就是非常必要的。 在理想運(yùn)行系統(tǒng)中,傳輸損傷應(yīng)當(dāng)是可以設(shè)計(jì)的。然而在目前典型的分配網(wǎng)絡(luò)中,包含有再?gòu)?fù)用器、ATM 層等各級(jí)鏈路,它們均會(huì)引入誤差。PCR_AC是在復(fù)用器輸出端直接測(cè)量的數(shù)值,不過(guò)它在網(wǎng)絡(luò)中的運(yùn)行監(jiān)視常會(huì)使人迷惑不解,因?yàn)榘凑斩x,它應(yīng)當(dāng)消除一切傳輸損傷。 ㈣PCR頻率偏置(PCR_FO):即PCR中所含27MHz 時(shí)鐘的頻率偏置,測(cè)量時(shí)以某一穩(wěn)定的外部基準(zhǔn)作為參考。
參考文獻(xiàn) [1] ISO/IEC 13818-1(1996):Coding of moving pictures and associated Audio, Part 1: system. [2] 盧官明 宗昉 編著 [M]《數(shù)字電視原理》 北京:機(jī)械工業(yè)出版社,2004.1.1 [3] 劉文開(kāi) 劉遠(yuǎn)航 主編 [M]《有線廣播數(shù)字電視技術(shù)》北京:人民郵電出版社,2003.10 [4] 劉修文 編著 [M]《數(shù)字電視有線傳輸技術(shù)》 北京:電子工業(yè)出版社,2002.9 |
聯(lián)系客服