Extract Audio from TS to WMA — Free Online Tool
Extract and convert audio from MPEG-2 Transport Stream (.ts) broadcast files into Windows Media Audio (.wma) format using the WMAv2 codec, all processed locally in your browser. Ideal for pulling audio from broadcast recordings, DVR captures, or HLS stream segments and converting them into a Windows-compatible audio format.
to
FFmpeg Command
Copy this command to run the same conversion locally with FFmpeg on your desktop. Download FFmpeg
Drop your TS 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
MPEG-2 Transport Stream files typically carry multiplexed video and audio streams — often H.264 video with AAC or AC-3 audio, as used in digital broadcast and live streaming. This tool strips out the video entirely and re-encodes the audio stream into WMA using Microsoft's WMAv2 codec at 128k bitrate. Because the source audio codec (e.g., AAC or AC-3) is not natively compatible with the WMA container, a full audio transcode is required — meaning the audio is decoded from its original broadcast format and re-encoded into WMAv2. No video data is carried into the output file. The result is a standalone .wma audio file containing only the audio from your TS recording.
What Each Flag Does
| Flag | What it does |
|---|---|
ffmpeg
|
Invokes the FFmpeg multimedia processing tool. In the browser-based version of this tool, this runs via FFmpeg.wasm — a WebAssembly port of FFmpeg — so no files leave your device. |
-i input.ts
|
Specifies the input file as an MPEG-2 Transport Stream (.ts). FFmpeg reads and demultiplexes the TS container, identifying all available streams including video, audio, and any subtitle or data tracks embedded in the broadcast. |
-vn
|
Disables video output entirely — 'vn' stands for 'no video'. This is essential here because WMA is an audio-only container; this flag ensures FFmpeg ignores all video streams from the .ts file and produces a pure audio output. |
-c:a wmav2
|
Sets the audio codec to WMAv2 (Windows Media Audio version 2), Microsoft's standard lossy audio codec. Since the source audio in a .ts file is typically AAC or AC-3, a full transcode is performed — the source audio is decoded and re-encoded into WMAv2 format compatible with the .wma container. |
-b:a 128k
|
Sets the audio output bitrate to 128 kilobits per second. This is a common balance between file size and audio quality for WMAv2, roughly equivalent in perceived quality to 128k MP3 but using Microsoft's codec. Increase this value (e.g., 192k or 256k) if the source broadcast audio has higher fidelity and you want to better preserve it. |
output.wma
|
Defines the output file as a .wma file. FFmpeg uses this extension to determine that the output should be wrapped in the Windows Media Audio container format, which pairs with the WMAv2 codec specified by '-c:a wmav2'. |
Common Use Cases
- Extracting the audio commentary track from a recorded broadcast TV program to listen to on a Windows Media Player-compatible device
- Pulling the audio from a DVR-captured .ts file to create a standalone audio recording compatible with older Windows software or media players
- Converting audio from HLS-compatible .ts stream segments into WMA for use in a Windows-centric media workflow or legacy enterprise system
- Extracting a broadcast radio or podcast recording saved as a .ts file into a distributable WMA audio file for Windows users
- Stripping the audio from a surveillance or IPTV .ts recording to archive only the audio portion in a compact, widely-supported Windows format
- Preparing audio from a multi-track broadcast .ts file for use in a Windows application that requires WMA input rather than AAC or AC-3
Frequently Asked Questions
Yes, some quality loss is expected. The audio in a .ts file is typically encoded as AAC or AC-3 — both lossy formats — and converting to WMAv2 (also lossy) means a generation of re-encoding is applied. This is sometimes called 'lossy-to-lossy transcoding' and can introduce subtle artifacts, especially at lower bitrates. For critical listening purposes, increasing the output bitrate to 192k or 256k can help minimize the degradation.
No. The WMA container format only supports a single audio track, whereas MPEG-2 Transport Streams commonly carry multiple audio tracks — for example, different language tracks in a broadcast. This tool extracts the default audio track from the .ts file. If you need a specific secondary track, you would need to modify the FFmpeg command to target it using the '-map' flag before converting.
Subtitles will not carry over — WMA does not support embedded subtitle tracks, and the conversion explicitly discards all video and non-audio stream data. Basic metadata tags such as title or artist can be written to WMA files, but transport stream files often lack standard metadata, so the output WMA file will typically have minimal or no embedded tags.
The audio bitrate is controlled by the '-b:a' flag in the command. The default is 128k, but you can substitute any supported WMA bitrate such as 96k, 192k, or 320k — for example: 'ffmpeg -i input.ts -vn -c:a wmav2 -b:a 192k output.wma'. Higher bitrates produce better audio fidelity at the cost of larger file sizes. Note that WMAv2 does not use a variable-quality CRF system like some video codecs — bitrate is the primary quality control parameter.
The command shown converts a single file, but on your desktop you can batch process multiple .ts files using a shell loop. On Linux or macOS: 'for f in *.ts; do ffmpeg -i "$f" -vn -c:a wmav2 -b:a 128k "${f%.ts}.wma"; done'. On Windows Command Prompt: 'for %f in (*.ts) do ffmpeg -i "%f" -vn -c:a wmav2 -b:a 128k "%~nf.wma"'. The browser-based tool processes one file at a time.
WMAv2 is the significantly improved successor to WMAv1, offering better audio fidelity at equivalent bitrates and broader device compatibility. WMAv1 is considered largely obsolete and was designed for very low bitrate streaming conditions in early Windows Media environments. FFmpeg defaults to WMAv2 ('wmav2') for good reason — there is virtually no scenario where WMAv1 would be preferred for a modern conversion from broadcast audio.
Technical Notes
MPEG-2 Transport Streams are designed for robust broadcast delivery and can carry multiple program streams, each with independent video, audio, and subtitle components. When extracting audio from a .ts file, FFmpeg selects the best audio stream by default — usually the first or highest-quality track — which in broadcast contexts is most commonly AAC or AC-3. Both of these must be fully decoded before re-encoding into WMAv2, as there is no direct stream copy path from AAC or AC-3 into the WMA container. WMAv2 is a lossy codec without a lossless mode, so this conversion is inherently destructive. The output bitrate ceiling of 320k for WMAv2 is a practical limit; going beyond 192k or 256k yields diminishing returns for most broadcast audio sources, which are typically encoded at 128k–256k to begin with. The WMA container does not support multichannel audio beyond stereo in its standard form, so if the source .ts file contains 5.1 surround AC-3 audio, FFmpeg will downmix it to stereo unless additional flags are used. DRM can be added to WMA files externally, though this tool produces unprotected output. File sizes for WMA output will generally be similar to or slightly smaller than the audio-only equivalent of the source, depending on the original broadcast audio bitrate.