当前位置: 首页>>技术教程>>正文


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

, ,

问题描述

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

最佳解决思路

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

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

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

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

次佳解决思路

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

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

video,format-conversion,ubuntu

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

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

第三种解决思路

从查看这个forums thread我可以把它变成一个我已经使用的matroska文件。

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

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

第四种思路

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

参考资料

本文由Ubuntu问答整理, 博文地址: https://ubuntuqa.com/article/1816.html,未经允许,请勿转载。