"Mute" can mean two different things: removing the audio stream entirely so the file has no sound, or keeping the track but silencing part of it. FFmpeg handles both — and removing audio is lossless because the video stream is simply copied through untouched.
Key takeaways
-androps audio; pair with-c:v copyfor an instant lossless result.- The
volumefilter can mute a time range withenable='between(t,...)'. - Replace audio by mapping a new track and using
-shortest. - Removing audio never re-encodes the video, so quality is preserved.
Remove the audio track entirely
Copy the video stream and drop audio — finishes almost instantly with no quality loss:
ffmpeg -i in.mp4 -an -c:v copy out.mp4
Mute only a section
To silence one part — bleeping a mistake, dropping a noisy intro — keep the track but zero the volume across a time range:
# silence from 5s to 10s, keep the rest ffmpeg -i in.mp4 -af "volume=enable='between(t,5,10)':volume=0" \ -c:v copy out.mp4
Replace the audio with a new track
Remove the original sound and drop in music or a voiceover instead — map video from the first input, audio from the second, and trim to the shorter stream:
ffmpeg -i video.mp4 -i music.mp3 \ -map 0:v -map 1:a -c:v copy -c:a aac -shortest out.mp4
Mute and replace visually instead
FFmpegLab lets you toggle the audio track off, mute selections, or drag in a new soundtrack — writing the matching -an or volume command — all offline. Want to keep the sound instead? See extracting audio or mixing tracks with amix.