Mô tả
API chrome.audio
được cung cấp để cho phép người dùng nhận thông tin và kiểm soát các thiết bị âm thanh được gắn vào hệ thống. API này hiện chỉ có ở chế độ kiosk cho ChromeOS.
Quyền
audio
Phạm vi cung cấp
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 riêng biệt của thiết bị âm thanh.
-
isActive
boolean
True nếu đây là thiết bị đang hoạt động.
-
cấp lần truy cập,
số
Mức âm thanh của thiết bị, âm lượng cho đầu ra, độ khuếch đại cho đầu vào.
-
stableDeviceId
chuỗi không bắt buộc
Chuỗi mã nhận dạng thiết bị ổn định/duy trì (nếu có).
-
streamType
Loại luồng phát đượ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 hoạt động khớp với giá trị này mới đáp ứng được bộ lọc.
-
streamTypes
StreamType[] không bắt buộc
Nếu được đặ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 được bộ lọc.
DeviceIdLists
Thuộc tính
-
input
string[] không bắt buộc
Danh sách các 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 để trống thuộc tính này.
-
output
string[] không bắt buộc
Danh sách các 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 để trống thuộc tính này.
DeviceProperties
Thuộc tính
-
cấp lần truy 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 sẽ biểu thị độ khuếch đại của thiết bị âm thanh.
Nếu được dùng với thiết bị đầu ra âm thanh, thì tham số này biểu thị â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ã nhận dạng của thiết bị có mức âm thanh đã thay đổi.
-
cấp lần truy cập,
số
Mức âm thanh mới của thiết bị.
MuteChangedEvent
Thuộc tính
-
isMuted
boolean
Luồng phát hiện có đang ở chế độ 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()
chrome.audio.getDevices(
filter?: DeviceFilter,
): Promise<AudioDeviceInfo[]>
Lấy danh sách các 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 của thiết bị dùng để lọc danh sách thiết bị âm thanh được trả về. Nếu bộ lọc không được đặt hoặc được đặt thành
{}
, danh sách thiết bị được trả về sẽ chứa tất cả thiết bị âm thanh hiện có.
Giá trị trả về
-
Promise<AudioDeviceInfo[]>
Chrome 116 trở lên
getMute()
chrome.audio.getMute(
streamType: StreamType,
): 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 phát mà bạn muốn tìm nạp trạng thái tắt tiếng.
Giá trị trả về
-
Promise<boolean>
Chrome 116 trở lên
setActiveDevices()
chrome.audio.setActiveDevices(
ids: DeviceIdLists,
): 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.
Bạn sẽ gặp lỗi nếu truyền mã nhận dạng thiết bị không tồn tại.
Giá trị trả về
-
Promise<void>
Chrome 116 trở lên
setMute()
chrome.audio.setMute(
streamType: StreamType,
isMuted: boolean,
): 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 mà bạn nên đặt trạng thái tắt tiếng.
-
isMuted
boolean
Giá trị tắt tiếng mới.
Giá trị trả về
-
Promise<void>
Chrome 116 trở lên
setProperties()
chrome.audio.setProperties(
id: string,
properties: DeviceProperties,
): Promise<void>
Đặt các 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
Giá trị trả về
-
Promise<void>
Chrome 116 trở lên
Sự kiện
onDeviceListChanged
chrome.audio.onDeviceListChanged.addListener(
callback: function,
)
Kích hoạt khi thiết bị âm thanh thay đổi, có thể là thiết bị mới được thêm vào hoặc thiết bị hiện có bị xoá.
Thông số
-
callback
hàm
Tham số
callback
có dạng như sau:(devices: AudioDeviceInfo[]) => void
-
thiết bị
-
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ố
-
callback
hàm
Tham số
callback
có dạng như sau:(event: LevelChangedEvent) => void
-
event
-
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 sẽ áp dụng cho mọi thiết bị âm thanh có loại luồng được chỉ định.
Thông số
-
callback
hàm
Tham số
callback
có dạng như sau:(event: MuteChangedEvent) => void
-
event
-