Plusieurs flux de données sur le même matériel
De nombreux décodeurs ont plusieurs flux utilisant le même morceau de matériel de décodeur. Pour ces appareils, il n’est pas nécessaire d’effectuer une négociation de clé séparément sur chaque flux. Pour l’indiquer au modèle de décodeur DVD, utilisez la propriété KS_DVDCOPY_SET_COPY_STATE . Lorsqu’une opération get est émise sur cette propriété, un décodeur peut répondre avec l’une des opérations suivantes :
KS_DVDCOPYSTATE_AUTHENTICATION_NOT_REQUIRED
KS_DVDCOPYSTATE_AUTHENTICATION_REQUIRED
KS_DVDCOPYSTATE_AUTHENTICATION_NOT_REQUIRED indique que le flux donné ne nécessite pas de négociation de clé, car un autre flux sur le même matériel l’a déjà effectué. Par exemple, si le décodeur reçoit d’abord la propriété Get sur le flux audio, il répond avec KS_DVDCOPYSTATE_AUTHENTICATION_REQUIRED sur le flux audio et KS_DVDCOPYSTATE_AUTHENTICATION_NOT_REQUIRED sur tous les autres flux. Après avoir répondu avec AUTHENTICATION_NOT_REQUIRED, ce flux ne reçoit plus de propriétés d’échange de clé tant que la clé de titre suivante n’est pas négociée. À ce stade, le décodeur peut à nouveau choisir de répondre avec AUTHENTICATION_NOT_REQUIRED.
Pour autoriser d’autres applications que celles de lecture de DVD, dans le cas où un décodeur doit effectuer la protection des droits d’auteur sur un seul flux, le décodeur effectue la négociation sur le premier flux pour recevoir un appel de propriété Get pour KS_DVDCOPY_SET_COPY_STATE après l’ouverture du flux. Ne codez pas en dur les propriétés de protection des droits d’auteur pour qu’elles fonctionnent avec un seul flux.