What does HRESULT 0xC00D1B67 (NS_E_NO_PROFILE_IN_SOURCEGROUP) mean?

 
Previous Next
NS_E_INVALIDCALL_WHILE_ENCODER_RUNNING NS_E_VIDEODRIVER_UNSTABLE

NS_E_NO_PROFILE_IN_SOURCEGROUP

How to interpret the code in a real encoding session

0xC00D1B67 is named NS_E_NO_PROFILE_IN_SOURCEGROUP. Its practical scope is preparation of a source group that has no IWMEncProfile assignment, 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: profile lookup by localized display name returns no match and the group is prepared anyway. This makes the first result from the Encoder more valuable than a later generic message.

Reproduction matrix

FieldWhat to preserve
Decisive valuessource-group identity, get_Profile result and the profile-selection branch used by the application
Producing objectsource-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 correlationthe same source-group generation, audience index, object identity and callback sequence that produced this result
Lower-level evidencethe first COM, driver, file-system or codec HRESULT observed before the Encoder mapped the condition to this result
Controlled comparisona known-good session that changes only the setting named in the no profile in sourcegroup boundary

Evidence matrix

ObservationHow to interpret it
Observation that supports itThe decisive evidence is source-group identity, get_Profile result and the profile-selection branch used by the application. It confirms preparation of a source group that has no IWMEncProfile assignment in the same object generation.
Observation that points to an earlier failureThe recorded values satisfy the no profile in sourcegroup rule, but a source, driver, COM activation or file operation returns a different HRESULT first.
Observation that points to a later failureThe Encoder passes this boundary (preparation of a source group that has no IWMEncProfile assignment), but a codec, archive or broadcast sink then fails in a subsequent stage.
Verification after correctionApply this isolated change: assign a valid system or custom profile before PrepareToEncode. The original no profile in sourcegroup 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 preparation of a source group that has no IWMEncProfile assignment. In the representative case where profile lookup by localized display name returns no match and the group is prepared anyway, keep the first failing call and its object identity so a later wrapper cannot replace the no profile in sourcegroup evidence.

Minimal experiment

  1. Record 0xC00D1B67, it, the Encoder version and the exact API call or property access that returned it.
  2. Export the current .wme or .prx configuration, then capture source-group identity, get_Profile result and the profile-selection branch used by the application.
  3. verify the source groups, streams and plug-ins precondition without changing the source, profile and output sink at the same time.
  4. Run one controlled comparison in which only this condition changes: assign a valid system or custom profile before PrepareToEncode.
  5. After the change, recreate the affected Encoder object rather than assuming the existing graph discarded its earlier no profile in sourcegroup state.

Do not collapse these results together

ResultWhy it is a different boundary
NS_E_MISMATCHED_MEDIACONTENTcomparison of source-group media content with the assigned profile content type
NS_E_NO_MEDIAFORMAT_IN_SOURCEpreparation of a source whose plug-in has not exposed a media format
NS_E_NOMATCHING_ELEMENTlookup of an Encoder object in a collection by index, name or expected media role

What to change—and what to leave alone

Change the smallest responsible precondition: assign a valid system or custom profile before PrepareToEncode. 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


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