Get to know MDN better
このページはコミュニティーの尽力で英語から翻訳されました。MDN Web Docs コミュニティーについてもっと知り、仲間になるにはこちらから。
This feature is well established and works across many devices and browser versions. It’s been available across browsers since 2015年7月.
AudioBufferSourceNode は AudioScheduledSourceNode を継承するインターフェイスで、 AudioBuffer に保存されたメモリー内の音声データからなる音声ソースを表します。
このインターフェイスは、再生するタイミングに高い正確性が求められる音声を繰り返し再生する場合特に有益です。例えば、特定のリズムに合わせて、ディスクやネットワークからではなくメモリーから読み出した音声を再生するといった場合です。正確なタイミングで音声を再生したいものの、音声データをディスクやネットワークから読み込む必要がある場合は AudioWorkletNode を使用してください。
EventTarget AudioNode AudioScheduledSourceNode AudioBufferSourceNodeAudioBufferSourceNode は入力がなく、その出力は 1 つで、出力されるチャンネル数は AudioBuffer の buffer プロパティで示します。バッファーが設定されていない場合、すなわち、 buffer が null である場合、出力は無音(すべてのサンプルが 0)の単一のチャンネルとなります。
AudioBufferSourceNode は一度しか再生できません。つまり、同じ音を再び再生したいのであれば、 start() を呼び出すたびに新しいノードを作成する必要があります。幸いなことに、これらのノードはとても安価に作成でき、実際の AudioBuffer は複数回のサウンド再生に再利用することができます。実際、これらのノードは「使い捨て」で使用することができます。ノードを作成し、 start() を呼び出して音の再生を始め、わざわざそのノードの参照を保持する必要はないでしょう。このノードは適切なタイミングで自動的にガベージコレクションされますが、それはサウンドの再生が完了した後しばらくしてからになります。
stop() は何度も呼び出すことができます。 AudioBufferSourceNode がバッファーのー最後に達していないならば、最後の呼び出しがその前の呼び出しを上書きします。
| 0 |
| 1 |
| 関連付けられた AudioBuffer によって定義される |
新しい AudioBufferSourceNode オブジェクトを作成して返します。代替手段として、 BaseAudioContext.createBufferSource() を使用することもできます。詳しくは AudioNode の作成を参照してください。
親である AudioScheduledSourceNode のプロパティを継承しています。
AudioBufferSourceNode.buffer再生する音声資産を定義する AudioBuffer で、この値を null に設定すると、 1 つの無音チャンネル(すべてのサンプルが 0.0 になる)を定義します。
AudioBufferSourceNode.detunek-rate の AudioParam 再生時の離調をセント単位で表します。この値は playbackRate と合成され、音を再生する速度を決定します。既定値で 0 (離調なし)、公称範囲は -∞ から ∞ です。
AudioBufferSourceNode.loop論理値で、 AudioBuffer の終わりに達したとき、音声資産を再生しなければならないかどうかを示します。既定値は false です。
AudioBufferSourceNode.loopStart 省略可浮動小数点数で、 loop が true のときに AudioBuffer の再生を開始しなければならない時刻を秒単位で表します。既定値では 0 です(各ループの開始時に、音声バッファーの先頭から再生が始まることを意味します)。
AudioBufferSourceNode.loopEnd 省略可浮動小数点数で、 loop が true の場合に AudioBuffer の再生が停止して loopStart で示した時刻に戻る時刻を、秒単位で表します。既定値は 0 です。
AudioBufferSourceNode.playbackRatek-rate の AudioParam 音声資産を再生する際の速度係数を定義したもので、値 1.0 は音声の自然サンプリングレートとなります。出力にはピッチ補正が適用されないので、サンプルのピッチを変更するために使用することができます。この値は detune と合成され、最終的な再生レートを決定します。
親である AudioScheduledSourceNode のメソッドを継承しています。
AudioBufferSourceNode.start()バッファーに格納された音声データの再生予約を行うか、または直ちに再生を開始します。また、開始オフセットと再生時間を設定することができます。
次の例は、2 秒間のバッファーをー生成し、ホワイトノイズを書き込み、 AudioBufferSourceNode で再生します。コメントは何をしているかを簡単に説明しています。
メモ: コードをライブで実行したり、ソースコードを閲覧したりすることもできます。
メモ: decodeAudioData() の例は、AudioContext.decodeAudioData() のページを参照してください。
| Web Audio API # AudioBufferSourceNode |
Enable JavaScript to view this browser compatibility table.
This page was last modified on 2025年7月22日 by MDN contributors.
Your blueprint for a better internet.
Visit Mozilla Corporation’s not-for-profit parent, the Mozilla Foundation.
Portions of this content are ©1998–2026 by individual mozilla.org contributors. Content available under a Creative Commons license.