MPEG2解析小結

2022-04-03 00:56:08 字數 3488 閱讀 9358

iso/iec-13818-1:系統部分;

iso/iec-13818-3:音訊;

iso/iec- 13818-4:一致性測試;

iso/iec-13818-5:軟體部分;

iso/iec-13818-6:數字儲存**命令與控制;

iso/iec- 13818-7:高階音訊編碼;

iso/iec-13818-8:系統解碼實時介面;

mpeg2系統任務包括:

1. 規定以包傳輸資料的協議;

2. 規定收發兩端資料流同步的協議;

3. 提供多個資料流的復用和解復用協議;

4. 提供資料流加密的協議。

以包形式儲存和傳送資料流是mpeg2系統之要點。

上節介紹過,es首先需打包成pes流包,然後pes根據需要打包成ps或ts包進行儲存或傳輸。其每路es只包含一路信源的編碼資料流,所以每路pes也只包含相對應信源的資料流。

ts流也是由乙個或多個pes組合而來的,他們可以具有相同的時間基準,也可以不同。其基本的復用思想是,對具有相同時間基準的多個pes現進行節目復用,然後再對相互有獨立時間基準的各個ps進行傳輸復用,最終產生出ts。

ts包由包頭和包資料2部分組成,其中包頭還可以包括擴充套件的自適用區。包頭長度佔4bytes,自使用區和包資料共佔184bytes,整個ts包長度相當於4個atm包長。ts

包的包頭由如下圖摘錄所示的同步位元組、傳輸誤碼指示符、有效載荷單元起始指示符、傳輸優先、包識別(

pid-packet

identification

)、傳輸加擾控制、自適應區控制和連續計數器

8個部分組成。

其中,可用同步位元組位串的自動相關特性,檢測資料流中的包限制,建立包同步;傳輸誤碼指示符,是指有不能消除誤碼時,採用誤碼校正解碼器可表示

1bit 

的誤碼,但無法校正;有效載荷單元起始指示符,表示該資料報是否存在確定的起始資訊;傳輸優先,是給

ts包分配優先權;

pid值是由使用者確定的,解碼器根據

pid將

ts上從不同

es來的

ts包區別出來,以重建原來的

es;傳輸加擾控制,可指示資料報內容是否加擾,但包頭和自適應區永遠不加擾;自適應區控制,用

2 bit

表示有否自適應區,即(

01)表示有有用資訊無自適應區,(

10)表示無有用資訊有自適應區,(

11)表示有有用資訊有自適應區,(

00)無定義;連續計數器可對

pid包傳送順序計數,據計數器讀數,接收端可判斷是否有包丟失及包傳送順序錯誤。顯然,包頭對

ts包具有同步、識別、檢錯及加密功能。

ts包自適應區由自適應區長、各種標誌指示符、與插入標誌有關的資訊和填充資料

4部分組成。其中標誌部分由間斷指示符、隨機訪問指示符、

es優化指示符、

pcr標誌、接點標誌、傳輸專用資料標誌、原始

pcr標誌、自適應區擴充套件標誌

8個部分組成。重要的是標誌部分的

pcr欄位,可給編解碼器的

27mhz

時鐘提供同步資料,進行同步。其過程是,通過

pll,用解碼時本地用

pcr相位與輸入的瞬時

pcr相位鎖相比較,確定解碼過程是否同步,若不同步,則用這個瞬時

pcr調整時鐘頻率。因為,數字影象採用了複雜而不同的壓縮編碼演算法,造成每幅影象的資料各不相同,使直接從壓縮編碼影象資料的開始部分獲取時鐘資訊成為不可能。為此,選擇了某些(而非全部)

ts包的自適應區來傳送定時資訊。於是,被選中的

ts包的自適應區,可用於測定包資訊的控制

bit和重要的控制資訊。自適應區無須伴隨每個包都傳送,傳送多少主要由選中的

ts包的傳輸專用時標引數決定。標誌中的隨機訪問指示符和接點標誌,在節目變動時,為隨機進入

i幀壓縮的資料流提供隨機進入點,也為插入當地節目提供方便。自適應區中的填充資料是由於

pes包長不可能正好轉為

ts包的整數倍,最後的

ts包保留一小部分有用容量,通過填充位元組加以填補,這樣可以防止快取器下溢,保持總位元速率恆定不變。

前面3節總結了mpeg2 ts的基本格式,其中包括pes,ps和ts,以及相關欄位的介紹。那麼作為一種傳輸流,ts將內容進行打包/復用,讓其**內容變成ts傳輸,並最終在 解碼端解碼。簡單來看,ts是乙個傳輸層的協議棧,它可以承載各種內容的傳輸,比如mpeg,wmv,h264,甚至是ip,那麼其中的傳輸規範是如何定 義的呢?這個即是psi(節目特定資訊)要做的事情。

psi由四張表構成:pat,pmt,cat和nit,這四張表分別描述了乙個ts所 包括的所有es流的傳輸結構。首先的乙個概念是,ts是以包形式傳播,在編譯碼端都需要以一定的包id來標識ts流裡承載的內容,比如,pat表會存在於 乙個或多個ts包裡,所以要用乙個特別的包id來表示,另外,不同的es流也需要不同的包id來標識。我們有了pat和pmt這兩種表,解碼器就可以根據 pid,將ts上從不同es來的ts包區分出來進行解碼。

ts的解碼分兩步進行,其一,是從pid為0 的ts包裡,解析出pat表,然後從pat表裡找到各個節目源的pid,一般此類節目源都由若干個es流組成,並描述在pmt表裡面,然後通過節目源的 pid,就可以在pmt表裡檢索到各個es的pid。其二,解碼器根據pmt表裡的es流的pid,將ts流上的包進行區分,並按不同的es流進行解碼。 所以,ts是經過節目復用和傳輸復用兩層完成的,即在節目復用時,加入了pmt,在傳輸復用時,加入了pat。同樣在節目解復用時,可以得到pmt,在傳

輸解復用時,可以得到pat。下圖很好地概述了其思想。

ts是支援多路復用的,所以它可用來傳輸經復用後的多層節目。在復用過程中,要注意的是,解碼過程中所需要面對的時間參考和同步問題,因為解復用是需要各種資訊同步進行的,所以在復用過程中,就需要插入相關的時間資訊:pts,dts,pcr。

在ts形成過程中,pts和dts是在es打包成pes時,根據stc的參考,將其時鐘資訊注入pes包中的,而之後在pes切成ts時,再將 pid和pcr畔⒆⑷肫滸械摹t詼嘟諛扛從檬保扛黿諛縏s的pcr將會被提取出來,再進行分析,然後再根據統一的stc參考,將新的pcr生成並注入 到ts中去,最後,因為原來pat表資訊不在適用,所以新的pat表需要再生成,並附加到新的ts流中去。經過這多層的復用之後,新的ts流即可以進入調 制,傳輸階段。過程可參見下圖:

解碼過程要面對的問題是:解復用,視音訊的同步,解碼快取器無上下溢。解復用即是將ts在同一通道裡不同時序進行傳輸的節目分離出來;視音訊同步由 dts, pts和pcr三者協調完成,並且pcr是重建系統時間基準的絕對時標,而dts和pts是解碼和重現時刻的相對時標;對解碼快取器無上下溢的問題,必須 借助於系統目標解碼器(std)模型來對其進行實現,基本思想如下:

ts流進入解碼器後,首先由換向器,按照一定的時序關係,將各種es流分解出來(其中也包括psi資訊流)。

分解過後的es流會進入各自的傳輸快取器,通過之後,其pes流進入各自的主儲存器,注意的是:psi資訊流會進入系統快取器,最後也到達主儲存器。

最後,解碼器根據dts資訊,從各個主儲存器分別提取**或系統資訊,進行解碼,並根據pts資訊,將**內容進行顯示處理。

其過程可參見下圖:

MPEG 2簡介及MPEG 2編譯碼 2

概括地說,mpeg 2影象壓縮的原理是利用了影象中的兩種特性 空間相關性和時間相關性。一幀影象內的任何乙個場景都是由若干畫素點構成的,因此乙個 畫素通常與它周圍的某些畫素在亮度和色度上存在一定的關係,這種關係叫作空間相關性 乙個節目中的乙個情節常常由若干幀連續影象組成的影象序列構成,乙個 影象序列中...

MPEG 2簡介及MPEG 2編譯碼 2

概括地說,mpeg 2影象壓縮的原理是利用了影象中的兩種特性 空間相關性和時間相關性。一幀影象內的任何乙個場景都是由若干畫素點構成的,因此乙個 畫素通常與它周圍的某些畫素在亮度和色度上存在一定的關係,這種關係叫作空間相關性 乙個節目中的乙個情節常常由若干幀連續影象組成的影象序列構成,乙個 影象序列中...

MPEG 2簡介及MPEG 2編譯碼 1

mpeg 2簡介及mpeg 2編譯碼 mpeg是活 像專家組 movingpictureexpertsgroup 的縮寫,於1988年成立。目前mpeg已頒布了三個活 像及聲音編 碼的正式國際標準,分別稱為mpeg 1 mpeg 2和mpeg 4,而mpeg 7和mpeg 21都在研究中。mpeg ...