当前位置:首页 > 编程开发

MPEG2-TS流文件的简介

webgou16年前 (2010-10-21)编程开发176

 随着从HDTV录制的高清节目在网上的流传,烧友们现在对TS这个名词大概已经不陌生了,但随之而来就是如何播放、如何添加字幕等等的一系列问题,本文将重点介绍一下这方面的应用操作。

先来简要介绍一下什么是MPEG2-TS吧。MPEG2格式大家都通过对DVD的接触而多多少少了解了一些,DVD节目中的MPEG2格式,确切地说是 MPEG2-PS,全称是Program Stream,而TS的全称则是Transport Stream。MPEG2-PS主要应用于存储的具有固定时长的节目,如DVD电影,而MPEG-TS则主要应用于实时传送的节目,比如实时广播的电视节 目。这两种格式的主要区别是什么呢?简单地打个比喻说,你将DVD上的VOB文件的前面一截cut掉(或者干脆就是数据损坏),那么就会导致整个文件无法 解码了,而电视节目是你任何时候打开电视机都能解码(收看)的,所以,MPEG2-TS格式的特点就是要求从视频流的任一片段开始都是可以独立解码的。
【MPEG2-TS流文件的简单回放】

有一些播放器软件可以直接播放MPEG2-TS流,比如:
=> 1.WinDVD 5.x
=> 2.VLC Media Player
=> 3.Elecard Player
等等。

播放前,先将TS流文件的后缀名改为 .mpg,以便播放器可以识别它是一个MPEG文件,否则一些"以貌取人"的播放器可能会拒绝提供服务。
修改了后缀名后,直接用播放器打开文件播放即可。

但是需要通过VOBSub外挂字幕的朋友,可能很快就会发现,在WinDVD里无法对MPEG文件加载字幕,这是因为WinDVD在对MPEG文件解码 的时候,用了内部的解码流程,而没有按照微软的DirectShow标准去搭建解码框架,这样自然就无法触发VOBSub这些基于DirectShow标 准的外挂控件了。这些问题将在"MPEG2-TS流文件的高级回放篇"里进一步解决。



【MPEG2-TS流文件的高级回放】

此篇主要介绍MPEG2-TS回放的DIY方法,此方法已经验证此前网上下载的若干韩国、***HDTV片段以及HBO HD-Movie等TS文件。

你需要如下的一些软件:

1.一个支持MPEG2-TS格式的分离器(Splitter Filter)。
分离器的功能就是识别文件真正的格式,将其中的视频流数据、音频流数据分离出来,并发送给相应的解码器。
微软的DirectX里已经提供了此类的分离器,但是兼容性不好,而且甚至在DirectX9以及XP里的DirectX8中就取消了对TS流的支持。
我向大家推荐的是Elecard Player中的分离器,可以通过安装Elecard Player获得。我已经从里面提取出来上载到这里了,大家下载后自行注册一下该分离器控件即可(不是软件注册)。

2.一个MPEG2视频解码器和AC3音频解码器,可以通过安装WinDVD、CinePlayer等软件获得。
AC3解码器,我则推荐使用网上比较流行的由俄国人编写的一个开放源代码的免费控件,可以
http://www.shooter.com.cn/?softid=ac3filterGPL2下载。

3.一个基于DirectShow架构的播放器,比如微软自带的Media Player(媒体播放器)、ZoomPlayer等等。

4.VOBSub字幕外挂控件。
这个大家也很熟悉了,就不多说了。不熟悉的朋友可以
http://vod.sjtu.edu.cn/vod/software/vodsub/vobsub.htm看看相关教程。

5.字幕文件
没有字幕文件,等于巧妇难为无米之炊嘛,去射手网搜索下载吧。注意,字幕文件都是按照某个版本的Rip文件就行分割的,未必就能找到与你的TS文件完全吻合的,可能需要自行进行调整时间延迟、合并、分割等工作。

对于很多朋友来说,MPEG2解码器/AC3解码器、播放器、VOBSub这些都是现成的,所以只要安装一个分离器控件,就可以让大多数的播放器来播放TS流文件了(记得改后缀名为.mpg)。

几点注意事项:
1.WinDVD是不能支持MPEG格式的VOBSub外挂的,不过不用失望,使用微软MediaPlayer、ZoomPlayer这些播放器都会用 到WinDVD的视频解码控件(除非你同时安装了几个MPEG2解码控件,那么DirectX可能会自行选择一个注册级别最高的或者是最后安装的,可以通 过VOBSub的Filter菜单里看到当前所用的解码控件)
2.高清节目尤其是1080线的画面外挂字幕会很明显地耗费CPU。
3.DirectX最好是8.1以上的,显卡驱动也最好是官方最新的而不是微软自带的。

【MPEG2-TS流文件的合并、切割与转换】

为了网络下载方便或者刻录存储,需要对MPEG2-TS流进行合并/切割,比如《角斗士》的1080i版被切割成了三个4G左右的文件,想必就是为了用DVD刻录盘存储而做的切割。
进行此类的工作没有什么技巧可言,纯粹的体力活,主要是依靠相应的工具。
此篇主要介绍的是一个小巧的MPEG-TS工具:HDTV2MPEG2,目前的我见到的最新版本是V1.10(还有一个V1.10b,不知道是beta版还是第二版)
HDTV to MPEG2下载地址:
=>V1.10b
http://www.64k.it/andres/hdtvtompeg2_v110b.zip
=>V1.10
http://www.cornbread.org/HT/hdtvtompeg2_v110.zip
=>V1.09beta
http://www.avsforum.com/avs-vb/atta...&;postid=1408610
其中V1.09beta的兼容性似乎最好,比如韩国的HDTV片段jewelry1.tp用V1.10的版本来转换就有问题,而V1.09beta则正常。具体哪个版本更好,我没有更多地比较过,大家还是实践出真知吧。
使用方法很简单,看看下面的图解就明白了,look…

将MPEG2-TS转换为MPEG2-PS后,就可以再进行其他的如WMV/RM/DivX之类的转换处理了,此处按下不表。

如果想使用更高级一些的工具,可以考虑M2-Edit等专业一些的非线编工具,将获得更多更强大的转换和处理功能。

来源: http://blog.21ic.com/user1/2216/archives/2006/20863.html

扫描二维码推送至手机访问。

版权声明:本文由知了博客发布,如需转载请注明出处。

本文链接:https://www.webgou.info/?id=370

标签: MPEG2-TS
分享给朋友:

“ MPEG2-TS流文件的简介” 的相关文章

个人学习思考(由github建网)

从事软件开发,实践非常重要。 最近在学习github建立个人page,引发了对学习新的东西的一种思考。个人对于接触新的东西往往会不知所措,而时心里会大乱阵脚。先来分析下学习github整个过程: 1。明确学习东西,达到的目的。github建个人网页,可以跳转域名。 2。确定学习细节,一个个攻破。…

flash lite 3 的构架图

flash lite 3 的构架图…

Android类库常用类型解析

在Android类库中,各种包写成android.*的方式,重要包的描述如下所示:android.app :提供高层的程序模型、提供基本的运行环境android.content 包含各种的对设备上的数据进行访问和发布的类android.database :通过内容提供者浏览和操作数据库android…

解读抽象的力量——记图灵奖得主Barbara Liskov演讲

2009年,我在图灵奖获奖仪式上要做一个讲话,在我想这个演讲怎么讲的时候,我就决定把我看过的论文再重新看一看,就是说我达到获得图灵奖的成就的那些最初的想法是什么,今天我非常想与大家分享这个。 我在斯坦福大学拿到了博士学位,当时学的是人工智能,我在读博士读到一半的时候,决定放弃人工智能转而研究计算机系…

用ultraedit实现编码转换

BOM这里涉及到一个BOM(Byte Order Mark) 的概念.简单的讲,在Unicode标准中,为了标示文本文件的编码类型,可以在文本文件的开始插入几个特殊的byte,通过这几个特殊的byte,应用 程序就可以鉴别文本文件使用的是那种编码了.那几个特殊的byte也被称之为BOM(参考:ht…

VC++动态链接库(DLL)编程深入浅出(三)(上)

第4节我们对非MFC DLL进行了介绍,这一节将详细地讲述MFC规则DLL的创建与使用技巧。 另外,自从本文开始连载后,收到了一些读者的e-mail。有的读者提出了一些问题,笔者将在本文的最后一次连载中选取其中的典型问题进行解 答。由于时间的关系,对于读者朋友的来信,笔者暂时不能一一回复,还望海涵…

评论列表

webgou
webgou

敏捷开发模式需要经验丰富、配合良好而又异常稳定的项目组、积极而富有成效的沟通、良好的管理手段和流程、有效的工具与平台,只有满足这些条件敏捷开发模式才能带来收益。如果有了这些条件,用其它方法也能成功。

发表评论

访客

看不清,换一张

◎欢迎参与讨论,请在这里发表您的看法和观点。