Convert CAVS to J2B — Free Online Tool

Convert CAVS video files to J2B audio, extracting the audio stream and re-encoding it as MP3 using the LAME encoder — ideal for pulling music or sound from Chinese broadcast-standard video content into a format compatible with Jazz Jackrabbit 2's game audio system.

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

CAVS (Chinese Audio Video Standard) is a container that packages video encoded with H.264/AVC alongside AAC audio. J2B is a game-specific audio format used by Jazz Jackrabbit 2, built around the ASYLUM Music Format with a custom header, and it stores audio as MP3. During this conversion, the video stream is completely discarded — only the AAC audio track is extracted from the CAVS container. That audio is then decoded and re-encoded from AAC to MP3 using the libmp3lame encoder at 128k bitrate by default. Because both AAC and MP3 are lossy formats, this is a lossy-to-lossy transcode, meaning some audio quality is lost in the re-encoding step regardless of the bitrate chosen. The output is wrapped in the J2B container structure expected by Jazz Jackrabbit 2.

What Each Flag Does

Flag What it does
ffmpeg Invokes the FFmpeg tool, which handles all media demuxing, decoding, encoding, and remuxing. In the browser-based version of this tool, this runs via FFmpeg.wasm compiled to WebAssembly — no installation required.
-i input.cavs Specifies the input file in CAVS format. FFmpeg reads and demuxes the CAVS container, identifying the H.264 video stream and the AAC audio stream inside it.
-c:a libmp3lame Selects the LAME MP3 encoder for the audio output stream. This re-encodes the AAC audio extracted from the CAVS file into MP3 — the codec format stored inside J2B files.
-b:a 128k Sets the MP3 audio bitrate to 128 kilobits per second. This is the default balance between file size and audio quality for J2B output; higher values like 192k or 256k will produce better-sounding MP3 audio at the cost of a larger file.
output.j2b Defines the output filename and container. The .j2b extension tells FFmpeg to write a J2B-wrapped file. The video stream from the CAVS input is automatically discarded because J2B is an audio-only format.

Common Use Cases

  • Extracting background music or sound effects from CAVS broadcast recordings to repurpose as Jazz Jackrabbit 2 custom level audio
  • Converting Chinese digital television recordings (which often use the CAVS standard) into J2B audio tracks for game modding projects
  • Pulling narration or dialogue audio from CAVS-encoded educational or documentary content to test as placeholder audio in JJ2 level editors
  • Archiving the audio component of CAVS video clips in a compact MP3-based format when the video is no longer needed
  • Creating custom J2B music files for Jazz Jackrabbit 2 fan-made levels by sourcing audio from CAVS media libraries
  • Quickly stripping and converting the audio layer from a CAVS broadcast clip to inspect its audio quality or content without a full video player

Frequently Asked Questions

Yes, some quality loss is unavoidable. The original AAC audio in the CAVS file is a lossy-compressed format, and MP3 (used in J2B) is also lossy. Re-encoding between two lossy formats introduces a second generation of compression artifacts. Using a higher bitrate like 192k or 256k will minimize the audible degradation, but it cannot fully recover detail already lost by the original AAC encoding.
J2B was originally designed for module/tracker music in the ASYLUM Music Format, which is a pattern-based format quite different from continuous PCM-derived audio like MP3. While the J2B container wraps MP3 data and FFmpeg can produce a file with the .j2b extension using libmp3lame, compatibility with the Jazz Jackrabbit 2 engine depends on how the game parses the header. Standard JJ2 expects module-style data, so the resulting file may not play correctly in the game without additional post-processing or patching.
J2B is a pure audio format — it has no provision for storing video data whatsoever. FFmpeg automatically drops the video stream when the output container cannot carry it. This is expected and correct behavior for this conversion. If you need to keep the video, you should convert to a different output format that supports both audio and video.
Replace the value after -b:a in the command. For example, change -b:a 128k to -b:a 192k or -b:a 256k for higher quality output. The trade-off is a larger file size. The available options for J2B output via libmp3lame are 64k, 128k, 192k, 256k, and 320k — with 320k being the maximum MP3 bitrate and the closest you can get to the original AAC audio quality.
The displayed command processes one file at a time, but you can batch process on the command line using a shell loop. On Linux or macOS: for f in *.cavs; do ffmpeg -i "$f" -c:a libmp3lame -b:a 128k "${f%.cavs}.j2b"; done. On Windows Command Prompt: for %f in (*.cavs) do ffmpeg -i "%f" -c:a libmp3lame -b:a 128k "%~nf.j2b". This is especially useful for large batches since the browser-based tool handles one file at a time.
No. J2B does not support metadata, subtitles, or chapters — and neither does the CAVS format carry subtitle or chapter data. Any title, artist, or descriptive tags embedded in the CAVS container will be lost during conversion. If preserving metadata matters, you should convert to a format like MP3 or AAC with ID3 tags instead.

Technical Notes

CAVS encodes video using H.264 (libx264) and audio using AAC, making it a broadcast-oriented lossy format developed as a Chinese national standard alternative to conventional international codecs. When targeting J2B output, FFmpeg selects only the audio stream and passes it through the libmp3lame encoder, producing MP3 audio at the configured bitrate. The J2B format is historically tied to module/tracker music (ASYLUM Music Format) rather than continuous-stream audio, so while FFmpeg can produce a .j2b file with valid MP3 content inside, real-world compatibility with the Jazz Jackrabbit 2 game engine is not guaranteed — the engine expects tracker-pattern data structures in the file body. For actual game modding use, specialized JJ2 tools may be needed to properly wrap the audio. The default 128k bitrate is acceptable for voice or ambient audio but may sound noticeably degraded compared to the original AAC track for music with wide dynamic range. No transparency, subtitle, or multi-track audio features are relevant to this conversion since both formats lack support for them.

Related Tools