Ⅰ 移动流媒体的传输方式

流媒体来的传输方式有两源种:顺序流传输(Progressive Streaming)和实时流传输(Real-time Streaming)。
(1)顺序流方式。顺序流传输方式是顺序下载,边下载边播放前面已下载的部分,顺序下载方式不具备交互性。顺序流方式是早期在IP网上提供流服务的方式,通常采用的是HTTP(超文本传输协议)通过TCP发送,用标准的HTTP服务器就可以提供服务,不需要特殊的协议。网络状况的影响基本上表现在等待时间上。顺序流传输方式的缺点是不适合传输比较长片段的媒体,也不能提供随机访问功能。
(2)实时流方式。在实时流传输方式下,流媒体能够实时播放,并提供VCR功能,具备交互性,可以在播放的过程中响应用户的快进或后退等操作。一般来说,实时流方式需要专门的协议如RTSP,还需要专用的流媒体服务器。由于是实时播放,网络的状况对播放质量的影响表现得比较直接。当网络阻塞和出现问题的时候,分组的丢失导致视频质量变差,播放会出现断断续续甚至停顿的现象。实时流方式的优点是具有更多的交互性,缺点是需要特殊的协议和专用的服务器,配置和管理更为复杂。

Ⅱ 有线数字传输中节目刘与传输流的区别是什么 用码流分析仪录制的某一频点的流叫做什么流

在MPEG-2系统中,信息复合/分离的过程称为系统复接/分接,由视频,音频的ES流和辅助数据复接生成的用于实际传输的标准信息流称为MPEG-2传送流(TS:TransportStream)。 据传输媒体的质量不同,MPEG-2中定义了两种复合信息流:传送流(TS)和节目流(PS:ProgramStream)TS流与PS流的区别在于TS流的包结构是固定长度的,而PS流的包结构是可变长度的。

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

TS/PES是MPEG定义的标准格式,无论是MPEG1还是MPEG2都给出了包含比特流句法在内的定义,我们所说的TS/PS都是在这里定义的。因此谈到TS/PS时仍然离不了MPEG,虽然AVS及IP的数据也可以封装在TS中,因为MPEG中给TS/PES的定义中允许封装其他数据。

虽然也许可以不经改变的将不同编码格式的码流经由TS/PS传送,但这事实上这是对MPEG的利用或扩充。通常情况下,封装不同类型数据的时候我们需要在TS/PES添加标准的(如果有的话)或自定义的描述,并且在有些情况下原则上必须使用MPEG已经定义的特殊描述,TS/PES并非总是透明的。

简单说就是ps流(主要用在DVD上)如是中间丢了一断码流,后面的都没法播了;而TS流(DVB-T,DMB-TH等)如果断了码流,后面的随时可以再开始解码怎么看都行。

----------------------------------------------

PS流:
DVD节目中的MPEG2格式,是MPEG2-PS,全称是Program Stream,简称PS流。TS的全称则是Transport Stream。MPEG2-PS主要应用于存储的具有固定时长的节目,如DVD电影,而MPEG-TS则主要应用于实时传送的节目,比如实时广播的电视节目。

这两种格式的主要区别是什么呢?你将DVD上的VOB文件的前面一截剪掉(或者干脆就是数据损坏),那么就会导致整个文件无法解码,而电视节目是你任何时候打开电视机都能解码(收看)的,所以,MPEG2-TS格式的特点就是要求从视频流的任一片段开始都是可以独立解码的。

----------------------------------------------

TS流:

ts流是由很多不同种类的包所组成的,这些数据包都是188个字节大小,这188个字节包含两部分,包头和负载,包头包括同步信息,包信息等等,而负载则是传输的数据,而这些负载则可以组成PES流或者私有流等等数据流.

举例说,一个TS流包括100个包,其中PSI信息包占20个,PES数据包80个,此TS流中只有一套节目流,不含有私有流,所以从这80个PES包中 的负载连接在一起,就是2个PES流(视频,音频),如果每个PES包的负载长度为100字节,则这两个PES流一共长度为8000个字节.假设其中视频 的PES流长度为6000字节.则视频的6000字节的PES流,是由PES包组成的.PES包没有固定的长度,而是由包头部的数据给出.而PS也是类似 TS流分解的方式,逆向的由PES包封装成包,其中要添加PACKET_HEAD,SYSTEM_HEAD等信息.所以上次所做的程序,并不是 TS->PS的转换,而是从一个复杂的TS流中,过滤去一套节目,构造出一个简单的TS流的过程.

----------------------------------------------

mpeg-ts,mpeg-ps的转换

mpeg2文件都是以数据包传递的,同样都是188个字节为一个包,但是作为传输流和节目流,包的组织结构还是不太一样的,作为传输流来说,其包含的包的 种类比较多(其实不是包的种类,而是包含不同用途的数据的种类比较多),比如有PID为0x0000的PAT,EIT,TDT,TOT,还有PMT,等等 不同的表或包.而节目流所包含的就比较少,只要包含PAT,PMT,以及包含音频,视频的PES包就可以了.所以在TS,PS的转换 中,TS->PS的转换比较简单,只要去掉相对没有作用的包,在修改一下PAT,PMT表就可以了.

例如现在我所做的DVB-T的MPEG2存储,就是先得到MPEG2压缩的数据包(完整的包,包含同步等等所有信息,共188个字节),其中包含音频,视 频两种数据包(两者以PID不同,相区分).那么作为PS流存储时,就要虚构出新的PAT,PMT表假如到PS流中,其中PAT,PMT中需要修改的就是 PMT中指向音频,视频流的PID值必须是要存储的音频,视频数据包的PID.这样就完成了TS->PS的转换.

简言之:先对TS进行过滤,保留要存储的节目所对应的音频,视频流,删除所有其他的包.然后虚构一个新的PAT,PMT表,其中音频,视频流的指针必须指向存储的音,视频流的PID.这样就完成了转换.

问题:1.音频,视频同步问题,这两个包应该以什么样的比例交叉传输呢?也就是多少个视频包中间发送一个音频包呢?如果这个比例控制不好,那么就容易造成音,视频不同步.

2.对于我们所虚构的PAT,PMT表应该以什么样的频率发送呢?也就是说发送多少PES包后,发送一次PSI包呢?这个问题似乎影响不大.好象还没有出现播放时的问题.

3.我现在所采用的这种做法,虽然解决了存储,然后播放的问题,但是似乎并没有实现TS->PS的转换,实现的是对TS流的过滤,即是把一个含有多套节目的TS流,转换成一个只含有一套节目的TS流,不知道这样说对不对?

4.还有一个主要问题就是对于TS流中传输PES信息的包来说,其负载信息中的数据,如何组成PES流的呢?应该是通过包头部分的控制信息来明确的,还的好好看看文档.

Ⅲ 数字电视里面的TS流是个什么概念

MPEG-2(Moving Picture Exports Group)作为一个关于运动图像压缩的国际标准.于1988年成立。

MPEG-2 Ts流只是MPEG-2格式种类中的一种,其英文全称是(MPEG-2 Transport Stream)

这已经成为数字电视领域中普遍应用的系统层编码标准。传输流针对有一定误码信道的传输,可以将多路节目复合成一个流进行传输,它允许同一路节目包含多个音频和视频流,同时也可以加入一些附加信息。传输流具有固定的包长188字节。它的结构是极其复杂的,对用户来说,针对一个特定的流,首先要知道其由哪些PID(Packet ID)的包构成。MPEG-2定义了一些用来描述传输流所携带内容的信息表,称为节目特定信息(PSI)表,包括4个与之相关的表。其中,节目关联表PAT和节目映射表PMT是确定当前传输流中各节目内容的最关键的两个表。

我国目前采用的DVB标准是欧洲各国采用的数字电视标准,基带数据格式采用MPEG-2标准,即视频和音频编码以及码流的复用均符合MPEG-2标准。DVB标准对PSI进行扩展后统称为服务信息即SI。这些信息以及传输流的规范性对于正确接收数字电视节目是至关重要的。

数字电视系统的集成是一项庞大复杂的工程,为了在开发中迅速有效地找出故障源、解决问题,经常需要对数字电视码流进行分析。此外码流测试技术更为广泛的应用在对数字电视网络的监测中。由于TS是经过压缩的信号数据间的相关性很小,而且TS流有着严格的数据格式,因而很小的误差都将导致图像质量的急剧下降甚至无法解码,因此必须对信号进行监测。为此我们开发了这个通用的传输流分析模块,它可以分析包括节目信息、码率、带宽分配、PCR精度和缓冲区溢出等在内的各种码流相关信息,同时还可以进行ETR290相关参数的测试,由于在设计时充分采用了模块化设计的思想,该模块可以配合各种获取数据的模块共同工作从而完成不同环境下的传输流分析工作。此外为验证分析模块的功能,我们开发了TS文件的静态分析系统,以下着重介绍分析模块的设计和实现以及该模块在系统中的应用。

设计思想

在功能上,整个分析模块完成对码流各种信息的分析和ETR290参数的测试。码流信息的分析包括:基本信息、节目信息、带宽信息、音视频信息、复用结构、PCR信息和缓冲区信息等部分。其中基本信息包含了流的速率、流ID、提供者的名称等基本信息;节目信息包含了传输流中各个节目的名称,PID(Packet ID)分配,节目速率,节目单等信息;带宽信息包含了各个PID所占的带宽;音视频信息包含了流中音视频相关的各种信息;复用结构显示了流中各个节目的复用情况;PCR信息显示了流中各个PCR的精度和间隔;缓冲区信息包含了虚拟解码器(STD)在解码当前流时各个缓冲区的状态。除了这些信息之外,模块完成了ETR290参数的测试,这些参数是DVB标准的制定者在官方文档中给出的一系列测试的参数,其一般目标是对TS流中的最重要的元素提供“健康测试”,根据重要性以及不同的性质,这些推荐测试的参数被分为3个优先级,其中:第一个优先级集中了一套基本的参数,这些参数保证ts流能够被解码;第二个优先级集中了一些附加参数,这些参数推荐用来进行连续性检测;第三个优先级集中了一些特定应用可能感兴趣的参数。

模块在设计上希望能够保持通用性,即只要模块能够通过接口取得传输流的数据即可完成分析工作,实际中,为了测试分析模块的工作情况而设计了用于从文件获取数据的模块,该模块和分析模块都被设计成动态链接库即dll的形式,同时编写了用于显示结果的上层应用程序,该程序结合获取数据和分析模块即实现了一个完整的传输流静态分析系统,这里可以看出,若分析模块需要用于实时分析系统,则只要相应的获取数据的设备,例如硬件数据采集卡,提供相同功能的dll用于分析模块获取数据即可。此外,在设计中较强的可扩展性也是目标之一,希望今后能够根据需要灵活方便的增加更多的分析功能。以下将以上述静态分析系统为载体说明分析模块的设计和实现以及在实际系统中的位置和作用。

现目前多节目、单节目、高清、标清、卫星节目、HDTV节目等各种类型TS流进行了测试,结果显示该模块工作正常、结果正确,同时,由于通过文件的码率和大小即可得知文件所对应传输流的实时持续时间,因而通过分析完成静态测试所用的时间同样可以得知该模块用于实时分析时的工作效率,实验表明,该模块具有较好的效率,能够用于静态和实时分析等各种场合,具有较好的通用性和可扩展性。目前应用该分析模块的分析系统已经应用于实验室数字电视产品的辅助开发中,并发挥了很大的作用。

此格式现多用于电视台和教育系统!