TV Connector and Copy Protection Support in Video Miniport Drivers

A video miniport driver for an adapter that has a TV connector must handle VRPs with the IOCTL_VIDEO_HANDLE_VIDEOPARAMETERS I/O control code. This IOCTL is sent to the miniport driver to either query the capabilities and current settings of the TV connector and copy protection hardware or set the functionality of the TV connector and copy protection hardware. The miniport driver determines the action to be performed by checking the dwCommand field of the VIDEOPARAMETERS structure, which is passed in the VRP's InputBuffer. The system will not allow playback of Rovi (formerly Macrovision) protected DVDs if a miniport driver does not handle this VRP.

If dwCommand is set to VP_COMMAND_GET, and the device does not support TV output, then the miniport driver should return NO_ERROR in the Status member of the VRP's StatusBlock. It should also set the Information member of the VRP's StatusBlock to the size, in bytes, of the VIDEOPARAMETERS structure. It should set dwFlags to zero, set dwTVStandard to VP_TV_STANDARD_WIN_VGA, and set dwAvailableTVStandard to VP_TV_STANDARD_WIN_VGA.

If dwCommand is set to VP_COMMAND_GET, and the device does support TV Out, the miniport driver should indicate this in the VIDEOPARAMETERS structure by setting the appropriate flags in the dwFlags member and by assigning values to the other structure members that correspond to the set flags.

The following sections provide implementation details for miniport drivers of devices that have a TV connector:

Querying TV Connector and Copy Protection Hardware

Setting Copy Protection Hardware