Extract Audio from CAVS to CAF — Free Online Tool
Extract audio from CAVS video files and save it as CAF (Core Audio Format) — Apple's professional container designed for high-fidelity audio. The extracted audio is decoded from AAC (the codec embedded in CAVS files) and re-encoded as uncompressed PCM, giving you a lossless-quality CAF file ready for use in Logic Pro, GarageBand, or any Apple audio workflow.
to
FFmpeg Command
Copy this command to run the same conversion locally with FFmpeg on your desktop. Download FFmpeg
Drop your CAVS 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
CAVS files carry an AAC audio stream inside a Chinese broadcast-standard container. This tool strips the video stream entirely, decodes the AAC audio, and re-encodes it as 16-bit PCM (pcm_s16le) inside a CAF container. Because AAC is a lossy codec, the audio was already compressed when the CAVS file was created — re-encoding to PCM does not recover that lost data, but it does produce an uncompressed representation of whatever quality exists in the source, with no further generational loss. CAF is a 64-bit container, so it can hold files of any size without the 4 GB ceiling that limits WAV and AIFF, making it well suited for long broadcast recordings.
What Each Flag Does
| Flag | What it does |
|---|---|
ffmpeg
|
Invokes the FFmpeg binary. When run via this browser tool, it executes FFmpeg.wasm (a WebAssembly build of FFmpeg) entirely within your browser — no data leaves your machine. |
-i input.cavs
|
Specifies the input file in CAVS format. FFmpeg reads the Chinese Audio Video Standard container and identifies both the video stream (encoded with libx264) and the audio stream (encoded as AAC) inside it. |
-vn
|
Disables video output, telling FFmpeg to ignore the libx264 video stream in the CAVS file entirely. Since CAF is an audio-only container, this flag ensures only the audio track is processed. |
-c:a pcm_s16le
|
Decodes the AAC audio from the CAVS file and re-encodes it as 16-bit signed little-endian PCM — uncompressed audio that CAF stores natively. This is the default and recommended audio codec for CAF when targeting Apple Core Audio workflows. |
-b:a 128k
|
Sets a target audio bitrate of 128 kbps. For the pcm_s16le codec used here, this flag has no practical effect because PCM bitrate is fixed by sample rate and bit depth, not a compression target — but it is included in the command template for consistency with other output formats. |
output.caf
|
Defines the output file name and tells FFmpeg to use the CAF (Core Audio Format) container. CAF's 64-bit architecture supports files larger than 4 GB, making it suitable for long extracted audio from broadcast CAVS recordings. |
Common Use Cases
- Extracting commentary or narration from a Chinese broadcast CAVS recording to import into Logic Pro or GarageBand for post-production editing
- Pulling the audio track from a CAVS-encoded broadcast clip to archive it as uncompressed PCM in a format natively supported by macOS Core Audio APIs
- Preparing audio from a CAVS source file for use in Final Cut Pro, which reads CAF natively and benefits from its large-file-size support for long-form content
- Converting CAVS broadcast audio to CAF so it can be analyzed or resampled in professional Apple audio tools without re-introducing lossy compression
- Separating the audio from a CAVS video to create a standalone audio file for subtitling or transcription workflows running on macOS
Frequently Asked Questions
No — the CAVS file stores its audio as AAC, which is a lossy format. Converting to PCM inside CAF gives you an uncompressed file, but it cannot restore frequencies or detail that AAC already discarded during encoding. What you get is an exact, uncompressed snapshot of the decoded AAC audio with no additional quality loss from this conversion step.
The original CAVS file stores audio as compressed AAC (typically at 128 kbps), while the output CAF stores it as uncompressed 16-bit PCM — roughly 1,411 kbps for stereo audio at 44.1 kHz. This means audio that took a few megabytes compressed may expand to ten times that size or more. The larger file reflects raw, uncompressed samples rather than any quality improvement.
CAF is an Apple-centric format with native support in macOS, iOS, Logic Pro, GarageBand, and Final Cut Pro. Windows and Android do not support it natively. If you need the extracted audio to work cross-platform, you would be better served by extracting to WAV or FLAC instead. CAF is ideal when your destination workflow is entirely within the Apple ecosystem.
The -vn flag instructs FFmpeg to discard the video stream from the CAVS input. Without it, FFmpeg would attempt to include the video in the output, but CAF has no support for video — so the command would likely fail or produce an audio-only file anyway. Keeping -vn makes the intent explicit and prevents FFmpeg from wasting time analyzing video stream compatibility.
Replace pcm_s16le with pcm_s24le in the command: ffmpeg -i input.cavs -vn -c:a pcm_s24le output.caf. CAF supports 16-bit, 24-bit, and 32-bit PCM. However, since the source audio is AAC from a CAVS file, upsampling the bit depth will not add real dynamic range — the underlying audio data is still bounded by what AAC captured. 24-bit PCM is more meaningful when the original source was recorded at higher bit depth.
Yes. On macOS or Linux, you can run a shell loop: for f in *.cavs; do ffmpeg -i "$f" -vn -c:a pcm_s16le -b:a 128k "${f%.cavs}.caf"; done. On Windows Command Prompt, use: for %f in (*.cavs) do ffmpeg -i "%f" -vn -c:a pcm_s16le -b:a 128k "%~nf.caf". The in-browser tool processes one file at a time, so the FFmpeg command is particularly useful for batch jobs involving many CAVS broadcast files.
Technical Notes
CAVS (Chinese Audio Video Standard) containers typically carry a single AAC audio track at 128 kbps, reflecting their origins as a Chinese broadcast and distribution format. When extracting to CAF, the AAC stream must be fully decoded because CAF does not use the same AAC framing as CAVS — there is no stream-copy shortcut here. The default output codec, pcm_s16le, produces CD-quality 16-bit little-endian PCM, which is lossless in the sense that no further compression is applied, though it cannot exceed the fidelity ceiling imposed by the original AAC encoding. The -b:a 128k flag in the command is technically relevant only to lossy codecs; for pcm_s16le it has no effect on the actual bitrate, which is determined entirely by sample rate and bit depth. CAF's 64-bit chunk addressing means files can exceed 4 GB without corruption, which is a real advantage for long CAVS broadcast recordings that would overflow WAV. Metadata embedded in the CAVS container (such as title or language tags) is generally not preserved in the CAF output, as CAVS metadata conventions differ from those used by Apple's Core Audio framework. If metadata preservation matters, inspect the source with ffprobe and use -map_metadata 0 to attempt transfer.