lark.com

火鸟乐园——生活在.net时代
  博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理

MPEG2 TS与ISMA的比较

Posted on 2006-08-17 17:15  火鸟  阅读(2019)  评论(0编辑  收藏  举报
MPEG2 TS与ISMA的比较
  1. 目的比较
ISMA仅是为了Internet上的流媒体服务而做的标准,因此其目标是互联网上的低码率点播节目和低并发率。TS则是媒体行业通用的标准,其目标是基于宽带的数字视频广播,并且支持多种基本媒体流和多种媒体编码标准,已经有十多年实际的大规模普遍性应用,得到全球广播行业和互联网行业的一致认同。而ISMA的历史相对较晚,且在行业上的认同度较低,也没有大规模的部署案例。
2. Streaming Server的兼容性与升级
a) 文件格式的兼容性
在ISMA中,不同的编码标准有不同的文件格式,比如MPEG-4和H.264的文件格式都不一样,因此在文件格式上是没有任何兼容性的。而TS的存储则与媒体编码格式无关,MPEG-2 TS可以将任何格式的内容封装到它里面。在对TS流进行存储时,只需将其进行分段处理,然后加上Index信息,并与TS流共同存储即可。因此采用TS流的文件格式具有更好的兼容性,这对IPTV平台的平滑升级来说,是一个完美的解决方案。
b) 流格式的兼容性
i. ISMA 1.0/1.1与ISMA 2.0
体系架构区别较大,升级困难,主要表现在以下几个方面:
? ISMA1.0视频基于MPEG-4 Part2,以SP和ASP为基础,并没有涉及到H.264, 而ISMA2.0则是基于H.264;
? ISMA2.0不兼容ISMA1.0,即ISMA1.0的servers和Clients不能平滑升级到ISMA2.0系统具体原因表现在:
? 视频RTP包的封装模式不兼容:ISMA1.0的视频RTP打包遵循“RFC3016: RTP Payload Format for MPEG-4 Audio/Visual Streams”,而ISMA2.0的视频RTP打包符合“RTP Payload Format for H.264 Video”(目前该RFC没有正式发布),加入了一些特有的限制和扩展,如不允许采用交织模式、不允许通过RTP包传输视频序列参数和帧图像参数等;
? SDP消息格式不兼容:由于ISMA1.0和ISMA2.0 视频RTP打包方式的不一样,导致SDP的消息承载格式和内容也不一样,如交织模式的定义参数不能在SDP消息中出现,有关视频序列参数和帧图像参数通过SDP传输、增加了一些特有的域等;
? 文件的存储方式不一致:ISMA1.0基于MPEG-4 Part14(*.MP4), 而ISMA2.0的文件格式基于MPEG-4 Part15(*.avc1),对ISMA1.0的文件格式进行了扩展,如H.264的参数存在文件中的AVCDecoderConfiguration等。
ii. H.264
目前H.264专业级编码器主要是以TS为主,而支持H.264的ISMA2.0刚出来,还没有支持。
3. 处理方法和性能
a) 处理方法
ISMA的处理方法是:从编码端到解码端的所有环节,均需建立多个音视频和其他数据流的RTP Session,因此在做Streaming Server的I/O时,需要管理多个输入输出,多个Buffer的管理以及它们之间的同步,将极大地增加Streaming Server的处理能力要求,也带来了较大的算法复杂性,同时降低了系统的稳定性和可*性。而TS则将多个音视频和其他数据流复用在一起,仅需建立一个RTP Session,因此在做I/O,Buffer管理和音视频同步等方面将会简单和容易得多。
b) 端口需求
在NAT和防火墙上,ISMA需要为音视频RTP分别分配端口,是TS流的两倍。
c) 性能
从上面的处理方法可以看出,用ISMA标准需要管理更多的RTP Session,要管理更多的I/O和Buffer,将极大的消耗Streaming Server和STB的CPU性能和内存,从而严重地影响系统的性能。根据Darwin系统及其实验,我们在一台高性能机器上,也只能跑较少的Stream并且会有掉线情况发生。若采用TS流,则会支持几百个2M以上的Stream并且不会掉线。
d) AV Sync
ISMA的AV Sync是依*RTP中的Time Stamp来实现,因此在同步时,需要等到音视频的RTP都到达后才能实现AV Sync。而TS流则不存在此问题,因为其时间信息都在一个流中。而且TS的AV Sync只需在编码和解码端实现,中间的其他环节,如流服务器等,不需要参与,可以降低Streaming Server的算法和处理复杂度。ISMA则相反,不光需要编解码器,同时需要Streaming Server参与AV Sync的处理,消耗了Streaming Server的资源,增加了算法复杂度和性能代价,并且降低了系统的可*性和稳定性。
e) 解码端
用ISMA对解码器的要求也比TS流更高。TS流的主要工作是在解复用上,即解复用器需要分析PSI信息,然后根据PSI信息获取音视频的PID,在通过PID滤波,得到视音频流,输出到各自的Buffer中。由于TS是固定的188字节包结构,因此PID在包中的位置固定,滤波很容易实现。根据我们的评估,采用软件TS流解复用的方法,在Equator BSP-15平台上,占用的CPU资源不足5%。而用ISMA时,由于多个RTP Session,因此需要有多个Buffer,并对其管理。所以采用ISMA时使用的Memory和CPU资源也更多。
4. 对直播的支持
a) 频道切换
若采用ISMA方式,在Live TV做频道切换,STB需要从系统中重新获取ISMA的文件头。因为STB解码时所需的很多信息在此文件头中。所以系统还必须还有一整套ISMA的文件头的生成和管理。同时还会造成解码频道切换的延迟。
在Live TV做频道切换时,STB还需要获取SDP以便得到解码所需要的一些具体参数。再加上传统的ISMA流中I帧间隔较长,一般多于4秒,从而造成STB的频道切换时间长,完全不能满足电信标准规定的2秒钟。
b) 直播参数的改变
在做Live TV时,如果编码器的参数被修改了之后,需要STB与编码器或Streaming Server重新建立RTSP Session,以获取新的SDP,然后才能从SDP中得到解码所需要的一些具体参数。而在TS流中,所有的解码参数均是伴随着码流一起下来的,因此不需要建立另外的Session,解码器反应速度会更快。
5. Trickmode和DRM
a) 在ISMA中,没有一个关于Trickmode的详细的定义,特别是在RTP中。因此各个厂家的Trickmode定义都不一样,导致没有一个统一的标准,标准也就失去意义。若采用TS流的方式,则我们可以在其extension中详细定义Trickmode的相关信息,可以定义该RTP是Trickmode还是正常播放,以及Trickmode的具体模式等。同时还可以通过扩展,定义丢包重传机制,保障用户的服务质量。
b) 在ISMA中,虽然定义了DRM采用AES的加密方法,但其DRM不具有扩展性。表现在:不支持多种DRM方法和加密标准,不支持对Key的管理。而TS则刚好解决了这一点,可以在RTP的extension中可以定义Key的管理方法和映射关系,以及不同的DRM方法和标准。使得系统在DRM方面具有广泛的兼容性。
6. 内容考虑
a) CP的支持
目前,大部分CP都是电视台、电影公司和广电公司,他们主要的片源都是采用MPEG-2 TS流封装格式。因此TS能更好的适应CP的主要现状和需求。
b) 专业编码器支持
目前全球的主要专业编码器如Tandberg,Harmonic等都支持TS流封装格式,只有少数厂家支持ISMA流格式。
7. 芯片支持
目前,所有的MPEG-4和H.264的解码芯片均支持TS。所以选择TS可以为STB提供更多的选择方案,利于降低STB的成本。
8. 家庭网络
a) STB要接入家庭网络,需要支持DLNA。而在DLNA中,MPEG-2及TS是必选标准。
b) 目前家庭网络中所有的摄像机和数码相机均支持MPEG-2 TS而不支持ISMA。
c) 目前家庭网络中所有的DVR,编辑设备均支持TS,而很少支持ISMA。
9. 传统数字电视的支持
a) 目前在广电领域,DVB全部是采用TS流封装格式。因此,若采用TS,可以做到与广电领域完全兼容,特别是在STB上的处理方式可以完全一致,增加了IPTV与DVB的兼容性,这样更有利于电信与广电的竞争。
b) 广电的趋势是今后支持H.264 (MPEG-4 AVC),并采用TS流封装格式。因此有利于我们平滑升级到H.264。则可以直接从卫星上接受信号并直接进入IPTV系统,不用转码。
c) TS是一个真正的开放性的标准,有利于实现真正的“三网合一”。
10. 媒体汇聚和交换
采用TS格式,利于媒体的交换和汇聚。IPTV网络的最终目标是发展为内容交换网络。显然,媒体文件过大,并不利于内容的交换。而TS每个包只有188个字节,格式固定,利于交换。同时,TS是媒体行业通用的标准,这样利于媒体的汇聚,可以支持我们从网络的不同节点获取内容,并汇聚成一个完整的内容。