chrome.audio

refresh date: 2026-09-25 robots: noindex

Mô tả

API chrome.audio được cung cấp để cho phép người dùng nhận thông tin và điều khiển các thiết bị âm thanh được kết nối với hệ thống. API này hiện chỉ có ở chế độ kiosk cho ChromeOS.

Quyền

audio

Phạm vi cung cấp

Chrome 59 trở lên Chỉ ChromeOS

Loại

AudioDeviceInfo

Thuộc tính

  • deviceName

    chuỗi

    Tên thiết bị.

  • deviceType

    Loại thiết bị.

  • Tên hiển thị

    chuỗi

    Tên thân thiện với người dùng (ví dụ: "Micrô USB").

  • id

    chuỗi

    Giá trị nhận dạng riêng biệt của thiết bị âm thanh.

  • isActive

    boolean

    Đúng nếu đây là thiết bị đang hoạt động.

  • cấp độ

    số

    Mức âm thanh của thiết bị, âm lượng cho đầu ra, mức tăng cho đầu vào.

  • stableDeviceId

    chuỗi không bắt buộc

    Chuỗi mã thiết bị ổn định/cố định (nếu có).

  • streamType

    Loại luồng được liên kết với thiết bị này.

DeviceFilter

Thuộc tính

  • isActive

    boolean không bắt buộc

    Nếu bạn đặt giá trị này, thì chỉ những thiết bị âm thanh có trạng thái hoạt động khớp với giá trị này mới đáp ứng bộ lọc.

  • streamTypes

    StreamType[] không bắt buộc

    Nếu bạn đặt chính sách này, thì chỉ những thiết bị âm thanh có loại luồng nằm trong danh sách này mới đáp ứng bộ lọc.

DeviceIdLists

Thuộc tính

  • input

    string[] không bắt buộc

    Danh sách thiết bị đầu vào được chỉ định theo mã nhận dạng.

    Để cho biết rằng các thiết bị đầu vào không bị ảnh hưởng, hãy để trống thuộc tính này.

  • output

    string[] không bắt buộc

    Danh sách thiết bị đầu ra được chỉ định theo mã nhận dạng.

    Để cho biết rằng các thiết bị đầu ra không bị ảnh hưởng, hãy để trống thuộc tính này.

DeviceProperties

Thuộc tính

  • cấp độ

    number không bắt buộc

    Mức âm thanh mong muốn của thiết bị âm thanh. Mặc định là mức âm thanh hiện tại của thiết bị.

    Nếu được dùng với thiết bị đầu vào âm thanh, thì giá trị này thể hiện mức tăng âm của thiết bị âm thanh.

    Nếu được dùng với thiết bị đầu ra âm thanh, thì biểu tượng này thể hiện âm lượng của thiết bị âm thanh.

DeviceType

Các loại thiết bị âm thanh hiện có.

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"

"OTHER"

LevelChangedEvent

Thuộc tính

  • deviceId

    chuỗi

    Mã của thiết bị có mức âm thanh đã thay đổi.

  • cấp độ

    số

    Mức âm thanh mới của thiết bị.

MuteChangedEvent

Thuộc tính

  • isMuted

    boolean

    Liệu luồng hiện có bị tắt tiếng hay không.

  • streamType

    Loại luồng có giá trị tắt tiếng đã thay đổi. Giá trị tắt tiếng mới sẽ áp dụng cho tất cả thiết bị có loại luồng này.

StreamType

Loại luồng mà thiết bị âm thanh cung cấp.

Enum

"INPUT"

"OUTPUT"

Phương thức

getDevices()

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

Lấy danh sách thiết bị âm thanh được lọc dựa trên filter.

Thông số

  • filter

    DeviceFilter không bắt buộc

    Các thuộc tính thiết bị dùng để lọc danh sách thiết bị âm thanh được trả về. Nếu bạn không đặt bộ lọc hoặc đặt thành {}, thì danh sách thiết bị được trả về sẽ chứa tất cả thiết bị âm thanh hiện có.

  • callback

    hàm không bắt buộc

    Tham số callback có dạng như sau:

    (devices: AudioDeviceInfo[]) => void

Giá trị trả về

  • Promise<AudioDeviceInfo[]>

    Chrome 116 trở lên

    Báo cáo danh sách thiết bị âm thanh được yêu cầu.

    Lời hứa chỉ được hỗ trợ cho Manifest V3 trở lên, các nền tảng khác cần sử dụng lệnh gọi lại.

getMute()

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

Lấy trạng thái tắt tiếng trên toàn hệ thống cho loại luồng được chỉ định.

Thông số

  • streamType

    Loại luồng cần tìm nạp trạng thái tắt tiếng.

  • callback

    hàm không bắt buộc

    Tham số callback có dạng như sau:

    (value: boolean) => void

    • value

      boolean

Giá trị trả về

  • Promise<boolean>

    Chrome 116 trở lên

    Lời hứa sẽ phân giải bằng một giá trị boolean cho biết liệu chế độ tắt tiếng có được đặt cho loại luồng đã chỉ định hay không.

    Lời hứa chỉ được hỗ trợ cho Manifest V3 trở lên, các nền tảng khác cần sử dụng lệnh gọi lại.

setActiveDevices()

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

Đặt danh sách các thiết bị đầu vào và/hoặc đầu ra đang hoạt động.

Thông số

  • mã nhận dạng

    Chỉ định mã nhận dạng của những thiết bị cần hoạt động. Nếu bạn không đặt danh sách đầu vào hoặc đầu ra, thì các thiết bị trong danh mục đó sẽ không bị ảnh hưởng.

    Sẽ xảy ra lỗi nếu bạn truyền vào một mã thiết bị không tồn tại.

  • callback

    hàm không bắt buộc

    Tham số callback có dạng như sau:

    () => void

Giá trị trả về

  • Promise<void>

    Chrome 116 trở lên

    Lời hứa chỉ được hỗ trợ cho Manifest V3 trở lên, các nền tảng khác cần sử dụng lệnh gọi lại.

setMute()

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

Đặt trạng thái tắt tiếng cho một loại luồng. Trạng thái tắt tiếng sẽ áp dụng cho tất cả thiết bị âm thanh có loại luồng âm thanh được chỉ định.

Thông số

  • streamType

    Loại luồng cần đặt trạng thái tắt tiếng.

  • isMuted

    boolean

    Giá trị tắt tiếng mới.

  • callback

    hàm không bắt buộc

    Tham số callback có dạng như sau:

    () => void

Giá trị trả về

  • Promise<void>

    Chrome 116 trở lên

    Lời hứa chỉ được hỗ trợ cho Manifest V3 trở lên, các nền tảng khác cần sử dụng lệnh gọi lại.

setProperties()

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

Đặt thuộc tính cho thiết bị đầu vào hoặc đầu ra.

Thông số

  • id

    chuỗi

  • tài sản
  • callback

    hàm không bắt buộc

    Tham số callback có dạng như sau:

    () => void

Giá trị trả về

  • Promise<void>

    Chrome 116 trở lên

    Lời hứa chỉ được hỗ trợ cho Manifest V3 trở lên, các nền tảng khác cần sử dụng lệnh gọi lại.

Sự kiện

onDeviceListChanged

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

Được kích hoạt khi thiết bị âm thanh thay đổi, thiết bị mới được thêm vào hoặc thiết bị hiện có bị xoá.

Thông số

onLevelChanged

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

Được kích hoạt khi mức âm thanh thay đổi đối với một thiết bị âm thanh đang hoạt động.

Thông số

onMuteChanged

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

Được kích hoạt khi trạng thái tắt tiếng của đầu vào hoặc đầu ra âm thanh thay đổi. Xin lưu ý rằng trạng thái tắt tiếng áp dụng cho toàn hệ thống và giá trị mới áp dụng cho mọi thiết bị âm thanh có loại luồng được chỉ định.

Thông số