説明
chrome.audio
API は、システムに接続されたオーディオ デバイスに関する情報を取得し、制御できるようにするために提供されています。この API は現在、ChromeOS のキオスクモードでのみ利用できます。
権限
audio
対象
型
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()
chrome.audio.getDevices(
filter?: DeviceFilter,
): Promise<AudioDeviceInfo[]>
filter
に基づいてフィルタされたオーディオ デバイスのリストを取得します。
パラメータ
- フィルタ
DeviceFilter 省略可
返されたオーディオ デバイスのリストをフィルタするデバイス プロパティ。フィルタが設定されていないか
{}
に設定されている場合、返されるデバイスリストには利用可能なすべてのオーディオ デバイスが含まれます。
戻り値
-
Promise<AudioDeviceInfo[]>
Chrome 116 以降
getMute()
chrome.audio.getMute(
streamType: StreamType,
): Promise<boolean>
指定されたストリーム タイプのシステム全体のミュート状態を取得します。
パラメータ
- streamType
ミュート状態を取得するストリーム タイプ。
戻り値
-
Promise<boolean>
Chrome 116 以降
setActiveDevices()
chrome.audio.setActiveDevices(
ids: DeviceIdLists,
): Promise<void>
アクティブな入力デバイスと出力デバイスのリストを設定します。
パラメータ
- ids
アクティブにするデバイスの ID を指定します。入力リストまたは出力リストのいずれかが設定されていない場合、そのカテゴリのデバイスは影響を受けません。
存在しないデバイス ID を渡すとエラーになります。
戻り値
-
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>
入力デバイスまたは出力デバイスのプロパティを設定します。
パラメータ
- id
文字列
- プロパティ
戻り値
-
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
- イベント
-