chrome.audio

説明

chrome.audio API は、ユーザーがシステムに接続されているオーディオ デバイスに関する情報を取得し、制御できるようにするために提供されています。この API は現在、ChromeOS のキオスクモードでのみ使用できます。

権限

audio

対象

Chrome 59 以降 ChromeOS のみ

AudioDeviceInfo

プロパティ

  • deviceName

    文字列

    デバイス名。

  • deviceType

    端末のタイプ。

  • displayName

    文字列

    ユーザー フレンドリーな名前(「USB マイク」など)。

  • id

    文字列

    音声デバイスの一意の識別子。

  • isActive

    ブール値

    これが現在アクティブなデバイスである場合、true になります。

  • level

    数値

    デバイスの音量、出力の音量、入力のゲイン。

  • stableDeviceId

    文字列(省略可)

    利用可能な場合は、安定した永続的なデバイス ID 文字列。

  • streamType

    このデバイスに関連付けられているストリーミング タイプ。

DeviceFilter

プロパティ

  • isActive

    ブール値(省略可)

    設定すると、アクティブな状態がこの値と一致するオーディオ デバイスのみがフィルタに一致します。

  • streamTypes

    StreamType[] 省略可

    設定すると、このリストにストリーミング タイプが含まれている音声デバイスのみがフィルタの条件を満たします。

DeviceIdLists

プロパティ

  • 入力

    string[] 省略可

    ID で指定された入力デバイスのリスト。

    入力デバイスに影響を与えないことを示すには、このプロパティを未設定のままにします。

  • output

    string[] 省略可

    ID で指定された出力デバイスのリスト。

    出力デバイスに影響を与えないことを示すには、このプロパティを未設定のままにします。

DeviceProperties

プロパティ

  • level

    number(省略可)

    オーディオ デバイスの希望する音量レベル。デフォルトはデバイスの現在の音量レベルです。

    音声入力デバイスで使用する場合、音声デバイスのゲインを表します。

    オーディオ出力デバイスで使用する場合、オーディオ デバイスの音量を表します。

DeviceType

使用可能な音声デバイスのタイプ。

列挙型

"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

    文字列

    音量が変更されたデバイスの ID。

  • level

    数値

    デバイスの新しい音量レベル。

MuteChangedEvent

プロパティ

  • isMuted

    ブール値

    ストリームがミュートされたかどうか。

  • streamType

    ミュート値が変更されたストリームのタイプ。更新されたミュート値は、このストリームタイプを持つすべてのデバイスに適用されます。

StreamType

オーディオデバイスが提供するストリームのタイプ。

列挙型

「INPUT」

「OUTPUT」

メソッド

getDevices()

Promise
chrome.audio.getDevices(
  filter?: DeviceFilter,
  callback?: function,
)

filter に基づいてフィルタされたオーディオ デバイスのリストを取得します。

パラメータ

  • フィルタ

    DeviceFilter(省略可)

    返されるオーディオ デバイスのリストをフィルタするデバイスのプロパティ。フィルタが設定されていないか {} に設定されている場合、返されるデバイスリストには、使用可能なすべてのオーディオ デバイスが含まれます。

  • callback

    function 省略可

    callback パラメータは次のようになります。

    (devices: AudioDeviceInfo[]) => void

戻り値

  • Promise<AudioDeviceInfo[]>

    Chrome 116 以降

    Promise は Manifest V3 以降でサポートされていますが、コールバックは下位互換性のために提供されています。同じ関数呼び出しで両方を使用することはできません。Promise は、コールバックに渡されるのと同じ型で解決されます。

getMute()

Promise
chrome.audio.getMute(
  streamType: StreamType,
  callback?: function,
)

指定されたストリームタイプのシステム全体のミュート状態を取得します。

パラメータ

  • streamType

    ミュート状態を取得する必要があるストリームタイプ。

  • callback

    function 省略可

    callback パラメータは次のようになります。

    (value: boolean) => void

    • ブール値

戻り値

  • Promise<boolean>

    Chrome 116 以降

    Promise は Manifest V3 以降でサポートされていますが、コールバックは下位互換性のために提供されています。同じ関数呼び出しで両方を使用することはできません。Promise は、コールバックに渡されるのと同じ型で解決されます。

setActiveDevices()

Promise
chrome.audio.setActiveDevices(
  ids: DeviceIdLists,
  callback?: function,
)

アクティブな入力デバイスまたは出力デバイスのリストを設定します。

パラメータ

  • アクティブにするデバイスの ID を指定します。入力リストまたは出力リストのいずれかが設定されていない場合、そのカテゴリのデバイスは影響を受けません。

    存在しないデバイス ID を渡すことはエラーです。

  • callback

    function 省略可

    callback パラメータは次のようになります。

    () => void

戻り値

  • Promise<void>

    Chrome 116 以降

    Promise は Manifest V3 以降でサポートされていますが、コールバックは下位互換性のために提供されています。同じ関数呼び出しで両方を使用することはできません。Promise は、コールバックに渡されるのと同じ型で解決されます。

setMute()

Promise
chrome.audio.setMute(
  streamType: StreamType,
  isMuted: boolean,
  callback?: function,
)

ストリームタイプのミュート状態を設定します。ミュート状態は、指定されたオーディオ ストリーム タイプを持つすべてのオーディオ デバイスに適用されます。

パラメータ

  • streamType

    ミュート状態を設定する必要のあるストリームタイプ。

  • isMuted

    ブール値

    新しいミュート値。

  • callback

    function 省略可

    callback パラメータは次のようになります。

    () => void

戻り値

  • Promise<void>

    Chrome 116 以降

    Promise は Manifest V3 以降でサポートされていますが、コールバックは下位互換性のために提供されています。同じ関数呼び出しで両方を使用することはできません。Promise は、コールバックに渡されるのと同じ型で解決されます。

setProperties()

Promise
chrome.audio.setProperties(
  id: string,
  properties: DeviceProperties,
  callback?: function,
)

入力デバイスまたは出力デバイスのプロパティを設定します。

パラメータ

  • id

    文字列

  • プロパティ
  • callback

    function 省略可

    callback パラメータは次のようになります。

    () => void

戻り値

  • Promise<void>

    Chrome 116 以降

    Promise は Manifest V3 以降でサポートされていますが、コールバックは下位互換性のために提供されています。同じ関数呼び出しで両方を使用することはできません。Promise は、コールバックに渡されるのと同じ型で解決されます。

イベント

onDeviceListChanged

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

オーディオ デバイスが変更されたとき(新しいデバイスが追加されたとき、または既存のデバイスが削除されたとき)に呼び出されます。

パラメータ

onLevelChanged

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

アクティブなオーディオ デバイスの音量が変化したときにトリガーされます。

パラメータ

onMuteChanged

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

音声入力または出力のミュート状態が変更されたときに発生します。ミュート状態はシステム全体に適用され、新しい値は指定されたストリームタイプを持つすべてのオーディオ デバイスに適用されます。

パラメータ