chrome.audio

คำอธิบาย

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

สิทธิ์

audio

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

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

ประเภท

AudioDeviceInfo

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

  • deviceName

    string

    ชื่ออุปกรณ์

  • deviceType

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

  • displayName

    string

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

  • id

    string

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

  • isActive

    boolean

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

  • ระดับ

    ตัวเลข

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

  • stableDeviceId

    string ไม่บังคับ

    สตริงรหัสอุปกรณ์แบบคงที่/คงที่ หากมี

  • streamType

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

DeviceFilter

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

  • isActive

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

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

  • streamTypes

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

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

DeviceIdLists

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

  • อินพุต

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

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

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

  • เอาต์พุต

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

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

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

DeviceProperties

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

  • ระดับ

    ตัวเลข ไม่บังคับ

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

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

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

DeviceType

ประเภทอุปกรณ์เสียงที่พร้อมใช้งาน

ค่าแจกแจง

"HEADPHONE"

"MIC"

"USB"

"HDMI"

"FRONT_MIC"

"REAR_MIC"

"KEYBOARD_MIC"

"HOTWORD"

"POST_MIX_LOOPBACK"

"POST_DSP_LOOPBACK"

"ALSA_LOOPBACK"

LevelChangedEvent

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

  • deviceId

    string

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

  • ระดับ

    ตัวเลข

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

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 ขึ้นไป

    Manifest V3 ขึ้นไปรองรับคำสัญญา แต่จะใช้โค้ดเรียกกลับเพื่อความเข้ากันได้แบบย้อนหลัง คุณไม่สามารถใช้ทั้ง 2 ฟีเจอร์ในการเรียกใช้ฟังก์ชันเดียวกันได้ คำสัญญาจะยุติด้วยประเภทเดียวกันกับที่ส่งไปยังโค้ดเรียกกลับ

getMute()

สัญญา
chrome.audio.getMute(
  streamType: StreamType,
  callback?: function,
)

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

พารามิเตอร์

  • streamType

    ประเภทสตรีมที่ควรดึงข้อมูลสถานะปิดเสียง

  • Callback

    ฟังก์ชัน ไม่บังคับ

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

    (value: boolean)=>void

    • value

      boolean

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

  • Promise<boolean>

    Chrome 116 ขึ้นไป

    Manifest V3 ขึ้นไปรองรับคำสัญญา แต่จะใช้โค้ดเรียกกลับเพื่อความเข้ากันได้แบบย้อนหลัง คุณไม่สามารถใช้ทั้ง 2 ฟีเจอร์ในการเรียกใช้ฟังก์ชันเดียวกันได้ คำสัญญาจะยุติด้วยประเภทเดียวกันกับที่ส่งไปยังโค้ดเรียกกลับ

setActiveDevices()

สัญญา
chrome.audio.setActiveDevices(
  ids: DeviceIdLists,
  callback?: function,
)

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

พารามิเตอร์

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

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

  • Callback

    ฟังก์ชัน ไม่บังคับ

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

    ()=>void

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

  • Promise<void>

    Chrome 116 ขึ้นไป

    Manifest V3 ขึ้นไปรองรับคำสัญญา แต่จะใช้โค้ดเรียกกลับเพื่อความเข้ากันได้แบบย้อนหลัง คุณไม่สามารถใช้ทั้ง 2 ฟีเจอร์ในการเรียกใช้ฟังก์ชันเดียวกันได้ คำสัญญาจะยุติด้วยประเภทเดียวกันกับที่ส่งไปยังโค้ดเรียกกลับ

setMute()

สัญญา
chrome.audio.setMute(
  streamType: StreamType,
  isMuted: boolean,
  callback?: function,
)

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

พารามิเตอร์

  • streamType

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

  • isMuted

    boolean

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

  • Callback

    ฟังก์ชัน ไม่บังคับ

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

    ()=>void

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

  • Promise<void>

    Chrome 116 ขึ้นไป

    Manifest V3 ขึ้นไปรองรับคำสัญญา แต่จะใช้โค้ดเรียกกลับเพื่อความเข้ากันได้แบบย้อนหลัง คุณไม่สามารถใช้ทั้ง 2 ฟีเจอร์ในการเรียกใช้ฟังก์ชันเดียวกันได้ คำสัญญาจะยุติด้วยประเภทเดียวกันกับที่ส่งไปยังโค้ดเรียกกลับ

setProperties()

สัญญา
chrome.audio.setProperties(
  id: string,
  properties: DeviceProperties,
  callback?: function,
)

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

พารามิเตอร์

  • id

    string

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

    ฟังก์ชัน ไม่บังคับ

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

    ()=>void

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

  • Promise<void>

    Chrome 116 ขึ้นไป

    Manifest V3 ขึ้นไปรองรับคำสัญญา แต่จะใช้โค้ดเรียกกลับเพื่อความเข้ากันได้แบบย้อนหลัง คุณไม่สามารถใช้ทั้ง 2 ฟีเจอร์ในการเรียกใช้ฟังก์ชันเดียวกันได้ คำสัญญาจะยุติด้วยประเภทเดียวกันกับที่ส่งไปยังโค้ดเรียกกลับ

กิจกรรม

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