chrome.audio

更新日: 2026-09-25 robots: noindex

説明

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

権限

audio

対象

Chrome 59 以降 ChromeOS のみ

型

AudioDeviceInfo

プロパティ

  • deviceName

    文字列

    デバイス名

  • deviceType

    端末のタイプ。

  • displayName

    文字列

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

  • id

    文字列

    オーディオ機器の固有識別子。

  • isActive

    ブール値

    これが現在アクティブなデバイスである場合は true。

  • レベル

    数値

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

  • stableDeviceId

    文字列 省略可

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

  • streamType

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

DeviceFilter

プロパティ

  • isActive

    boolean 省略可

    設定されている場合、アクティブな状態がこの値と一致するオーディオ機器のみがフィルタを満たします。

  • streamTypes

    StreamType[] 省略可

    設定すると、ストリーム タイプがこのリストに含まれているオーディオ機器のみがフィルタを満たします。

DeviceIdLists

プロパティ

  • 入力

    string[] 省略可

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

    入力デバイスが影響を受けないようにするには、このプロパティを設定しないままにします。

  • output

    string[] 省略可

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

    出力デバイスが影響を受けないようにするには、このプロパティを未設定のままにします。

DeviceProperties

プロパティ

  • レベル

    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。

  • レベル

    数値

    デバイスの新しい音量。

MuteChangedEvent

プロパティ

  • isMuted

    ブール値

    ストリームがミュートされているかどうか。

  • streamType

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

StreamType

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

列挙型

"INPUT"

"OUTPUT"

メソッド

getDevices()

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

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

パラメータ

  • filter

    DeviceFilter 省略可

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

  • callback

    function 省略可

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

    (devices: AudioDeviceInfo[]) => void

戻り値

  • Promise<AudioDeviceInfo[]>

    Chrome 116 以降

    リクエストされたオーディオ機器のリストを報告します。

    Promise は Manifest V3 以降でのみサポートされています。他のプラットフォームではコールバックを使用する必要があります。

getMute()

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

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

パラメータ

  • streamType

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

  • callback

    function 省略可

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

    (value: boolean) => void

    • 値

      ブール値

戻り値

  • Promise<boolean>

    Chrome 116 以降

    指定されたストリーム タイプでミュートが設定されているかどうかを示すブール値で解決される Promise。

    Promise は Manifest V3 以降でのみサポートされています。他のプラットフォームではコールバックを使用する必要があります。

setActiveDevices()

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

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

パラメータ

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

    存在しないデバイス ID を渡すとエラーになります。

  • callback

    function 省略可

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

    () => void

戻り値

  • Promise<void>

    Chrome 116 以降

    Promise は Manifest V3 以降でのみサポートされています。他のプラットフォームではコールバックを使用する必要があります。

setMute()

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

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

パラメータ

  • streamType

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

  • isMuted

    ブール値

    新しいミュート値。

  • callback

    function 省略可

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

    () => void

戻り値

  • Promise<void>

    Chrome 116 以降

    Promise は Manifest V3 以降でのみサポートされています。他のプラットフォームではコールバックを使用する必要があります。

setProperties()

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

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

パラメータ

  • id

    文字列

  • プロパティ
  • callback

    function 省略可

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

    () => void

戻り値

  • Promise<void>

    Chrome 116 以降

    Promise は Manifest V3 以降でのみサポートされています。他のプラットフォームではコールバックを使用する必要があります。

イベント

onDeviceListChanged

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

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

パラメータ

onLevelChanged

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

アクティブなオーディオ機器の音量レベルが変化したときに呼び出されます。

パラメータ

onMuteChanged

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

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

パラメータ