chrome.audio

คำอธิบาย

เรามี chrome.audio API เพื่อให้ผู้ใช้รับข้อมูลและควบคุมอุปกรณ์เสียงที่เชื่อมต่อกับระบบได้ ปัจจุบัน API นี้ใช้ได้เฉพาะในโหมดคีออสก์สำหรับ ChromeOS เท่านั้น

สิทธิ์

audio

ความพร้อมใช้งาน

Chrome 59 ขึ้นไป ChromeOS เท่านั้น

ประเภท

AudioDeviceInfo

พร็อพเพอร์ตี้

  • deviceName

    สตริง

    ชื่ออุปกรณ์

  • deviceType

    ประเภทของอุปกรณ์

  • displayName

    สตริง

    ชื่อที่เรียกง่าย (เช่น "ไมโครโฟน USB")

  • id

    สตริง

    ตัวระบุที่ไม่ซ้ำกันของอุปกรณ์เสียง

  • isActive

    บูลีน

    จริงหากนี่คืออุปกรณ์ที่ใช้งานอยู่ในปัจจุบัน

  • ระดับ

    ตัวเลข

    ระดับเสียงของอุปกรณ์ ระดับเสียงสำหรับเอาต์พุต และอัตราขยายสำหรับอินพุต

  • stableDeviceId

    สตริง ไม่บังคับ

    สตริงรหัสอุปกรณ์ที่เสถียร/คงอยู่เมื่อพร้อมใช้งาน

  • streamType

    ประเภทสตรีมที่เชื่อมโยงกับอุปกรณ์นี้

DeviceFilter

พร็อพเพอร์ตี้

  • isActive

    บูลีน ไม่บังคับ

    หากตั้งค่าไว้ เฉพาะอุปกรณ์เสียงที่มีสถานะใช้งานอยู่ตรงกับค่านี้เท่านั้นที่จะตรงตามตัวกรอง

  • streamTypes

    StreamType[] ไม่บังคับ

    หากตั้งค่าไว้ เฉพาะอุปกรณ์เสียงที่มีประเภทสตรีมรวมอยู่ในรายการนี้เท่านั้นที่จะตรงตามตัวกรอง

DeviceIdLists

พร็อพเพอร์ตี้

  • อินพุต

    string[] ไม่บังคับ

    รายการอุปกรณ์อินพุตที่ระบุตามรหัส

    หากต้องการระบุว่าอุปกรณ์อินพุตไม่ควรได้รับผลกระทบ ให้ปล่อยพร็อพเพอร์ตี้นี้ไว้โดยไม่ต้องตั้งค่า

  • เอาต์พุต

    string[] ไม่บังคับ

    รายการอุปกรณ์เอาต์พุตที่ระบุโดยรหัส

    หากต้องการระบุว่าอุปกรณ์เอาต์พุตไม่ควรได้รับผลกระทบ ให้ปล่อยพร็อพเพอร์ตี้นี้ไว้โดยไม่ต้องตั้งค่า

DeviceProperties

พร็อพเพอร์ตี้

  • ระดับ

    หมายเลข ไม่บังคับ

    ระดับเสียงที่ต้องการของอุปกรณ์เสียง ค่าเริ่มต้นคือระดับเสียงปัจจุบันของอุปกรณ์

    หากใช้กับอุปกรณ์อินพุตเสียง จะแสดงอัตราขยายของอุปกรณ์เสียง

    หากใช้กับอุปกรณ์เอาต์พุตเสียง จะแสดงระดับเสียงของอุปกรณ์เสียง

DeviceType

ประเภทอุปกรณ์เสียงที่ใช้ได้

ค่าแจกแจง

"HEADPHONE"

"MIC"

"USB"

"BLUETOOTH"

"HDMI"

"INTERNAL_SPEAKER"

"INTERNAL_MIC"

"FRONT_MIC"

"REAR_MIC"

"KEYBOARD_MIC"

"คำสั่งเปิด"

"LINEOUT"

"POST_MIX_LOOPBACK"

"POST_DSP_LOOPBACK"

"ALSA_LOOPBACK"

"อื่นๆ"

LevelChangedEvent

พร็อพเพอร์ตี้

  • deviceId

    สตริง

    รหัสของอุปกรณ์ที่มีการเปลี่ยนแปลงระดับเสียง

  • ระดับ

    ตัวเลข

    ระดับเสียงใหม่ของอุปกรณ์

MuteChangedEvent

พร็อพเพอร์ตี้

  • isMuted

    บูลีน

    สตรีมถูกปิดเสียงอยู่หรือไม่

  • streamType

    ประเภทของสตรีมที่มีการเปลี่ยนแปลงค่าการปิดเสียง ค่าปิดเสียงที่อัปเดตจะมีผลกับอุปกรณ์ทั้งหมดที่มีสตรีมประเภทนี้

StreamType

ประเภทสตรีมที่อุปกรณ์เสียงมีให้

ค่าแจกแจง

"INPUT"

"OUTPUT"

เมธอด

getDevices()

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

รับรายการอุปกรณ์เสียงที่กรองตาม filter

พารามิเตอร์

  • ตัวกรอง

    DeviceFilter ไม่บังคับ

    พร็อพเพอร์ตี้ของอุปกรณ์ที่ใช้กรองรายการอุปกรณ์เสียงที่แสดง หากไม่ได้ตั้งค่าตัวกรองหรือตั้งค่าเป็น {} รายการอุปกรณ์ที่แสดงจะประกอบด้วยอุปกรณ์เสียงทั้งหมดที่พร้อมใช้งาน

การคืนสินค้า

getMute()

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

รับสถานะการปิดเสียงทั้งระบบสำหรับประเภทสตรีมที่ระบุ

พารามิเตอร์

  • streamType

    ประเภทสตรีมที่จะดึงสถานะการปิดเสียง

การคืนสินค้า

  • Promise<boolean>

    Chrome 116 ขึ้นไป

setActiveDevices()

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

ตั้งค่ารายการอุปกรณ์อินพุตและ/หรือเอาต์พุตที่ใช้งานอยู่

พารามิเตอร์

  • รหัส

    ระบุรหัสของอุปกรณ์ที่ควรใช้งานอยู่ หากไม่ได้ตั้งค่ารายการอินพุตหรือเอาต์พุต อุปกรณ์ในหมวดหมู่นั้นจะไม่ได้รับผลกระทบ

    การส่งรหัสอุปกรณ์ที่ไม่มีอยู่ถือเป็นข้อผิดพลาด

การคืนสินค้า

  • Promise<void>

    Chrome 116 ขึ้นไป

setMute()

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

กำหนดสถานะปิดเสียงสำหรับประเภทสตรีม สถานะปิดเสียงจะมีผลกับอุปกรณ์เสียงทั้งหมดที่มีประเภทสตรีมเสียงที่ระบุ

พารามิเตอร์

  • streamType

    ประเภทสตรีมที่ควรตั้งค่าสถานะปิดเสียง

  • isMuted

    บูลีน

    ค่าการปิดเสียงใหม่

การคืนสินค้า

  • Promise<void>

    Chrome 116 ขึ้นไป

setProperties()

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

ตั้งค่าพร็อพเพอร์ตี้สำหรับอุปกรณ์อินพุตหรือเอาต์พุต

พารามิเตอร์

การคืนสินค้า

  • Promise<void>

    Chrome 116 ขึ้นไป

กิจกรรม

onDeviceListChanged

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

ทริกเกอร์เมื่ออุปกรณ์เสียงมีการเปลี่ยนแปลง ไม่ว่าจะเป็นการเพิ่มอุปกรณ์ใหม่หรือการนำอุปกรณ์ที่มีอยู่ออก

พารามิเตอร์

  • callback

    ฟังก์ชัน

    พารามิเตอร์ callback มีลักษณะดังนี้

    (devices: AudioDeviceInfo[]) => void

onLevelChanged

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

ทริกเกอร์เมื่อระดับเสียงเปลี่ยนแปลงสำหรับอุปกรณ์เสียงที่ใช้งานอยู่

พารามิเตอร์

  • callback

    ฟังก์ชัน

    พารามิเตอร์ callback มีลักษณะดังนี้

    (event: LevelChangedEvent) => void

onMuteChanged

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

ทริกเกอร์เมื่อสถานะปิดเสียงของอินพุตหรือเอาต์พุตเสียงเปลี่ยนแปลง โปรดทราบว่าสถานะปิดเสียงเป็นสถานะทั่วทั้งระบบ และค่าใหม่จะมีผลกับอุปกรณ์เสียงทุกเครื่องที่มีประเภทสตรีมที่ระบุ

พารามิเตอร์

  • callback

    ฟังก์ชัน

    พารามิเตอร์ callback มีลักษณะดังนี้

    (event: MuteChangedEvent) => void