Extract Audio from M4V to J2B — Free Online Tool
Extract audio from M4V video files and save it as J2B format using the LAME MP3 encoder. This tool strips the H.264/H.265 video stream entirely and re-encodes the AAC audio track from your iTunes or iOS-compatible M4V file into the MP3-based J2B container used by Jazz Jackrabbit 2.
to
FFmpeg Command
Copy this command to run the same conversion locally with FFmpeg on your desktop. Download FFmpeg
Drop your M4V 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
M4V files typically contain an AAC audio track paired with H.264 or H.265 video. During this conversion, FFmpeg completely discards the video stream (no decoding or re-encoding of video occurs) and decodes the AAC audio, then re-encodes it using the LAME MP3 encoder into the J2B container format. J2B is a niche game audio format from Jazz Jackrabbit 2 that wraps MP3 data in the ASYLUM Music Format header structure — so the output is essentially an MP3 stream packaged inside that game-specific wrapper. Because AAC and MP3 are both lossy codecs, this conversion involves a generation loss: the audio is decoded from AAC and re-encoded to MP3, which introduces additional compression artifacts compared to the original source. If your M4V file has DRM protection (as some iTunes purchases do), the audio cannot be decoded and the conversion will fail.
What Each Flag Does
| Flag | What it does |
|---|---|
ffmpeg
|
Invokes the FFmpeg tool, which is running here as a WebAssembly (FFmpeg.wasm) instance entirely inside your browser — no data is sent to any server. |
-i input.m4v
|
Specifies the input M4V file. FFmpeg reads the container and identifies its streams — in a typical M4V this means an H.264 or H.265 video stream and an AAC audio stream, plus optional chapter markers and multiple audio tracks. |
-vn
|
Stands for 'video none' — this flag tells FFmpeg to completely ignore and discard the video stream from the M4V, so no video decoding or encoding occurs. This is what makes the output a pure audio file. |
-c:a libmp3lame
|
Selects the LAME MP3 encoder to transcode the audio. Because M4V's native AAC audio is not compatible with the J2B format, FFmpeg must decode the AAC stream and re-encode it as MP3 using LAME — the industry-standard open-source MP3 encoder. |
-b:a 128k
|
Sets the MP3 output bitrate to 128 kilobits per second. This is the default bitrate for J2B output and provides a reasonable balance between file size and audio quality; it can be raised to 320k for better fidelity or lowered to 64k for smaller files. |
output.j2b
|
Specifies the output filename with the .j2b extension, which tells FFmpeg to use the J2B muxer. FFmpeg wraps the encoded MP3 audio stream in the ASYLUM Music Format header structure that defines the J2B container used by Jazz Jackrabbit 2. |
Common Use Cases
- Extracting audio from iTunes M4V video downloads to create custom music tracks compatible with Jazz Jackrabbit 2 level editors and mods
- Converting M4V-sourced music videos or concert recordings into J2B format for use as background music in JJ2 custom episodes
- Pulling the audio score from an M4V film or TV episode and packaging it in J2B format for retro game modding communities
- Isolating a specific audio track from a multi-audio-track M4V file and converting it to J2B for use in Jazz Jackrabbit 2 community projects
- Archiving or cataloging M4V audio content in J2B format for preservation within game modding archives that specifically require this container
- Using the displayed FFmpeg command locally to batch-convert large collections of M4V files over 1GB into J2B audio for a JJ2 mod soundtrack
Frequently Asked Questions
Yes, there will be some quality loss. M4V files store audio as AAC, and J2B uses MP3 via the LAME encoder — both are lossy formats. Converting between two lossy codecs means the audio is decoded from AAC and re-encoded as MP3, a process sometimes called 'generation loss.' At the default 128k bitrate the result is generally acceptable for casual listening, but audiophiles or producers working with high-quality source material may notice subtle degradation compared to the original AAC audio.
M4V files purchased from the iTunes Store often include Apple FairPlay DRM, which prevents FFmpeg (and most other tools) from decoding the audio or video streams. If your conversion fails or produces a silent output, DRM is the most likely cause. M4V files you recorded yourself, downloaded from DRM-free sources, or ripped from your own media will work fine. There is no way to bypass DRM using this tool — you would need to source a DRM-free version of the file.
J2B files produced by re-encoding arbitrary MP3 audio should be structurally valid as J2B containers, but whether Jazz Jackrabbit 2 or its community tools (like JJ2+) accept them depends on the specific engine version and any hardcoded expectations about the ASYLUM Music Format metadata in the header. J2B files in the game originally contained tracker-style module music, so using them with standard MP3-sourced audio is a non-standard use case. Testing in your target JJ2 environment is strongly recommended.
By default, FFmpeg selects the first audio track in the M4V file, which is typically the primary language track. M4V supports multiple audio tracks (for example, alternate language dubs or commentary tracks), but J2B does not support multiple audio tracks. If you need a specific non-default track, you can modify the FFmpeg command shown on this page by adding '-map 0:a:1' (for the second audio track) before the output filename to select it explicitly.
The '-b:a 128k' flag in the command controls the MP3 output bitrate. You can replace '128k' with any value supported by J2B's MP3 codec: 64k for smaller files with lower quality, or 192k, 256k, or 320k for progressively higher quality and larger file sizes. For example, to get the highest quality MP3 output, change the command to: ffmpeg -i input.m4v -vn -c:a libmp3lame -b:a 320k output.j2b. The browser-based tool also provides a quality selector to adjust this without editing the command manually.
Yes — the command shown on this page runs identically in a local FFmpeg installation. For batch processing on Linux or macOS you can use a shell loop: 'for f in *.m4v; do ffmpeg -i "$f" -vn -c:a libmp3lame -b:a 128k "${f%.m4v}.j2b"; done'. On Windows with PowerShell, use 'Get-ChildItem *.m4v | ForEach-Object { ffmpeg -i $_.FullName -vn -c:a libmp3lame -b:a 128k ($_.BaseName + ".j2b") }'. This is especially useful for files over 1GB, which exceed the browser tool's size limit.
Technical Notes
M4V is essentially an MPEG-4 container (very similar to MP4) with an optional Apple-specific DRM layer. The audio codec in M4V is almost universally AAC, encoded at bitrates typically ranging from 128k to 256k in iTunes-sourced content. Since J2B has no AAC support and requires MP3 (libmp3lame), a full transcode of the audio stream is unavoidable — there is no remux shortcut here. The '-vn' flag ensures zero video processing overhead, so conversion speed is limited only by audio decoding and re-encoding throughput. J2B's container structure is minimal: it wraps the ASYLUM Music Format with a short header, and FFmpeg's J2B muxer handles this automatically. Notably, J2B does not support chapters, subtitles, or multiple audio tracks — all of which M4V can carry — so this metadata is silently dropped during conversion. The output file will also lack the iTunes-specific metadata atoms (like cover art or track numbers) that M4V commonly embeds. If preserving audio fidelity is critical, using the highest available bitrate (320k) in the command will minimize the generation loss introduced by the AAC-to-MP3 transcode.