| 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
- Preserve
0xC00D109B, the ErrorItem context and the object generation involved in the failing operation. - Compare the failing artifact with a known-good artifact that differs only in the suspected property.
- Separate acquisition, parsing, object construction, playback and persistence until the component that produced the failure is clear.
- Confirm the failure directly: record the failing stream subtype or FourCC and the exact component lookup result.
- 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
| Result | Different boundary |
|---|---|
NS_E_WMPCORE_CODEC_DOWNLOAD_NOT_ALLOWED | The required codec is absent and Player policy/settings prohibit automatic acquisition |
NS_E_WMPCORE_CODEC_NOT_TRUSTED | The candidate codec fails the trust/signature policy required for installation/use |
NS_E_WMPCORE_MISNAMED_FILE | The 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
- Windows Media Player SDK — API or format context for this HRESULT.
- Player MediaError event — documentation used to identify the producing boundary of this result.
- ErrorItem object — normative or platform material relevant to this result.
- Supported protocols and file types
Looking for a different code? Search another status or error code.