Convert TS to MP4
Max file size 100mb.
TS vs MP4 Format Comparison
| Aspect | TS (Source Format) | MP4 (Target Format) |
|---|---|---|
| Format Overview |
TS
MPEG Transport Stream
A streaming-oriented container format designed for broadcast television, cable systems, and live transmission where data loss is expected. Transport Stream uses fixed-length 188-byte packets with error correction, making it resilient to transmission errors. TS supports multiplexing multiple programs and is the foundation of HLS adaptive bitrate streaming and Blu-ray disc storage (M2TS). Standard Lossy |
MP4
MPEG-4 Part 14
The most widely used video container format, standardized as ISO/IEC 14496-14. MP4 wraps H.264/H.265 video and AAC audio into a streamable container optimized for web delivery, mobile playback, and broadcast. Its universal device support — from smartphones to smart TVs to web browsers — makes it the default choice for video distribution across all platforms and devices. Standard Lossy |
| Technical Specifications |
Container: MPEG-2 Transport Stream (ISO/IEC 13818-1)
Video Codecs: MPEG-2, H.264/AVC, H.265/HEVC Audio Codecs: MPEG-1 Layer II (MP2), AAC, AC-3, DTS Max Resolution: Up to 8K (H.265 in ATSC 3.0) Extensions: .ts, .mts, .m2ts, .tsv |
Container: MPEG-4 Part 14 (ISO base media file format)
Video Codecs: H.264, H.265/HEVC, AV1, MPEG-4 ASP Audio Codecs: AAC, MP3, AC-3, E-AC-3 Max Resolution: Up to 8K (7680×4320) Extensions: .mp4, .m4v, .m4a |
| Video Features |
|
|
| Processing & Tools |
TS encoding and broadcast operations with FFmpeg: # Encode to MPEG Transport Stream ffmpeg -i input.mp4 -c:v libx264 -c:a aac \ -f mpegts output.ts # Create HLS segments from TS ffmpeg -i input.ts -c copy -hls_time 10 \ -hls_list_size 0 output.m3u8 |
MP4 encoding and web optimization with FFmpeg: # Convert TS to MP4 (lossless remux if H.264) ffmpeg -i input.ts -c copy \ -movflags +faststart output.mp4 # Re-encode MPEG-2 TS to H.264 MP4 ffmpeg -i input.ts -c:v libx264 -crf 23 \ -c:a aac -b:a 192k -movflags +faststart output.mp4 |
| Advantages |
|
|
| Disadvantages |
|
|
| Common Uses |
|
|
| Best For |
|
|
| Version History |
Introduced: 1995 (ISO/IEC 13818-1, MPEG-2 Systems)
Current Version: MPEG-2 Systems Amendment 4 (2018) Status: Active standard for broadcast, Blu-ray, and HLS Evolution: MPEG-2 TS (1995) → DVB/ATSC (1998) → Blu-ray/M2TS (2006) → HLS segments (2009) → ATSC 3.0 (2019) |
Introduced: 2001 (ISO/IEC 14496-14)
Current Version: MP4 (2003), CMAF (2018) Status: Universal standard, actively maintained Evolution: QuickTime (1991) → MPEG-4 Part 14 (2003) → CMAF (2018) |
| Software Support |
Media Players: VLC, mpv, PotPlayer, Kodi
Web Browsers: Via HLS.js (as HLS segments) Video Editors: Adobe Premiere Pro, DaVinci Resolve, Kdenlive Mobile: Android/iOS (via HLS streaming players) CLI Tools: FFmpeg, tstools, DVBInspector, MediaInfo |
Media Players: VLC, mpv, Windows Media Player, QuickTime
Web Browsers: All browsers (H.264/H.265 100% support) Video Editors: Premiere Pro, DaVinci Resolve, Final Cut Pro Mobile: iOS, Android — native playback CLI Tools: FFmpeg, HandBrake, MP4Box, Bento4 |
Why Convert TS to MP4?
Converting TS to MP4 is the single most common video container conversion, and for good reason. MPEG Transport Stream files are designed for broadcast reliability, not consumer convenience. Their 188-byte packet structure, program tables, and error correction overhead make them bulky and poorly supported by consumer devices and web platforms. MP4 strips away all broadcast-specific overhead and wraps the video and audio in the universally compatible MPEG-4 container that plays on every device, browser, and platform in existence.
The best part of TS-to-MP4 conversion is that it is often lossless. When the TS file uses H.264 video and AAC audio — which is common for modern broadcast recordings and HLS segments — the streams can be remuxed directly into the MP4 container without re-encoding. This means zero quality loss, near-instant conversion speed, and a smaller output file (typically 2-5% smaller due to removed TS overhead). The -movflags +faststart flag moves the MP4 metadata to the front of the file for instant web playback.
For MPEG-2 TS recordings from older broadcasts, DVB captures, or DVDs, re-encoding to H.264 or H.265 is required. This produces dramatically smaller files — a 2 GB MPEG-2 TS recording might compress to 400-600 MB as H.264 MP4 at equivalent visual quality. The smaller files are easier to store, faster to upload, and compatible with social media platforms (YouTube, Facebook, Instagram) that require MP4 format.
TS-to-MP4 is also essential for HLS workflow cleanup. HLS streaming uses TS segments (.ts files) that are typically 6-10 seconds each. After a live stream ends, these segments can be concatenated and remuxed into a single MP4 file for VOD delivery. This is how platforms like YouTube and Twitch convert live streams into on-demand videos — the TS segments from the live feed become a single MP4 recording.
Key Benefits of Converting TS to MP4:
- Universal Playback: Plays on every device, browser, and platform without codecs
- Lossless Remux: H.264 TS files convert to MP4 without quality loss
- Smaller Files: Remove broadcast overhead for 2-5% size reduction
- Web Ready: Faststart metadata enables instant web streaming
- Social Media: Required format for YouTube, Facebook, Instagram uploads
- Mobile Native: Hardware-accelerated playback on iOS and Android
- HLS Cleanup: Consolidate streaming segments into a single file
Practical Examples
Example 1: DVR Recording for Social Media
Scenario: A content creator recorded a live broadcast segment via HDHomeRun DVR as a TS file and wants to clip and upload highlights to YouTube and Instagram.
Source: broadcast_cooking_show.ts (4.2 GB, 1920x1080, H.264, AC-3 5.1) Conversion: TS → MP4 (remux + audio conversion) Result: broadcast_cooking_show.mp4 (3.9 GB, 1920x1080, H.264, AAC) Social media workflow: 1. Remux H.264 video (lossless, no re-encoding) 2. Convert AC-3 audio to AAC stereo 192 kbps 3. Add faststart flag for web streaming 4. Cut 60-second highlight clips for Instagram 5. Upload full episode to YouTube ✓ Zero video quality loss — bit-identical H.264 ✓ YouTube processes MP4 uploads 3x faster than TS ✓ Instagram Reels accepts 1080p MP4 natively ✓ 300 MB smaller without TS broadcast overhead
Example 2: HLS Segment Consolidation
Scenario: A live streaming platform recorded a 3-hour conference as HLS segments (1,080 individual .ts files) and needs to produce a single MP4 file for the VOD archive.
Source: 1,080 × segment_*.ts (10 seconds each, H.264, AAC) Conversion: TS segments → single MP4 (concatenation + remux) Result: conference_2026_full.mp4 (5.8 GB, 1920x1080, H.264, AAC) HLS consolidation: 1. Generate concat list of all TS segments 2. Concatenate using ffmpeg concat demuxer 3. Remux to MP4 container (lossless) 4. Add faststart metadata for web delivery 5. Upload to VOD platform ✓ All 1,080 segments merged into one seamless file ✓ No re-encoding — lossless stream copy ✓ Faststart enables immediate playback without buffering ✓ Standard MP4 works on all VOD platforms
Example 3: Broadcast Archive Compression
Scenario: A local TV station has 500 GB of MPEG-2 broadcast recordings in TS format and needs to compress them to H.264 MP4 for long-term archival on a NAS, targeting 80% space savings.
Source: archive_2024_collection/ (500 GB total, MPEG-2 TS, mixed resolutions) Conversion: TS → MP4 (MPEG-2 to H.264 batch conversion) Result: archive_2024_mp4/ (95 GB total, H.264 MP4) Batch archival workflow: 1. Scan all TS files for resolution and audio format 2. Batch convert MPEG-2 to H.264 (CRF 20 for archival quality) 3. Convert MP2/AC-3 audio to AAC 192 kbps 4. Deinterlace 1080i content to progressive 5. Add faststart for quick NAS preview ✓ 81% storage reduction (500 GB → 95 GB) ✓ Visual quality maintained at CRF 20 ✓ All files playable from NAS via any device ✓ Consistent H.264/AAC format for uniform library
Frequently Asked Questions (FAQ)
Q: Can I convert TS to MP4 without losing quality?
A: Yes — if the TS file uses H.264 video and AAC audio. Use ffmpeg -i input.ts -c copy -movflags +faststart output.mp4 for a lossless remux. The video and audio data are copied bit-for-bit into the MP4 container. If the TS uses MPEG-2 video or non-AAC audio, re-encoding is required, which involves some quality trade-off.
Q: Why is my MP4 smaller than the original TS file?
A: TS files contain broadcast overhead: sync bytes, PID headers, adaptation fields, null padding packets, and program tables. MP4 strips all of this, keeping only the actual video and audio data. A lossless remux typically produces an MP4 that is 2-5% smaller than the original TS with identical audio/video quality.
Q: How do I combine multiple TS segments into one MP4?
A: Create a text file listing all segments: file 'segment001.ts'\nfile 'segment002.ts'\n..., then use FFmpeg's concat demuxer: ffmpeg -f concat -safe 0 -i list.txt -c copy -movflags +faststart output.mp4. This merges all segments into a single MP4 without re-encoding.
Q: What does the -movflags +faststart option do?
A: It moves the MP4 moov atom (metadata index) from the end of the file to the beginning. This allows web browsers and streaming players to begin playback immediately without downloading the entire file first. Always use this flag for MP4 files intended for web delivery or streaming.
Q: Should I re-encode MPEG-2 TS files or just remux?
A: MPEG-2 video cannot be directly remuxed into MP4 (technically possible but poorly supported). Re-encode to H.264 for universal compatibility or H.265 for maximum compression. H.264 at CRF 20-23 provides excellent quality at 50-70% smaller file sizes compared to MPEG-2. The re-encoding process takes time but the storage savings are substantial.
Q: How do I handle AC-3 audio from broadcast TS?
A: AC-3 (Dolby Digital) can be stored in MP4, but AAC provides better compatibility across all devices. For maximum compatibility, convert to AAC: -c:a aac -b:a 192k. To preserve surround sound, use -c:a aac -ac 6 for 5.1 channel AAC. If the destination supports AC-3 (Apple TV, home theater), you can copy it directly with -c:a copy.
Q: What about subtitles and closed captions from the TS?
A: MP4 supports CEA-608/708 closed captions natively. DVB bitmap subtitles from TS must be converted to SRT or TTML for MP4 embedding. Use CCExtractor to extract closed captions: ccextractor input.ts -o subs.srt. Then embed in MP4: ffmpeg -i input.ts -i subs.srt -c copy -c:s mov_text output.mp4.
Q: Can I preserve multiple audio tracks in MP4?
A: MP4 supports multiple audio tracks, though player support varies. Use ffmpeg -i input.ts -map 0:v:0 -map 0:a:0 -map 0:a:1 -c copy output.mp4 to include two audio tracks. VLC, mpv, and modern smart TVs can switch between tracks. For guaranteed multi-track support, MKV is the better container choice.