Replace Audio Track in Video
Mux a new audio track into MP4, MOV, MKV or WebM with bit-exact video stream-copy — no re-encode, no quality loss. Pick AAC/Opus codec and bitrate, ffmpeg.wasm.
About Replace Audio Track
Replace or add audio tracks to video — for content creators dubbing TikTok clips with copyright-safe music, podcasters fixing a botched recording with a clean re-take, teachers replacing student names with bleeps in lecture clips, or anyone who realized their phone captured wind noise instead of clean dialogue. Most apps re-encode the video to swap audio, wasting hours and degrading quality. This tool uses ffmpeg.wasm's stream-copy mode: the video stream is copied byte-for-byte (no re-encoding, no quality loss, no waiting), only the audio is processed. Result: a 5-minute 1080p video swaps audio in 10-30 seconds versus 5-15 minutes in a re-encoding tool. The technical guarantee: video is stream-copied bit-exact (-c:v copy), while audio is either copied losslessly or re-encoded to AAC (for MP4/MOV) or Opus (for WebM) at your chosen bitrate (128/192/256/320 kbps, default 192k). MP4/MOV exports can be web-optimized with +faststart so the moov atom moves to the front and the file progressively streams. Supports MP4/MOV/MKV/AVI/WebM video and MP3/AAC/WAV/OGG/FLAC/Opus/M4A audio. Loop short audio or trim long audio to match video duration.
What file formats are supported?
Video: MP4, WebM, MOV. Audio: MP3, AAC, WAV, OGG, FLAC, and other common audio formats.
Can I add music to a video without audio?
Yes! You can add audio to videos that don't have an audio track, or replace the existing audio with new audio.
What if the audio is shorter than the video?
You can choose to loop the audio to match the video length, or leave it as-is (video will be silent after audio ends).
What if the audio is longer than the video?
You can choose to trim the audio to match the video length, or keep the full audio (video will end while audio continues in some players).
Will this affect video quality?
No, the video stream is copied without re-encoding, preserving 100% original video quality. Only the audio is processed.
Is my data safe?
Absolutely! All processing happens directly in your browser using FFmpeg.wasm (WebAssembly). Your files are never uploaded to any server. Everything stays private on your device.

Can I preview before downloading?
Yes! After processing, you can preview the video with the new audio track before downloading.
How long does processing take?
Processing time depends on video length. Since we're copying the video stream (not re-encoding), it's typically fast - usually 10-30 seconds for a 5-minute video.
Does my audio get re-encoded, and which codec/bitrate?
It depends on your choice. Select 'Copy original' to mux the source track losslessly with zero quality loss. Otherwise the audio is re-encoded to AAC (for MP4/MOV) or Opus (for WebM) at the bitrate you pick — 128, 192 (default), 256 or 320 kbps. The video is always stream-copied bit-exact regardless.
Why does WebM output need Opus instead of AAC?
The WebM/Matroska-webm container only allows Opus or Vorbis audio — AAC is not a legal codec inside WebM and ffmpeg will abort with an 'invalid argument' error. So when you choose WebM output, the tool automatically uses Opus. For MP4/MOV it uses AAC.
Will looping or trimming cause A/V sync drift?
No. When looping, the audio is re-encoded and capped with -shortest so it ends exactly when the video ends. When trimming, output duration is set to the video length. In the default case we also apply -shortest so the two stream durations agree and you won't get a frozen last frame or trailing silence.
What is faststart and should I enable it?
Faststart (+movflags) moves the MP4/MOV moov atom to the front of the file so the video begins playing before it fully downloads — essential for web delivery and progressive streaming. Keep it on for MP4/MOV web uploads; it has no effect on WebM.
Why is there a 100MB video / 50MB audio limit?
Everything runs in your browser via ffmpeg.wasm, which holds both the input and output in the WebAssembly memory heap. Very large files can exhaust that heap and throw a 'memory access out of bounds' error, so we cap video at 100MB and audio at 50MB to keep exports reliable. Using 'Copy original' audio keeps memory and time lowest.
