Convert CAVS to FLV — Free Online Tool
Convert CAVS (Chinese Audio Video Standard) files to FLV (Flash Video) format, re-encoding the video stream with the H.264/libx264 codec and audio with AAC at 128k — producing a widely-compatible Flash-era web video container from a niche Chinese broadcast standard.
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 use the AVS1 video codec, a Chinese national standard that is not natively supported by FLV containers. During this conversion, FFmpeg fully decodes the AVS1 video stream and re-encodes it to H.264 using the libx264 encoder with a CRF of 23, which is a full transcode — not a remux. The audio, typically encoded in a Chinese broadcast-standard format, is similarly decoded and re-encoded to AAC at 128k bitrate. The output is wrapped in an FLV container, which was designed by Adobe for Flash Player streaming and supports H.264 video and AAC audio as its primary modern codec pairing.
What Each Flag Does
| Flag | What it does |
|---|---|
ffmpeg
|
Invokes the FFmpeg command-line tool, which handles all decoding, encoding, and container muxing. In this case it will decode the AVS1 video and source audio from the CAVS file and re-encode both into the FLV container. |
-i input.cavs
|
Specifies the input file in CAVS format. FFmpeg will detect the AVS1 video codec and associated audio stream inside this Chinese broadcast standard container. |
-c:v libx264
|
Sets the video encoder to libx264, which re-encodes the decoded AVS1 video stream to H.264 — the codec required for modern FLV output and the only way to get the CAVS video into an FLV container. |
-c:a aac
|
Sets the audio encoder to AAC (Advanced Audio Coding), re-encoding the source audio into the AAC format that is natively supported by the FLV container for high-compatibility Flash and RTMP playback. |
-crf 23
|
Sets the Constant Rate Factor for the H.264 encode to 23, FFmpeg's default quality level. This controls the perceptual quality-to-file-size tradeoff for the transcoded video — lower values (e.g., 18) give higher quality at larger file sizes. |
-b:a 128k
|
Sets the AAC audio bitrate to 128 kilobits per second, a standard quality level for stereo audio in streaming and web video contexts — appropriate for the FLV container's broadcast and streaming use cases. |
output.flv
|
Specifies the output filename with the .flv extension, instructing FFmpeg to wrap the H.264 video and AAC audio streams into an FLV (Flash Video) container. |
Common Use Cases
- Archiving or repurposing CAVS-encoded Chinese broadcast recordings for playback in older web environments or legacy Flash-based video players.
- Preparing CAVS source footage for upload to platforms or CMS systems that specifically require FLV input, such as certain older streaming servers or video management systems.
- Converting Chinese television or satellite broadcast captures in CAVS format into a format compatible with RTMP-based live streaming infrastructure, which historically relies on FLV as its transport container.
- Transcoding CAVS content for use in Flash-based e-learning or multimedia applications where FLV with H.264 is the expected video format.
- Making niche CAVS recordings accessible for editing in older non-linear editing tools that accept FLV/H.264 but cannot parse the AVS1 codec natively.
Frequently Asked Questions
Yes, this conversion involves a full transcode on both the video and audio streams, so some generation loss is unavoidable. The CAVS AVS1 video is decoded and re-encoded to H.264 using CRF 23, which is a perceptually good default quality level but is still lossy. If you want to minimize quality loss, you can lower the CRF value (e.g., to 18) in the FFmpeg command — lower CRF means higher quality and larger file size.
The FLV container specification only supports specific video codecs, primarily H.264 (libx264) and the older Sorenson Spark/On2 VP6 FLV codecs. The AVS1 codec used in CAVS files is not among them, so the video stream must be fully decoded and re-encoded to H.264 before it can be placed in an FLV container. There is no remux shortcut available for this format pair.
FLV is a legacy format tied to Adobe Flash Player, which reached end-of-life in December 2020. However, FLV remains relevant for specific use cases: RTMP streaming protocols (used by platforms like Twitch and many live streaming servers) still use FLV as their transport container, and some older CMS platforms and video servers still ingest FLV files. If your goal is general web playback or archival, formats like MP4 would be more broadly supported.
The video quality is controlled by the -crf flag, which accepts values from 0 (lossless, very large file) to 51 (worst quality, smallest file). The default in this command is 23, which is a good general-purpose balance. To improve quality at the cost of file size, try -crf 18; for a smaller file with more compression, try -crf 28. You can also adjust audio quality by changing -b:a 128k to a higher bitrate like -b:a 192k or -b:a 256k.
Yes. On Linux or macOS, you can use a shell loop: 'for f in *.cavs; do ffmpeg -i "$f" -c:v libx264 -c:a aac -crf 23 -b:a 128k "${f%.cavs}.flv"; done'. On Windows Command Prompt, use: 'for %f in (*.cavs) do ffmpeg -i "%f" -c:v libx264 -c:a aac -crf 23 -b:a 128k "%~nf.flv"'. This is especially useful for batch-processing CAVS broadcast archives, and the browser-based tool on this page is better suited for single files up to 1GB.
FLV has limited metadata support compared to containers like MKV or MP4. Basic metadata such as duration and bitrate are typically written automatically by FFmpeg, but rich metadata tags (title, author, date) from the CAVS source are unlikely to carry over reliably into FLV. If metadata preservation is important, consider using MP4 as your output container instead, which has more robust metadata handling.
Technical Notes
CAVS (Chinese Audio Video Standard, also known as AVS1 or GB/T 20090) is a Chinese national standard codec developed by the Audio Video coding Standard Workgroup of China. It was designed as a royalty-reduced alternative to H.264/AVC for Chinese broadcast and digital television applications. Because AVS1 is not supported by the FLV container, this conversion mandates a full video transcode to H.264 via libx264 — there is no stream-copy path. The libx264 encoder with CRF 23 produces H.264 Baseline or Main Profile output that is well-suited to FLV's streaming heritage. FLV with H.264+AAC is sometimes called 'F4V' in Adobe's terminology, though FFmpeg outputs it as a standard .flv file. Note that FLV does not support subtitles, chapters, or multiple audio tracks, and neither does CAVS in typical broadcast use, so no stream data of those types will be lost in this particular conversion. File sizes will vary significantly depending on the complexity and length of the source CAVS content, as the full re-encode means the output bitrate is determined by the CRF target rather than the source bitrate.