一怎抛、基本概念
**1)ES **
ES--Elementary Streams (原始流)是直接從編碼器出來的數(shù)據(jù)流,可以是編碼過的視頻數(shù)據(jù)流(H.264,MJPEG等)芽淡,音頻數(shù)據(jù)流(AAC)马绝,或其他編碼數(shù)據(jù)流的統(tǒng)稱。ES流經(jīng)過PES打包器之后挣菲,被轉(zhuǎn)換成PES包富稻。
ES是只包含一種內(nèi)容的數(shù)據(jù)流,如只含視頻或只含音頻等白胀,打包之后的PES也是只含一種性質(zhì)的ES,如只含視頻ES的PES,只含音頻ES的PES等椭赋。每個ES都由若干個**存取單元(AU)**組成,每個視頻AU或音頻AU都是由頭部和編碼數(shù)據(jù)兩部分組成或杠,1個AU相當于編碼的1幅視頻圖像或1個音頻幀哪怔,也可以說,每個AU實際上是編碼數(shù)據(jù)流的顯示單元向抢,即相當于解碼的1幅視頻圖像或1個音頻幀的取樣认境。
2)PES
** PES--Packetized Elementary Streams (分組的ES),**ES形成的分組稱為PES分組挟鸠,是用來傳遞ES的一種數(shù)據(jù)結(jié)構(gòu)叉信。PES流是ES流經(jīng)過PES打包器處理后形成的數(shù)據(jù)流,在這個過程中完成了將ES流分組艘希、打包硼身、加入包頭信息等操作(對ES流的第一次打包)。PES流的基本單位是PES包覆享。PES包由包頭和payload組成佳遂。
3)PTS、DTS
PTS--PresentationTime Stamp(顯示時間標記)表示顯示單元出現(xiàn)在系統(tǒng)目標解碼器(H.264淹真、MJPEG等)的時間讶迁。
DTS--Decoding Time Stamp(解碼時間標記)表示將存取單元全部字節(jié)從解碼緩存器移走的時間。
PTS/DTS是打在PES包的包頭里面的,這兩個參數(shù)是解決音視頻同步顯示巍糯,防止解碼器輸入緩存上溢或下溢的關鍵啸驯。每一個I(關鍵幀)、P(預測幀)祟峦、B(雙向預測 幀)幀的包頭都有一個PTS和DTS罚斗,但PTS與DTS對于B幀不一樣,無需標出B幀的DTS宅楞,對于I幀和P幀针姿,顯示前一定要存儲于視頻解碼器的重新排序緩存器中,經(jīng)過延遲(重新排序)后再顯示厌衙,所以一定要分別標明PTS和DTS距淫。
4)PS
PS--Program Stream(節(jié)目流)PS流由PS包組成,而一個PS包又由若干個PES包組成(到這里婶希,ES經(jīng)過了兩層的封裝)榕暇。PS包的包頭中包含了同步信息與時鐘恢復信息。一個PS包最多可包含具有同一時鐘基準的16個視頻PES包和32個音頻PES包喻杈。
5)TS
**TS--Transport Stream(傳輸流)**由定長的TS包組成(188字節(jié))彤枢,而TS包是對PES包的一個重新封裝(到這里,ES也經(jīng)過了兩層的封裝)筒饰。PES包的包頭信息依然存在于TS包中缴啡。
TS流與PS流的**區(qū)別**在于TS流的包結(jié)構(gòu)是固定長度的,而PS流的包結(jié)構(gòu)是可變長度的。PS包由于長度是變化的,一旦丟失某一PS包的同步信息,接收機就會進入失步狀態(tài),從而導致嚴重的信息丟失事件瓷们。而TS碼流由于采用了固定長度的包結(jié)構(gòu),當傳輸誤碼破壞了某一TS包的同步信息時,接收機可在固定的位置檢測它后面包中的同步信息,從而恢復同步,避免了信息丟失业栅。因此在信道環(huán)境較為惡劣、傳輸誤碼較高時一般采用TS碼流,而在信環(huán)境較好换棚、傳輸誤碼較低時一般采用PS碼流式镐。
6)TS單一碼流反镇、混合碼流
單一性:TS流的基本組成單位是長度為188字節(jié)的TS包固蚤。
混合性: TS流由多種數(shù)據(jù)組合而成,一個TS包中的數(shù)據(jù)可以是視頻數(shù)據(jù)歹茶,音頻數(shù)據(jù)夕玩,填充數(shù)據(jù),PSI/SI表格數(shù)據(jù)等(唯一的PID對應)惊豺。
二燎孟、基本流程
1)A/D轉(zhuǎn)換后,通過MPEG-2壓縮編碼得到的ES基本流尸昧。這個數(shù)據(jù)流很大揩页,并且只是I,P烹俗,B的這些視頻幀或音頻取樣信息爆侣。
2)通過PES打包器萍程,打包并在每個幀中插入 PTS/DTS標志,變成PES兔仰。原來是流的格式茫负,現(xiàn)在成了數(shù)據(jù)包的分割形式。
3)PES根據(jù)需要打包成PS或TS包進行存儲(DVD)或傳輸(DVB)乎赴。因每路音/視頻只包含一路的編碼數(shù)據(jù)流忍法,所以每路PES也只包含相應的數(shù)據(jù)流。
附: