| Previous | Next |
| NS_E_NO_PAL_INVERSE_TELECINE | NS_E_ACTIVE_SG_DEVICE_CONTROL_DISCONNECTED |
NS_E_ACTIVE_SG_DEVICE_DISCONNECTED
How to interpret the code in a real encoding session
0xC00D1BA5 is named NS_E_ACTIVE_SG_DEVICE_DISCONNECTED. Its practical scope is a capture device used by the active source group is removed or becomes unavailable, which belongs to video capture and compressor negotiation rather than to every part of Windows Media playback or Windows itself.
Mechanism and point of failure
A live video source passes through device opening, capture-format negotiation, optional clipping and preview-window setup before an encoder codec accepts the frames in a session that returns NS_E_ACTIVE_SG_DEVICE_DISCONNECTED. Width, height, pixel format and driver state belong to this boundary at the active sg device disconnected checkpoint.
Seeing a device in enumeration or obtaining a preview frame does not establish that the requested capture format can be delivered continuously to the encoder in a session that returns NS_E_ACTIVE_SG_DEVICE_DISCONNECTED. A typical reproduction is: a USB capture device is unplugged during encoding. For NS_E_ACTIVE_SG_DEVICE_DISCONNECTED, this makes the first result from the Encoder more valuable than a later generic message.
Reproduction matrix
| Field | What to preserve |
|---|---|
| Decisive values | device instance ID, removal notification, last sample time and active source-group identity |
| Producing object | device moniker, driver version, requested and native width/height, frame rate, BITMAPINFOHEADER compression and bit depth, preview state, source-plug-in result and first driver error |
| Session correlation | the same source-group generation, audience index, object identity and callback sequence that produced NS_E_ACTIVE_SG_DEVICE_DISCONNECTED |
| Lower-level evidence | the first COM, driver, file-system or codec HRESULT observed before the Encoder mapped the condition to NS_E_ACTIVE_SG_DEVICE_DISCONNECTED |
| Controlled comparison | a known-good session that changes only the setting named in the active sg device disconnected boundary |
Evidence matrix
| Observation | How to interpret it |
|---|---|
| Observation that supports this result | The decisive evidence is device instance ID, removal notification, last sample time and active source-group identity. It confirms a capture device used by the active source group is removed or becomes unavailable in the same object generation. |
| Observation that points to an earlier failure | The recorded values satisfy the active sg device disconnected 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 (a capture device used by the active source group is removed or becomes unavailable), but a codec, archive or broadcast sink then fails in a subsequent stage. |
| Verification after correction | Apply this isolated change: restore the same device or stop and rebuild the group with an available source. The original active sg device disconnected call should then advance past the same checkpoint. |
The operational impact of NS_E_ACTIVE_SG_DEVICE_DISCONNECTED is limited to the video capture and compressor negotiation transition that owns a capture device used by the active source group is removed or becomes unavailable. For NS_E_ACTIVE_SG_DEVICE_DISCONNECTED, it does not, by itself, prove that every input is corrupt, every codec is missing or the complete Windows Media installation is unusable. In the representative case where a USB capture device is unplugged during encoding, keep the first failing call and its object identity so a later wrapper cannot replace the active sg device disconnected evidence.
Minimal experiment
- Record
0xC00D1BA5,NS_E_ACTIVE_SG_DEVICE_DISCONNECTED, the Encoder version and the exact API call or property access that returned it. - Export the current
.wmeor.prxconfiguration, then capture device instance ID, removal notification, last sample time and active source-group identity. - For
NS_E_ACTIVE_SG_DEVICE_DISCONNECTED, verify the video capture and compressor negotiation precondition without changing the source, profile and output sink at the same time. - Run one controlled comparison in which only this condition changes: restore the same device or stop and rebuild the group with an available source.
- After the change, recreate the affected Encoder object rather than assuming the existing graph discarded its earlier active sg device disconnected state.
Do not collapse these results together
| Result | Why it is a different boundary |
|---|---|
NS_E_UNEXPECTED_DISPLAY_SETTINGS | screen-capture session detects display geometry or color-depth changes after configuration |
NS_E_UNSUPPORTED_ENCODER_DEVICE | opening a device that enumerates but is not supported by the Encoder source plug-in |
NS_E_NO_DATAVIEW_SUPPORT | request for Encoder Video panel data from a source or output path that cannot expose preview samples |
What to change—and what to leave alone
Change the smallest responsible precondition: restore the same device or stop and rebuild the group with an available source. While retesting NS_E_ACTIVE_SG_DEVICE_DISCONNECTED, keep all unrelated source, audience and output values fixed until the same call is repeated.
Do not keep retrying an unstable capture driver in the same process after preserving the first error; close the graph and test one known-native format in a fresh process in a session that returns NS_E_ACTIVE_SG_DEVICE_DISCONNECTED.
Authoritative documentation for NS_E_ACTIVE_SG_DEVICE_DISCONNECTED
- IWMEncVideoSource2.Width and live capture sizing.
- BITMAPINFOHEADER structure.
- ICCompressQuery video-compressor format check.
- Retrieving the configured encoder input.
Looking for a different code? Search another status or error code.
