| Previous | Next |
| NS_E_DVD_COMPATIBLE_VIDEO_CARD | NS_E_DVD_SYSTEM_DECODER_REGION |
NS_E_DVD_MACROVISION
Failure boundary and ownership
NS_E_DVD_MACROVISION with value 0xC00D1167 records enabling required analog copy protection on the selected display output. For NS_E_DVD_MACROVISION, the producing call and its state are more diagnostic than a later aggregate Player failure.
Underlying mechanism
At the NS_E_DVD_MACROVISION checkpoint, dVD playback is built around the DirectShow DVD Navigator, which parses DVD-Video navigation data and exposes separate video, audio and subpicture outputs; Decoder availability, title-domain state, region policy, parental level and copy-protection negotiation are independent checkpoints. The page-specific boundary is enabling required analog copy protection on the selected display output.
For NS_E_DVD_MACROVISION, successful reading of files from the DVD volume does not prove that the navigation program, decoder graph or protected output path can be used. The condition can be reproduced when the driver exposes analog output but rejects the requested protection level.
Trace fields worth keeping
| Evidence | Why it matters for macrovision |
|---|---|
| Producing object and operation | disc path and media generation, DVD domain, title/chapter, region values for disc/drive/decoder, selected audio/video/subpicture streams, decoder CLSIDs, renderer and display mode, protection negotiation result and first DirectShow HRESULT |
| Decisive observation | analog output type, Macrovision request/result, graphics driver and renderer |
| Generation identity | Record the same disc, device, job or Player operation generation that returned NS_E_DVD_MACROVISION; a reconnect or media change creates a different test. |
| Underlying result | Keep the first device, filesystem, COM, codec, DirectShow, IMAPI or BITS result seen before the Player mapped it to NS_E_DVD_MACROVISION. |
| Controlled comparison | Repeat the producing call after changing only this condition: use a driver and output path that supports the required analog protection. |
What the comparison proves
| Observation | Interpretation |
|---|---|
| The recorded values match the boundary | The result is consistent with enabling required analog copy protection on the selected display output; correct that state before changing unrelated codecs, drivers or playlists. |
A lower layer failed before NS_E_DVD_MACROVISION | Preserve that earlier HRESULT or device result because NS_E_DVD_MACROVISION may be only the Player-level mapping. |
| The same call passes after one isolated change | The comparison supports the macrovision diagnosis rather than a broad installation failure. |
The code changes after retesting NS_E_DVD_MACROVISION | The NS_E_DVD_MACROVISION boundary was passed; diagnose the new HRESULT as the next independent stage. |
NS_E_DVD_MACROVISION scopes the failure to enabling required analog copy protection on the selected display output. The presence of NS_E_DVD_MACROVISION does not establish a system-wide media failure; verify its owning operation before changing unrelated Player components.
Decision path
- Capture
0xC00D1167,NS_E_DVD_MACROVISION, the exact Player/API operation and the first timestamp at which it appears. - Save analog output type, Macrovision request/result, graphics driver and renderer; do this before ejecting media, reconnecting a device, canceling a job or rebuilding the Player object.
- For
NS_E_DVD_MACROVISION, correlate the result with disc path and media generation, DVD domain, title/chapter, region values for disc/drive/decoder, selected audio/video/subpicture streams, decoder CLSIDs, renderer and display mode, protection negotiation result and first DirectShow HRESULT. - Reproduce once with the original source and destination, then apply only this change: use a driver and output path that supports the required analog protection.
- Create a fresh operation generation and verify that the original call advances beyond the macrovision boundary.
Close alternatives
| Related result | Different diagnostic boundary |
|---|---|
NS_E_DVD_COMPATIBLE_VIDEO_CARD | building a DVD renderer path supported by the active graphics adapter |
NS_E_DVD_SYSTEM_DECODER_REGION | checking consistency between the system/drive region and installed decoder region |
NS_E_DVD_DISC_DECODER_REGION | checking the disc region against the decoder’s permitted region |
Safe correction
Correct this boundary by making sure you use a driver and output path that supports the required analog protection. Then reacquire the interface or media state that produced NS_E_DVD_MACROVISION and repeat that call.
When verifying NS_E_DVD_MACROVISION, do not bypass region or copy-protection checks; Diagnose the supported playback path by preserving the exact disc, drive, decoder and display connection involved.
Source material
- DVD decoder support in Windows.
- DirectShow filters and DVD Navigator.
- DirectShow DVD error and success codes.
- IDvdControl2 interface.
Looking for a different code? Search another status or error code.