Convert 3GP to TS — Free Online Tool
Convert 3GP mobile video files to MPEG-2 Transport Stream (TS) format, re-encoding the video with H.264 and audio with AAC — upgrading from a bandwidth-constrained mobile container to a broadcast-grade streaming format compatible with HLS pipelines, digital TV systems, and live streaming workflows.
to
FFmpeg Command
Copy this command to run the same conversion locally with FFmpeg on your desktop. Download FFmpeg
Drop your 3GP file here
or click to browse
Free — no uploads, no signups. Your files never leave your browser.
Settings
Note: Browser-based encoding uses approximate quality targets. For precise CRF compression, copy the FFmpeg command above and run it on your desktop.
Estimated output:
Conversion Complete!
DownloadHow It Works
3GP files are designed for 3G mobile networks, typically containing H.264 or MPEG-4 video at low resolutions and bitrates, with AAC or AMR audio. During this conversion, the video stream is re-encoded using libx264 at CRF 23, which improves consistency for playback in broadcast and streaming environments while normalizing any quirks from mobile encoders. The audio is re-encoded to AAC at 128k — a significant bitrate increase over the typical 64k or lower found in 3GP files. The output MPEG-2 Transport Stream container uses a packetized format (188-byte packets) designed for robust transmission, making it fundamentally different from 3GP's MP4-derived structure. Because TS supports multiple audio tracks and subtitles, the output file is ready for ingestion into HLS segmenters, broadcast playout systems, or DVB pipelines without further rewrapping.
What Each Flag Does
| Flag | What it does |
|---|---|
ffmpeg
|
Invokes the FFmpeg program, the open-source multimedia processing engine running under the hood of this browser tool via WebAssembly (FFmpeg.wasm). On your local machine, this assumes FFmpeg is installed and available in your system PATH. |
-i input.3gp
|
Specifies the input file — a 3GP container as recorded by a 3G-era mobile device. FFmpeg will detect the internal video and audio codecs (commonly H.264 or MPEG-4 video, and AAC or AMR audio) from this file automatically. |
-c:v libx264
|
Re-encodes the video stream using the libx264 H.264 encoder. This normalizes the output for broadcast and streaming environments, replacing whatever mobile-optimized encoding settings the original 3GP used with a consistent, standards-compliant H.264 encode suitable for MPEG-2 TS. |
-c:a aac
|
Re-encodes the audio stream to AAC using FFmpeg's native AAC encoder. This is critical for 3GP files that may contain AMR audio (common in voice-recorded mobile videos), converting narrowband mobile audio into a wideband AAC stream compatible with broadcast and HLS delivery. |
-crf 23
|
Sets the Constant Rate Factor for the H.264 video encode to 23, the libx264 default, which balances file size and visual quality. For low-resolution 3GP source footage, CRF 23 typically produces clean output without introducing obvious blocking or ringing artifacts. |
-b:a 128k
|
Sets the AAC audio output bitrate to 128 kilobits per second — a significant increase over the 32–64k audio commonly found in 3GP files. This ensures the TS output meets the minimum audio quality expectations for broadcast and streaming distribution systems. |
output.ts
|
Specifies the output filename with the .ts extension, which tells FFmpeg to mux the encoded video and audio into an MPEG-2 Transport Stream container. The TS format's packetized structure makes this file directly usable in HLS segmentation, broadcast playout, and DVB contribution workflows. |
Common Use Cases
- Ingesting old mobile phone footage into an HLS live streaming or video-on-demand pipeline that requires TS-segmented input
- Archiving 3GP videos captured on early smartphones into a broadcast-compatible format for use in television production workflows
- Preparing user-generated 3GP content for upload to a broadcast server or DVB contribution encoder that only accepts MPEG-2 TS
- Converting 3GP clips recorded on feature phones into TS for use as source material in FFmpeg-based transcoding chains without container compatibility issues
- Normalizing a batch of 3GP news footage files into a consistent TS format with predictable H.264 encoding parameters before editing
- Upgrading the audio bitrate of low-quality 3GP recordings from 32–64k to 128k AAC within a transport stream container for broadcast-quality audio compliance
Frequently Asked Questions
No — the source 3GP file caps the maximum quality you can achieve. Since 3GP is designed for low-bandwidth mobile networks, the original video is likely low resolution and low bitrate. Re-encoding with libx264 at CRF 23 will produce a clean, consistent encode, but it cannot recover detail that was discarded during the original 3GP compression. The output TS file may actually be larger than the 3GP despite not looking noticeably better.
Yes, many 3GP files — especially those recorded on older feature phones — use AMR (Adaptive Multi-Rate) audio, which is a narrowband codec designed for voice. This converter re-encodes all audio to AAC at 128k, so AMR audio will be transcoded automatically. The resulting audio will be much higher bitrate and broader frequency response, though the original AMR recording's voice-optimized character may still be audible in the output.
3GP containers are explicitly optimized to minimize file size for storage-constrained mobile devices, so source files are often very small. The MPEG-2 Transport Stream format uses fixed 188-byte packets and is designed for reliable transmission rather than compact storage, which adds overhead. Additionally, this conversion increases the audio bitrate from the 3GP default (often 32–64k) to 128k AAC, and the CRF 23 video encode may allocate more bits than the original mobile encoder did. All of these factors combine to produce a significantly larger output file.
Yes — MPEG-2 Transport Stream with H.264 video and AAC audio is exactly the container and codec combination required by Apple's HLS specification. The output of this conversion can be directly segmented using tools like ffmpeg's hls muxer or Apple's mediafilesegmenter without any additional rewrapping. This makes the conversion particularly useful for preparing mobile-captured 3GP content for adaptive bitrate streaming workflows.
To adjust video quality, change the CRF value: lower numbers like -crf 18 produce higher quality and larger files, while higher values like -crf 28 produce smaller files with more compression. For audio, replace -b:a 128k with a higher value like -b:a 192k or -b:a 256k for better audio fidelity — especially relevant if the source 3GP had AMR or low-bitrate AAC audio that you want to normalize. For example: ffmpeg -i input.3gp -c:v libx264 -c:a aac -crf 18 -b:a 192k output.ts
Yes — on Linux or macOS you can use a shell loop: for f in *.3gp; do ffmpeg -i "$f" -c:v libx264 -c:a aac -crf 23 -b:a 128k "${f%.3gp}.ts"; done. On Windows Command Prompt, use: for %f in (*.3gp) do ffmpeg -i "%f" -c:v libx264 -c:a aac -crf 23 -b:a 128k "%~nf.ts". This is particularly useful when processing a large archive of old mobile recordings, and it is one reason the FFmpeg command is displayed on this page — the browser tool handles files up to 1GB, but batch processing is faster done locally.
Technical Notes
3GP's container structure is derived from MPEG-4 Part 12 (the same base as MP4), but the MPEG-2 Transport Stream format is architecturally entirely different — it uses a packetized elementary stream structure with fixed 188-byte packets, designed for lossy transmission environments like satellite and cable broadcast. This means the conversion is a full remux into a new container architecture, not a simple container swap. The libx264 encoder used in both the 3GP source (commonly) and TS output ensures codec-level compatibility, but the mobile encoder that produced the 3GP may have used non-standard profile levels (like Baseline Profile for maximum device compatibility), while the output will default to Main or High Profile — which is more efficient but requires a more capable decoder. 3GP files do not support multiple audio tracks, chapters, or subtitle streams, so none of these are lost in the conversion; the TS container supports all of them, leaving room for future track additions. Metadata embedded in 3GP (such as creation date or GPS coordinates from mobile recording) may not survive the conversion, as TS has limited metadata support compared to MP4-family containers. If preserving metadata is important, extract it separately before converting.