TS與PS的區別
TS流與PS流的區別在於TS流的包結構是固定長度的(188、192、204、208字節);而PS流的包結構是可變長度,它的一個視頻包可能就是一個視頻幀。TS包較小,增加了很多冗餘的包頭信息,導致它對傳輸誤碼具有較高的抵抗能力,因此可以應用於信道環境較差的傳輸方式;而PS包只適合於應用於誤碼較低的存儲環境。TS做傳輸,PS做存儲。TS可以是多路節目的複合,PS只是一路節目。TS中的某一路節目,可以構成一路PS節目。
1. TS流由一連串的TS包組成,這些TS包之間關係不確定;
2. TS包由4字節的包頭和184字節的負載構成,在4字節的包頭裏面最重要的是13比特PID,它定義了該TS包的類型;
3. PAT,PMT是特殊類型的TS包,PAT的PID固定爲0;這種特殊的TS包稱爲PSI(Program Specific Information),還包含CAT(Conditional Access Table)和 NIT(Network Information Table),前者用於節目的加密解密,控制版權,CAT的PID固定爲1;後者提供TS流網絡傳輸信息,例如頻率,調製方式等;
4. 當有效負載不夠188-4字節的時候,補滿0xFF;
5. 4字節TS包頭結構
8bits 0x47 同步字節
1bit 0 傳輸錯誤標示位 爲1則該包有無法修復的錯誤,只能丟棄
1bit 0 PES/PSI數據開始位
1bit 0 權限位 爲1則該包在相同PID包中具有更高的優先權
13bits xxx PID 包ID號
2bits 00 負載加密標誌位 後面有效負載是否加密
2bits 00 調整字段控制 01 無調整字段,10僅有調整字段,11 調整字段,有效負載都有,00 空包,不處理
4bits 0 ~15 循環計數 相同PID反覆計數00 ~15