What does HRESULT 0xC00D1B58 (NS_E_BAD_MARKIN) mean?

 
Previous Next
NS_E_AUTHORIZATION_FILE_NOT_FOUND NS_E_BAD_MARKOUT

NS_E_BAD_MARKIN

How to interpret the code in a real encoding session

0xC00D1B58 is named NS_E_BAD_MARKIN. Its practical scope is validation of IWMEncSource.MarkIn before the source timeline is committed, which belongs to source timeline and clipping rather than to every part of Windows Media playback or Windows itself.

Mechanism and point of failure

Windows Media Encoder builds a timeline for every selected source before samples enter the codec. Mark-in, mark-out, repeat and time-compression settings are therefore validated against the source duration and against each other before encoding begins.

A file that opens and reports a duration can still fail here because timeline validation happens after source discovery but before the first encoded sample. A typical reproduction is: a UI stores seconds while the automation layer expects milliseconds, placing MarkIn beyond the clip. This makes the first result from the Encoder more valuable than a later generic message.

Minimal experiment

  1. Record 0xC00D1B58, the Encoder version and the exact API call or property access that returned it.
  2. Export the current .wme or .prx configuration, then capture MarkIn, MarkOut and detected source duration in milliseconds, including whether a negative sentinel was converted to an unsigned value.
  3. Verify the source timeline and clipping precondition without changing the source, profile and output sink at the same time.
  4. Run one controlled comparison that changes only the identified precondition: set MarkIn to a nonnegative offset strictly before MarkOut and within the detected duration.

Do not collapse these results together

ResultWhy it differs
NS_E_BAD_MARKOUTvalidation of IWMEncSource.MarkOut against MarkIn and the end of the source
NS_E_SOURCE_CANNOT_LOOPRepeat is enabled for a source type that cannot be replayed
NS_E_MARKIN_UNSUPPORTEDMarkIn or MarkOut clipping is requested for a source type that does not support seeking to marks

What to change—and what to leave alone

Do not re-encode or trim the only copy of the input while diagnosing the timeline; preserve the original duration and timestamps so the invalid interval can be reproduced.

Authoritative documentation


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