What the GIFvideo → gif, the way creatives need it
ts to gif

TS to GIF, from broadcast stream to shareable loop

MPEG-TS was engineered to survive static-filled airwaves, not to be double-clicked. If a DVR, tuner, or capture tool left you a .ts file, here's the browser-only way to loop the good part.

Drop a video, get a GIF free · frame-perfect · nothing leaves your browser Open the converter →

Turn a .ts recording into a GIF

What the GIF does the whole thing locally, right in your browser: nothing here ever leaves your machine.

  1. Open the tool; that's the whole setup. Load the converter in whatever browser you have. Setup ends when the page renders; there's no installer and no download step.
  2. Drop the transport stream in. Drag the .ts onto the page. A playing preview means the codec is handled; a black one means a quick VLC re-save to MP4, then back here with the copy.
  3. Carve out one beat. The show is forty minutes; the GIF is three seconds. Bracket the moment with the handles and finish with single-frame arrow-key nudges.
  4. Downsize for the destination. Set the width near 480 to 640 pixels, keep 16:9 or crop square, and choose 10 to 15 fps depending on how fast the action moves.
  5. Thin the palette and export. Bring colors to 64 to 128, confirm the estimated size fits, and convert. The GIF downloads from your own tab, unmarked.

A format built for antennas

The MPEG transport stream was standardized in the mid-1990s for digital broadcast, and every design choice says so. Video gets sliced into 188-byte packets so a television can tune in mid-stream and shrug off signal dropouts; there's no index to corrupt and no header that has to arrive first. That resilience is why a truncated .ts still plays where other formats would be a brick, and why DVRs, set-top boxes, tuner cards, and crash-wary capture tools all favor it: a crash mid-recording costs a few packets, not the whole file. HLS streaming borrowed the same packets, so .ts segments also fall out of stream-recording tools.

What's inside is rarely exotic, usually garden-variety H.264; the wrapping is the strange part. But the wrapping alone makes plenty of desktop software refuse the file, and the classic advice, install an encoder suite for one clip, is wildly out of proportion. This converter hands the stream to the browser's decoder instead. If the tab plays it, the moment you want becomes a GIF, and nothing gets installed or signed up for along the way.

Loading a .ts, and the escape hatch

Head to the converter and drag the file in, or pick it from disk. You get a playable preview with a trim timeline, and no email gate stands in front of any of it. The file stays put; the page just reads it where it lives.

Fair warning for this format specifically: browsers are inconsistent about raw transport streams. A preview that plays means every control works. A preview that stays black means that particular stream defeated the browser's decoder, and the quick fix is one trip through VLC: open the .ts, save it as MP4, and drop that copy in. The MKV page lives with the same reality: friendly wrapper in, clean GIF out.

Broadcast recordings are long; loops are not

A DVR capture runs a full program plus padding on both ends. A GIF wants one beat: the goal, the line, the reveal. Bracket that beat with the trim handles, then move the cut in single-frame steps using the arrow keys so the repeat doesn't stutter where it joins. If the beat is a spoken line, cut on the gesture rather than the words; loops read body language better than lips.

Cutting time is also the biggest size lever you have. Every second removed is a pile of frames that never get encoded at all, and at broadcast resolutions that pile is tall. Get the trim right and the remaining settings become fine-tuning rather than triage.

Fitting broadcast-sized frames into a chat window

Off-air recordings usually arrive at 720p or 1080p, and a GIF wants a fraction of that. Dial the output down to fit:

The estimated output size follows along as you adjust. Under about 2 MB suits chat; a slide can absorb 5 MB. Broadcast material is mostly gentle motion, so the low end of each range usually holds up fine. The small-file playbook goes further if your ceiling is strict.

Your recording stays yours

DVR content is personal viewing, and often somebody's copyright, so it's worth saying exactly where it goes: nowhere. The stream is decoded in the tab, the GIF is assembled on your machine, and no server touches either. There's no watermark on the export, and the page continues to work even without a connection once it's open. The no-upload page covers the design in detail, if you want the argument spelled out. When the preview loops right and the estimate fits, hit convert; the download lands like any other file you saved yourself.

One broadcast moment, ready to loop.

Cut the .ts down to the seconds worth keeping and download the GIF straight out of the tab.

Open the converter

Questions, answered

What exactly is a .ts file?
An MPEG transport stream: video chopped into small self-contained packets so broadcast receivers can join mid-stream and survive interference. DVRs, set-top boxes, tuner cards, and HLS streaming all use it. The video inside is usually plain H.264; the packaging is what confuses desktop software.
The preview won't play my .ts. What's the fix?
Browser support for raw transport streams is genuinely spotty, so this happens. Open the file in VLC, export an MP4 from it, and convert that instead. Once the wrapping is browser-friendly, everything on the page works normally.
Does the recording ever leave my computer?
No. Decoding and GIF encoding both happen inside the tab on your own hardware. Nothing is transmitted or stored elsewhere, and the converter keeps working offline once the page is up.
Do I need to install anything?
Not on the normal path; this is a website, not software. The single exception is the fallback case, where VLC (free) re-saves a stream your browser can't decode.
How small can a GIF from a DVR clip get?
Small enough for any chat app, if you cut hard: a three-second beat at 480 pixels wide, 10 to 15 fps, and 64 to 128 colors routinely lands under 2 MB. The estimate updates as you tighten each dial.