Remarque
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de vous connecter ou de modifier des répertoires.
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de modifier des répertoires.
Les clients d’un pilote audio WDM (Microsoft Windows Driver Model) peuvent envoyer des demandes de propriétés KS aux filtres et broches KS instanciés par le pilote. Par exemple, un client en mode utilisateur peut envoyer une demande de propriété KS en appelant la fonction DeviceIoControl (consultez la documentation du Kit de développement logiciel (SDK) Microsoft Windows) avec un code d’E/S de IOCTL_KS_PROPERTY. Cette fonction envoie un IRP contenant la requête de propriété à l'objet filtre ou pin spécifié.
Les pilotes audio prennent en charge les demandes d’obtention, de définition et de support de base sur les propriétés (KSPROPERTY_TYPE_GET, KSPROPERTY_TYPE_SET et KSPROPERTY_TYPE_BASICSUPPORT). Pour plus d’informations, consultez Ensembles de propriétés des pilotes audio.
Un client peut envoyer des demandes pour trois types de propriétés : propriétés de filtre, propriétés d’épingle et propriétés de nœud. Pour plus d’informations, consultez Propriétés de filtre, d’épingle et de nœud.
Lors de l’envoi d’une demande de propriété de filtre à un objet de filtre, le client spécifie le filtre cible par son handle d’instance (voir Fabriques de filtres). De même, lors de l’envoi d’une demande de propriété pin à un objet pin, la broche cible est spécifiée par son handle d’instance (voir Fabriques de broches). L’un ou l’autre type de requête contient une structure KSPROPERTY qui spécifie les éléments suivants :
Un GUID qui identifie le jeu de propriétés
Index qui identifie un élément de propriété dans le jeu de propriétés spécifié
Indicateurs qui indiquent le type de demande de propriété (get, set ou basic-support)
Les propriétés associées sont regroupées pour former un jeu de propriétés. Une propriété particulière est identifiée par son jeu de propriétés et par un index qui spécifie sa position dans ce jeu.
Une requête de propriété de nœud contient une structure KSNODEPROPERTY , qui combine une structure KSPROPERTY et un ID de nœud. Selon la propriété de nœud, la cible de la requête de propriété est soit une instance de filtre, soit une instance de goupille.
Si un filtre peut créer plusieurs instances d’un type particulier de nœud, la cible de la requête est spécifiée par un gestionnaire de broche. Le handle identifie l’instance d’épingle au début ou à la fin du chemin de données sur lequel réside l’instance de nœud. Dans le cas d’un filtre contenant un nœud SUM ou MUX (voir KSNODETYPE_SUM et KSNODETYPE_MUX), les règles suivantes s’appliquent :
Si la propriété appartient à un nœud situé en aval d'une broche d'entrée (sink) et en amont du nœud SUM ou MUX, la demande de propriété est envoyée à la broche d'entrée.
Si la propriété appartient à un nœud qui se trouve en aval à partir d’un nœud SUM ou MUX et en amont à partir d’une broche source (sortie), la demande de propriété est envoyée à la broche source. (En outre, une demande de propriété pour un nœud SUM ou MUX est envoyée au connecteur source.)
Avec ces conventions, un nœud particulier sur un chemin de données particulier peut être identifié de manière unique.
Pour plus d’informations sur l’utilisation de l’API mixer pour parcourir les nœuds dans un chemin de données, consultez Traduction de la topologie de diffusion en continu du noyau vers l’API de mixeur audio.