Convert WMV to MPG — Free Online Tool
Convert WMV files to MPG format by re-encoding the Microsoft proprietary video stream (typically MS-MPEG-4) into MPEG-2 video with MP2 audio — the same codec standard used in DVD and broadcast video production. Ideal for making Windows Media Video files compatible with DVD authoring tools, legacy broadcast systems, and hardware players that predate modern container support.
to
FFmpeg Command
Copy this command to run the same conversion locally with FFmpeg on your desktop. Download FFmpeg
Drop your WMV 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
WMV files use Microsoft's Advanced Systems Format (ASF) container with proprietary video codecs (msmpeg4 or msmpeg4v2) and WMA audio (wmav2). Because neither the container nor the codecs are compatible with the MPEG program stream format used by MPG, this conversion requires a full transcode of both streams. The video is decoded from Microsoft's MPEG-4 variant and re-encoded as MPEG-2 video using a quality scale of 2 (the highest end of the 1–31 scale, where lower numbers mean better quality). The WMA audio is simultaneously decoded and re-encoded as MP2 (MPEG-1 Audio Layer II), which is the native audio codec for MPEG-2 program streams and DVD video. The output is written into an MPEG program stream container (.mpg) with no subtitle, chapter, or DRM data carried over, as MPG supports none of those features.
What Each Flag Does
| Flag | What it does |
|---|---|
ffmpeg
|
Invokes the FFmpeg command-line tool. In this browser-based tool, the same FFmpeg engine runs locally via WebAssembly (ffmpeg.wasm) without any server upload. |
-i input.wmv
|
Specifies the input file in WMV format. FFmpeg automatically detects the ASF container and identifies the enclosed video codec (msmpeg4 or msmpeg4v2) and audio codec (typically wmav2) to prepare the appropriate decoders. |
-c:v mpeg2video
|
Sets the output video codec to MPEG-2, the standard used in DVD video and broadcast television. Since WMV uses Microsoft's proprietary MS-MPEG-4 video codec, a full re-encode is required — there is no stream copy possible between these two incompatible codec families. |
-c:a mp2
|
Sets the output audio codec to MP2 (MPEG-1 Audio Layer II), which is the native audio format for MPEG-2 program streams. The WMA audio from the source WMV cannot be carried into an MPG container and must be fully decoded and re-encoded into MP2. |
-q:v 2
|
Sets the MPEG-2 video quality using the variable quantizer scale, where 1 is the highest quality and 31 is the lowest. A value of 2 produces near-maximum quality MPEG-2 output, appropriate for preserving the visual fidelity of the source WMV during this lossy-to-lossy transcode. |
-b:a 192k
|
Sets the MP2 audio output bitrate to 192 kilobits per second, which is the standard audio bitrate for DVD-quality MPEG-2 video and provides a significant quality upgrade over typical WMV streaming audio bitrates. |
output.mpg
|
Specifies the output filename with the .mpg extension. FFmpeg uses this extension to automatically select the MPEG program stream muxer, producing a file compatible with DVD authoring tools, legacy broadcast ingest systems, and MPEG-2 capable hardware players. |
Common Use Cases
- Importing old Windows Media Video recordings into DVD authoring software like DVD Architect or Nero Vision, which require MPEG-2 video and MP2 audio in an MPG container
- Preparing WMV footage for broadcast ingest systems or legacy video servers that accept only MPEG-2 program streams
- Playing WMV content on standalone DVD players or set-top boxes that support MPEG-2 playback but have no Windows Media codec support
- Converting WMV screen recordings or presentations into MPG for use in older non-linear editing systems that predate ASF/WMV support
- Archiving Microsoft-proprietary WMV files into the more openly standardized MPEG-2 format to reduce long-term dependency on Windows Media infrastructure
- Submitting video content to platforms or institutions that mandate MPEG-2 delivery specifications, such as certain broadcast archives or educational media repositories
Frequently Asked Questions
Yes, some quality loss is unavoidable because this is a transcode between two lossy formats — the WMV's MS-MPEG-4 video must be fully decoded and re-encoded as MPEG-2. However, using -q:v 2 (the default in this tool) produces near-maximum quality MPEG-2 output, minimizing generational loss. The degree of visible degradation depends on the source WMV bitrate; a high-bitrate WMV converted at -q:v 2 will look very close to the original.
WMV files typically use WMA (Windows Media Audio, codec wmav2) for audio, which is a Microsoft proprietary format. MPG files based on MPEG-2 program streams require audio encoded in MPEG-native formats, with MP2 (MPEG-1 Audio Layer II) being the standard. WMA audio cannot be carried into an MPG container, so a full audio transcode to MP2 at 192k is performed. This is the same audio format used in standard-definition DVD video.
No. WMV files with Microsoft DRM (Digital Rights Management) protection cannot be processed by FFmpeg or any browser-based tool. The DRM encryption prevents the file from being decoded. Only unprotected WMV files — such as those you recorded or created yourself — can be converted. If your WMV file plays normally in Windows Media Player but fails to convert, DRM protection is the most likely cause.
Change the -q:v value to control MPEG-2 output quality. The scale runs from 1 (highest quality, largest file) to 31 (lowest quality, smallest file). The default of 2 is near-maximum quality. For example, use -q:v 5 for a good balance of quality and file size, or -q:v 10 for smaller files where quality is less critical. You can also replace -q:v with -b:v to use a fixed bitrate instead, such as -b:v 4000k for 4 Mbps MPEG-2 output typical of DVD video.
Yes. On Linux or macOS you can run a shell loop: for f in *.wmv; do ffmpeg -i "$f" -c:v mpeg2video -c:a mp2 -q:v 2 -b:a 192k "${f%.wmv}.mpg"; done. On Windows Command Prompt use: for %f in (*.wmv) do ffmpeg -i "%f" -c:v mpeg2video -c:a mp2 -q:v 2 -b:a 192k "%~nf.mpg". This processes each WMV file in the current directory and outputs a matching MPG file.
MPEG-2 video at high quality settings (-q:v 2) typically produces larger files than MS-MPEG-4 video at equivalent visual quality, because MPEG-2 is a less efficient codec than even older MPEG-4 variants. Additionally, WMV files are often encoded at relatively low bitrates optimized for streaming, while the default -q:v 2 setting targets near-maximum MPEG-2 quality. If file size is a concern, increase the -q:v value (e.g., -q:v 4 or -q:v 6) or use -b:v to set a fixed target bitrate matching your source WMV's original bitrate.
Technical Notes
The WMV-to-MPG conversion involves crossing two significant technical boundaries: container format and codec family. WMV uses Microsoft's ASF (Advanced Systems Format) container, which supports features like DRM, multiple audio tracks, and streaming metadata — none of which survive in the output MPG file, as the MPEG program stream format supports none of them. The video codec transition from msmpeg4/msmpeg4v2 (Microsoft's pre-standard MPEG-4 variants) to mpeg2video is a generational step backward in compression efficiency but a step forward in hardware and standards compatibility. MPEG-2 video encoded at -q:v 2 will generally have a higher bitrate than the source WMV at equivalent resolution, reflecting the less efficient codec. The MP2 audio output at 192k is fully compliant with MPEG-2 program stream specifications and is accepted by DVD authoring tools and broadcast systems. Note that the -f asf flag used internally when creating WMV files is not needed on the input side here — FFmpeg auto-detects the ASF container. The output MPG file uses an MPEG program stream (PS) mux, not a transport stream (TS); if you need MPEG-2 transport stream output (e.g., for broadcast), the extension and mux would need to change to .ts with -f mpegts.