Extract Audio from SWF to AIFC — Free Online Tool

Extract audio from SWF Flash files and save it as AIFC, converting the embedded MP3 or AAC audio stream into a high-quality PCM big-endian audio file suitable for professional audio workflows. This tool runs entirely in your browser using FFmpeg.wasm — no upload required, no file size limit under 1GB.

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 typically carry audio encoded as MP3 (via libmp3lame) or AAC, embedded alongside Flash vector graphics and interactive content. This conversion strips the video and animation layers entirely using the -vn flag, then decodes the compressed audio stream and re-encodes it into AIFC using the pcm_s16be codec — 16-bit signed PCM stored in big-endian byte order, which is the default uncompressed format for AIFC. The result is a lossless PCM representation of the audio that was originally lossy-compressed inside the SWF, meaning no further generation loss is introduced after this step, though any quality loss from the original MP3 or AAC encoding inside the SWF is already baked in and cannot be recovered.

What Each Flag Does

Flag What it does
ffmpeg Invokes the FFmpeg tool, which handles demuxing the SWF container, decoding the embedded MP3 or AAC audio, and encoding the output as AIFC PCM audio.
-i input.swf Specifies the input SWF file. FFmpeg's SWF demuxer reads the Flash container and exposes any detectable audio and video streams for processing.
-vn Disables all video output streams. Since SWF files contain vector graphics, FLV1-encoded video, and interactive animation data that have no place in an audio-only AIFC file, this flag ensures only the audio stream is processed.
-c:a pcm_s16be Encodes the audio output using 16-bit signed PCM in big-endian byte order, which is the native and most compatible uncompressed codec for the AIFC container format. This decodes the lossy MP3 or AAC from the SWF into raw PCM without introducing further compression.
-b:a 128k Sets a target audio bitrate of 128 kbps, though this parameter has no effect on uncompressed PCM codecs like pcm_s16be — the actual bitrate is fixed by sample rate and bit depth. It can be safely omitted from the command.
output.aifc Defines the output filename and tells FFmpeg to wrap the PCM audio in an AIFC container, Apple's extended AIFF format that supports both uncompressed and compressed audio in a big-endian structure.

Common Use Cases

  • Recovering background music or sound effects from legacy SWF Flash games or animations for use in audio editing software like Pro Tools or Logic Pro, which natively support AIFC
  • Archiving the audio track from Flash-based e-learning modules or presentations before they become permanently inaccessible due to Flash Player deprecation
  • Extracting voiceover narration from an SWF interactive tutorial to re-use or re-edit the audio in a professional post-production pipeline that requires PCM AIFC files
  • Pulling music or jingles from SWF banner advertisements or promotional animations to use as reference tracks or in audio libraries
  • Converting the audio from Flash-based web cartoons or episodes into a format compatible with Apple's professional audio tools for further mastering or archiving
  • Preparing audio extracted from SWF files for delivery to broadcasting or post-production workflows that mandate uncompressed big-endian PCM in AIFC containers

Frequently Asked Questions

No — the AIFC output will not exceed the quality of the original audio inside the SWF. SWF files store audio as lossy MP3 or AAC, and that compression damage is permanent. The conversion decodes the lossy stream and stores it as uncompressed PCM in the AIFC container, which means no additional quality loss is introduced, but the original lossy artifacts are preserved in the output. Think of it as locking in current quality rather than restoring lost quality.
AIFC supports both uncompressed PCM and compressed audio, but pcm_s16be (16-bit signed big-endian PCM) is the format's default and most compatible codec, designed around Apple's big-endian architecture conventions. Using uncompressed PCM makes the AIFC file immediately usable in professional DAWs and broadcast tools without any decoding overhead, and avoids introducing a second round of lossy compression on audio that was already lossy inside the SWF.
Yes. AIFC supports several PCM codecs including pcm_s24be (24-bit), pcm_s32be (32-bit integer), pcm_f32be (32-bit float), and pcm_f64be (64-bit float). To use 24-bit output, change -c:a pcm_s16be to -c:a pcm_s24be in the FFmpeg command. Keep in mind that since the source audio in the SWF is already lossy MP3 or AAC, using a higher bit depth will produce a larger file but will not recover detail lost during the original encoding.
You can use a shell loop to process multiple files. On Linux or macOS, run: for f in *.swf; do ffmpeg -i "$f" -vn -c:a pcm_s16be -b:a 128k "${f%.swf}.aifc"; done. On Windows Command Prompt, use: for %f in (*.swf) do ffmpeg -i "%f" -vn -c:a pcm_s16be -b:a 128k "%~nf.aifc". This is especially useful for archiving large collections of legacy Flash content and is the recommended approach for files over 1GB, which exceed this browser tool's limit.
For uncompressed PCM codecs like pcm_s16be, the bitrate is determined entirely by sample rate and bit depth rather than a target bitrate parameter, so the -b:a 128k flag has no practical effect on the output. The actual bitrate of 16-bit stereo PCM at 44.1kHz is fixed at approximately 1411 kbps regardless of what -b:a specifies. You can safely omit -b:a from the command when using PCM codecs.
Everything except the audio is discarded. The -vn flag explicitly tells FFmpeg to ignore all video streams, which in an SWF context includes the FLV1-encoded video, vector graphics, ActionScript interactivity, and animation data. Only the first detected audio stream is decoded and written to the AIFC output. If an SWF contains multiple audio segments or dynamically triggered sounds tied to interactivity, only the continuous audio track that FFmpeg can demux directly will be captured.

Technical Notes

SWF demuxing in FFmpeg can be inconsistent because Flash files were designed as interactive containers, not linear media — audio in some SWF files is embedded as discrete sound events rather than a single continuous stream, which may cause FFmpeg to capture only part of the audio or produce silence. The default audio codec inside SWF is MP3 (libmp3lame), though AAC is also common in later Flash content. AIFC as an output container uses big-endian byte ordering inherited from the original AIFF specification, which differs from the little-endian WAV format common on Windows systems; this means AIFC files produced here are natively compatible with macOS and Apple professional audio tools but may require codec support on Windows DAWs. The pcm_s16be codec produces standard CD-quality audio at 16-bit depth. Since the source is always lossy, increasing the AIFC bit depth beyond 16-bit (e.g., to pcm_s24be) will increase file size without recovering audio fidelity. AIFC does not support chapters, subtitles, or multiple audio tracks, so only one audio stream from the SWF will appear in the output.

Related Tools