ATM網(wǎng)絡(luò )MPEG-Ⅱ比特率測量系統的設計
MPEG-Ⅱ作為一種運動(dòng)圖像國際標準已經(jīng)得到廣泛應用,數字視頻廣播(DVB)已經(jīng)將MPEG-Ⅱ作為一種源格式。在許多實(shí)際應用中包括衛星廣播、數字電纜和高清晰度電視HDTV,MPEG-Ⅱ分組是通過(guò)編碼器同步接口輸入到信道中。而在寬帶數字通信網(wǎng)中如ADSL,FTTC和寬帶IDSL是將MPEG-Ⅱ分組轉化成另外一種網(wǎng)絡(luò )傳輸分組,在這種情況下,一定數目的傳輸流分組被壓縮成一個(gè)ATM AAL-5 PDU單元,在分組交換時(shí),PDU被分解成幾個(gè)ATM單元。至于有多少傳輸流分組壓縮成為ATM AAL-5 PDU單元,主要與ATM網(wǎng)絡(luò )協(xié)議有關(guān),一般是2個(gè)傳輸流分組壓縮成一個(gè)AAL-5 PDU單元。一個(gè)網(wǎng)絡(luò )中傳輸的MPEG-2傳輸流需要內部的分組延遲進(jìn)行時(shí)間上的控制,這種控制主要是為了發(fā)送程序參考時(shí)鐘,從而在系統接收端進(jìn)行解碼時(shí)對系統時(shí)鐘進(jìn)行恢復。同時(shí)也可以避免解碼器的輸入緩沖的上溢和下溢。
在設計一個(gè)視頻發(fā)送系統的時(shí)候,對MPEG-Ⅱ傳輸流的比特率實(shí)行精確的控制就顯得尤為重要。當MPEG-Ⅱ分組進(jìn)行直接傳送時(shí),系統時(shí)間的控制是比較簡(jiǎn)單的,關(guān)鍵問(wèn)題是如何對視頻源的輸入時(shí)間進(jìn)
2 網(wǎng)絡(luò )堵塞和系統參考時(shí)鐘的恢復
根據MPEG-Ⅱ國際標準,編碼器將系統參考時(shí)鐘(27 MHz)的1/33進(jìn)行編碼,編碼后的數據進(jìn)行一定擴展和處理后作為程序參考時(shí)鐘PCR嵌入到傳輸流分組中。因此在解碼器端,通過(guò)對PCR的恢復就可以確定編碼的系統時(shí)鐘,從而達到編解碼的同步。由于在傳輸流中,含有PCR字段分組的PID值在程序映射表(PMT)得到確定。根據這個(gè)含有PCR字段的分組PID就可以參考設置將第一個(gè)含有PCR的分組作為系統時(shí)鐘STC的參考PCR,然后將其余的含有PCR字段的傳輸分組中的PCR的值通過(guò)一定的方式處理就可以恢復系統時(shí)鐘?;謴拖到y時(shí)鐘的方法如下:
(1)將第一個(gè)PCR的值對STC進(jìn)行初始化。
(2)考慮解碼器輸入緩沖的上溢和下溢的影響,對其大小進(jìn)行一定的估計,從而確定解碼輸入緩沖。根據當前MPEG-Ⅱ傳輸流的最大碼率計算,連續含有PCR字段的分組的時(shí)間間隔必須小于0.1 s。
(3)對于連續到達的PCR的值進(jìn)行鎖定,通過(guò)和第一個(gè)PCR的值進(jìn)行對比,就可以確定STC。
由于在MPEG解復用器輸出到緩沖器的過(guò)程中以往沒(méi)能對其碼速進(jìn)行測量,從而會(huì )造成緩沖的上溢,而在視頻和音頻解碼器端,在緩沖輸入到解碼器的過(guò)程中,同樣原因而造成緩沖的下溢。為此在A(yíng)TM/CATV網(wǎng)絡(luò )到MPEG解復用器的過(guò)程中,如果能夠添加一個(gè)接收器的比特監控單元,將能夠減少由于網(wǎng)絡(luò )堵塞而造成的麻煩。
如果從傳輸分組中得到的含有PCR字段的分組,由于網(wǎng)絡(luò )堵塞而造成PCR的值隨機延遲,解碼器和嵌入的系統處理器,將會(huì )按照一定的算法對PCR的值進(jìn)行校正,從而恢復STC。這個(gè)校正和當前的MPEG比特率有密切關(guān)系,是將當前MPEG比特率對PCR的值進(jìn)行一定的補償從而恢復PCR的原值。如果對當前的PCR不進(jìn)行校正,那么視頻解碼、圖像和D/A轉換都會(huì )由于這個(gè)STC的無(wú)法恢復而受到影響。為此,在整個(gè)解碼器或者解復用器的系統設計過(guò)程中,對當前MPEG比特率的實(shí)時(shí)監控和測量是至關(guān)重要的,它的目的就是為了對當前網(wǎng)絡(luò )傳輸的延遲進(jìn)行實(shí)時(shí)的測量和監控。如果在接收器中能夠實(shí)時(shí)跟蹤測試當前的比特率的話(huà),那么基本上ATM/CATV網(wǎng)絡(luò )的傳輸延遲(網(wǎng)絡(luò )堵塞)將會(huì )在解碼器端得到實(shí)時(shí)的補償。
3 接收端MPEG比特率的測量算法
在A(yíng)TM或者CATV網(wǎng)絡(luò )傳輸過(guò)程中,MPEG-Ⅱ傳輸分組由于網(wǎng)絡(luò )堵塞而造成的隨機延遲,使得在解復用器或者解碼器端接收到的分組系統時(shí)鐘和發(fā)送端輸出的有一定的偏移,在理想情況下,往往對這個(gè)偏移不進(jìn)行考慮,但正是由于這一點(diǎn)而造成視頻解碼無(wú)法正常工作,或者圖像無(wú)法恢復到原先的狀態(tài)。在這種情況下,對系統時(shí)鐘STC的恢復將會(huì )在一個(gè)不確定的狀態(tài)下進(jìn)行。為了避免這種情況的發(fā)生,就必須對STC的狀態(tài)進(jìn)行檢測,將當前得到的PCR的值和本地產(chǎn)生的時(shí)鐘進(jìn)行比較,比較的公式推導如下:
(ΔSTC-ΔPCR)ΔSTC=(Δb/ΔPCR-Rf)(Δb/ΔPCR)(1)
式中:ΔSTC=STC(t)-STC(t-1)
ΔPCR=PCR(t)-PCR(t-1)
Δb=b(t)-b(t-1)
t——PCR到達時(shí)間;
b(t)——在PCR到達時(shí)間t時(shí)刻累加的比特數;
Rf——在兩個(gè)連續過(guò)程和更多的PCR之間的運行時(shí)間比特率。
如果這里用Sf來(lái)替代Δb/ΔPCR,那么(1)式就可以變?yōu)椋邯?
(ΔSTC-ΔPCR)/ΔSTC=(Sf-Rf) /Sf(2)
在上式中
Rf=(ΔSTC/ΔPCR)K(3)
而在可變速率MPEG-Ⅱ傳輸流(VBR)中由于Sf是一個(gè)變量,因此(2)式可以演變成為:
Rf=(ΔSTC
評論