如何将.ts文件转换为有用的文件?

我有一个以.ts结尾的文件,根据维基百科是一个MPEG2文件 。 我从来没有碰到这样的文件,所以我希望它希望文件在更常见的格式/容器中用于多个设备。

.TS文件在技术上只是MPEG2文件。 您可以使用几乎任何转换器(avidemux,handbrake甚至直接ffmpeg)。

但这样做的唯一原因是文件大小。 Mpeg2文件几乎无处不在。 唯一令人困惑的部分是实际的文件扩展名。

您可以安全,自由地将它们重命名为.mpeg

PS。 通过将其转换为Matroska,您刚刚制作的其他系统上的人很难能够播放该文件。 我理解选择一个免费的编解码器,然后选择适当的容器,但如果你把它保存在MPEG2,为什么要将容器更改为相对模糊的东西?

我倾向于建议将文件保留为原始状态,因为任何转换都有可能引入丢失。 .tsvideo格式是MPEG的容器格式,称为“传输流”,最常用于数字广播系统(数字有线电视,卫星电视等)。 许多应用程序不熟悉如何解码它,因为它具有非常不同的多路复用格式,而不是传统的MPEG容器,称为“节目流”,这是DVD上使用的,以及许多编码器卡产生的内容。 TS和PS之间的区别仅在于如何构建数据包结构; 里面的A / V数据是一样的。

为了获得更好的互操作性,我建议将容器从TS转换为PS。 事实上,每一块可以解码TS的软件都可以解码PS,因此拥有PS文件几乎总是更好。 我发现使用的最简单的重新混合工具之一是avidemux 。 只需为video和音频流选择“复制”,然后为MPEG选择“PS”容器格式:

Avidemux的

然后保存结果。 这也可以使用ffmpeg完成。 您只需为每种流类型选择复制编解码器:

 ffmpeg -i input.ts -vcodec copy -acodec copy output.mpg 

从查看这个论坛post我可以把它变成一个matroska文件,我已经使用过了。

  ffmpeg -i input.ts -vcodec copy -sameq -acodec copy -f matroska output.ts 

我能够对此进行编码,尽管这些信息似乎表明我需要从源代码编译ffmpeg。 这样做的缺点是它不对文件进行编码,因此文件与MPEG2文件一样​​大。 关于编码.ts-> MPEG4的建议的更多答案将帮助我。

实际上.ts文件是由能够记录转发器流的DVB-S / DVB-S2调谐器创建的,可以包含mpg2 AC3 AAC h264 mp3,以及其他数据,如图文电视或EPG。 .ts文件在大多数情况下只包含AV数据,但不限于此。 VLC可以直接播放ts文件,并为您提供有关其中某些流的信息。 我个人使用一个sat调谐器,以.ts文件(h264video和大多数情况下多个AAC mp3 mpg2音频流)录制高清频道。 所以基本上.ts文件可以包含许多不同的东西它只是容器格式,用于通过loosy媒体发送数字广播。 VLC也可以转换格式(hevent自己完成)

我通常使用HandBrake将所有类型的video文件转换为iPhone兼容格式。 也许您可以使用它将.ts文件转换为MP4。 检查此HandBrake PPA以进行安装。

DVB-S录像机生成的TransportStream文件的处理取决于所包含的video和音频流。 对于SD质量的材料,您可以使用由ProjectX和mplex组成的工具链将流转换为标准MPEG容器。 如果video流是HD,请尝试MKVMerge将其转换为MKV文件。 这篇博客文章详细描述了这两种方式。

ffmpeg程序已被弃用,转而支持avconv

您可以将相同的参数传递给avconv以便从传输流转换为程序流mpeg或matroska。

MPEG:

avconv -i input.ts -acodec copy -vcodec copy output.mpg

Matroska的:

avconv -i input.ts -acodec copy -vcodec copy output.mkv