0XC00D0BD5

NS_E_INVALID_NUM_PASSES (0XC00D0BD5) Fix for Windows Media Encoding

This error hits when Windows Media Encoder gets the wrong number of preprocessing passes for a stream output type. It's almost always a mismatched profile or bad encoding settings.

When You See This Error

You're encoding a video file with Windows Media Encoder (usually version 9 Series or the one bundled with older Windows SDKs), and you select a two-pass VBR or CBR profile. Midway through the preprocessing step, the encoder stops and throws NS_E_INVALID_NUM_PASSES (0XC00D0BD5). The message reads: "The wrong number of preprocessing passes was used for the stream's output type." This happens most often when you try to encode a file from a source that's already been preprocessed (like a pre-sized WMV) or when you switch between single-pass and two-pass profiles mid-session without resetting the filter graph.

Root Cause

The culprit here is almost always a mismatch between what the profile expects and what the encoder's internal preprocessing filter set up. Windows Media Encoder uses a two-pass system for quality encodes: pass one analyzes the content, pass two actually encodes using that analysis. The error means the encoder thinks the filter graph has been prepped for a different number of passes than what the output profile needs. This can happen if:

  • You selected a two-pass profile but the source file already has a single-pass analysis pass baked in (common when re-encoding a previously encoded WMV).
  • You changed profiles mid-encoding without rebuilding the graph — the old pass count sticks around.
  • You're using a third-party tool that wraps the Windows Media Encoder API and doesn't reset the pass count properly.

Don't bother with reinstalling the encoder or hunting for registry keys — that rarely helps. The fix is about making sure the encoder starts with a clean slate and the right profile.

How to Fix It

  1. Reset the filter graph completely. Close Windows Media Encoder entirely. Then go into %TEMP% and delete any files that start with WMEnc or WMV. These are leftover preprocessing files from a previous session. Reopen the encoder.
  2. Select your profile first, then the source. Don't drag a source file in before setting your output profile. Open the encoder, go to the Properties panel, select your compression profile (e.g., "Windows Media Video 9 VBR Quality 100") FIRST. Then add your video source file. This ensures the filter graph builds with the correct pass count from the start.
  3. If it still fails, force a single-pass fallback. Switch your profile to a single-pass CBR variant (like "Windows Media Video 9 CBR"). Encode once. Then re-encode that output with your original two-pass profile. It's a workaround, but it works because the intermediate file is already in a clean state. I've done this dozens of times for stubborn files.

Still Failing?

Check three things:

  • Source file codec: If your source is an AVI with a weird codec (like old DivX or MJPEG), the encoder might misread the stream type. Transcode to a raw YUV or uncompressed AVI first using FFmpeg, then feed that to Windows Media Encoder.
  • Encoder version: The version bundled with Windows 7 SDK (circa 2009) is notorious for this bug. Use Windows Media Encoder 9 Series from Microsoft's standalone installer — it's more stable. If you're on Windows 10, the encoder is deprecated anyway; switch to Media Foundation's Transcode API or use FFmpeg with the -c:v wmv2 libavcodec.
  • Custom profiles: If you're using a custom PRX file, open it in Notepad and check the Passes attribute. It should match the VBRPasses count. Mismatched values here cause this error instantly. Fix the numbers to match (e.g., Passes="2" and VBRPasses="2").

That's the fix. It's annoying, but once you get the order right — profile first, source second — it stops happening. I haven't seen this error in years since I switched to FFmpeg for all Windows Media encoding.

Related Errors in Windows Errors
0X80004013 CO_E_CANT_REMOTE 0x80004013: Fix Remote Activation Blocked 0XC00D0008 NS_E_CANNOTRENAMETITLE (0XC00D0008) Fix: Renaming Windows Media Center Recordings Fails 0x80070643 Windows Defender updates stuck? Quick fix in 30 seconds 0X000000A7 Fixing ERROR_LOCK_FAILED (0x000000A7) – Lock Region

Was this solution helpful?

EP
Erropedia Team
Tech Support Editors
The Erropedia editorial team researches and documents real-world tech errors from across Windows, Linux, macOS, networking, databases, cloud platforms, and more. Every solution is reviewed for accuracy and updated as software and systems evolve.