คำอธิบาย
chrome.audio
API มีไว้เพื่ออนุญาตให้ผู้ใช้รับข้อมูลเกี่ยวกับและควบคุมอุปกรณ์เสียงที่เชื่อมต่อกับระบบได้ ปัจจุบัน API นี้ใช้ได้เฉพาะในโหมดคีออสก์สำหรับ ChromeOS
สิทธิ์
audio
ความพร้อมใช้งาน
ประเภท
AudioDeviceInfo
พร็อพเพอร์ตี้
-
deviceName
สตริง
ชื่ออุปกรณ์
-
deviceType
ประเภทอุปกรณ์
-
displayName
สตริง
ชื่อที่เข้าใจง่าย (เช่น "ไมโครโฟน USB")
-
id
สตริง
ตัวระบุที่ไม่ซ้ำกันของอุปกรณ์เสียง
-
isActive
boolean
เป็นจริงหากเป็นอุปกรณ์ที่ใช้งานอยู่ในปัจจุบัน
-
ระดับ
ตัวเลข
ระดับเสียงของอุปกรณ์ ระดับเสียงสำหรับเอาต์พุต เกนสำหรับอินพุต
-
stableDeviceId
string ไม่บังคับ
สตริงรหัสอุปกรณ์ที่เสถียร/ถาวร หากมี
-
streamType
ประเภทสตรีมที่เชื่อมโยงกับอุปกรณ์นี้
DeviceFilter
พร็อพเพอร์ตี้
-
isActive
บูลีน ไม่บังคับ
หากตั้งค่าไว้ จะมีเพียงอุปกรณ์เสียงที่มีสถานะใช้งานอยู่ตรงกับค่านี้เท่านั้นจึงจะตรงตามตัวกรอง
-
streamTypes
StreamType[] ไม่บังคับ
หากตั้งค่าไว้ เฉพาะอุปกรณ์เสียงที่มีประเภทสตรีมอยู่ในรายการนี้เท่านั้นที่จะเป็นไปตามตัวกรอง
DeviceIdLists
พร็อพเพอร์ตี้
-
อินพุต
string[] ไม่บังคับ
รายการอุปกรณ์อินพุตที่ระบุตามรหัส
หากต้องการระบุว่าอุปกรณ์อินพุตไม่ควรได้รับผลกระทบ ให้ปล่อยพร็อพเพอร์ตี้นี้ว่างไว้
-
เอาต์พุต
string[] ไม่บังคับ
รายการอุปกรณ์เอาต์พุตที่ระบุโดยรหัส
หากต้องการระบุว่าอุปกรณ์เอาต์พุตไม่ควรได้รับผลกระทบ ให้ปล่อยพร็อพเพอร์ตี้นี้ว่างไว้
DeviceProperties
พร็อพเพอร์ตี้
-
ระดับ
หมายเลข ไม่บังคับ
ระดับเสียงที่ต้องการของอุปกรณ์เสียง ค่าเริ่มต้นคือระดับเสียงปัจจุบันของอุปกรณ์
หากใช้กับอุปกรณ์อินพุตเสียง หมายถึงอัตราขยายเสียงของอุปกรณ์
หากใช้กับอุปกรณ์เอาต์พุตเสียง จะแสดงระดับเสียงของอุปกรณ์เสียง
DeviceType
ประเภทอุปกรณ์เสียงที่ใช้ได้
ค่าแจกแจง
"HEADPHONE"
"MIC"
"USB"
"บลูทูธ"
"HDMI"
"INTERNAL_SPEAKER"
"INTERNAL_MIC"
"FRONT_MIC"
"REAR_MIC"
"KEYBOARD_MIC"
"HOTWORD"
"LINEOUT"
"POST_MIX_LOOPBACK"
"POST_DSP_LOOPBACK"
"ALSA_LOOPBACK"
"OTHER"
LevelChangedEvent
พร็อพเพอร์ตี้
-
deviceId
สตริง
รหัสของอุปกรณ์ที่มีการเปลี่ยนแปลงระดับเสียง
-
ระดับ
ตัวเลข
ระดับเสียงใหม่ของอุปกรณ์
MuteChangedEvent
พร็อพเพอร์ตี้
-
isMuted
boolean
ขณะนี้สตรีมถูกปิดเสียงอยู่หรือไม่
-
streamType
ประเภทของสตรีมที่มีการเปลี่ยนแปลงค่าการปิดเสียง ค่าการปิดเสียงที่อัปเดตแล้วจะมีผลกับอุปกรณ์ทั้งหมดที่มีสตรีมประเภทนี้
StreamType
ประเภทของสตรีมที่ได้จากอุปกรณ์เสียง
ค่าแจกแจง
"INPUT"
"เอาต์พุต"
เมธอด
getDevices()
chrome.audio.getDevices(
filter?: DeviceFilter,
callback?: function,
)
รับรายการอุปกรณ์เสียงที่กรองตาม filter
พารามิเตอร์
-
ตัวกรอง
DeviceFilter ไม่บังคับ
พร็อพเพอร์ตี้ของอุปกรณ์ที่จะใช้กรองรายการอุปกรณ์เสียงที่ส่งคืน หากไม่ได้ตั้งค่าตัวกรองหรือตั้งค่าเป็น
{}
รายการอุปกรณ์ที่ส่งคืนจะมีอุปกรณ์เสียงที่พร้อมใช้งานทั้งหมด -
Callback
ไม่บังคับ
พารามิเตอร์
callback
มีลักษณะดังนี้(devices: AudioDeviceInfo[]) => void
-
อุปกรณ์
-
การคืนสินค้า
-
Promise<AudioDeviceInfo[]>
Chrome 116 ขึ้นไปPromise รองรับไฟล์ Manifest V3 ขึ้นไปเท่านั้น ส่วนแพลตฟอร์มอื่นๆ ต้องใช้ Callback
getMute()
chrome.audio.getMute(
streamType: StreamType,
callback?: function,
)
รับสถานะปิดเสียงทั้งระบบสำหรับประเภทสตรีมที่ระบุ
พารามิเตอร์
-
streamType
ประเภทสตรีมที่ควรดึงข้อมูลสถานะปิดเสียง
-
Callback
ไม่บังคับ
พารามิเตอร์
callback
มีลักษณะดังนี้(value: boolean) => void
-
value
boolean
-
การคืนสินค้า
-
Promise<boolean>
Chrome 116 ขึ้นไปPromise รองรับไฟล์ Manifest V3 ขึ้นไปเท่านั้น ส่วนแพลตฟอร์มอื่นๆ ต้องใช้ Callback
setActiveDevices()
chrome.audio.setActiveDevices(
ids: DeviceIdLists,
callback?: function,
)
ตั้งค่ารายการอุปกรณ์อินพุตและ/หรือเอาต์พุตที่ใช้งานอยู่
พารามิเตอร์
-
รหัส
ระบุรหัสของอุปกรณ์ที่ควรใช้งาน หากไม่ได้ตั้งค่ารายการอินพุตหรือเอาต์พุตไว้ อุปกรณ์ในหมวดหมู่นั้นจะไม่ได้รับผลกระทบ
การส่งผ่านรหัสอุปกรณ์ที่ไม่มีอยู่จริงเป็นข้อผิดพลาด
-
Callback
ไม่บังคับ
พารามิเตอร์
callback
มีลักษณะดังนี้() => void
การคืนสินค้า
-
คำสัญญา<โมฆะ>
Chrome 116 ขึ้นไปPromise รองรับไฟล์ Manifest V3 ขึ้นไปเท่านั้น ส่วนแพลตฟอร์มอื่นๆ ต้องใช้ Callback
setMute()
chrome.audio.setMute(
streamType: StreamType,
isMuted: boolean,
callback?: function,
)
ตั้งค่าสถานะปิดเสียงสำหรับประเภทสตรีม สถานะปิดเสียงจะมีผลกับอุปกรณ์เสียงทั้งหมดที่มีประเภทสตรีมเสียงที่ระบุ
พารามิเตอร์
-
streamType
ประเภทสตรีมที่ควรตั้งค่าสถานะปิดเสียง
-
isMuted
boolean
ค่าปิดเสียงใหม่
-
Callback
ไม่บังคับ
พารามิเตอร์
callback
มีลักษณะดังนี้() => void
การคืนสินค้า
-
คำสัญญา<โมฆะ>
Chrome 116 ขึ้นไปPromise รองรับไฟล์ Manifest V3 ขึ้นไปเท่านั้น ส่วนแพลตฟอร์มอื่นๆ ต้องใช้ Callback
setProperties()
chrome.audio.setProperties(
id: string,
properties: DeviceProperties,
callback?: function,
)
ตั้งค่าคุณสมบัติสำหรับอุปกรณ์อินพุตหรือเอาต์พุต
พารามิเตอร์
-
id
สตริง
-
พร็อพเพอร์ตี้
-
Callback
ไม่บังคับ
พารามิเตอร์
callback
มีลักษณะดังนี้() => void
การคืนสินค้า
-
คำสัญญา<โมฆะ>
Chrome 116 ขึ้นไปPromise รองรับไฟล์ Manifest V3 ขึ้นไปเท่านั้น ส่วนแพลตฟอร์มอื่นๆ ต้องใช้ Callback
กิจกรรม
onDeviceListChanged
chrome.audio.onDeviceListChanged.addListener(
callback: function,
)
เริ่มทำงานเมื่ออุปกรณ์เสียงมีการเปลี่ยนแปลง ไม่ว่าจะเป็นการเพิ่มอุปกรณ์ใหม่หรืออุปกรณ์ที่มีอยู่จะถูกนำออก
พารามิเตอร์
-
Callback
ฟังก์ชัน
พารามิเตอร์
callback
มีลักษณะดังนี้(devices: AudioDeviceInfo[]) => void
-
อุปกรณ์
-
onLevelChanged
chrome.audio.onLevelChanged.addListener(
callback: function,
)
เริ่มทำงานเมื่อระดับเสียงเปลี่ยนแปลงสำหรับอุปกรณ์เสียงที่ใช้งานอยู่
พารามิเตอร์
-
Callback
ฟังก์ชัน
พารามิเตอร์
callback
มีลักษณะดังนี้(event: LevelChangedEvent) => void
-
event
-
onMuteChanged
chrome.audio.onMuteChanged.addListener(
callback: function,
)
เริ่มทำงานเมื่อมีการเปลี่ยนแปลงสถานะการปิดเสียงอินพุตหรือเอาต์พุตเสียง โปรดทราบว่าสถานะการปิดเสียงจะมีผลทั้งระบบและค่าใหม่จะมีผลกับอุปกรณ์เสียงทุกเครื่องที่มีประเภทสตรีมที่ระบุไว้
พารามิเตอร์
-
Callback
ฟังก์ชัน
พารามิเตอร์
callback
มีลักษณะดังนี้(event: MuteChangedEvent) => void
-
event
-