简单介绍编辑

随着从HDTV录制的高清节目在网上的流传,烧友们对TS这个名词大概已经不陌生了。但随之而来就是怎样播放、怎样加入字幕等等的一系列问题。本文将重点介绍一下这方面的应用操作。
先来简要介绍一下什么是MPEG2-TS吧。MPEG2格式大家都通过对DVD的接触而多少了解了一些,DVD节目中的MPEG2格式,确切地说是MPEG2-PS。简单地打个比喻说,你将DVD上的VOB文件的前面一截cut掉(或者干脆就是数据损坏),那么就会导致整个文件无法解码了。

2概述编辑

DVD节目中的MPEG2格式,是MPEG2-PS,全称是Program Stream。TS的全称则是Transport Stream。

MPEG2-PS主要应用于存储的具有固定时长的节目。如DVD电影,而MPEG-TS则主要应用于实时传送的节目。比方实时广播的电视节目。

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

3简单回放编辑

有一些播放器软件能够直接播放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流文件的高级回放篇"里进一步解决。

4高级回放编辑

说明

此篇主要介绍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解码器。我则推荐使用网上比較流行的由俄国人编写的一个开放源码的免费控件。
3.一个基于DirectShow架构的播放器,比方微软自带的Media Player(媒体播放器)、ZoomPlayer等等。

4.VOBSub字幕外挂控件。

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以上的,显卡驱动也最好是官方最新的而不是微软自带的。
TELESYNC (TS) -
A telesync is the same spec as a CAM except it uses an external audio source (most likely an audio jack in the chair for hard of hearing people). A direct audio source does not ensure a good quality audio source, as a lot of background noise can interfere. A lot of the times a telesync is filmed in an empty cinema or from the projection booth with a professional camera, giving a better picture quality. Quality ranges drastically, check the sample before downloading the full release. A high percentage of Telesyncs are CAMs that have been mislabeled.
除了使用外置的音源(通常是影院座椅上为听力不好的人设的耳机孔)。TELESYSNC(TS) 和CAM的标准是同样的。

这个直接的音源并不能保证是好的音源,这是它由于受到非常多背景噪音的干扰。非常多时候TS是在空的影院录制,或是用专业摄像机在投影室录制,所以图象质量可能比CAM好。

质量的起伏可能非常大,在下载前最好查看SAMPLE。

一个非常大的比例TS从CAM错误标记。

版权声明:本文博客原创文章,博客,未经同意,不得转载。

TS流文件的更多相关文章

  1. (原)关于MEPG-2中的TS流数据格式学习

    关于MEPG-2中的TS流数据格式学习 Author:lihaiping1603 原创:http://www.cnblogs.com/lihaiping/p/8572997.html 本文主要记录了, ...

  2. 批量下载ts视频文件

    第一步 使用chrome 按F12进入开发模式,拖动视频进度条到视频结束: 然后找到.m3u8以结尾的文件并保存为文本文件. 第二步 点开查看里面是否存在如下以ts结尾的文件内容 ...... /20 ...

  3. go http 下载视频(TS码流文件)(推荐一个网站学习 go example)

    视频  http下载代码 dn.go(注意:代码很ugly,没怎么花时间) 总体感觉特别简单,网上看了下 net/http ,io这2个库的使用, 几分钟就写完了,感觉cpp 在做工具这块 开发效率的 ...

  4. TS流格式(转)

    一 从TS流开始 数字电视机顶盒接收到的是一段段的码流,我们称之为TS(Transport Stream,传输流),每个TS流都携带一些信息,如Video.Audio以及我们需要学习的PAT.PMT等 ...

  5. TS流PAT/PMT详解

    一 从TS流开始 从MPEG-2到DVB,看着看着突然就出现了一大堆表格,什么PAT.PMT.CAT……如此多的表该怎样深入了解呢? 我们知道,数字电视机顶盒接收到的是一段段的码流,我们称之为TS(T ...

  6. 自己动手写RTP服务器——用RTP协议传输TS流

    上一篇文章我们介绍了关于RTP协议的知识,那么我们现在就自己写一个简单的传输TS流媒体的RTP服务器吧. 预备知识 关于TS流的格式:TS流封装的具体格式请参考文档ISO/IEC 13818-1.这里 ...

  7. pdf流文件的展示、下载、打印;html转为pdf

    背景:合同(后台返回pdf流文件)展示.下载.打印,基于angular4 场景区分: 1.checkout页面 —— post接口,入参为offering.shippingInfo.invoice等( ...

  8. FFMPEG中关于ts流的时长估计的实现(转)

    最近在做H.265 编码,原本只是做编码器的实现,但客户项目涉及到ts的封装,搞得我不得不配合了解点ts方面的东西.下面技术文档不错,转一下. ts流中的时间估计 我们知道ts流中是没有时间信息的,我 ...

  9. [视频播放] HLS协议之M3U8、TS流详解

    本文转载自:<hls之m3u8.ts流格式详解> HLS,Http Live Streaming 是由Apple公司定义的用于实时流传输的协议,HLS基于HTTP协议实现,传输内容包括两部 ...

随机推荐

  1. DapperLambda发布

    DapperLambda发布 引言:因为接触过多个ORM,但使用的时候都遇到了各自的一些不够理想的地方,从最早开始开始公司自己分装的,到后面用EF,以及Dapper和DapperExtensions ...

  2. JNI 可变印刷

    1.包log.h #ifndef __MULTI_TRACE_H__ #define __MULTI_TRACE_H__ #ifdef ANDROID_NDK_BUILD #define LOG_TA ...

  3. Unity3D 表对象分类中的实现(C#)

    // Sort by distance in descending order private void SortTargetsByDistance () { targets.Sort(delegat ...

  4. IIS使用 URL Rewrite Module 2.0组件 设置伪静态的方法

    简体中文版WIn10无法安装,需要改注册表, HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\InetStp  MajorVersion 项,这个也是 dword 值 10 ...

  5. Palindromes&nbsp;_easy&nbsp;version

    Time Limit: 1Sec  MemoryLimit: 64 MB Submit:165  Solved: 76 [Submit][Status][WebBoard] Description & ...

  6. C# 读取IE缓存文件(2)

    private void button1_Click(object sender, EventArgs e) { , nBufSize; IntPtr buf; INTERNET_CACHE_ENTR ...

  7. IDF - CTF - 牛刀小试

    找学校CTF好地方,IDF实验室CTF训练营(http://ctf.idf.cn/). . 刚接触CTF.来玩下牛刀小试.AK了. . 好爽好爽.. 1.摩斯password 嘀嗒嘀嗒嘀嗒嘀嗒 时针它 ...

  8. Struts1.X与Spring集成——第一种方案

    spring+struts(第一种方案) 集成原理:在Action中取得BeanFactory,通过BeanFactory取得业务逻辑对象,调用业务逻辑方法. 一,新建一个项目Spring_Strut ...

  9. Python 获取Twitter用户与Friends和Followers的关系(eg, 交集,差集)

    CODE: #!/usr/bin/python # -*- coding: utf-8 -*- ''' Created on 2014-7-30 @author: guaguastd @name: f ...

  10. TempDB 中表变量和局部临时表的对比

    原文:TempDB 中表变量和局部临时表的对比 参考资料来源: http://blogs.msdn.com/b/sqlserverstorageengine/archive/tags/tempdb/ ...