MediaStream.getAudioTracks()

MediaStream インタフェースのgetAudioTracks() メソッドは、そのストリームのtrack setの中から、MediaStreamTrack.kindaudioであるMediaStreamTrack を表すオブジェクトの配列を返します。

文法

var mediaStreamTracks = mediaStream.getAudioTracks()

引数

なし。

戻り値

ストリームに含まれるオーディオトラックであるMediaStreamTrackオブジェクトの配列。オーディオトラックとはkindプロパティが audioのトラックです。ストリーム内にオーディオトラックがない場合はこの配列は空になります。

注意: トラックの順番は仕様では定義されておらず、実際、getAudioTracks()を呼び出すたびに変わりえます。

このAPIの初期バージョンでは、オーディオストリーム内の要素の型として使われていた特別なAudioStreamTrackインタフェースを含んでいました。しかし、こちらは後ほど、MediaStreamTrackインタフェース内に統合されました。

この例では、Webカメラの音声とビデオをgetUserMedia()を使ってストリームとして取得し、そのストリームを<video>要素に設定します。その後、終了時にストリーム内の最初のオーディオトラックを停止するタイマーを設定します。

navigator.mediaDevices.getUserMedia({audio: true, video: true})
.then(mediaStream => {
  document.querySelector('video').srcObject = mediaStream;
  // Stop the audio stream after 5 seconds
  setTimeout(() => {
    const tracks = mediaStream.getAudioTracks()
    tracks[0].stop()
  }, 5000)
})

仕様

仕様 状況 コメント
Media Capture and Streams
getAudioTracks() の定義
勧告候補 Initial definition.

ブラウザ互換性

BCD tables only load in the browser