擷取受保護輸出上的COPP-Compatible資訊

顯示迷你埠驅動程式可以接收要求,以擷取與圖形配接器實體輸出連接器相關聯之受保護輸出的 COPP 相容資訊。 顯示迷你埠驅動程式的DxgkDdiOPMGetCOPPCompatibleInformation函式會在Parameters 參數中傳遞包含資訊要求的DXGKMDT_OPM_COPP_COMPATIBLE_GET_INFO_PARAMETERS結構的指標。 DxgkDdiOPMGetCOPPCompatibleInformation會將必要資訊寫入RequestedInformation參數所指向的DXGKMDT_OPM_REQUESTED_INFORMATION結構。 DXGKMDT_OPM_COPP_COMPATIBLE_GET_INFO_PARAMETERS指定資訊要求的 guidInformationabParameters 成員。 視資訊要求而定,顯示迷你埠驅動程式應該將 DXGKMDT_OPM_STANDARD_INFORMATIONDXGKMDT_OPM_ACTUAL_OUTPUT_FORMATDXGKMDT_OPM_ACP_AND_CGMSA_SIGNALINGDXGKMDT_OPM_CONNECTED_HDCP_DEVICE_INFORMATION 結構的成員填入必要的資訊,並將 abRequestedInformation 成員 DXGKMDT_OPM_REQUESTED_INFORMATION指向該結構。 驅動程式指定 cbRequestedInformationSize (例如, sizeof ( DXGKMDT_OPM_STANDARD_INFORMATION) ) 和 abRequestedInformation 成員DXGKMDT_OPM_REQUESTED_INFORMATION,驅動程式必須 (計算 (OMAC) 模式訊息驗證碼,並將此 O DXGKMDT_OPM_REQUESTED_INFORMATION) MAC 設定為 DXGKMDT_OPM_REQUESTED_INFORMATION 的 omac 成員。 如需計算 OMAC 的詳細資訊,請參閱 OMAC-1 演算法

注意在 DxgkDdiOPMGetCOPPCompatibleInformation傳回之前,顯示迷你埠驅動程式必須確認DXGKMDT_OPM_COPP_COMPATIBLE_GET_INFO_PARAMETERS ulSequenceNumber成員中指定的序號符合驅動程式目前儲存的序號。 驅動程式接著必須遞增預存的序號。

注意 驅動程式必須在 DXGKMDT_OPM_STANDARD_INFORMATION、DXGKMDT_OPM_ACTUAL_OUTPUT_FORMAT、DXGKMDT_OPM_ACP_AND_CGMSA_SIGNALING 或 DXGKMDT_OPM_CONNECTED_HDCP_DEVICE_INFORMATION 的 rnRandomNumber 成員中傳回 128 位的密碼編譯安全亂數。 亂數是由傳送的應用程式所產生,並在 DXGKMDT_OPM_COPP_COMPATIBLE_GET_INFO_PARAMETERS 的 rnRandomNumber 成員中提供。

驅動程式會針對指定的要求傳回下列資訊:

  • 針對 在 guidInformation 成員中設定的 DXGKMDT_OPM_GET_SUPPORTED_PROTECTION_TYPES,並在 DXGKMDT_OPM_COPP_COMPATIBLE_GET_INFO_PARAMETERS 的 abParameters 成員中未定義,驅動程式會指出可用的保護機制類型。 為了指出可用的保護類型,驅動程式會從ulInformation 成員的 ulInformation成員中的DXGKMDT_OPM_PROTECTION_TYPE列舉傳回有效的位 OR DXGKMDT_OPM_STANDARD_INFORMATION 值組合。 DXGKMDT_OPM_PROTECTION_TYPE_ACP、DXGKMDT_OPM_PROTECTION_TYPE_CGMSA和DXGKMDT_OPM_PROTECTION_TYPE_COPP_COMPATIBLE_HDCP值有效。

  • 針對 在 guidInformation 中設定的 DXGKMDT_OPM_GET_CONNECTOR_TYPE,且 在 abParameters中未定義,驅動程式會指出連接器類型。 為了指出連接器類型,驅動程式會從ulInformation 成員的 ulInformation成員中回D3DKMDT_VIDEO_OUTPUT_TECHNOLOGY列舉的有效位 OR DXGKMDT_OPM_STANDARD_INFORMATION 值組合。

  • 針對guidInformation中的DXGKMDT_OPM_GET_VIRTUAL_PROTECTION_LEVEL或DXGKMDT_OPM_GET_ACTUAL_PROTECTION_LEVEL集,以及abParameters中設定的保護類型,驅動程式會在DXGKMDT_OPM_STANDARD_INFORMATIONulInformation成員中傳回保護層級值。 如果保護類型是DXGKMDT_OPM_PROTECTION_TYPE_ACP,則保護層級值會來自 DXGKMDT_OPM_ACP_PROTECTION_LEVEL 列舉。 如果保護類型DXGKMDT_OPM_PROTECTION_TYPE_CGMSA,則保護層級值會來自 DXGKMDT_OPM_CGMSA 列舉。 如果保護類型DXGKMDT_OPM_PROTECTION_TYPE_COPP_COMPATIBLE_HDCP,則保護層級值會來自 DXGKMDT_OPM_HDCP_PROTECTION_LEVEL 列舉。

    DXGKMDT_OPM_GET_VIRTUAL_PROTECTION_LEVEL要求會傳回受保護輸出目前設定的保護等級。 DXGKMDT_OPM_GET_ACTUAL_PROTECTION_LEVEL要求會針對與受保護輸出相關聯的實體連接器,傳回目前設定的保護等級。

  • 針對 在 guidInformation 中設定且未在 abParameters中定義的DXGKMDT_OPM_GET_ADAPTER_BUS_TYPE,驅動程式會識別將圖形介面卡連接到主機板晶片組北橋的匯流排類型。 為了識別匯流排的類型,驅動程式會從 DXGKMDT_OPM_BUS_TYPE_AND_IMPLEMENTATION 列舉傳 回DXGKMDT_OPM_STANDARD_INFORMATION 之 ulInformation 成員中的有效位 OR 值組合。

    當圖形介面卡與其他子系統之間沒有任何介面訊號可用時,驅動程式只能將DXGKMDT_OPM_COPP_COMPATIBLE_BUS_TYPE_INTEGRATED (0x80000000) 值與其中一個匯流排類型值結合在使用公開可用規格和標準連接器類型的擴充匯流排上。 記憶體匯流排會從此定義中排除。

  • 針對 在 guidInformation 中設定且未在 abParameters中定義的DXGKMDT_OPM_GET_ACTUAL_OUTPUT_FORMAT,驅動程式會傳回 DXGKMDT_OPM_ACTUAL_OUTPUT_FORMAT 成員中的資訊,描述如何格式化與受保護輸出相關聯的實體連接器的訊號。

  • 對於 在 guidInformation 中設定且未在 abParameters中定義的DXGKMDT_OPM_GET_ACP_AND_CGMSA_SIGNALING,驅動程式會傳回 DXGKMDT_OPM_ACP_AND_CGMSA_SIGNALING 成員中的資訊,描述如何保護與受保護輸出相關聯的實體連接器的訊號。

  • 針對 在 guidInformation 中設定且 未在 abParameters中定義的DXGKMDT_OPM_GET_CONNECTED_HDCP_DEVICE_INFORMATION,驅動程式會傳回包含高頻寬數位內容保護 (HDCP) 資訊 之DXGKMDT_OPM_CONNECTED_HDCP_DEVICE_INFORMATION 成員中的資訊。