--- title: MediaStream.getAudioTracks() slug: Web/API/MediaStream/getAudioTracks translation_of: Web/API/MediaStream/getAudioTracks ---

{{APIRef("Media Capture and Streams")}}

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

文法

var mediaStreamTracks = mediaStream.getAudioTracks()

引数

なし。

戻り値

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

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

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

この例では、Webカメラの音声とビデオを{{domxref("MediaDevices.getUserMedia", "getUserMedia()")}}を使ってストリームとして取得し、そのストリームを{{HTMLElement("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)
})

仕様

仕様 状況 コメント
{{SpecName('Media Capture','#dom-mediastream-getaudiotracks','getAudioTracks()')}} {{Spec2('Media Capture')}} Initial definition.

ブラウザ互換性

{{Compat("api.MediaStream.getAudioTracks")}}