同一硬件上的多个数据流

许多解码器具有使用同一解码器硬件的多个流。 对于这些设备,无需对每个流单独执行密钥协商。 若要向 DVD 解码器模型指示这一点,请使用 KS_DVDCOPY_SET_COPY_STATE 属性。 在此属性上发出 get 操作时,解码器可以使用以下任一方法进行响应:

KS_DVDCOPYSTATE_AUTHENTICATION_NOT_REQUIRED

KS_DVDCOPYSTATE_AUTHENTICATION_REQUIRED

KS_DVDCOPYSTATE_AUTHENTICATION_NOT_REQUIRED 指示给定的流不需要密钥协商,因为同一硬件上的另一个流已经执行了此功能。 例如,如果解码器首先接收音频流上的 Get 属性,则会在音频流上以 KS_DVDCOPYSTATE_AUTHENTICATION_REQUIRED 进行响应,并在所有其他流上 KS_DVDCOPYSTATE_AUTHENTICATION_NOT_REQUIRED 。 在答复 AUTHENTICATION_NOT_REQUIRED 之后,在协商下一个标题键之前,该流不会接收更多的密钥交换属性。 此时,解码器可以再次选择用 AUTHENTICATION_NOT_REQUIRED 进行回复。

若要允许除 DVD 播放之外的其他应用程序,如果解码器只需对一个流执行版权保护,解码器将在第一个流上执行协商,以便在流打开后接收KS_DVDCOPY_SET_COPY_STATEGet属性调用。 不要将版权保护属性硬编码为仅使用一个流。