MPEG-2 之ES,PES,PS以及TS流的介绍

MPEG-2作为一个数字视音频的一种压缩标准一被广泛的运用于多媒体、数字存储及数字传输(如数字电视)等领域。其规范主要包括音频编码、视频编码、系统、数字存储规范、复用和测试等几个部分。其中音、视频和系统(音视频同步)为主要部分,解决音视频的压缩问题并提供一种不同码流间的复用规范。


流简介
“TS流”和“PS流”是经过MPEG-2系统压缩处理后的两种复合信息流。

根据传输媒体的质量不同,MPEG-2中定义了两种复合信息流:传送流(TS)和节目流(PS)。

在MPEG-2系统中,信息复合/分离的过程称为系统复接/分接,由视频,音频的ES流和辅助数据复接生成的用于实时传输的标准信息流(比如实时广播的电视节目)称为“MPEG-2传送流”(MPEG2-TS)(TS的全称:Transport Stream)。

而“MPEG-2节目流”(MPEG2-PS)主要应用于存储的具有固定时长的节目,如DVD电影(PS的全称:Program Stream)。

TS流与PS流的区别在于TS流的包结构是固定长度的,而PS流的包结构是可变长度。PS包与TS包在结构上的这种差异,导致了它们对传输误码具有不同的抵抗能力,因而应用的环境也有所不同。TS码流由于采用了固定长度的包结构,当传输误码破坏了某一TS包的同步信息时,接收机可在固定的位置检测它后面包中的同步信息,从而恢复同步,避免了信息丢失。而PS包由于长度是变化的,一旦某一PS包的同步信息丢失,接收机无法确定下一包的同步位置,就会造成失步,导致严重的信息丢失。因此,在信道环境较为恶劣,传输误码较高时,一般采用TS码流;而在信道环境较好,传输误码较低时,一般采用PS码流由于TS码流具有较强的抵抗传输误码的能力,因此目前在传输媒体中进行传输的MPEG-2码流基本上都采用了TS码流的包
节目流主要用于误码相对较低的演播室和数字存储(如DVD)中;

传输流主要用于传输中,它有固定长度的明显特点。这种数据结构运用于DVB(数字视频广播Digital Video Broadcasting)的传输层中。

ES流(Elementary Stream原始流),是音、视频信号经过编码器之后或数据信号的基本码流。ES是只包含一种内容的数据流,如只含视频或只含音频等,打包之后的PES也是只含一种性质的ES,如只含视频的ES的PES或只含音频ES的PES。

PES(Paketized Elementary Stream)打包基本码流

PES是ES经过打包后的码流,其长度可变。视频一般一帧一个包,音频长度一般不超过64KB。

ES,PES, PS, TS的关系如下图所示。

流格式
PES是打包过的ES,已经插入PTS和DTS,一般是一个pes包为一帧图像

PES包格式:

PES再打包成TS流或PS流,往往一个PES会分存到多个ts包中,

start_code: 0x00 00 01

stream_id: 

pes包头长: 

信息区:包含附加信息以及PTS和DTS

PS流:

每一个pes header包含pts和dts,在解码时,pes-->es,音视频的同步,除了使用pts和dts以外,还会用到SCR(system clock reference),在编码时,都是由STC(system time clock)生成

ps包长度是可变的

TS也是有多个pes组合而成,ts包由包头和包数据2部分组成,长度固定,包头长4bytes,包数据和自使用区共占184bytes

以上内容由网上收集多篇资料整理而成。
--------------------- 
作者:leopard21 
原文:https://blog.csdn.net/leopard21/article/details/24818715 

猜你喜欢

转载自blog.csdn.net/DittyChen/article/details/86505702