Skip to content
Server-sideDeleted in 30 minutes

Convert TS to MP4

Convert a recorded transport stream into an MP4 that plays and seeks properly. A `.ts` file is what a DVR, a TV tuner or a stream downloader produces, and it was designed for broadcasting rather than for storage — which is why players often refuse it, and why the ones that accept it frequently cannot scrub to the middle.

Use this without the search next time. Prathom Workbench puts Prathom's tools in your toolbar.

Add to Chrome — free
TSMP4

Drop your TS file here, or click to browse

Up to 50 MB. Deleted automatically after 30 minutes.

What it does

  • Re-encoded to H.264 video and AAC audio
  • Seeking works properly afterwards
  • Plays on phones, browsers and smart TVs
  • No watermark and no sign-up

How to use TS to MP4

  1. 1

    Add the TS

    Drop the file in or choose it from your computer. Recordings are large, so a long one may need trimming first.

  2. 2

    Convert

    The video is re-encoded to H.264 and the audio to AAC inside an MP4 container.

  3. 3

    Play and seek it

    The MP4 opens anywhere and scrubs to any point, which the transport stream frequently would not.

A format built for the air, not for a disk

MPEG-TS was designed for digital broadcasting, and every one of its odd properties follows from that. A television receiver has to be able to tune in halfway through a program, so the stream repeats its structure constantly. The signal may be interrupted, so the format tolerates damage and simply carries on. Everything is chopped into fixed 188-byte packets, which is what makes it robust and what makes it inefficient.

None of that is useful once the recording is on a hard drive, and two of its consequences are actively annoying.

Seeking, which is the one people notice

A transport stream has no index. There is nothing in the file that says where a given moment lives, because a broadcast has no beginning to measure from.

So a player asked to jump to twenty minutes in has to read forward until it gets there, and many simply refuse. An MP4 carries a table of exactly this, which is why the converted file scrubs instantly.

How it works

The video is decoded and re-encoded to H.264, and the audio to AAC, inside an MP4 container.

A copy would be faster and is not offered, deliberately. The picture in a modern .ts is often already H.264 and could in theory be moved across untouched — but broadcast recordings change resolution partway through when the channel does, contain gaps where the signal dropped, and carry timestamps that restart. Copying those straight into an MP4 produces a file that frequently plays for a minute and stops. Re-encoding turns all of it into one continuous, seekable file, and that reliability is worth the quality it costs.

Expect it to get smaller

Transport streams are wasteful by design: the timing and structural information is repeated over and over so a receiver can join at any instant. On a disk that is pure overhead.

A converted MP4 of the same footage is usually noticeably smaller, which for a DVR archive of any size is a second and quite practical reason to do this.

Trim before you upload a long recording

DVR captures are frequently hours long and transport streams are wasteful, so an evening's recording can be several gigabytes against a 50 MB upload limit.

Cutting the part you want first is quick and, done properly, free — ffmpeg and VLC will both split a transport stream by timecode without re-encoding anything. Convert the piece you actually intend to keep rather than the whole capture.

Examples

A recording from a TV tuner or DVR

recording.ts
recording.mp4

Tuner cards and set-top boxes write transport streams. Most media players and every phone want an MP4.

A stream saved for offline viewing

stream.ts
stream.mp4

Stream downloaders produce .ts because that is what was being broadcast. The saved file plays badly until it is converted.

Frequently asked questions

Why does seeking not work on a .ts file?

Because a transport stream has no index. It was designed to be broadcast — a receiver tunes in partway through and starts decoding from the next key frame, so the format carries no map of where anything is. An MP4 stores that map, which is what lets a player jump to a timestamp instead of reading forward from the beginning.

Why is it called a transport stream?

Because it transports. MPEG-TS was built for digital television, where the signal has to survive interference and a receiver may join at any moment. It packages everything into small fixed-size packets with the timing repeated constantly, which is exactly right over the air and wasteful on a hard drive.

Can this be done without re-encoding?

Sometimes, and not reliably enough to offer. The picture inside a modern .ts is often already H.264 and could in principle be copied into an MP4 — but broadcast streams routinely change resolution mid-recording, carry gaps where the signal dropped, and use timestamps that restart. A re-encode produces one continuous file from all of that; a copy frequently produces something that plays for ninety seconds.

The file is enormous — is that normal?

Yes. Transport streams repeat their timing and structural information constantly so a receiver can start anywhere, and broadcast encoding is not optimized for storage. The MP4 is usually substantially smaller for the same footage, which is a second reason to convert a recording you intend to keep.