| Previous | Next |
| NS_E_NO_MEDIAFORMAT_IN_SOURCE | NS_E_NO_VALID_SOURCE_PLUGIN |
NS_E_NO_VALID_OUTPUT_STREAM
How to interpret the code in a real encoding session
0xC00D1B70 is named NS_E_NO_VALID_OUTPUT_STREAM. Its practical scope is mapping source media to at least one output stream declared by the profile, which belongs to source groups, streams and plug-ins rather than to every part of Windows Media playback or Windows itself.
Mechanism and point of failure
The Encoder object model groups audio, video and script inputs in an IWMEncSourceGroup, associates one profile with that group, and asks a source plug-in to expose a media format that can feed the selected output streams in a session that returns this result.
Successful creation of the COM objects does not prove that the source group is complete; profile assignment, source discovery and format negotiation are later checkpoints in a session that returns this result. A typical reproduction is: a script-only source is paired with a profile containing only audio and video outputs. This makes the first result from the Encoder more valuable than a later generic message.
Reproduction matrix
| Field | What to preserve |
|---|---|
| Decisive values | source media types, profile ContentType, audience stream definitions and codec availability |
| Producing object | source-group collection index and name, active/prepared state, stream type, input scheme and stream name, source plug-in CLSID, negotiated media type and assigned profile |
| Session correlation | the same source-group generation, audience index, object identity and callback sequence that produced this result |
| Lower-level evidence | the first COM, driver, file-system or codec HRESULT observed before the Encoder mapped the condition to this result |
| Controlled comparison | a known-good session that changes only the setting named in the no valid output stream boundary |
Evidence matrix
| Observation | How to interpret it |
|---|---|
| Observation that supports it | The decisive evidence is source media types, profile ContentType, audience stream definitions and codec availability. It confirms mapping source media to at least one output stream declared by the profile in the same object generation. |
| Observation that points to an earlier failure | The recorded values satisfy the no valid output stream rule, but a source, driver, COM activation or file operation returns a different HRESULT first. |
| Observation that points to a later failure | The Encoder passes this boundary (mapping source media to at least one output stream declared by the profile), but a codec, archive or broadcast sink then fails in a subsequent stage. |
| Verification after correction | Apply this isolated change: add a compatible output stream or assign a profile matching the source media. The original no valid output stream call should then advance past the same checkpoint. |
The operational impact of it is limited to the source groups, streams and plug-ins transition that owns mapping source media to at least one output stream declared by the profile. In the representative case where a script-only source is paired with a profile containing only audio and video outputs, keep the first failing call and its object identity so a later wrapper cannot replace the no valid output stream evidence.
Minimal experiment
- Record
0xC00D1B70, it, the Encoder version and the exact API call or property access that returned it. - Export the current
.wmeor.prxconfiguration, then capture source media types, profile ContentType, audience stream definitions and codec availability. - verify the source groups, streams and plug-ins precondition without changing the source, profile and output sink at the same time.
- Run one controlled comparison in which only this condition changes: add a compatible output stream or assign a profile matching the source media.
- After the change, recreate the affected Encoder object rather than assuming the existing graph discarded its earlier no valid output stream state.
Do not collapse these results together
| Result | Why it is a different boundary |
|---|---|
NS_E_NO_MEDIAFORMAT_IN_SOURCE | preparation of a source whose plug-in has not exposed a media format |
NS_E_NO_SCRIPT_STREAM | submission of script data when the current source group has no script source |
NS_E_NO_PROFILE_IN_SOURCEGROUP | preparation of a source group that has no IWMEncProfile assignment |
What to change—and what to leave alone
Change the smallest responsible precondition: add a compatible output stream or assign a profile matching the source media. While retesting it, keep all unrelated source, audience and output values fixed until the same call is repeated.
Do not delete and recreate every source group before exporting the.wme configuration and recording the active group; otherwise the failing object relation is lost in a session that returns it.
Authoritative documentation
- Preparing a source group for encoding.
- Retrieving the profile assigned to a source group.
- Retrieving the configured encoder input.
- Saving a Windows Media Encoder configuration.
Looking for a different code? Search another status or error code.
