chrome.audio

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 đính kèm vào hệ thống. API này hiện chỉ có trong 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ụ: "USB Microphone").

  • id

    chuỗi

    Giá trị nhận dạng duy nhất của thiết bị âm thanh.

  • isActive

    boolean

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

  • cấp lần truy cập,

    số

    Độ âm thanh của thiết bị, âm lượng đầu ra, độ lợi đầu vào.

  • stableDeviceId

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

    Chuỗi mã thiết bị ổn định/bền vững (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 được đặt, chỉ những thiết bị âm thanh có trạng thái đang 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ữ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 các thiết bị đầu vào không bị ảnh hưởng, hãy để thuộc tính này ở trạng thái chưa đặt.

  • 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 các thiết bị đầu ra sẽ không bị ảnh hưởng, hãy để thuộc tính này ở trạng thái chưa đặt.

DeviceProperties

Thuộc tính

  • cấp lần truy cập,

    số 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 sử dụng với thiết bị đầu vào âm thanh, đại diện cho độ khuếch đại của thiết bị âm thanh.

    Nếu được sử dụng với thiết bị đầu ra âm thanh, đại diện cho â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"

"KHÁC"

LevelChangedEvent

Thuộc tính

  • deviceId

    chuỗi

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

  • cấp lần truy cập,

    số

    Cấp âm thanh mới của thiết bị.

MuteChangedEvent

Thuộc tính

  • isMuted

    boolean

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

  • streamType

    Loại luồng mà giá trị tắt tiếng đã thay đổi. Giá trị tắt tiếng mới cập nhật 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,
)

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

Tham số

  • filter

    DeviceFilter không bắt buộc

    Các thuộc tính thiết bị để 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 {}, danh sách thiết bị được trả về sẽ chứa tất cả thiết bị âm thanh có sẵn.

  • lệnh gọi lại

    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

    Lời hứa được hỗ trợ trong Tệp kê khai V3 trở lên, nhưng lệnh gọi lại được cung cấp để đảm bảo khả năng tương thích ngược. Bạn không thể sử dụng cả hai trong cùng một lệnh gọi hàm. Lời hứa sẽ phân giải bằng cùng một loại được truyền đến lệnh gọi lại.

getMute()

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

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

Tham số

  • streamType

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

  • lệnh gọi lại

    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 được hỗ trợ trong Tệp kê khai V3 trở lên, nhưng lệnh gọi lại được cung cấp để đảm bảo khả năng tương thích ngược. Bạn không thể sử dụng cả hai trong cùng một lệnh gọi hàm. Lời hứa sẽ phân giải bằng cùng một loại được truyền đến lệnh gọi lại.

setActiveDevices()

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

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

Tham số

  • mã nhận dạng

    Chỉ định mã nhận dạng của các thiết bị đang 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.

    Bạn sẽ gặp lỗi nếu truyền vào một mã thiết bị không tồn tại.

  • lệnh gọi lại

    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 được hỗ trợ trong Tệp kê khai V3 trở lên, nhưng lệnh gọi lại được cung cấp để đảm bảo khả năng tương thích ngược. Bạn không thể sử dụng cả hai trong cùng một lệnh gọi hàm. Lời hứa sẽ phân giải bằng cùng một loại được truyền đến lệnh gọi lại.

setMute()

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

Đặ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.

Tham số

  • streamType

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

  • isMuted

    boolean

    Giá trị mới của trạng thái tắt tiếng.

  • lệnh gọi lại

    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 được hỗ trợ trong Tệp kê khai V3 trở lên, nhưng lệnh gọi lại được cung cấp để đảm bảo khả năng tương thích ngược. Bạn không thể sử dụng cả hai trong cùng một lệnh gọi hàm. Lời hứa sẽ phân giải bằng cùng một loại được truyền đến lệnh gọi lại.

setProperties()

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

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

Tham số

  • id

    chuỗi

  • các tài sản
  • lệnh gọi lại

    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 được hỗ trợ trong Tệp kê khai V3 trở lên, nhưng lệnh gọi lại được cung cấp để đảm bảo khả năng tương thích ngược. Bạn không thể sử dụng cả hai trong cùng một lệnh gọi hàm. Lời hứa sẽ phân giải bằng cùng một loại được truyền đến 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 hoặc thiết bị hiện có bị xoá.

Tham 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.

Tham 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 là trên 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.

Tham số