Convert WTV to SWF — Free Online Tool

Convert WTV recorded TV files from Windows Media Center into SWF (Shockwave Flash) format, re-encoding the video stream to FLV1 (Sorenson Spark) and audio to MP3 using LAME — making old DVR recordings embeddable in legacy Flash-based web players and interactive multimedia projects.

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

WTV files contain broadcast TV recordings captured by Windows Vista/7 Media Center, typically encoded with H.264 video and AAC or AC3 audio, wrapped in a proprietary Microsoft container. Converting to SWF requires full re-encoding: the video stream is transcoded from H.264 to FLV1 (Sorenson Spark), the codec natively supported inside SWF containers, and the audio is transcoded from AAC/AC3 to MP3 using the LAME encoder — the only audio format widely supported in SWF. The resulting file is a self-contained SWF with embedded video and audio, suitable for Flash-era players. Note that SWF does not support subtitles, chapters, or multiple audio tracks, so any closed captions or secondary audio tracks present in the WTV source will be dropped during conversion.

What Each Flag Does

Flag What it does
ffmpeg Invokes the FFmpeg command-line tool, which handles all media decoding, transcoding, and muxing. In the browser version, this runs as FFmpeg.wasm compiled to WebAssembly, executing entirely on your local machine without any server upload.
-i input.wtv Specifies the input file — a WTV container from Windows Media Center, which FFmpeg demuxes to extract the H.264 video, AAC/AC3 audio, and any subtitle or metadata streams present in the broadcast recording.
-c:v flv1 Transcodes the video stream to FLV1 (Sorenson Spark / H.263), the primary video codec supported inside SWF containers. This replaces the H.264 video from the WTV source with a lower-efficiency codec required for Flash Player compatibility.
-c:a libmp3lame Transcodes the audio stream to MP3 using the LAME encoder, converting from the AAC or AC3 audio found in WTV broadcast recordings. MP3 via LAME is the most broadly compatible audio format for SWF, supported across all major Flash Player versions.
-q:v 5 Sets the FLV1 video quality on a scale from 1 (best quality, largest file) to 10 (lowest quality, smallest file). A value of 5 is the mid-range default, balancing file size against visual quality for typical broadcast TV content.
-b:a 128k Sets the MP3 audio output bitrate to 128 kilobits per second, a standard quality level for voice and broadcast audio. For TV content with music or surround sound downmixed to stereo, increasing this to 192k will noticeably improve audio fidelity.
output.swf Defines the output filename and container format. The .swf extension tells FFmpeg to mux the FLV1 video and MP3 audio into a self-contained SWF (Small Web Format) file compatible with Adobe Flash Player.

Common Use Cases

  • Embedding an old recorded TV broadcast into a legacy Flash-based e-learning platform or intranet portal that only accepts SWF media files
  • Archiving Windows Media Center DVR recordings into a format compatible with Flash-based video players used in early 2000s and 2010s museum kiosk installations
  • Repurposing a recorded TV segment as a looping background video clip inside an Adobe Animate (formerly Flash Professional) interactive presentation
  • Converting a WTV sports or news broadcast recording into SWF for playback in a legacy corporate training system built on Flash before HTML5 video was adopted
  • Preparing recorded TV content for use in a Macromedia/Adobe Flash authoring project that requires FLV1-encoded video embedded directly in the SWF container
  • Migrating older Windows Media Center library content into SWF format for a digital signage system that was built on Flash Player infrastructure

Frequently Asked Questions

No. WTV files from Windows Media Center often contain embedded closed captions or teletext subtitle streams from the original broadcast. The SWF format does not support subtitle or caption tracks of any kind, so all subtitle data will be silently dropped during conversion. If preserving captions is important, you should extract them separately before converting, or consider an alternative output format like MKV or MP4 that supports subtitle embedding.
WTV recordings are typically stored with H.264 video, which is a significantly more efficient and higher-quality codec than FLV1 (Sorenson Spark) used in SWF. Converting to FLV1 introduces additional quality loss on top of any compression already present in the WTV source, since this is a full transcode between two lossy codecs. The default quality setting (-q:v 5) is a mid-range compromise; lowering this value toward 1 will improve quality at the cost of a larger file size. Expect the SWF to look softer and show more compression artifacts, especially in fast-motion broadcast content like sports.
SWF only supports a single audio track, so FFmpeg will automatically select the default audio stream from the WTV file — typically the first audio track, which is usually the primary language broadcast. Secondary audio tracks such as SAP (Secondary Audio Program) language alternatives or audio description tracks will be discarded. If you need a specific non-default audio track, you can add '-map 0:a:1' (or the appropriate index) to the FFmpeg command before the output filename to manually select it.
Video quality is controlled by the '-q:v' flag, which accepts values from 1 (highest quality, largest file) to 10 (lowest quality, smallest file), with 5 as the default. For example, use '-q:v 2' for near-maximum quality or '-q:v 8' for a highly compressed, small-file result. Audio bitrate is set with '-b:a', accepting values like 64k, 96k, 128k, 192k, or 256k — replace '128k' with '192k' for better-sounding MP3 audio from a broadcast source. For TV recordings where audio clarity matters, 192k is a good balance of quality and file size.
Yes, you can adapt the command into a shell loop for bulk processing. On Windows Command Prompt, use: 'for %f in (*.wtv) do ffmpeg -i "%f" -c:v flv1 -c:a libmp3lame -q:v 5 -b:a 128k "%~nf.swf"'. On Linux or macOS bash, use: 'for f in *.wtv; do ffmpeg -i "$f" -c:v flv1 -c:a libmp3lame -q:v 5 -b:a 128k "${f%.wtv}.swf"; done'. This is particularly useful for converting a large Windows Media Center library, though keep in mind that FLV1 transcoding is CPU-intensive for long recordings.
No. WTV files store rich DVR metadata including show title, episode description, channel name, broadcast time, and genre tags in Microsoft's proprietary metadata format. The SWF container has virtually no standardized metadata support, so this information cannot be preserved during conversion. If retaining this metadata matters for your archive, consider extracting it with a tool like MCEBuddy or Windows Media Center's metadata export before converting, or appending the show name to the output filename manually.

Technical Notes

The FLV1 codec (also known as Sorenson Spark or H.263) embedded in the SWF output is a significantly older and less efficient codec than the H.264 typically found in WTV broadcast recordings. This means the conversion is always a lossy-to-lossy transcode with generation loss — the FLV1 encoder struggles particularly with high-motion broadcast content like live sports, news tickers, and rapidly changing scenes, producing blocking and smearing artifacts more visible than in the original WTV. SWF's audio is handled as MP3 via LAME, which is broadly compatible with Flash Player versions going back to Flash 6. One important limitation is SWF's single-audio-track constraint: WTV files from bilingual broadcasts or those with audio description tracks will lose all but the primary audio stream. Additionally, WTV's proprietary DRM-protected recordings (common with premium cable channels recorded via CableCARD) cannot be processed by FFmpeg at all and will produce a decryption error — only free-to-air or unencrypted cable recordings can be converted. File sizes for SWF output tend to be larger than equivalent FLV container files due to SWF's overhead, and very long recordings (over 60 minutes) may produce SWF files with playback compatibility issues in older Flash Player versions.

Related Tools