Convert MTS to MOV — Free Online Tool
Convert AVCHD footage from Sony or Panasonic camcorders (.mts) into QuickTime MOV files compatible with Final Cut Pro, iMovie, and other Apple editing workflows. This tool re-encodes the H.264 video stream and AC-3/AAC audio into a MOV container optimized for macOS professional editing, running entirely in your browser with no file uploads.
to
FFmpeg Command
Copy this command to run the same conversion locally with FFmpeg on your desktop. Download FFmpeg
Drop your MTS 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
MTS files use the MPEG-2 Transport Stream container — a broadcast-oriented format designed for streaming robustness, not editing. During this conversion, the H.264 video stream is re-encoded using libx264 with a CRF 23 quality setting, and the audio (whether AC-3 or AAC from the camcorder) is transcoded to AAC at 128k bitrate. The output is wrapped in Apple's QuickTime MOV container, which adds the -movflags +faststart optimization to place the moov atom at the beginning of the file. This makes the resulting MOV immediately seekable and compatible with Apple editing tools that cannot natively handle the MPEG-2 Transport Stream structure of raw AVCHD files.
What Each Flag Does
| Flag | What it does |
|---|---|
ffmpeg
|
Invokes the FFmpeg tool. In the browser, this runs via FFmpeg.wasm (WebAssembly), giving you the same conversion engine as the desktop version without installing anything. |
-i input.mts
|
Specifies the input AVCHD file in MPEG-2 Transport Stream format. FFmpeg will detect the H.264 video and AAC or AC-3 audio streams inside the .mts container automatically. |
-c:v libx264
|
Re-encodes the video stream using the libx264 encoder, producing H.264 video output compatible with Final Cut Pro, iMovie, and QuickTime Player on macOS. Because MTS also contains H.264, this is a same-codec transcode that changes the container structure rather than the codec family. |
-c:a aac
|
Transcodes the audio to AAC using FFmpeg's native AAC encoder. This handles both AAC and AC-3 source audio from AVCHD camcorders and produces audio that Apple editing tools can natively read from a MOV container. |
-crf 23
|
Sets the Constant Rate Factor for the libx264 video encode to 23, which is the standard default quality level — a good balance between file size and visual quality for camcorder footage. Lower values (e.g., 18) produce higher quality at larger file sizes. |
-b:a 128k
|
Sets the AAC audio bitrate to 128 kilobits per second, which is sufficient for the stereo 48kHz audio typical of consumer AVCHD camcorders and keeps the audio portion of the MOV file compact. |
-movflags +faststart
|
Relocates the MOV container's metadata index (moov atom) to the start of the output file. This is required for smooth compatibility with Apple software and enables progressive playback if the file is ever hosted on a web server or network drive. |
output.mov
|
The output filename with the .mov extension, which signals FFmpeg to use the QuickTime MOV container. The resulting file is a self-contained MOV ready for import into Final Cut Pro, iMovie, or any QuickTime-compatible application. |
Common Use Cases
- Importing Sony Handycam or Panasonic HC-series camcorder footage into Final Cut Pro, which requires MOV or MXF containers rather than raw AVCHD .mts files
- Bringing holiday or event footage from a consumer AVCHD camcorder into iMovie on a Mac, which struggles to recognize .mts files directly from the camcorder's card structure
- Preparing camcorder clips for use in DaVinci Resolve or Motion on macOS, where MOV containers integrate more cleanly with the Apple ecosystem
- Archiving AVCHD camcorder footage in a self-contained MOV file rather than the fragmented AVCHD directory structure (.mts alongside .cpi and .bdmv files)
- Converting wedding or event videography footage shot on a Sony NEX-VG or Panasonic AG camcorder before delivering editable project files to a client using Apple software
- Fixing playback issues with .mts files on macOS where QuickTime Player fails to open them directly due to lack of native Transport Stream support
Frequently Asked Questions
Apple's editing applications do not natively support the MPEG-2 Transport Stream container that .mts files use. While the video inside is standard H.264, the TS wrapper lacks the random-access index structure that QuickTime-based tools expect. Converting to MOV re-packages the content into a container Apple software fully understands, complete with proper timecode and frame-accurate seeking.
Yes, this is a transcode rather than a remux — the video is decoded and re-encoded, which introduces a small amount of generational quality loss. At the default CRF 23 setting with libx264, the quality loss is minimal and generally imperceptible for most footage. If you need the closest possible match to the original, lower the CRF value (try CRF 18) in the FFmpeg command, though this will produce a larger output file.
If your AVCHD camcorder recorded AC-3 (Dolby Digital) audio, it will be transcoded to AAC at 128k bitrate during this conversion. MOV files support AAC natively and it is the preferred audio codec for Apple editing tools. The AC-3 audio from consumer AVCHD camcorders is typically recorded at 48kHz stereo, so the resulting AAC track will sound virtually identical for editing purposes.
The -movflags +faststart flag moves the MOV file's metadata index (the moov atom) from the end of the file to the beginning. Without this, a player or editor must read to the very end of the file before it can start playback. With faststart enabled, the MOV can begin playing immediately upon opening — particularly useful if you later share the file via the web or network storage, and it is a best practice for all MOV output files.
You can loop through all .mts files in a directory using a shell command. On macOS or Linux, run: for f in *.mts; do ffmpeg -i "$f" -c:v libx264 -c:a aac -crf 23 -b:a 128k -movflags +faststart "${f%.mts}.mov"; done. On Windows Command Prompt, use: for %f in (*.mts) do ffmpeg -i "%f" -c:v libx264 -c:a aac -crf 23 -b:a 128k -movflags +faststart "%~nf.mov". The browser tool processes one file at a time, so the FFmpeg command is especially useful for converting an entire memory card's worth of footage.
The -crf 23 flag controls quality, where lower values mean higher quality and larger files. For archival-quality output from camcorder footage, try -crf 18, which produces visually near-lossless results compared to the source. For smaller files where quality is less critical — such as review copies or web delivery — try -crf 28 or -crf 30. The CRF scale for libx264 runs from 0 (lossless) to 51 (worst quality), with 18–28 being the practical range for most video work.
Technical Notes
AVCHD .mts files are typically found inside a structured directory hierarchy on the camcorder's memory card (PRIVATE/AVCHD/BDMV/STREAM/) and are not designed to be opened as standalone files by desktop applications. The MPEG-2 Transport Stream container uses a fixed 188-byte packet structure optimized for broadcast transmission error recovery, which is why it lacks the random-access index that editing software requires. When converting to MOV, libx264 re-encodes at High Profile by default, which is compatible with all Apple hardware and software. One important limitation: AVCHD files from some camcorders contain multiple audio tracks (e.g., a main stereo mix plus a secondary microphone channel) — this converter preserves all audio tracks by default since MOV supports multiple audio tracks. However, AC-3 5.1 surround audio captured by higher-end AVCHD camcorders will be downmixed or transcoded to stereo AAC unless you explicitly map specific streams using the -map flag in a custom FFmpeg command. Timecode metadata embedded in the MTS stream may not be fully preserved in the MOV output without additional -map_metadata flags, which may be a consideration for professional broadcast workflows.