Convert CAVS to SWF — Free Online Tool
Convert CAVS (Chinese Audio Video Standard) files to SWF (Shockwave Flash) format directly in your browser, re-encoding video with the FLV1 (Sorenson Spark) codec and audio with MP3 via LAME — the native codec pair for Flash Player playback. This tool is ideal for embedding legacy Chinese broadcast video content into Flash-based web players or interactive multimedia projects.
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 typically contain video encoded with the AVS1 or AVS2 codec, a Chinese national standard not natively supported by Flash Player. During this conversion, FFmpeg fully decodes the CAVS video stream and re-encodes it using the FLV1 (Sorenson Spark) codec, which is the foundational video codec for the SWF/Flash container. The audio is similarly transcoded from AAC (common in CAVS files) to MP3 using the LAME encoder, since Flash Player's native audio format is MP3. Both streams are then muxed into the SWF container. This is a full transcode — no stream copying occurs — so processing time depends on video length and resolution.
What Each Flag Does
| Flag | What it does |
|---|---|
ffmpeg
|
Invokes the FFmpeg executable — the open-source multimedia processing engine that handles all decoding, encoding, and muxing in this CAVS-to-SWF conversion pipeline. |
-i input.cavs
|
Specifies the input file in CAVS format. FFmpeg will decode the AVS-standard video stream and the audio track (typically AAC) from this container for re-encoding. |
-c:v flv1
|
Sets the output video codec to FLV1 (Sorenson Spark), the native video codec for the SWF/Flash container and the broadest-compatibility option for Flash Player playback. The CAVS video stream is fully decoded and re-encoded into FLV1 — no stream copying is possible here. |
-c:a libmp3lame
|
Transcodes the audio to MP3 using the LAME encoder, which is Flash Player's most universally supported audio format. The AAC audio typically found in CAVS files is not compatible with the legacy SWF container's audio requirements without this transcode. |
-q:v 5
|
Sets the FLV1 video quality on FFmpeg's scale of 1 (highest quality, largest file) to 10 (lowest quality, smallest file). A value of 5 represents a balanced default — lowering it toward 1 will improve sharpness in the Flash output at the cost of file size. |
-b:a 128k
|
Sets the MP3 audio bitrate to 128 kilobits per second, a standard bitrate that provides acceptable stereo audio quality for Flash web playback while keeping file size manageable. Increase to 192k or 256k if audio fidelity from the original CAVS broadcast content is a priority. |
output.swf
|
Specifies the output filename and tells FFmpeg to use the SWF (Shockwave Flash) container format, which wraps the FLV1 video and MP3 audio streams into a file compatible with Adobe Flash Player. |
Common Use Cases
- Embedding CAVS-encoded Chinese broadcast footage into a legacy Flash-based e-learning platform or interactive training module that only accepts SWF video input
- Preparing Chinese national standard video content for playback in older Flash-based kiosk systems that cannot decode AVS-format video directly
- Archiving CAVS broadcast recordings into SWF format for inclusion in Flash-based multimedia CD-ROM or DVD-ROM projects from the late 2000s era
- Integrating CAVS news or documentary footage into an existing Flash website or ActionScript application where the SWF video format is the expected input
- Converting CAVS video samples for testing Flash Player compatibility when developing or debugging legacy Chinese media applications
- Enabling web designers migrating older Flash projects to reference or preview CAVS source material within their SWF-based authoring workflow
Frequently Asked Questions
No — Flash Player has no native support for the AVS (Chinese Audio Video Standard) codec used in CAVS files. This is exactly why conversion to SWF with the FLV1 codec is necessary. The FLV1 (Sorenson Spark) codec is one of Flash Player's natively supported video codecs, so after conversion the resulting SWF will play back correctly in any standard Flash Player environment.
Yes, some quality loss is expected because this is a full transcode between two lossy formats using different codecs. The CAVS video is decoded and re-encoded as FLV1, and FLV1 (Sorenson Spark) is a generation older than modern codecs like H.264, so the output may show more compression artifacts — especially in high-motion scenes or fine detail — compared to the source. The default quality setting of -q:v 5 on a scale of 1 (best) to 10 (worst) represents a middle-ground balance between file size and visual quality.
Lower the -q:v value toward 1 to improve video quality at the cost of a larger file. For example, replacing '-q:v 5' with '-q:v 2' will produce a noticeably sharper FLV1-encoded output. Similarly, you can raise the audio bitrate by changing '-b:a 128k' to '-b:a 192k' or '-b:a 256k' for better audio fidelity in the MP3 track. The full adjusted command would look like: ffmpeg -i input.cavs -c:v flv1 -c:a libmp3lame -q:v 2 -b:a 192k output.swf
Yes. On Linux or macOS, you can loop over files with a shell command such as: for f in *.cavs; do ffmpeg -i "$f" -c:v flv1 -c:a libmp3lame -q:v 5 -b:a 128k "${f%.cavs}.swf"; done. On Windows Command Prompt, use: for %f in (*.cavs) do ffmpeg -i "%f" -c:v flv1 -c:a libmp3lame -q:v 5 -b:a 128k "%~nf.swf". The browser-based tool processes one file at a time, so the FFmpeg command is especially useful for bulk conversion of large CAVS archives.
No. Neither the CAVS input format nor the SWF output container support subtitles or chapter metadata in this conversion pipeline. The SWF format is designed for self-contained Flash multimedia and has no standard mechanism for embedded subtitle tracks or chapter navigation. If your CAVS source has any associated subtitle data, it will be dropped during conversion and would need to be handled separately.
Flash Player's most broadly supported native audio codec is MP3, not AAC. While newer versions of Flash Player added limited AAC support, the FLV1 video codec paired with libmp3lame MP3 audio is the most universally compatible configuration for SWF files across all Flash Player versions and platforms. FFmpeg uses the LAME encoder (libmp3lame) to produce the MP3 stream, transcoding the AAC audio that is typically found in CAVS source files.
Technical Notes
CAVS (Chinese Audio Video Standard, also known as AVS) uses its own proprietary video codec family (AVS1/AVS+) designed by the Audio and Video Coding Standard Working Group of China as a lower-royalty alternative to H.264. FFmpeg's support for decoding CAVS/AVS video is functional but less optimized than for mainstream codecs, so decoding particularly complex CAVS streams may be slower. The SWF container is a legacy Adobe Flash format that supports only FLV1 (Sorenson Spark) or MJPEG for video and MP3 or AAC for audio — no H.264 or modern codecs. FLV1 uses a DCT-based compression scheme similar to early MPEG codecs and handles interlaced content and high-resolution video less efficiently than AVS or H.264. Since both source and output formats are lossy, generation loss accumulates. The SWF format does not preserve metadata such as creation timestamps, authorship, or language tags from the CAVS source. Transparency, multiple audio tracks, and chapter markers are unsupported by both formats in this pipeline. Files above 1GB should be processed using the provided FFmpeg command locally, as the browser tool is optimized for files under that threshold.