| Previous | Next |
| NS_E_8BIT_WAVE_UNSUPPORTED | NS_E_INVALID_SAMPLING_RATE |
NS_E_NO_MORE_SAMPLES
NS_E_NO_MORE_SAMPLES: diagnosis and verification
NS_E_NO_MORE_SAMPLES (0xC00D0BCF) means the reader reached the end of the selected range or stream enumeration.
Profile and sample evidence
| Capture | Why it matters |
|---|---|
| Owning call | Record the API method, object identity, thread or callback and timestamp for the no more samples media-format check. |
| Values to record | reader or writer object, stream and input numbers, profile identity, sample timestamps, buffer lengths and the first callback or SDK call that returned the code. |
| Comparison case | Use one known-good resource that exercises the same no more samples media-format check while changing only the rejected precondition. |
Failure anatomy
The selected reader or stream has no further sample in the requested range. Record the stream number, current presentation time, requested range boundary and whether the reader is operating synchronously or through callbacks. This condition is about sample exhaustion, not codec configuration.
Repeat the same read sequence with an explicitly bounded range that ends before the known stream end, then with the original range. The first run should still deliver a sample; the second should reach this result only when enumeration is exhausted.
Nearby results are not interchangeable
Main distinction: this result marks the end of available samples for the selected stream or range. It is different from a decode failure, missing codec, malformed sample, or network read error.
| Nearby HRESULT | How to compare it |
|---|---|
NS_E_TOO_MUCH_DATA | samples are arriving faster than the configured encoding path can consume or buffer them. |
NS_E_UNSUPPORTED_PROPERTY | the selected SDK object does not implement the requested property identifier. |
NS_E_INVALID_SAMPLING_RATE | the audio sample rate is outside the values accepted by the selected codec and profile. |
A controlled media-format test
- Log
0xC00D0BCF, the exact operation and the first failure time. - Preserve the reader instance, stream number, start/stop range, current sample timestamp, previous successful sample timestamp and callback sequence that immediately precedes the result.
- Perform one isolated test: request one sample before the known end boundary and then one beyond it without changing the profile or source.
- Repeat through the same reader API and stream selection. A repair is not demonstrated by reopening the file in a different player, because that may use different stream-selection and buffering rules.
Misleading actions
- Do not change codecs or writer properties to address this result unless another HRESULT identifies those layers. First verify whether the caller is simply reading past the available sample range.
- Record stream ID, requested range, final delivered timestamp and sample count. These values are sufficient to distinguish normal exhaustion from premature end-of-stream.
Technical references
- Windows Media Format SDK overview
- Input, stream and output formats
- Profiles
- Windows Media SDK objects
- Microsoft HRESULT registry
Treat it as handled correctly when the caller stops or advances stream processing at the documented boundary and no longer reports end-of-samples as an unrelated media failure.
Looking for a different code? Search another status or error code.