How do I convert .ts files into something useful?

I tend to recommend leaving files in their original state, as any conversion has a chance to introduce loss. The .ts video format is a container format for MPEG, known as "Transport Stream", which is used most frequently by digital broadcasting systems (digital cable, satellite, etc). Many applications are unfamiliar with how to decode it, since it has a very different multiplexing format than the more conventional MPEG container known as "Program Stream", which is what is used on DVDs, and what is produced by many encoder cards. The difference between TS and PS is only how the packet structure is built; the A/V data inside it is the same.

To get better interoperability, I recommend converting the container from TS to PS. Virtually every piece of software that can decode TS can decode PS, so it's almost always better to have PS file. One of the simplest remuxing tools I've found to use is avidemux. Just choose "copy" for the video and audio streams, and choose the "PS" container format for MPEG:

avidemux

Then just save out the result. This can also be done using ffmpeg. You just need to select the copy codec for each stream type:

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

.TS files are technically just MPEG2 files. You can use pretty much any converter (avidemux, handbrake or even ffmpeg directly).

But the only reason to do so would be filesize. Mpeg2 files play pretty much everywhere. The only confusing part is the actual file-extension.

You can safely and freely rename them to .mpeg

PS. By turning it into Matroska, you just made is very hard for people on other systems to be able to play the file. I understand picking a free codec, and then choosing the appropiate container, but if you keep it at MPEG2, why change the container to something relatively obscure?


From looking at this forums thread I can make it into a matroska file, which I already use.

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

I was able to encode this despite this information the seems to indicate that I needed to compile ffmpeg from source. The downside to this is that it doesn't encode the file, so the file is as large as the MPEG2 file. More answers with recommendations for encoding .ts->MPEG4 would help me out.