Extract Audio from MOD to WEBA — Free Online Tool

Extract audio from MOD camcorder footage and save it as a WEBA file encoded with the Opus codec — ideal for web-ready audio that's smaller and more efficient than the original MPEG-2 audio track. MOD files from JVC and Panasonic camcorders typically carry AC-3 or MPEG audio, which this tool transcodes directly to Opus inside a WebM-based container.

FFmpeg Command

Copy this command to run the same conversion locally with FFmpeg on your desktop. Download FFmpeg

Free — no uploads, no signups. Your files never leave your browser.

Estimated output:

Conversion Complete!

Download

How It Works

MOD files are MPEG-2 Program Stream containers used by JVC and Panasonic camcorders, and they typically carry video encoded with MPEG-2 alongside AC-3 or MPEG audio. This conversion strips the video stream entirely and re-encodes only the audio track using the Opus codec, wrapping it in a WEBA container (an audio-only variant of the WebM format). Because MOD's native audio codecs are not compatible with the WEBA/WebM container, a full transcode is required — the audio is decoded from its original format and re-encoded as Opus at the specified bitrate. The video is discarded via the -vn flag, so no video processing occurs and the operation is relatively fast.

What Each Flag Does

Flag What it does
ffmpeg Invokes the FFmpeg binary — the open-source multimedia processing engine that powers this conversion entirely within your browser via WebAssembly (FFmpeg.wasm).
-i input.mod Specifies the input MOD file — a JVC or Panasonic camcorder recording stored as an MPEG-2 Program Stream. FFmpeg's MPEG-PS demuxer handles the .mod extension natively and reads the video and audio streams contained within.
-vn Disables video stream processing, ensuring the MPEG-2 video track from the MOD file is completely discarded and not written to the output. This is essential for producing an audio-only WEBA file.
-c:a libopus Selects the libopus encoder to transcode the MOD file's audio (typically AC-3 or MPEG Layer-2) into Opus — the only widely used codec supported by the WEBA container and the one required for HTML5 web audio playback.
-b:a 128k Sets the Opus audio bitrate to 128 kilobits per second. Opus at 128k delivers excellent perceptual quality for camcorder audio, producing a file significantly smaller than the original MOD while remaining suitable for web streaming.
-vn A second -vn flag placed at the output stage to explicitly reinforce that no video track should be written to the WEBA file. While redundant given the earlier -vn, it makes the audio-only intent unambiguous in the command.
output.weba The output filename with the .weba extension, which signals FFmpeg to use the WebM muxer in audio-only mode. The resulting file is a standards-compliant WEBA container holding a single Opus audio stream ready for web embedding or playback.

Common Use Cases

  • Extracting spoken commentary or interview audio from JVC or Panasonic camcorder footage to embed directly on a webpage using the HTML5 audio element
  • Archiving the audio track from family or event recordings stored as MOD files, producing a lightweight Opus file that retains good intelligibility at low bitrates
  • Preparing camcorder audio for a web-based podcast or voiceover project where Opus in a WEBA container offers superior compression over MP3 at equivalent perceived quality
  • Stripping and converting ambient or field-recorded audio captured with a MOD-format camcorder for use in a browser-based audio editor or DAW that supports WebM/Opus
  • Reducing storage size of MOD recordings by keeping only the audio track when the video content is no longer needed but the audio has documentary or archival value

Frequently Asked Questions

MOD files from JVC and Panasonic camcorders typically contain AC-3 (Dolby Digital) or MPEG Layer-2 audio. Converting to WEBA with Opus involves a full transcode — decode from the original codec, then re-encode as Opus — so some generation loss is inherent. At the default 128k bitrate, Opus is highly efficient and the result is usually perceptually very close to the source, but it is not lossless. If maximum fidelity is the goal, raising the bitrate to 192k or 256k is recommended.
WEBA files are natively supported in Chromium-based browsers (Chrome, Edge, Opera) and Firefox on both desktop and Android. However, Apple devices — including Safari on iOS and macOS — have historically had limited or no support for Opus in WebM containers, so playback may fail in Safari without a JavaScript polyfill. Desktop media players like VLC support WEBA/Opus without issue. If broad device compatibility is a priority, consider converting to an MP3 or AAC file instead.
In the resolved command, -vn appears once before the codec flags as an input-side hint and once at the end before the output filename. While a single -vn is sufficient to suppress video output, placing it in both positions is a harmless redundancy that makes the intent explicit: no video stream should be processed or written to the output file. FFmpeg will simply apply the flag and ignore the duplicate.
Replace the value after -b:a with a higher bitrate. For example, changing -b:a 128k to -b:a 192k or -b:a 256k will produce a larger but higher-fidelity WEBA file. Opus is remarkably efficient, so 128k is already transparent for most camcorder audio, but recordings with rich music or complex soundscapes benefit from 192k. The full command with 192k would be: ffmpeg -i input.mod -vn -c:a libopus -b:a 192k -vn output.weba
Yes. On Linux or macOS, you can use a shell loop: for f in *.mod; do ffmpeg -i "$f" -vn -c:a libopus -b:a 128k -vn "${f%.mod}.weba"; done. On Windows Command Prompt, use: for %f in (*.mod) do ffmpeg -i "%f" -vn -c:a libopus -b:a 128k -vn "%~nf.weba". This is especially practical for processing large collections of camcorder recordings that exceed the browser tool's 1GB file limit.
MOD files may embed limited metadata in their MPEG-PS container, such as timestamps or device information. FFmpeg will attempt to copy compatible metadata tags to the WebM output, but MOD's container-specific fields often do not have direct equivalents in the WebM metadata schema. Expect basic tags like creation time to carry over in some cases, but camera model and proprietary JVC/Panasonic metadata are typically lost during the transcode.

Technical Notes

MOD is a lightly modified MPEG-2 Program Stream — essentially MPEG-PS with a renamed extension — produced by consumer camcorders from JVC (Everio series) and Panasonic. The audio track is most commonly AC-3 at 48 kHz or MPEG-1 Layer 2, neither of which is a supported codec in the WebM/WEBA container. This means a codec transcode is mandatory; there is no remux-only path. FFmpeg decodes the MOD audio using its native MPEG-PS demuxer, which handles the MOD extension transparently. The output Opus stream is encoded by libopus, which natively operates at 48 kHz — matching the typical sample rate of camcorder audio — so no sample rate conversion is usually required, minimizing additional quality loss. The WEBA container is essentially WebM restricted to audio-only streams; the -vn flag ensures no video track is attempted. One known limitation is that MOD files with multiple audio tracks (e.g., dual-channel or bilingual recordings on some Panasonic models) will have only the first audio stream extracted by default; use -map 0:a:1 to target an alternate track if needed.

Related Tools