Convert FLV to AAC — Free Online Tool

Extract and convert the AAC audio stream from an FLV file into a standalone AAC file — ideal for pulling music, speech, or sound effects from legacy Flash Video content. Since FLV files commonly carry AAC-encoded audio, this conversion is often a near-lossless stream extraction rather than a full re-encode.

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

FLV (Flash Video) containers typically store audio encoded as either AAC or MP3. When the audio track is already AAC — which is common in FLV files created by Flash encoders or screen recorders — FFmpeg extracts and re-encodes it to a target bitrate of 128k using the native AAC encoder. The video stream is discarded entirely. If the source FLV uses MP3 audio instead, the MP3 data is decoded and then encoded into AAC. The output is a raw AAC audio file (.aac), which contains the audio elementary stream without any container wrapper, making it extremely lightweight and portable.

What Each Flag Does

Flag What it does
ffmpeg Invokes the FFmpeg binary. In this browser-based tool, FFmpeg runs locally via WebAssembly (FFmpeg.wasm), so your FLV file never leaves your device.
-i input.flv Specifies the input FLV file. FFmpeg will probe the container to detect the audio codec (typically AAC or MP3) and the video codec (commonly H.264 in modern FLV files) before processing.
-c:a aac Sets the audio codec to FFmpeg's built-in AAC encoder, producing MPEG-4 AAC-LC output. This is the codec that will encode the audio data extracted from the FLV into the output .aac file.
-b:a 128k Sets the target audio bitrate to 128 kilobits per second, which is the standard default for AAC and delivers good quality for both speech and music. Increase to 192k or 256k for higher fidelity audio from the source FLV.
output.aac Defines the output filename and format. The .aac extension tells FFmpeg to write an ADTS-framed AAC elementary stream — an audio-only file with no video container, compatible with Apple, Android, and most modern media players.

Common Use Cases

  • Extracting a music track or jingle from an old FLV promotional video downloaded before Flash's end-of-life in 2020
  • Pulling a voice-over or narration from a Flash-based e-learning module to repurpose it as a podcast segment or standalone audio file
  • Converting FLV recordings from legacy screen-capture software (like Camtasia's older FLV exports) into AAC for use in video editing timelines that don't accept FLV
  • Extracting game audio or sound effects from FLV files ripped from Flash games for use in modern projects
  • Preparing audio from archived FLV news or lecture clips for playback on iPhones, iPads, or Android devices that natively support AAC but not FLV
  • Reducing file size by stripping the video stream from a large FLV file when only the audio content is needed for archival or distribution

Frequently Asked Questions

Yes, there is a small quality loss because the audio is decoded and re-encoded even if the source is AAC. A true lossless copy would require the '-c:a copy' flag, but that only works if you want a raw extracted stream and can accept no bitrate control. At 128k — the default for this tool — the re-encoded AAC output is transparent for most speech and music content. If you need maximum fidelity, raise the bitrate to 192k or 256k using the command's '-b:a' flag.
The video stream is completely discarded. AAC is an audio-only format with no container support for video, so FFmpeg automatically drops all video data. This is intentional — the output .aac file will contain only the audio elementary stream. This also means the output file is much smaller than the original FLV.
FFmpeg handles this automatically. If the FLV's audio is MP3-encoded, FFmpeg will decode the MP3 stream and re-encode it as AAC at the specified bitrate (128k by default). The command shown on this page works correctly regardless of whether the source FLV contains AAC or MP3 audio — no changes to the command are needed.
Modify the '-b:a 128k' portion of the command. For example, use '-b:a 192k' for higher quality or '-b:a 96k' for a smaller file. AAC typically achieves near-transparent quality for music at 128k–192k, so values in that range are recommended for general use. Going below 96k may introduce audible artifacts, especially for complex audio like music with high-frequency content.
Yes. The output uses the AAC codec in an ADTS-wrapped elementary stream format (the .aac extension), which is broadly compatible with Apple devices, iTunes, Android media players, and most modern audio software. AAC was originally developed partly by Apple and is the native audio format for iTunes purchases and iOS, so compatibility is excellent across the Apple ecosystem in particular.
The single-file command shown targets one input at a time, but you can batch process in a terminal using a shell loop. On Linux or macOS: 'for f in *.flv; do ffmpeg -i "$f" -c:a aac -b:a 128k "${f%.flv}.aac"; done'. On Windows Command Prompt: 'for %f in (*.flv) do ffmpeg -i "%f" -c:a aac -b:a 128k "%~nf.aac"'. This is especially useful for archiving a folder of old FLV recordings in one step.

Technical Notes

FLV is a legacy Adobe container that supports H.263, Sorenson Spark, VP6, and H.264 video alongside AAC or MP3 audio. When targeting AAC output, the video codec is irrelevant — only the audio stream matters. FFmpeg's native AAC encoder (used here) produces compliant MPEG-4 AAC-LC audio, which is the most widely supported AAC profile. The alternative 'libfdk_aac' encoder generally offers slightly better quality at equivalent bitrates but requires a custom FFmpeg build with that library enabled. Metadata embedded in the FLV (such as title or artist tags stored in the FLV's onMetaData event) is typically not transferred to the AAC output, as FLV metadata structures differ from standard ID3 or iTunes atom tags. If metadata preservation is critical, consider converting to an AAC container like M4A instead, which supports proper tagging. The raw .aac output uses ADTS framing, which lacks a seekable index — this is generally fine for direct playback but may cause minor seek imprecision in some players.

Related Tools