Cette page a été traduite à partir de l'anglais par la communauté. Vous pouvez contribuer en rejoignant la communauté francophone sur MDN Web Docs.

View in English Always switch to English

HTMLMediaElement : méthode setSinkId()

Contexte sécurisé: Cette fonctionnalité est uniquement disponible dans des contextes sécurisés (HTTPS), pour certains navigateurs qui la prennent en charge.

La méthode setSinkId() de l'interface HTMLMediaElement définit l'identifiant du périphérique audio à utiliser pour la sortie et retourne une promesse (Promise).

Cela ne fonctionne que lorsque l'application est autorisée à utiliser le périphérique défini. Pour plus d'informations, voir les exigences de sécurité ci-dessous.

Syntaxe

js
setSinkId(sinkId)

Paramètres

sinkId

L'identifiant (MediaDeviceInfo.deviceId) du périphérique de sortie audio.

Valeur de retour

Une promesse (Promise) qui se résout avec undefined.

Exceptions

NotAllowedError DOMException

Retourne une erreur si une politique de permissions speaker-selection est utilisée pour bloquer l'utilisation des sorties audio.

NotFoundError DOMException

Retourne une erreur si l'identifiant du périphérique (deviceId) ne correspond à aucun périphérique de sortie audio.

AbortError DOMException

Retourne une erreur si le changement de périphérique de sortie audio vers le nouveau périphérique a échoué.

Exigences de sécurité

L'accès à l'API est soumis aux contraintes suivantes :

Exemples

Cet exemple montre comment sélectionner un périphérique de sortie audio à partir du tableau retourné par MediaDevices.enumerateDevices(), et le définir comme sortie audio. Notez que le résultat de enumerateDevices() n'inclut que les périphériques pour lesquels l'autorisation de l'utilisateur·ice n'est pas requise ou a déjà été accordée.

js
const peripheriques = await navigator.mediaDevices.enumerateDevices();
const peripheriqueAudio = peripheriques.find(
  (device) => device.kind === "audiooutput",
);
const audio = document.createElement("audio");
await audio.setSinkId(peripheriqueAudio.deviceId);
console.log(`L'audio est diffusé sur ${audio.sinkId}`);

Spécifications

Spécification
Audio Output Devices API
# dom-htmlmediaelement-setsinkid

Compatibilité des navigateurs

Voir aussi