What does HRESULT 0xC00D109B (NS_E_WMPCORE_CODEC_NOT_FOUND) mean?

 
Previous Next
NS_E_WMPCORE_CODEC_NOT_TRUSTED NS_E_WMPCORE_CODEC_DOWNLOAD_NOT_ALLOWED

NS_E_WMPCORE_CODEC_NOT_FOUND

The exact condition behind the dialog

The symbolic result NS_E_WMPCORE_CODEC_NOT_FOUND narrows 0xC00D109B to the playback core codec not found condition: the graph cannot find the specific codec required for a media stream. Keep the playback core codec not found boundary visible when a later dialog reduces it to a general media error.

An additional test is to record the failing stream subtype or FourCC and the exact component lookup result; that evidence is more useful than reinstalling the Player or changing several unrelated settings at once.

What succeeds before this failure

Representative case: The container is parsed, but its video subtype has no registered decoder. The example isolates only the producing component.

State worth preserving

Capture state before Player cleanup:

  • Decisive check: record the failing stream subtype or FourCC and the exact component lookup result.
  • Artifact: ordered ErrorItem queue with errorCode, errorContext and media object.
  • State: Player.URL, current media sourceURL and resolved final URL.
  • Object identity: play state and transition immediately before failure.
  • Underlying evidence: selected graph/source/filter or codec identity and version.
  • Correlation: audio/video device identity and driver generation.

Log paths, hashes, IDs, offsets, and HRESULTs. Exclude secrets and unrelated content from logs.

Reproduce without destroying evidence

  1. Preserve 0xC00D109B, the ErrorItem context and the object generation involved in the failing operation.
  2. Compare the failing artifact with a known-good artifact that differs only in the suspected property.
  3. Separate acquisition, parsing, object construction, playback and persistence until the component that produced the failure is clear.
  4. Confirm the failure directly: record the failing stream subtype or FourCC and the exact component lookup result.
  5. After you install a trusted compatible decoder for that subtype or transcode the stream, recreate the owning WMP object and verify that the corrected generation completes.

Related HRESULTs, different boundaries

ResultDifferent boundary
NS_E_WMPCORE_CODEC_DOWNLOAD_NOT_ALLOWEDThe required codec is absent and Player policy/settings prohibit automatic acquisition
NS_E_WMPCORE_CODEC_NOT_TRUSTEDThe candidate codec fails the trust/signature policy required for installation/use
NS_E_WMPCORE_MISNAMED_FILEThe file extension/name disagrees with the content or supported media interpretation

If this result is followed by a broader “cannot play,” “cannot load,” or “operation failed” result, preserve the earlier event. A later wrapper error may be secondary.

Recovery at the right layer

Change the responsible precondition rather than masking the symptom: install a trusted compatible decoder for that subtype or transcode the stream. A retry is meaningful only after that recorded condition changes.

  • Avoid installing broad codec packs before identifying the requested media subtype and missing component; it can destroy the artifact or state needed to explain this result.
  • Avoid clearing the error queue or skipping to another playlist item before preserving the first failing media object; that can replace the original HRESULT with a secondary failure from another layer.

How to know the repair is real

Keep one fixture that reproduces 0xC00D109B and one corrected fixture that changes only the identified precondition. This condition correction is complete when the intended operation succeeds without being replaced by a neighboring WMP HRESULT.

Practical interpretation

Use this result, 0xC00D109B and the symbolic phrase in traces. Correlate search keys with API and object.

Technical references


Looking for a different code? Search another status or error code.