Chinaunix首页 | 论坛 | 博客
  • 博客访问: 226663
  • 博文数量: 65
  • 博客积分: 25
  • 博客等级: 民兵
  • 技术积分: 417
  • 用 户 组: 普通用户
  • 注册时间: 2012-08-05 15:12
个人简介

路漫漫其修远兮,吾将上下而求索

文章分类

全部博文(65)

文章存档

2016年(1)

2015年(12)

2014年(34)

2013年(16)

2012年(2)

我的朋友

分类: 其他平台

2014-08-15 10:55:25

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。

PESPaketized Elementary Stream)打包基本码流

PESES经过打包后的码流,其长度可变。视频一般一帧一个包,音频长度一般不超过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

 

以上内容由网上收集多篇资料整理而成。

阅读(4154) | 评论(0) | 转发(0) |
0

上一篇:Backbone.js系列教程

下一篇:MPEG介绍

给主人留下些什么吧!~~