SetupPreferredAudioDevices

L’mot clé SetupPreferredAudioDevices désigne le périphérique audio préféré, qui est l’appareil activé par défaut par le système audio lorsque le système contient un ou plusieurs périphériques audio. Cette mot clé est spécifique à la classe multimédia et est prise en charge par Microsoft Windows Millennium Edition/Windows 98, Microsoft Windows 2000, Windows XP et Windows Vista. SetupPreferredAudioDevicesis non pris en charge dans Windows 7.

Lors de la création d’un périphérique audio, un programme d’application peut choisir d’utiliser l’appareil par défaut (ou préféré) au lieu de spécifier explicitement un appareil. (Par exemple, consultez les descriptions des fonctions waveOutOpen et DirectSoundCreate dans la documentation Microsoft Windows SDK.)

Le système audio effectue le suivi du périphérique audio préféré actuel dans le registre système. Lorsqu’un utilisateur met à niveau un système en installant un nouveau périphérique audio, le fichier INF propriétaire qui installe l’appareil met généralement à jour le registre pour désigner le nouvel appareil comme périphérique audio par défaut.

Les mot clé SetupPreferredAudioDevices peuvent apparaître dans une directive de mise à jour du registre dans la section add-registry (voir Directive INF AddReg) d’un fichier INF pour un périphérique audio. Cette directive a le format suivant :

reg-rootkey, [reg-subkey]SetupPreferredAudioDevices [flags], [dword-value]

La directive indique au système audio d’utiliser les fonctions audio de l’appareil comme valeurs par défaut pour la lecture de son, l’enregistrement audio et la lecture de musique MIDI. Après l’installation, ces trois valeurs par défaut s’affichent dans le panneau de configuration Sons et Multimédia sous l’onglet Audio. L’utilisateur peut utiliser Panneau de configuration pour modifier les appareils par défaut.

Le paramètre dword-value de la directive spécifie une valeur DWORD qui doit être différente de zéro pour activer la directive. Si cette valeur est égale à zéro, la directive n’a aucun effet. Étant donné que Windows Me/98 ne prend pas en charge le type de données de Registre REG_DWORD, dword-value est généralement exprimé sous la forme d’un type de REG_BINARY de 4 octets au lieu d’un DWORD (par exemple, comme « 01,00,00,00 » au lieu de « 0x00000001 »). Le paramètre dword-value peut être spécifié au format binaire brut en définissant le paramètre d’indicateurs de la directive sur « 1 » (FLG_ADDREG_BINVALUETYPE).

La directive prend effet au moment où le pilote de l’appareil est installé. Si un autre appareil occupe le rôle d’appareil préféré au moment de l’installation du nouvel appareil, la directive oblige le nouvel appareil à assumer le rôle d’appareil préféré, ce qui remplace l’autre appareil de ce rôle.

Lors de la mise à niveau ou de la réinstallation du pilote d’un appareil qui a déjà été installé, vous pouvez éviter de modifier les sélections actuelles de périphériques préférés de l’utilisateur pour la lecture audio, l’enregistrement audio et la lecture de musique MIDI. Si c’est le cas, définissez le bit FLG_ADDREG_NOCLOBBER dans le paramètre flags , ce qui entraîne l’entrée en vigueur de la directive uniquement s’il s’agit de l’installation initiale de l’appareil.

Exemple

L’exemple suivant fait partie d’un fichier INF qui montre comment utiliser le mot clé SetupPreferredAudioDevices :

  AddReg = XYZ-Audio-Device.AddReg
  ...
  [XYZ-Audio-Device.AddReg]
  HKR,,SetupPreferredAudioDevices,3,01,00,00,00

La directive à la fin de l’exemple spécifie que l’appareil nommé « XYZ-Audio-Device » est désormais le périphérique audio préféré. HKR est la clé racine du périphérique audio dans le Registre. Le paramètre flags a la valeur 3, qui est l’OR au niveau du bit de FLG_ADDREG_BINVALUETYPE et FLG_ADDREG_NOCLOBBER. Ce dernier empêche le remplacement des entrées existantes du registre des appareils préférés dans le cas où l’appareil est déjà installé et que son pilote est simplement mis à niveau. Les quatre octets à la fin de la directive spécifient une valeur différente de zéro, qui est nécessaire pour activer la directive.

Avec l’implémentation actuelle de l’mot clé SetupPreferredAudioDevices dans Windows Vista, tout point de terminaison audio dont la valeur dword est définie sur un nombre impair peut être défini comme appareil par défaut. Pour vous assurer que le point de terminaison approprié est défini en tant qu’appareil par défaut, assurez-vous que le filtre KS qui contient le point de terminaison approprié est exposé en dernier. Vous devez le faire en raison de l’algorithme utilisé par le service AudioEndpointBuilder pour remplir les magasins de propriétés et définir les appareils par défaut.