chrome.audio

refresh date: 2026-09-25 robots: noindex

Description

L'API chrome.audio permet aux utilisateurs d'obtenir des informations sur les appareils audio connectés au système et de les contrôler. Cette API n'est actuellement disponible qu'en mode Kiosque pour ChromeOS.

Autorisations

audio

Disponibilité

Chrome 59 ou version ultérieure ChromeOS uniquement

Types

AudioDeviceInfo

Propriétés

  • deviceName

    chaîne

    Nom de l'appareil.

  • deviceType

    Type d'appareil.

  • displayName

    chaîne

    Nom convivial (par exemple, "Microphone USB").

  • id

    chaîne

    Identifiant unique de l'appareil audio.

  • isActive

    booléen

    "True" s'il s'agit de l'appareil actif actuel.

  • niveau

    nombre

    Niveau sonore de l'appareil, volume de sortie, gain d'entrée.

  • stableDeviceId

    chaîne facultatif

    Chaîne d'ID de l'appareil stable/persistante, si disponible.

  • streamType

    Type de flux associé à cet appareil.

DeviceFilter

Propriétés

  • isActive

    boolean facultatif

    Si ce paramètre est défini, seuls les appareils audio dont l'état actif correspond à cette valeur satisferont au filtre.

  • streamTypes

    StreamType[] facultatif

    Si cette option est définie, seuls les appareils audio dont le type de flux est inclus dans cette liste satisferont le filtre.

DeviceIdLists

Propriétés

  • entrée

    string[] facultatif

    Liste des périphériques d'entrée spécifiés par leur ID.

    Pour indiquer que les périphériques d'entrée ne doivent pas être affectés, ne définissez pas cette propriété.

  • output

    string[] facultatif

    Liste des périphériques de sortie spécifiés par leur ID.

    Pour indiquer que les périphériques de sortie ne doivent pas être affectés, ne définissez pas cette propriété.

DeviceProperties

Propriétés

  • niveau

    number facultatif

    Niveau sonore souhaité de l'appareil audio. Par défaut, le niveau sonore actuel de l'appareil est utilisé.

    S'il est utilisé avec un périphérique d'entrée audio, il représente le gain de l'appareil audio.

    S'il est utilisé avec un périphérique de sortie audio, il représente le volume de l'appareil audio.

DeviceType

Types d'appareils audio disponibles.

Énumération

"HEADPHONE"

"MIC"

"USB"

"BLUETOOTH"

"HDMI"

"INTERNAL_SPEAKER"

"INTERNAL_MIC"

"FRONT_MIC"

"REAR_MIC"

"KEYBOARD_MIC"

"HOTWORD"

"LINEOUT"

"POST_MIX_LOOPBACK"

"POST_DSP_LOOPBACK"

"ALSA_LOOPBACK"

"OTHER"

LevelChangedEvent

Propriétés

  • deviceId

    chaîne

    ID de l'appareil dont le niveau sonore a changé.

  • niveau

    nombre

    Nouveau niveau sonore de l'appareil.

MuteChangedEvent

Propriétés

  • isMuted

    booléen

    Indique si le flux est désormais coupé.

  • streamType

    Type de flux pour lequel la valeur de coupure du son a changé. La nouvelle valeur de coupure du son s'applique à tous les appareils avec ce type de flux.

StreamType

Type de flux fourni par un appareil audio.

Énumération

"INPUT"

"OUTPUT"

Méthodes

getDevices()

Promise
chrome.audio.getDevices(
  filter?: DeviceFilter,
  callback?: function,
)
: Promise<AudioDeviceInfo[]>

Récupère une liste d'appareils audio filtrée en fonction de filter.

Paramètres

  • filtre

    DeviceFilter facultatif

    Propriétés de l'appareil permettant de filtrer la liste des appareils audio renvoyés. Si le filtre n'est pas défini ou s'il est défini sur {}, la liste d'appareils renvoyée contiendra tous les appareils audio disponibles.

  • callback

    function facultatif

    Le paramètre callback se présente comme suit :

    (devices: AudioDeviceInfo[]) => void

Renvoie

  • Promise<AudioDeviceInfo[]>

    Chrome 116 ou version ultérieure

    Indique la liste des appareils audio demandés.

    Les promesses ne sont compatibles qu'avec Manifest V3 et les versions ultérieures. Les autres plates-formes doivent utiliser des rappels.

getMute()

Promise
chrome.audio.getMute(
  streamType: StreamType,
  callback?: function,
)
: Promise<boolean>

Récupère l'état de coupure du son à l'échelle du système pour le type de flux spécifié.

Paramètres

  • streamType

    Type de flux pour lequel l'état de coupure du son doit être récupéré.

  • callback

    function facultatif

    Le paramètre callback se présente comme suit :

    (value: boolean) => void

    • valeur

      booléen

Renvoie

  • Promise<boolean>

    Chrome 116 ou version ultérieure

    Promesse qui se résout avec une valeur booléenne indiquant si le son est coupé ou non pour le type de flux spécifié.

    Les promesses ne sont compatibles qu'avec Manifest V3 et les versions ultérieures. Les autres plates-formes doivent utiliser des rappels.

setActiveDevices()

Promise
chrome.audio.setActiveDevices(
  ids: DeviceIdLists,
  callback?: function,
)
: Promise<void>

Définit des listes de périphériques d'entrée et/ou de sortie actifs.

Paramètres

  • Spécifie les ID des appareils qui doivent être actifs. Si la liste d'entrée ou de sortie n'est pas définie, les appareils de cette catégorie ne sont pas affectés.

    La transmission d'un ID d'appareil inexistant génère une erreur.

  • callback

    function facultatif

    Le paramètre callback se présente comme suit :

    () => void

Renvoie

  • Promise<void>

    Chrome 116 ou version ultérieure

    Les promesses ne sont compatibles qu'avec Manifest V3 et les versions ultérieures. Les autres plates-formes doivent utiliser des rappels.

setMute()

Promise
chrome.audio.setMute(
  streamType: StreamType,
  isMuted: boolean,
  callback?: function,
)
: Promise<void>

Définit l'état de coupure du son pour un type de flux. L'état de coupure du son s'applique à tous les appareils audio avec le type de flux audio spécifié.

Paramètres

  • streamType

    Type de flux pour lequel l'état de coupure du son doit être défini.

  • isMuted

    booléen

    Nouvelle valeur de coupure du son.

  • callback

    function facultatif

    Le paramètre callback se présente comme suit :

    () => void

Renvoie

  • Promise<void>

    Chrome 116 ou version ultérieure

    Les promesses ne sont compatibles qu'avec Manifest V3 et les versions ultérieures. Les autres plates-formes doivent utiliser des rappels.

setProperties()

Promise
chrome.audio.setProperties(
  id: string,
  properties: DeviceProperties,
  callback?: function,
)
: Promise<void>

Définit les propriétés du périphérique d'entrée ou de sortie.

Paramètres

  • id

    chaîne

  • propriétés
  • callback

    function facultatif

    Le paramètre callback se présente comme suit :

    () => void

Renvoie

  • Promise<void>

    Chrome 116 ou version ultérieure

    Les promesses ne sont compatibles qu'avec Manifest V3 et les versions ultérieures. Les autres plates-formes doivent utiliser des rappels.

Événements

onDeviceListChanged

chrome.audio.onDeviceListChanged.addListener(
  callback: function,
)

Se déclenche lorsque les appareils audio changent, que de nouveaux appareils soient ajoutés ou que des appareils existants soient supprimés.

Paramètres

onLevelChanged

chrome.audio.onLevelChanged.addListener(
  callback: function,
)

Se déclenche lorsque le niveau sonore d'un appareil audio actif change.

Paramètres

onMuteChanged

chrome.audio.onMuteChanged.addListener(
  callback: function,
)

Se déclenche lorsque l'état de coupure du son de l'entrée ou de la sortie audio change. Notez que l'état de coupure du son s'applique à l'ensemble du système et que la nouvelle valeur s'applique à tous les appareils audio avec le type de flux spécifié.

Paramètres