| Previous | Next |
| VFW_S_RESERVED | VFW_S_CANT_CUE |
VFW_S_STREAM_OFF
DirectShow stream is turned off
VFW_S_STREAM_OFF is HRESULT 262759 (0x00040267) from Video for Windows. AllStat describes this result as “The stream has been turned off.” The high-order severity bit is clear, so this is a success result, but it carries more information than plain S_OK.
The operation succeeded while indicating that the relevant stream is disabled and will not currently deliver or render samples.
Where the result is encountered
- This result can appear in stream-selection interfaces; record the producing interface and method rather than inferring behavior from the symbolic name alone.
- This result can appear in DVD or multi-stream playback; record the producing interface and method rather than inferring behavior from the symbolic name alone.
- It can appear in filters that expose optional outputs; record the producing interface and method rather than inferring behavior from the symbolic name alone.
The same numeric success value can be mishandled when a wrapper exposes only a Boolean. Keep the original HRESULT until the code-specific outputs and state transition have been evaluated.
State boundary that must be proved
The central question for this HRESULT is whether the disabled stream is intentional and no required consumer is waiting for its samples. The HRESULT alone confirms neither unrelated work nor the quality of optional outputs.
A reliable interpretation of it names the exact method contract, the object generation, and the outputs that remain valid. This prevents a success-with-information result from being promoted to full success or demoted to a generic error.
Evidence and telemetry to preserve
- preserve stream identifier and media type.
- preserve selection flags.
- preserve upstream and downstream pin state.
- preserve user language or track choice.
- preserve timestamp of the enable/disable transition.
Also record vfw_s_stream_off_operation, vfw_s_stream_off_object, vfw_s_stream_off_state_before, vfw_s_stream_off_state_after, UTC time, process and thread identifiers, and a correlation ID. Keep secrets out of logs while retaining GUIDs, CLSIDs, media subtypes, property IDs, row identities, and hashes needed to distinguish objects.
Correct handling, retry, and recovery
Keep the stream disabled when requested, and update UI and graph expectations accordingly. Re-enable through the owning stream-selection contract rather than reconnecting arbitrary pins.
Retry it only when the recorded state can change the documented outcome. Repeating the same call is inappropriate for a stable end marker, cancellation, unsupported format, adjusted property, or partial result whose completed side effects have not been reconciled.
Diagnostic sequence
- capture the raw HRESULT
0x00040267immediately after the returning method and record whether the caller usedSUCCEEDED,FAILED, equality testing, or exception translation. - Identify the exact owner of it: interface, method, object instance, provider or filter version, thread or apartment, and operation phase.
- Validate the decisive contract boundary for this HRESULT: the disabled stream is intentional and no required consumer is waiting for its samples.
- inspect every output parameter, count, status array, returned interface, or side effect that the method documentation associates with this success-with-information result.
- Compare the observed state before and after it; do not assume that a success severity bit means every optional sub-operation completed.
- reproduce the smallest request with the same object state and then change only the condition identified by the evidence before repeating the operation.
Practical validation scenario
A player switches from commentary audio to the main track. The commentary stream reports it, its UI indicator changes, and no timeout monitor expects samples from that pin.
The negative test should preserve the condition that produces it; the recovery test should alter only that condition and verify the final state as well as the HRESULT.
Difference from nearby HRESULT values
VFW_S_RESOURCE_NOT_NEEDED describes an unused resource; it describes the delivery state of a stream.
This distinction determines whether the caller should consume partial outputs, stop iteration, wait, reconfigure, notify the user, or perform no error recovery at all.
Developer and administrator guidance
Application telemetry should separate terminal failure, ordinary success, partial completion, continuation, cancellation, and warning-like success. Support bundles should contain the smallest reproducible call and the effective configuration seen by the owning component.
A support report for this HRESULT should include decimal 262759, hexadecimal 0x00040267, the AllStat meaning, the owning API, and the first detailed status or output that explains why the method did not return ordinary S_OK.
References
- Microsoft: DirectShow error and success codes
- Microsoft: DirectShow overview
- Microsoft: IAMStreamSelect
Looking for a different code? Search another status or error code.
