InputDeviceInfo: getCapabilities() メソッド

安全なコンテキスト用: この機能は一部またはすべての対応しているブラウザーにおいて、安全なコンテキスト (HTTPS) でのみ利用できます。

getCapabilities()InputDeviceInfo インターフェイスのメソッドで、この機器の MediaStream の主音声トラックまたは主映像トラックを記述する MediaTrackCapabilities オブジェクトを返します。

構文

js
getCapabilities()

引数

なし。

返値

MediaTrackCapabilities オブジェクトで、ユーザーエージェントが対応する制約可能なプロパティごとに対応している値または値の範囲を指定し、以下のメンバーを含みます。

deviceId

ConstrainDOMString オブジェクトで、機器 ID が入ります。

groupId

ConstrainDOMString オブジェクトで、グループ ID が入ります。

autoGainControl

ConstrainBoolean オブジェクトで、ソースが自動ゲイン制御ができるかどうかを報告します。 この機能がスクリプトで制御できる場合、ソースは true と false の両方を可能な値として報告します。

channelCount

ConstrainULong で、チャンネル数またはチャンネル数の範囲が入ります。

echoCancellation

ConstrainBoolean オブジェクトで、ソースがエコーキャンセルができるかどうかを報告します。 この機能がスクリプトで制御できる場合、ソースは true と false の両方を可能な値として報告します。

latency

ConstrainDouble で、レイテンシーまたはレイテンシーの範囲が入ります。

noiseSuppression

ConstrainBoolean object reporting if the source can do noise suppression. この機能がスクリプトで制御できる場合、ソースは true と false の両方を可能な値として報告します。

sampleRate

ConstrainULong で、サンプリングレートまたはサンプリングレートの範囲が入ります。

sampleSize

ConstrainULong で、サンプルサイズまたはサンプルサイズの範囲が入ります。

aspectRatio

ConstrainDouble で、映像のアスペクト比(幅のピクセル数を高さのピクセル数で割ったもの)またはアスペクト比の範囲が入ります。

facingMode

ConstrainDOMString オブジェクトで、カメラの向きのモードが入ります。カメラは "left" および "user" のように複数の向きを報告することがあります。

frameRate

ConstrainDouble で、受け入れ可能なフレームレートまたはフレームレートの範囲が入ります。

height

ConstrainULong で、映像のピクセル単位での高さまたは高さの範囲が入ります。

width

ConstrainULong で、映像のピクセル単位での幅または幅の範囲が入ります。

resizeMode

ConstrainDOMString オブジェクトで、UAが映像トラックの解像度を導き出すために使用できるモード、またはモードの配列が入ります。

メモ: ユーザーが入力機器にアクセスする許可を与えていない場合、空のオブジェクトが返されます。

次の例では、音声と映像機器にアクセスする許可を mediaDevices.getUserMedia() で求めています。getCapabilities() を使用するには、端末にアクセスする許可が必要です。

deviceInputDeviceInfo オブジェクトの場合、getCapabilities() はその機能を示すメンバーを含むオブジェクトを返します。例えば、映像ストリームには noiseSuppression などの自動プロパティは記載されません。

js
// 音声または映像機器にアクセスする許可を得る
navigator.mediaDevices.getUserMedia({ audio: true, video: true });

navigator.mediaDevices.enumerateDevices().then((devices) => {
  devices.forEach((device) => {
    console.log(device.getCapabilities()); // MediaTrackCapabilities オブジェクト
  });
});

仕様書

Specification
Media Capture and Streams
# dom-inputdeviceinfo-getcapabilities

ブラウザーの互換性

BCD tables only load in the browser

関連情報