chrome.audio

Descrição

A API chrome.audio é fornecida para permitir que os usuários recebam informações sobre os dispositivos de áudio conectados ao sistema e os controlem. No momento, essa API só está disponível no modo quiosque para ChromeOS.

Permissões

audio

Disponibilidade

Chrome 59 e versões mais recentes Somente no ChromeOS

Tipos

AudioDeviceInfo

Propriedades

  • deviceName

    string

    Nome do dispositivo:

  • deviceType

    Tipo de dispositivo.

  • displayName

    string

    O nome amigável ao usuário (por exemplo, "Microfone USB").

  • id

    string

    O identificador exclusivo do dispositivo de áudio.

  • isActive

    booleano

    Verdadeiro se este é o dispositivo ativo atual.

  • level

    number

    O nível de som do dispositivo, o volume da saída, o ganho da entrada.

  • stableDeviceId

    string opcional

    A string de ID de dispositivo estável/persistente, quando disponível.

  • streamType

    Tipo de transmissão associado a este dispositivo.

DeviceFilter

Propriedades

  • isActive

    booleano opcional

    Se definido, apenas os dispositivos de áudio com estado ativo correspondente a esse valor vão atender ao filtro.

  • streamTypes

    StreamType[] opcional

    Se definido, apenas os dispositivos de áudio cujo tipo de transmissão está incluído nesta lista vão atender ao filtro.

DeviceIdLists

Propriedades

  • entrada

    string[] opcional

    Lista de dispositivos de entrada especificados pelo ID.

    Para indicar que os dispositivos de entrada não serão afetados, deixe essa propriedade indefinida.

  • output

    string[] opcional

    Lista de dispositivos de saída especificados pelo ID.

    Para indicar que os dispositivos de saída não serão afetados, deixe essa propriedade indefinida.

DeviceProperties

Propriedades

  • level

    número opcional

    O nível de som desejado do dispositivo de áudio. O padrão é o nível de som atual do dispositivo.

    Se usado com um dispositivo de entrada de áudio, representa o ganho do dispositivo de áudio.

    Se usado com um dispositivo de saída de áudio, representa o volume do dispositivo de áudio.

DeviceType

Tipos de dispositivos de áudio disponíveis.

Enumeração

"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"

"OUTROS"

LevelChangedEvent

Propriedades

  • deviceId

    string

    ID do dispositivo cujo nível de som mudou.

  • level

    number

    O novo nível de som do dispositivo.

MuteChangedEvent

Propriedades

  • isMuted

    booleano

    Indica se o stream está ou não em silêncio.

  • streamType

    O tipo de transmissão em que o valor de desativação de som foi alterado. O valor de desativação atualizado se aplica a todos os dispositivos com esse tipo de transmissão.

StreamType

Tipo de transmissão fornecido por um dispositivo de áudio.

Enumeração

"INPUT"

"OUTPUT"

Métodos

getDevices()

Promessa
chrome.audio.getDevices(
  filter?: DeviceFilter,
  callback?: function,
)

Recebe uma lista de dispositivos de áudio filtrados com base em filter.

Parâmetros

  • filtro

    DeviceFilter opcional

    Propriedades do dispositivo para filtrar a lista de dispositivos de áudio retornados. Se o filtro não for definido ou for definido como {}, a lista de dispositivos retornada vai conter todos os dispositivos de áudio disponíveis.

  • callback

    função opcional

    O parâmetro callback tem este formato:

    (devices: AudioDeviceInfo[]) => void

Retorna

  • Promise<AudioDeviceInfo[]>

    Chrome 116 e versões mais recentes

    As promessas têm suporte no Manifest V3 e versões mais recentes, mas os callbacks são fornecidos para compatibilidade com versões anteriores. Não é possível usar os dois na mesma chamada de função. A promessa é resolvida com o mesmo tipo transmitido para o callback.

getMute()

Promessa
chrome.audio.getMute(
  streamType: StreamType,
  callback?: function,
)

Recebe o estado de silenciamento do sistema para o tipo de transmissão especificado.

Parâmetros

  • streamType

    Tipo de stream para o qual o estado de silenciamento precisa ser buscado.

  • callback

    função opcional

    O parâmetro callback tem este formato:

    (value: boolean) => void

    • valor

      booleano

Retorna

  • Promise<boolean>

    Chrome 116 e versões mais recentes

    As promessas têm suporte no Manifest V3 e versões mais recentes, mas os callbacks são fornecidos para compatibilidade com versões anteriores. Não é possível usar os dois na mesma chamada de função. A promessa é resolvida com o mesmo tipo transmitido para o callback.

setActiveDevices()

Promessa
chrome.audio.setActiveDevices(
  ids: DeviceIdLists,
  callback?: function,
)

Define listas de dispositivos de entrada e/ou saída ativos.

Parâmetros

  • Especifica os IDs dos dispositivos que precisam estar ativos. Se a lista de entrada ou saída não estiver definida, os dispositivos dessa categoria não serão afetados.

    É um erro transmitir um ID de dispositivo inexistente.

  • callback

    função opcional

    O parâmetro callback tem este formato:

    () => void

Retorna

  • Promise<void>

    Chrome 116 e versões mais recentes

    As promessas têm suporte no Manifest V3 e versões mais recentes, mas os callbacks são fornecidos para compatibilidade com versões anteriores. Não é possível usar os dois na mesma chamada de função. A promessa é resolvida com o mesmo tipo transmitido para o callback.

setMute()

Promessa
chrome.audio.setMute(
  streamType: StreamType,
  isMuted: boolean,
  callback?: function,
)

Define o estado de silenciamento para um tipo de transmissão. O estado de silenciamento será aplicado a todos os dispositivos de áudio com o tipo de stream de áudio especificado.

Parâmetros

  • streamType

    Tipo de transmissão para o qual o estado de silenciamento precisa ser definido.

  • isMuted

    booleano

    Novo valor de desativação do som.

  • callback

    função opcional

    O parâmetro callback tem este formato:

    () => void

Retorna

  • Promise<void>

    Chrome 116 e versões mais recentes

    As promessas têm suporte no Manifest V3 e versões mais recentes, mas os callbacks são fornecidos para compatibilidade com versões anteriores. Não é possível usar os dois na mesma chamada de função. A promessa é resolvida com o mesmo tipo transmitido para o callback.

setProperties()

Promessa
chrome.audio.setProperties(
  id: string,
  properties: DeviceProperties,
  callback?: function,
)

Define as propriedades do dispositivo de entrada ou saída.

Parâmetros

  • id

    string

  • properties
  • callback

    função opcional

    O parâmetro callback tem este formato:

    () => void

Retorna

  • Promise<void>

    Chrome 116 e versões mais recentes

    As promessas têm suporte no Manifest V3 e versões mais recentes, mas os callbacks são fornecidos para compatibilidade com versões anteriores. Não é possível usar os dois na mesma chamada de função. A promessa é resolvida com o mesmo tipo transmitido para o callback.

Eventos

onDeviceListChanged

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

É acionado quando os dispositivos de áudio mudam, seja com a adição de novos dispositivos ou a remoção de dispositivos atuais.

Parâmetros

onLevelChanged

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

É acionado quando o nível do som muda em um dispositivo de áudio ativo.

Parâmetros

onMuteChanged

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

É acionado quando o estado de silenciamento da entrada ou saída de áudio muda. O estado de silenciamento é aplicado em todo o sistema, e o novo valor se aplica a todos os dispositivos de áudio com o tipo de stream especificado.

Parâmetros