| Previous | Next |
| NS_E_WMP_PNG_UNSUPPORTED_FILTER | NS_E_WMP_PNG_UNSUPPORTED_BAD_CRC |
NS_E_WMP_PNG_UNSUPPORTED_INTERLACE
The exact condition behind the dialog
The symbolic result NS_E_WMP_PNG_UNSUPPORTED_INTERLACE narrows 0xC00D102C to the PNG unsupported interlace condition: the PNG interlace mode is not implemented by this WMP image path. Keep the PNG unsupported interlace boundary visible when a later dialog reduces it to a general media error.
An additional test is to record the IHDR interlace byte and compare non-interlaced output from the same pixels; that evidence is more useful than reinstalling the Player or changing several unrelated settings at once.
What succeeds before this failure
Two rules frame this diagnosis. First, a filename extension is not sufficient evidence of image format; the decoder acts on signatures, headers, markers, chunks and decoded dimensions. A file can be valid according to a modern format specification yet use a coding option that the legacy WMP skin decoder does not implement.
Representative case: The artwork opens in modern software but the legacy Player rejects its interlaced representation.
State worth preserving
Capture state before Player cleanup:
- Decisive check: record the IHDR interlace byte and compare non-interlaced output from the same pixels.
- Artifact: standalone decode result outside the skin package using the same bytes.
- State: archive member name, byte length, hash and file signature.
- Object identity: format header fields, dimensions, bit depth and color model.
- Underlying evidence: first invalid marker/chunk and its byte offset.
- Correlation: decoder-supported coding mode versus the file’s declared mode.
Reproduce without destroying evidence
- Start with the symbolic HRESULT; do not diagnose the failure from the final dialog alone.
- Record the bytes or object state that produced this condition before automatic recovery mutates it.
- Exclude a stale callback or superseded object instance as the source of this event.
- Use this deciding observation for this condition: record the IHDR interlace byte and compare non-interlaced output from the same pixels.
- Apply the smallest supported remedy for this condition: export a non-interlaced PNG for the skin resource.
Related HRESULTs, different boundaries
| Result | Different condition |
|---|---|
NS_E_WMP_PNG_UNSUPPORTED_BAD_CRC | A PNG chunk fails its integrity check in Windows Media Player |
NS_E_WMP_PNG_UNSUPPORTED_FILTER | The PNG filter-method declaration is unsupported |
NS_E_WMP_BMP_INVALID_BITMASK | The BMP channel masks are inconsistent with the declared bit depth or compression mode |
If this result is followed by a broader “cannot play,” “cannot load,” or “operation failed” result, preserve the earlier event. The later code can be a consequence from a wrapper, fallback item or UI layer rather than the producing failure.
Recovery at the right layer
The targeted correction for this condition is to export a non-interlaced PNG for the skin resource. Keep the original failing input until the same operation succeeds after one controlled change.
- Avoid changing only the extension or MIME type while leaving the encoded bytes unchanged; it can destroy the artifact or state needed to explain this result.
- Avoid repeatedly recompressing the sole source image without retaining an original and a decoded pixel comparison; that can replace the original HRESULT with a secondary failure from another layer.
How to know the repair is real
After correction, create a fresh Player, control, parser or playlist object and rerun the smallest reproducer. Verify the resulting resource, list membership, saved file, library object or play state.
Technical references
- Skin files and image resources — documentation for this HRESULT.
- PNG specification — normative or platform material relevant to this HRESULT.
- Windows Media Player skins — API or format context.
Looking for a different code? Search another status or error code.