chrome.audio

الوصف

يتم توفير واجهة برمجة التطبيقات chrome.audio للسماح للمستخدمين بالحصول على معلومات عن أجهزة الصوت المُرفَقة بالنظام والتحكّم فيها. لا تتوفّر واجهة برمجة التطبيقات هذه حاليًا إلا في وضع "كشك المعلومات" لنظام التشغيل ChromeOS.

الأذونات

audio

مدى التوفّر

Chrome 59 والإصدارات الأحدث نظام التشغيل ChromeOS فقط

الأنواع

AudioDeviceInfo

أماكن إقامة

  • deviceName

    سلسلة

    اسم الجهاز

  • deviceType

    نوع الجهاز

  • displayName

    سلسلة

    الاسم السهل على المستخدم فهمه (مثل "ميكروفون USB").

  • id

    سلسلة

    المعرّف الفريد لجهاز الصوت

  • isActive

    قيمة منطقية

    صحيح إذا كان هذا هو الجهاز النشط الحالي.

  • المستوى

    الرقم

    مستوى الصوت في الجهاز ومستوى الصوت في الإخراج ومستوى الكسب في الإدخال

  • stableDeviceId

    سلسلة اختيارية

    سلسلة رقم تعريف الجهاز الثابت/الدائم عند توفّرها

  • streamType

    نوع البث المرتبط بهذا الجهاز

DeviceFilter

أماكن إقامة

  • isActive

    منطقي اختياري

    في حال ضبط هذه القيمة، لن يستوفي الفلتر سوى أجهزة الصوت التي تتطابق حالتها النشطة مع هذه القيمة.

  • streamTypes

    StreamType[] اختياري

    في حال ضبط هذا الخيار، لن يستوفي الفلتر سوى أجهزة الصوت التي يتضمّن نوع البث فيها هذه القائمة.

DeviceIdLists

أماكن إقامة

  • الإدخال

    سلسلة اختيارية

    قائمة بأجهزة الإدخال المحدّدة حسب معرّفها

    للإشارة إلى أنّ أجهزة الإدخال لن تتأثر، اترك هذا السمة بدون ضبط.

  • output

    سلسلة اختيارية

    قائمة بأجهزة الإخراج المحدّدة حسب معرّفها

    للإشارة إلى أنّ أجهزة الإخراج لن تتأثر، اترك هذا السمة بدون ضبط.

DeviceProperties

أماكن إقامة

  • المستوى

    رقم اختياري

    مستوى الصوت المطلوب في جهاز الصوت يتم ضبطه تلقائيًا على مستوى الصوت الحالي في الجهاز.

    إذا تم استخدامه مع جهاز إدخال صوتي، يمثّل هذا المقياس مستوى الصوت في جهاز الصوت.

    إذا تم استخدامه مع جهاز إخراج الصوت، يمثّل مستوى صوت جهاز الصوت.

DeviceType

أنواع الأجهزة الصوتية المتاحة

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"

"OTHER"

LevelChangedEvent

أماكن إقامة

  • deviceId

    سلسلة

    رقم تعريف الجهاز الذي تغيّر مستوى صوته

  • المستوى

    الرقم

    مستوى الصوت الجديد للجهاز

MuteChangedEvent

أماكن إقامة

  • isMuted

    قيمة منطقية

    ما إذا كان البث المباشر مُسكتًا الآن

  • streamType

    نوع البث الذي تغيّرت قيمة كتم الصوت فيه تنطبق قيمة كتم الصوت المعدَّلة على جميع الأجهزة التي تستخدم نوع البث هذا.

StreamType

نوع البث الذي يوفّره الجهاز السمعي

Enum

"INPUT"

"OUTPUT"

الطُرق

getDevices()

الوعد
chrome.audio.getDevices(
  filter?: DeviceFilter,
  callback?: function,
)

الحصول على قائمة بأجهزة الصوت التي تم فلترتها استنادًا إلى filter

المعلمات

  • تصفية

    DeviceFilter اختياري

    خصائص الجهاز التي يتم فلترة قائمة الأجهزة الصوتية المعروضة حسبها إذا لم يتم ضبط الفلتر أو تم ضبطه على {}، ستتضمّن قائمة الأجهزة التي يتم عرضها جميع أجهزة الصوت المتاحة.

  • ردّ الاتصال

    الدالة اختيارية

    تظهر المَعلمة callback على النحو التالي:

    (devices: AudioDeviceInfo[]) => void

المرتجعات

  • Promise<AudioDeviceInfo[]>

    الإصدار 116 من Chrome والإصدارات الأحدث

    تتوفّر الوعود في الإصدار Manifest V3 والإصدارات الأحدث، ولكن يتم توفير طلبات الاستدعاء لأجل التوافق مع الإصدارات القديمة. ولا يمكنك استخدام كليهما في طلب الدالة نفسه. يتم حلّ الوعد بالنوع نفسه الذي يتم تمريره إلى دالة الاستدعاء.

getMute()

الوعد
chrome.audio.getMute(
  streamType: StreamType,
  callback?: function,
)

تحصل على حالة كتم الصوت على مستوى النظام لنوع البث المحدّد.

المعلمات

  • streamType

    نوع البث المطلوب جلب حالة كتم الصوت له.

  • ردّ الاتصال

    الدالة اختيارية

    تظهر المَعلمة callback على النحو التالي:

    (value: boolean) => void

    • القيمة

      قيمة منطقية

المرتجعات

  • Promise<boolean>

    الإصدار 116 من Chrome والإصدارات الأحدث

    تتوفّر الوعود في الإصدار Manifest V3 والإصدارات الأحدث، ولكن يتم توفير طلبات الاستدعاء لأجل التوافق مع الإصدارات القديمة. ولا يمكنك استخدام كليهما في طلب الدالة نفسه. يتم حلّ الوعد بالنوع نفسه الذي يتم تمريره إلى دالة الاستدعاء.

setActiveDevices()

الوعد
chrome.audio.setActiveDevices(
  ids: DeviceIdLists,
  callback?: function,
)

تُستخدَم لضبط قوائم بأجهزة الإدخال و/أو الإخراج النشطة.

المعلمات

  • تُحدِّد أرقام تعريف الأجهزة التي يجب أن تكون نشطة. في حال عدم ضبط قائمة الإدخال أو الإخراج، لن تتأثر الأجهزة في تلك الفئة.

    يُعدّ إرسال رقم تعريف جهاز غير متوفّر خطأ.

  • ردّ الاتصال

    الدالة اختيارية

    تظهر المَعلمة callback على النحو التالي:

    () => void

المرتجعات

  • Promise<void>

    الإصدار 116 من Chrome والإصدارات الأحدث

    تتوفّر الوعود في الإصدار Manifest V3 والإصدارات الأحدث، ولكن يتم توفير طلبات الاستدعاء لأجل التوافق مع الإصدارات القديمة. ولا يمكنك استخدام كليهما في طلب الدالة نفسه. يتم حلّ الوعد بالنوع نفسه الذي يتم تمريره إلى دالة الاستدعاء.

setMute()

الوعد
chrome.audio.setMute(
  streamType: StreamType,
  isMuted: boolean,
  callback?: function,
)

لضبط حالة كتم الصوت لنوع بث معيّن. سيتم تطبيق حالة كتم الصوت على جميع الأجهزة الصوتية التي تستخدم نوع البث الصوتي المحدّد.

المعلمات

  • streamType

    نوع البث الذي يجب ضبط حالة كتم الصوت له.

  • isMuted

    قيمة منطقية

    قيمة كتم الصوت الجديدة

  • ردّ الاتصال

    الدالة اختيارية

    تظهر المَعلمة callback على النحو التالي:

    () => void

المرتجعات

  • Promise<void>

    الإصدار 116 من Chrome والإصدارات الأحدث

    تتوفّر الوعود في الإصدار Manifest V3 والإصدارات الأحدث، ولكن يتم توفير طلبات الاستدعاء لأجل التوافق مع الإصدارات القديمة. ولا يمكنك استخدام كليهما في طلب الدالة نفسه. يتم حلّ الوعد بالنوع نفسه الذي يتم تمريره إلى دالة الاستدعاء.

setProperties()

الوعد
chrome.audio.setProperties(
  id: string,
  properties: DeviceProperties,
  callback?: function,
)

لضبط خصائص جهاز الإدخال أو الإخراج

المعلمات

  • id

    سلسلة

  • المواقع
  • ردّ الاتصال

    الدالة اختيارية

    تظهر المَعلمة callback على النحو التالي:

    () => void

المرتجعات

  • Promise<void>

    الإصدار 116 من Chrome والإصدارات الأحدث

    تتوفّر الوعود في الإصدار Manifest V3 والإصدارات الأحدث، ولكن يتم توفير طلبات الاستدعاء لأجل التوافق مع الإصدارات القديمة. ولا يمكنك استخدام كليهما في طلب الدالة نفسه. يتم حلّ الوعد بالنوع نفسه الذي يتم تمريره إلى دالة الاستدعاء.

الفعاليات

onDeviceListChanged

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

يتم تشغيله عند تغيير الأجهزة الصوتية، سواء كانت الأجهزة الجديدة التي تتم إضافتها أو الأجهزة الحالية التي تتم إزالتها.

المعلمات

  • ردّ الاتصال

    دالة

    تظهر المَعلمة callback على النحو التالي:

    (devices: AudioDeviceInfo[]) => void

onLevelChanged

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

يتم تشغيله عند تغيير مستوى الصوت لجهاز صوتي نشط.

المعلمات

onMuteChanged

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

يتم تشغيله عند تغيُّر حالة كتم الصوت في وسيلة إدخال الصوت أو وسيلة إخراجه. يُرجى العِلم أنّ حالة كتم الصوت تكون على مستوى النظام وتسري القيمة الجديدة على كل جهاز صوتي بنوع بث محدّد.

المعلمات

  • ردّ الاتصال

    دالة

    تظهر المَعلمة callback على النحو التالي:

    (event: MuteChangedEvent) => void