chrome.audio

Deskripsi

chrome.audio API disediakan untuk memungkinkan pengguna mendapatkan informasi tentang dan mengontrol perangkat audio yang terpasang ke sistem. API ini saat ini hanya tersedia dalam mode kios untuk ChromeOS.

Izin

audio

Ketersediaan

Chrome 59+ Khusus ChromeOS

Jenis

AudioDeviceInfo

Properti

  • deviceName

    string

    Nama perangkat.

  • deviceType

    Jenis perangkat.

  • Nama Tampilan

    string

    Nama yang mudah digunakan (misalnya, "Mikrofon USB").

  • id

    string

    ID unik perangkat audio.

  • isActive

    boolean

    Benar jika ini adalah perangkat aktif saat ini.

  • yaitu tingkat klik

    angka

    Tingkat suara perangkat, volume untuk output, gain untuk input.

  • stableDeviceId

    string opsional

    String ID perangkat stabil/persisten jika tersedia.

  • streamType

    Jenis streaming yang terkait dengan perangkat ini.

DeviceFilter

Properti

  • isActive

    boolean opsional

    Jika ditetapkan, hanya perangkat audio yang status aktifnya cocok dengan nilai ini yang akan memenuhi filter.

  • streamTypes

    StreamType[] opsional

    Jika ditetapkan, hanya perangkat audio yang jenis streaming-nya disertakan dalam daftar ini yang akan memenuhi filter.

DeviceIdLists

Properti

  • input

    string[] opsional

    Daftar perangkat input yang ditentukan oleh ID-nya.

    Untuk menunjukkan bahwa perangkat input tidak akan terpengaruh, biarkan properti ini tidak ditetapkan.

  • hasil

    string[] opsional

    Daftar perangkat output yang ditentukan oleh ID-nya.

    Untuk menunjukkan bahwa perangkat output tidak akan terpengaruh, biarkan properti ini tidak ditetapkan.

DeviceProperties

Properti

  • yaitu tingkat klik

    number opsional

    Tingkat suara perangkat audio yang diinginkan. Setelan defaultnya adalah tingkat suara perangkat saat ini.

    Jika digunakan dengan perangkat input audio, mewakili penguatan perangkat audio.

    Jika digunakan dengan perangkat output audio, mewakili volume perangkat audio.

DeviceType

Jenis perangkat audio yang tersedia.

Enum

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

"LAINNYA"

LevelChangedEvent

Properti

  • deviceId

    string

    ID perangkat yang tingkat suaranya telah berubah.

  • yaitu tingkat klik

    angka

    Tingkat suara baru perangkat.

MuteChangedEvent

Properti

  • isMuted

    boolean

    Apakah streaming sekarang dibisukan atau tidak.

  • streamType

    Jenis streaming yang nilai bisunya diubah. Nilai bisukan yang diperbarui berlaku untuk semua perangkat dengan jenis streaming ini.

StreamType

Jenis streaming yang disediakan perangkat audio.

Enum

"INPUT"

"OUTPUT"

Metode

getDevices()

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

Mendapatkan daftar perangkat audio yang difilter berdasarkan filter.

Parameter

  • filter

    DeviceFilter opsional

    Properti perangkat yang digunakan untuk memfilter daftar perangkat audio yang ditampilkan. Jika filter tidak ditetapkan atau ditetapkan ke {}, daftar perangkat yang ditampilkan akan berisi semua perangkat audio yang tersedia.

  • callback

    fungsi opsional

    Parameter callback terlihat seperti:

    (devices: AudioDeviceInfo[]) => void

Hasil

  • Promise<AudioDeviceInfo[]>

    Chrome 116+

    Promise didukung di Manifes V3 dan yang lebih baru, tetapi callback disediakan untuk kompatibilitas mundur. Anda tidak dapat menggunakan keduanya pada panggilan fungsi yang sama. Promise di-resolve dengan jenis yang sama yang diteruskan ke callback.

getMute()

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

Mendapatkan status bisukan seluruh sistem untuk jenis streaming yang ditentukan.

Parameter

  • streamType

    Jenis streaming yang status bisunya harus diambil.

  • callback

    fungsi opsional

    Parameter callback terlihat seperti:

    (value: boolean) => void

    • nilai

      boolean

Hasil

  • Promise<boolean>

    Chrome 116+

    Promise didukung di Manifes V3 dan yang lebih baru, tetapi callback disediakan untuk kompatibilitas mundur. Anda tidak dapat menggunakan keduanya pada panggilan fungsi yang sama. Promise di-resolve dengan jenis yang sama yang diteruskan ke callback.

setActiveDevices()

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

Menetapkan daftar perangkat input dan/atau output yang aktif.

Parameter

  • Menentukan ID perangkat yang harus aktif. Jika daftar input atau output tidak ditetapkan, perangkat dalam kategori tersebut tidak akan terpengaruh.

    Jika ID perangkat tidak ada, akan terjadi error.

  • callback

    fungsi opsional

    Parameter callback terlihat seperti:

    () => void

Hasil

  • Promise<void>

    Chrome 116+

    Promise didukung di Manifes V3 dan yang lebih baru, tetapi callback disediakan untuk kompatibilitas mundur. Anda tidak dapat menggunakan keduanya pada panggilan fungsi yang sama. Promise di-resolve dengan jenis yang sama yang diteruskan ke callback.

setMute()

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

Menetapkan status bisu untuk jenis streaming. Status bisu akan diterapkan ke semua perangkat audio dengan jenis streaming audio yang ditentukan.

Parameter

  • streamType

    Jenis streaming yang status bisunya harus ditetapkan.

  • isMuted

    boolean

    Nilai bisukan baru.

  • callback

    fungsi opsional

    Parameter callback terlihat seperti:

    () => void

Hasil

  • Promise<void>

    Chrome 116+

    Promise didukung di Manifes V3 dan yang lebih baru, tetapi callback disediakan untuk kompatibilitas mundur. Anda tidak dapat menggunakan keduanya pada panggilan fungsi yang sama. Promise di-resolve dengan jenis yang sama yang diteruskan ke callback.

setProperties()

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

Menetapkan properti untuk perangkat input atau output.

Parameter

  • id

    string

  • properti
  • callback

    fungsi opsional

    Parameter callback terlihat seperti:

    () => void

Hasil

  • Promise<void>

    Chrome 116+

    Promise didukung di Manifes V3 dan yang lebih baru, tetapi callback disediakan untuk kompatibilitas mundur. Anda tidak dapat menggunakan keduanya pada panggilan fungsi yang sama. Promise di-resolve dengan jenis yang sama yang diteruskan ke callback.

Acara

onDeviceListChanged

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

Diaktifkan saat perangkat audio berubah, baik perangkat baru yang ditambahkan, maupun perangkat lama yang dihapus.

Parameter

onLevelChanged

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

Diaktifkan saat level suara berubah untuk perangkat audio yang aktif.

Parameter

onMuteChanged

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

Diaktifkan saat status bisu input atau output audio berubah. Perhatikan bahwa status bisu berlaku di seluruh sistem dan nilai baru berlaku untuk setiap perangkat audio dengan jenis streaming yang ditentukan.

Parameter