Convert SWF to MP3 — Free Online Tool

Extract and convert the audio track from an SWF Flash file into a standard MP3 using the LAME encoder. SWF files typically embed audio as MP3 or AAC streams, and this tool re-encodes the audio to a clean, universally compatible MP3 file — useful for recovering music, voiceovers, or sound effects from legacy Flash content.

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

SWF files are Flash container formats that bundle vector graphics, ActionScript, and media streams together. When converting to MP3, FFmpeg demuxes the SWF container to extract its embedded audio stream — which is typically encoded as MP3 (libmp3lame) or AAC. Because the output is pure audio and MP3 does not support video, the video and animation layers are discarded entirely. The extracted audio is then re-encoded using the LAME MP3 encoder at the target bitrate (default 128k), producing a standalone MP3 file compatible with virtually any media player, mobile device, or audio editing application.

What Each Flag Does

Flag What it does
ffmpeg Invokes the FFmpeg tool. In the browser-based version of this tool, this runs via FFmpeg.wasm (WebAssembly) entirely within your browser — no file is sent to any server. When running locally, this calls your system-installed FFmpeg binary.
-i input.swf Specifies the input SWF file. FFmpeg's SWF demuxer parses the Flash container to locate and extract the embedded audio and video streams for processing.
-c:a libmp3lame Sets the audio codec to LAME (libmp3lame), the standard open-source MP3 encoder. Since the output format is MP3, this encoder is required — it produces the most widely compatible lossy audio output from the audio stream extracted from the SWF.
-b:a 128k Sets the audio output bitrate to 128 kilobits per second, a common default that balances file size and audio quality for MP3. For higher fidelity extraction from SWF files that contain better-quality source audio, this can be raised to 192k or 320k.
output.mp3 Defines the output filename and format. The .mp3 extension signals FFmpeg to mux the encoded audio into a plain MP3 file — a format with no video track, no subtitles, and no container overhead beyond the MPEG audio frames and optional ID3 tag block.

Common Use Cases

  • Recovering background music or theme songs embedded in old Flash games or animations that are no longer playable due to Flash's end-of-life in 2020
  • Extracting voiceover narration from Flash-based e-learning modules to repurpose as standalone audio lessons or podcast segments
  • Pulling sound effects from archived SWF web advertisements or interactive banners for use in new projects
  • Preserving audio from legacy Flash cartoons or short films before the original SWF files become fully inaccessible
  • Extracting a music track or jingle from a Flash intro animation to use in video editing or presentation software
  • Converting SWF-embedded audio from old browser games to MP3 for archival or remix purposes

Frequently Asked Questions

Yes, some quality loss is possible. If the original SWF stores audio as MP3 (which is common with the FLV1/libmp3lame codec pairing), you are re-encoding an already-lossy stream into another lossy MP3, which introduces generation loss. If your goal is maximum fidelity, consider increasing the output bitrate to 192k or 320k in the FFmpeg command. If the source audio quality is low to begin with — as is common in older SWF files optimized for dial-up web delivery — the output MP3 will reflect those same limitations.
They are completely discarded. MP3 is a pure audio format with no capacity to store video, animation frames, vector graphics, or ActionScript interactivity. FFmpeg extracts only the audio stream from the SWF container and ignores all visual and interactive data. If you need to preserve the visual content, you would need to convert to a video format like MP4 instead.
FFmpeg will return an error indicating no audio stream was found, and no MP3 file will be produced. Some SWF files — particularly simple banner animations or interactive graphics — contain only vector graphics and ActionScript with no embedded audio whatsoever. You can verify whether an SWF contains audio by running 'ffprobe input.swf' in a terminal before attempting the conversion.
Replace the '-b:a 128k' flag value with a higher bitrate. For example, use '-b:a 192k' for a good balance of quality and file size, or '-b:a 320k' for the highest standard MP3 quality. The full command would become: ffmpeg -i input.swf -c:a libmp3lame -b:a 320k output.mp3. Keep in mind that if the source audio in the SWF was originally encoded at a low bitrate (e.g., 64k), raising the output bitrate will increase file size without recovering detail that was already lost.
Generally no. SWF files do not store audio metadata in the same structured way that formats like MP3 or FLAC do — there is no title, artist, or album tag embedded in a standard SWF. The output MP3 will typically have no ID3 tags unless you manually add them using the '-metadata' flag in FFmpeg, for example: ffmpeg -i input.swf -c:a libmp3lame -b:a 128k -metadata title='My Track' output.mp3.
Yes, on Linux or macOS you can use a shell loop: for f in *.swf; do ffmpeg -i "$f" -c:a libmp3lame -b:a 128k "${f%.swf}.mp3"; done. On Windows Command Prompt, use: for %f in (*.swf) do ffmpeg -i "%f" -c:a libmp3lame -b:a 128k "%~nf.mp3". This is especially useful when archiving a collection of old Flash files and extracting all their audio tracks at once. The browser-based tool processes one file at a time, so the FFmpeg command is the recommended approach for bulk conversions.

Technical Notes

SWF files can embed audio in two primary codecs: MP3 (using the libmp3lame encoder, tagged as SoundFormat 2 in the Flash spec) and AAC (SoundFormat 10). FFmpeg's SWF demuxer handles both, re-encoding the extracted stream to MP3 via LAME regardless of the source codec. A notable limitation is that FFmpeg's SWF demuxer has historically had inconsistent support for complex or heavily compressed SWF files — particularly those using ZLIB or LZMA compression (SWF versions 6+ and 13+ respectively). If the demuxer fails on a compressed SWF, you may need to first decompress it using a dedicated SWF tool before running the FFmpeg conversion. SWF audio was often encoded at low bitrates (32k–96k) to minimize download sizes in the dial-up era, so the perceptible quality ceiling of the output MP3 is constrained by the source. The output MP3 at 128k CBR is broadly compatible with all players and platforms, including older hardware devices and car stereos that may not support VBR encoding.

Related Tools