Extract Audio from 3GPP to J2B — Free Online Tool
Extract audio from 3GPP mobile video files and save it as J2B, the ASYLUM Music Format-based audio container used by Jazz Jackrabbit 2. This tool strips the AAC or MP3 audio track from your 3GP file and re-encodes it to MP3 using the LAME encoder, producing a J2B-compatible output entirely in your browser.
to
FFmpeg Command
Copy this command to run the same conversion locally with FFmpeg on your desktop. Download FFmpeg
Drop your 3GPP 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
3GPP files typically carry AAC audio (sometimes MP3) muxed alongside H.264 video in a mobile-optimized container. Since J2B is a game audio format built around the ASYLUM Music Format with an MP3-based audio payload, direct stream copying is not possible — the audio must be decoded from its source codec and re-encoded using libmp3lame. The FFmpeg command discards the video stream entirely with -vn, then transcodes only the audio to MP3 at 128k bitrate, wrapping the result with a .j2b file extension. Because both 3GPP audio and MP3 are lossy formats, this is a lossy-to-lossy transcode, meaning some generation loss is introduced in the re-encoding step.
What Each Flag Does
| Flag | What it does |
|---|---|
ffmpeg
|
Invokes the FFmpeg binary — the open-source multimedia processing engine that powers this conversion both in the browser via WebAssembly and on the desktop command line. |
-i input.3gp
|
Specifies the input file, a 3GPP container (.3gp) as produced by mobile phones and 3G-era devices, which typically holds H.264 video and AAC or MP3 audio in a mobile-optimized wrapper. |
-vn
|
Disables video output entirely, ensuring only the audio stream from the 3GP file is processed. This is essential since J2B is a pure audio format and has no video track capability. |
-c:a libmp3lame
|
Uses the LAME MP3 encoder to transcode the audio — necessary because J2B's audio payload is MP3-based, and the source 3GP audio (typically AAC) cannot be directly remuxed without re-encoding. |
-b:a 128k
|
Sets the MP3 audio bitrate to 128 kilobits per second, a standard quality level for game audio that balances file size against perceptible fidelity given the already-lossy 3GP source material. |
output.j2b
|
Specifies the output filename with the .j2b extension, signaling to FFmpeg and downstream tools that this file is in the Jazz Jackrabbit 2 J2B audio format built on the ASYLUM Music Format. |
Common Use Cases
- Modding Jazz Jackrabbit 2 by supplying custom music sourced from mobile video recordings in 3GP format, converting them to the J2B format the game engine expects.
- Extracting a voiceover or ambient sound recorded on an older 3G-era mobile phone and packaging it as a J2B audio asset for a JJ2 level or fan project.
- Archiving audio from 3GPP video clips captured on legacy Nokia or Sony Ericsson handsets into a format usable within retro gaming tools that support J2B.
- Creating custom in-game music tracks for Jazz Jackrabbit 2 community levels by pulling audio from 3GP footage of live performances or events filmed on mobile devices.
- Quickly isolating the audio portion of a 3GP clip for inspection or editing before re-importing it into a JJ2 level editor that reads J2B files.
Frequently Asked Questions
J2B is essentially a thin wrapper around the ASYLUM Music Format, and in practice many tools that handle J2B files treat the audio payload as MP3 data with a specific header. FFmpeg writes the audio stream encoded with libmp3lame and assigns the .j2b extension, making it recognizable to Jazz Jackrabbit 2-compatible tools. The container is minimal compared to formats like MP4 or OGG, so the file size will be very close to what a raw MP3 of the same bitrate and duration would be.
Not perfectly — this is a lossy-to-lossy transcode. The original 3GPP file almost certainly contains AAC audio encoded at a low bitrate (commonly 64k or lower) to suit mobile streaming constraints. Re-encoding that already-compressed audio to MP3 at 128k introduces a second round of lossy compression, which can add subtle artifacts even though the output bitrate is higher. For the best possible result given the source material, 128k MP3 is a reasonable target for game audio playback.
Yes. The -b:a 128k flag controls the MP3 bitrate of the output J2B file. You can replace 128k with options like 64k, 192k, 256k, or 320k depending on your quality and file size needs. For Jazz Jackrabbit 2 game use, 128k is generally sufficient and keeps file sizes manageable; going higher than 192k offers diminishing returns given that the 3GP source is already lossy.
Metadata preservation is limited in this conversion. 3GPP containers can carry mobile-specific metadata like recording timestamps and device information, but J2B has no standardized metadata structure to receive those fields. FFmpeg may carry over basic ID3-style tags (like title or artist if present) into the MP3 stream inside the J2B file, but mobile-specific 3GP metadata such as GPS coordinates or device model will be dropped entirely.
Yes, with a small shell script. On Linux or macOS you can run: for f in *.3gp; do ffmpeg -i "$f" -vn -c:a libmp3lame -b:a 128k "${f%.3gp}.j2b"; done. On Windows Command Prompt, use a for loop: for %f in (*.3gp) do ffmpeg -i "%f" -vn -c:a libmp3lame -b:a 128k "%~nf.j2b". The browser-based tool processes one file at a time, so the command-line approach is preferable for batch jobs.
If the 3GP file contains only a video stream with no audio track, FFmpeg will throw an error when attempting to extract audio, since there is nothing to encode. This can happen with some screen recordings or video-only 3GP files from certain devices. You can verify whether your file has an audio track by running ffmpeg -i input.3gp in your terminal and checking the stream listing for an audio stream line before attempting the conversion.
Technical Notes
3GPP containers are designed for mobile networks and typically use AAC-LC audio at very low bitrates (32k–128k) to minimize data usage over 3G connections. The -movflags +faststart flag present in standard 3GP encoding is irrelevant here since the output is J2B, not a seekable container. The J2B format originates from the ASYLUM Music Format used in Jazz Jackrabbit 2, and while FFmpeg can write a file with this extension using MP3 audio, compatibility depends on the specific JJ2 tools or level editors being used — some may require the file to match exact ASYLUM header conventions that FFmpeg does not fully replicate. The output bitrate of 128k is the default and represents a middle ground between file size and fidelity for game audio purposes. Since 3GP audio is often recorded at telephone-quality sample rates (8kHz or 11.025kHz on older devices), the actual perceptible audio quality of the J2B output is constrained by the source, regardless of the output bitrate chosen. No subtitle, chapter, or secondary audio track data exists in 3GPP for this use case, so the conversion is straightforwardly a single audio stream extraction and transcode.