aboutsummaryrefslogtreecommitdiff
path: root/files/ja/web/api/audiocontext
diff options
context:
space:
mode:
authorPeter Bengtsson <mail@peterbe.com>2020-12-08 14:40:17 -0500
committerPeter Bengtsson <mail@peterbe.com>2020-12-08 14:40:17 -0500
commit33058f2b292b3a581333bdfb21b8f671898c5060 (patch)
tree51c3e392513ec574331b2d3f85c394445ea803c6 /files/ja/web/api/audiocontext
parent8b66d724f7caf0157093fb09cfec8fbd0c6ad50a (diff)
downloadtranslated-content-33058f2b292b3a581333bdfb21b8f671898c5060.tar.gz
translated-content-33058f2b292b3a581333bdfb21b8f671898c5060.tar.bz2
translated-content-33058f2b292b3a581333bdfb21b8f671898c5060.zip
initial commit
Diffstat (limited to 'files/ja/web/api/audiocontext')
-rw-r--r--files/ja/web/api/audiocontext/audiocontext/index.html89
-rw-r--r--files/ja/web/api/audiocontext/close/index.html117
-rw-r--r--files/ja/web/api/audiocontext/createanalyser/index.html154
-rw-r--r--files/ja/web/api/audiocontext/createbiquadfilter/index.html126
-rw-r--r--files/ja/web/api/audiocontext/createbuffer/index.html174
-rw-r--r--files/ja/web/api/audiocontext/createbuffersource/index.html143
-rw-r--r--files/ja/web/api/audiocontext/createchannelmerger/index.html133
-rw-r--r--files/ja/web/api/audiocontext/createchannelsplitter/index.html133
-rw-r--r--files/ja/web/api/audiocontext/createconvolver/index.html131
-rw-r--r--files/ja/web/api/audiocontext/createdelay/index.html143
-rw-r--r--files/ja/web/api/audiocontext/createdynamicscompressor/index.html138
-rw-r--r--files/ja/web/api/audiocontext/creategain/index.html128
-rw-r--r--files/ja/web/api/audiocontext/createmediaelementsource/index.html154
-rw-r--r--files/ja/web/api/audiocontext/createmediastreamdestination/index.html122
-rw-r--r--files/ja/web/api/audiocontext/createmediastreamsource/index.html197
-rw-r--r--files/ja/web/api/audiocontext/createoscillator/index.html111
-rw-r--r--files/ja/web/api/audiocontext/createpanner/index.html198
-rw-r--r--files/ja/web/api/audiocontext/createperiodicwave/index.html139
-rw-r--r--files/ja/web/api/audiocontext/createscriptprocessor/index.html69
-rw-r--r--files/ja/web/api/audiocontext/createstereopanner/index.html128
-rw-r--r--files/ja/web/api/audiocontext/currenttime/index.html112
-rw-r--r--files/ja/web/api/audiocontext/decodeaudiodata/index.html155
-rw-r--r--files/ja/web/api/audiocontext/destination/index.html114
-rw-r--r--files/ja/web/api/audiocontext/index.html107
-rw-r--r--files/ja/web/api/audiocontext/listener/index.html112
-rw-r--r--files/ja/web/api/audiocontext/mozaudiochanneltype/index.html95
-rw-r--r--files/ja/web/api/audiocontext/onstatechange/index.html101
-rw-r--r--files/ja/web/api/audiocontext/resume/index.html74
-rw-r--r--files/ja/web/api/audiocontext/samplerate/index.html112
-rw-r--r--files/ja/web/api/audiocontext/state/index.html66
-rw-r--r--files/ja/web/api/audiocontext/suspend/index.html69
31 files changed, 3844 insertions, 0 deletions
diff --git a/files/ja/web/api/audiocontext/audiocontext/index.html b/files/ja/web/api/audiocontext/audiocontext/index.html
new file mode 100644
index 0000000000..6d26bf0ead
--- /dev/null
+++ b/files/ja/web/api/audiocontext/audiocontext/index.html
@@ -0,0 +1,89 @@
+---
+title: AudioContext()
+slug: Web/API/AudioContext/AudioContext
+translation_of: Web/API/AudioContext/AudioContext
+---
+<p>{{APIRef("Web Audio API")}}{{SeeCompatTable}}</p>
+
+<p><strong><code>AudioContext()</code></strong> コンストラクタは新しい {{domxref("AudioContext")}} オブジェクトを作成します。このオブジェクトはオーディオモジュールが相互に接続された音声処理のグラフを表現しています。このグラフ中で用いられるオーディオモジュールは {{domxref("AudioNode")}} として表現されます。</p>
+
+<h2 id="Syntax" name="Syntax">記法</h2>
+
+<pre class="syntaxbox">var audioContext = new AudioContext(options)</pre>
+
+<h3 id="Parameters" name="Parameters">引数</h3>
+
+<p>なし。</p>
+
+<p><strong style="color: #4d4e53; font-size: 2.143rem; font-weight: 700; letter-spacing: -1px;">仕様</strong></p>
+
+<table class="standard-table">
+ <tbody>
+ <tr>
+ <th scope="col">仕様</th>
+ <th scope="col">状態</th>
+ <th scope="col">コメント</th>
+ </tr>
+ <tr>
+ <td>{{SpecName('Web Audio API','#AudioContext','AudioContext()')}}</td>
+ <td>{{Spec2('Web Audio API')}}</td>
+ <td>Initial definition.</td>
+ </tr>
+ </tbody>
+</table>
+
+<h2 id="Browser_Compatibility" name="Browser_Compatibility">ブラウザー互換性</h2>
+
+<div>{{CompatibilityTable}}</div>
+
+<div id="compat-desktop">
+<table class="compat-table">
+ <tbody>
+ <tr>
+ <th>Feature</th>
+ <th>Chrome</th>
+ <th>Firefox (Gecko)</th>
+ <th>Internet Explorer</th>
+ <th>Opera</th>
+ <th>Safari (WebKit)</th>
+ </tr>
+ <tr>
+ <td>Basic support</td>
+ <td>{{CompatChrome(55.0)}}</td>
+ <td>{{CompatUnknown}}</td>
+ <td>{{CompatUnknown}}</td>
+ <td>{{CompatOpera(42)}}</td>
+ <td>{{CompatUnknown}}</td>
+ </tr>
+ </tbody>
+</table>
+</div>
+
+<div id="compat-mobile">
+<table class="compat-table">
+ <tbody>
+ <tr>
+ <th>Feature</th>
+ <th>Android</th>
+ <th>Android Webview</th>
+ <th>Firefox Mobile (Gecko)</th>
+ <th>Firefox OS</th>
+ <th>IE Mobile</th>
+ <th>Opera Mobile</th>
+ <th>Safari Mobile</th>
+ <th>Chrome for Android</th>
+ </tr>
+ <tr>
+ <td>Basic support</td>
+ <td>{{CompatNo}}</td>
+ <td>{{CompatChrome(55.0)}}</td>
+ <td>{{CompatUnknown}}</td>
+ <td>{{CompatUnknown}}</td>
+ <td>{{CompatUnknown}}</td>
+ <td>{{CompatOperaMobile(42)}}</td>
+ <td>{{CompatUnknown}}</td>
+ <td>{{CompatChrome(55.0)}}</td>
+ </tr>
+ </tbody>
+</table>
+</div>
diff --git a/files/ja/web/api/audiocontext/close/index.html b/files/ja/web/api/audiocontext/close/index.html
new file mode 100644
index 0000000000..a53f04b8b8
--- /dev/null
+++ b/files/ja/web/api/audiocontext/close/index.html
@@ -0,0 +1,117 @@
+---
+title: AudioContext.close()
+slug: Web/API/AudioContext/close
+translation_of: Web/API/AudioContext/close
+---
+<p>{{ APIRef("Web Audio API") }}</p>
+
+<p>{{ domxref("AudioContext") }}インターフェースの<code>close()</code>メソッドは、オーディオコンテキストを閉じて使っていたシステムのオーディオリソースを全て解放します。</p>
+
+<p>閉じたコンテキストは新しいノードを生成できませんが、音声データのデコードやバッファの生成などは可能です。</p>
+
+<p>この関数は、他の参照も同様に解放されない限り、AudioContextが生成したオブジェクトは自動的には解放しません。しかし、これはオーディオリソースを強制的に解放します。よって、オーディオコンテキストの更なる生成と使用はできなくなり、オーディオコンテキストの時間の流れは止まり、音声データの処理は停止します。<br>
+ 全てのAudioContext-creation-blockingリソースが解放されたとき、返された{{jsxref("Promise")}}が完了します。このメソッドは{{domxref("OfflineAudioContext")}}で呼ばれたとき<code>INVALID_STATE_ERR</code>例外が発生します。<br>
+  </p>
+
+<h2 id="構文">構文</h2>
+
+<pre class="brush: js">var audioCtx = new AudioContext();
+audioCtx.close().then(function() { ... });
+</pre>
+
+<h3 id="戻り値">戻り値</h3>
+
+<p>voidで完了する{{jsxref("Promise")}}。</p>
+
+<h2 id="例">例</h2>
+
+<p>次のスニペットは<a class="external-icon external" href="https://github.com/mdn/audiocontext-states/settings">AudioContext states デモ</a>(<a class="external-icon external" href="http://mdn.github.io/audiocontext-states/">すぐ実行</a>)から取ったものです。stopボタンをクリックすると、<code>close()</code>が呼ばれます。プロミスに成功すると、リセットされ最初の状態に戻ります。</p>
+
+<pre class="brush: js">stopBtn.onclick = function() {
+  audioCtx.close().then(function() {
+    startBtn.removeAttribute('disabled');
+    susresBtn.setAttribute('disabled','disabled');
+    stopBtn.setAttribute('disabled','disabled');
+  });
+}
+</pre>
+
+<h2 id="仕様">仕様</h2>
+
+<table class="standard-table">
+ <tbody>
+ <tr>
+ <th scope="col">Specification</th>
+ <th scope="col">Status</th>
+ <th scope="col">Comment</th>
+ </tr>
+ <tr>
+ <td>{{SpecName('Web Audio API', '#widl-AudioContext-close-Promise-void', 'close()')}}</td>
+ <td>{{Spec2('Web Audio API')}}</td>
+ <td> </td>
+ </tr>
+ </tbody>
+</table>
+
+<h2 id="ブラウザ互換性">ブラウザ互換性</h2>
+
+<div>{{CompatibilityTable}}</div>
+
+<div id="compat-desktop">
+<table class="compat-table">
+ <tbody>
+ <tr>
+ <th>Feature</th>
+ <th>Chrome</th>
+ <th>Firefox (Gecko)</th>
+ <th>Internet Explorer</th>
+ <th>Opera</th>
+ <th>Safari (WebKit)</th>
+ </tr>
+ <tr>
+ <td>Basic support</td>
+ <td>{{CompatChrome(43.0)}}</td>
+ <td>{{CompatGeckoDesktop(40.0)}}</td>
+ <td>{{CompatNo}}</td>
+ <td>{{CompatUnknown}}</td>
+ <td>{{CompatUnknown}}</td>
+ </tr>
+ </tbody>
+</table>
+</div>
+
+<div id="compat-mobile">
+<table class="compat-table">
+ <tbody>
+ <tr>
+ <th>Feature</th>
+ <th>Android</th>
+ <th>Android Webview</th>
+ <th>Firefox Mobile (Gecko)</th>
+ <th>Firefox OS</th>
+ <th>IE Mobile</th>
+ <th>Opera Mobile</th>
+ <th>Safari Mobile</th>
+ <th>Chrome for Android</th>
+ </tr>
+ <tr>
+ <td>Basic support</td>
+ <td>{{CompatNo}}</td>
+ <td>{{CompatNo}}</td>
+ <td>{{CompatUnknown}}</td>
+ <td>{{CompatUnknown}}</td>
+ <td>{{CompatUnknown}}</td>
+ <td>{{CompatUnknown}}</td>
+ <td>{{CompatUnknown}}</td>
+ <td>{{CompatNo}}</td>
+ </tr>
+ </tbody>
+</table>
+</div>
+
+<h2 id="参考">参考</h2>
+
+<ul>
+ <li><a href="/en-US/docs/Web_Audio_API/Using_Web_Audio_API">Using the Web Audio API</a></li>
+ <li><a href="/en-US/docs/Web/API/Web_Audio_API">Web Audio API</a></li>
+</ul>
diff --git a/files/ja/web/api/audiocontext/createanalyser/index.html b/files/ja/web/api/audiocontext/createanalyser/index.html
new file mode 100644
index 0000000000..c186d1029c
--- /dev/null
+++ b/files/ja/web/api/audiocontext/createanalyser/index.html
@@ -0,0 +1,154 @@
+---
+title: AudioContext.createAnalyser()
+slug: Web/API/AudioContext/createAnalyser
+translation_of: Web/API/BaseAudioContext/createAnalyser
+---
+<p>{{ APIRef("Web Audio API") }}</p>
+
+<div>
+<p>{{ domxref("AudioContext") }}インターフェースの<code>createAnalyser()</code>メソッドは、音声の時間と周波数を解析する{{ domxref("AnalyserNode") }}を生成します。これはデータの可視化などで使えます。</p>
+</div>
+
+<div class="note">
+<p><strong>注:</strong> このノードの詳しい説明は、{{domxref("AnalyserNode")}}のページを参照してください。</p>
+</div>
+
+<h2 id="構文">構文</h2>
+
+<pre class="brush: js">var audioCtx = new AudioContext();
+var analyser = audioCtx.createAnalyser();</pre>
+
+<h3 id="Description" name="Description">戻り値</h3>
+
+<p>{{domxref("AnalyserNode")}}</p>
+
+<h2 id="Examples" name="Examples">例</h2>
+
+<p>次のサンプルでは、基本的な<code>AudioContext</code>の<code>AnalyserNode</code>の生成、<code>requestAnimationFrame()</code>による時間データの周期的な収集と「オシロスコープのように」現在の音声を出力する方法を示しています。より完全な例と情報は、<a href="http://mdn.github.io/voice-change-o-matic/">Voice-change-O-matic</a>デモ(<a href="https://github.com/mdn/voice-change-o-matic/blob/gh-pages/scripts/app.js#L128-L205">app.jsの128–205行目</a>)を参照してください。</p>
+
+<pre class="brush: js">var audioCtx = new (window.AudioContext || window.webkitAudioContext)();
+var analyser = audioCtx.createAnalyser();
+
+ ...
+
+analyser.fftSize = 2048;
+var bufferLength = analyser.fftSize;
+var dataArray = new Uint8Array(bufferLength);
+analyser.getByteTimeDomainData(dataArray);
+
+// 現在の音のオシロスコープのように描く
+
+function draw() {
+
+      drawVisual = requestAnimationFrame(draw);
+
+      analyser.getByteTimeDomainData(dataArray);
+
+      canvasCtx.fillStyle = 'rgb(200, 200, 200)';
+      canvasCtx.fillRect(0, 0, WIDTH, HEIGHT);
+
+      canvasCtx.lineWidth = 2;
+      canvasCtx.strokeStyle = 'rgb(0, 0, 0)';
+
+      canvasCtx.beginPath();
+
+      var sliceWidth = WIDTH * 1.0 / bufferLength;
+      var x = 0;
+
+      for(var i = 0; i &lt; bufferLength; i++) {
+
+        var v = dataArray[i] / 128.0;
+        var y = v * HEIGHT/2;
+
+        if(i === 0) {
+          canvasCtx.moveTo(x, y);
+        } else {
+          canvasCtx.lineTo(x, y);
+        }
+
+        x += sliceWidth;
+      }
+
+      canvasCtx.lineTo(canvas.width, canvas.height/2);
+      canvasCtx.stroke();
+    };
+
+    draw();</pre>
+
+<h2 id="仕様">仕様</h2>
+
+<table class="standard-table">
+ <tbody>
+ <tr>
+ <th scope="col">Specification</th>
+ <th scope="col">Status</th>
+ <th scope="col">Comment</th>
+ </tr>
+ <tr>
+ <td>{{SpecName('Web Audio API', '#widl-AudioContext-createAnalyser-AnalyserNode', 'createAnalyser()')}}</td>
+ <td>{{Spec2('Web Audio API')}}</td>
+ <td> </td>
+ </tr>
+ </tbody>
+</table>
+
+<h2 id="ブラウザ互換性">ブラウザ互換性</h2>
+
+<div>{{CompatibilityTable}}</div>
+
+<div id="compat-desktop">
+<table class="compat-table">
+ <tbody>
+ <tr>
+ <th>Feature</th>
+ <th>Chrome</th>
+ <th>Firefox (Gecko)</th>
+ <th>Internet Explorer</th>
+ <th>Opera</th>
+ <th>Safari (WebKit)</th>
+ </tr>
+ <tr>
+ <td>Basic support</td>
+ <td>{{CompatChrome(10.0)}}{{property_prefix("webkit")}}</td>
+ <td>{{CompatGeckoDesktop(25.0)}} </td>
+ <td>{{CompatNo}}</td>
+ <td>15.0{{property_prefix("webkit")}}<br>
+ 22</td>
+ <td>6.0{{property_prefix("webkit")}}</td>
+ </tr>
+ </tbody>
+</table>
+</div>
+
+<div id="compat-mobile">
+<table class="compat-table">
+ <tbody>
+ <tr>
+ <th>Feature</th>
+ <th>Android</th>
+ <th>Firefox Mobile (Gecko)</th>
+ <th>Firefox OS</th>
+ <th>IE Mobile</th>
+ <th>Opera Mobile</th>
+ <th>Safari Mobile</th>
+ <th>Chrome for Android</th>
+ </tr>
+ <tr>
+ <td>Basic support</td>
+ <td>{{CompatUnknown}}</td>
+ <td>26.0</td>
+ <td>1.2</td>
+ <td>{{CompatUnknown}}</td>
+ <td>{{CompatUnknown}}</td>
+ <td>{{CompatUnknown}}</td>
+ <td>33.0</td>
+ </tr>
+ </tbody>
+</table>
+</div>
+
+<h2 id="参考">参考</h2>
+
+<ul>
+ <li><a href="/en-US/docs/Web_Audio_API/Using_Web_Audio_API">Using the Web Audio API</a></li>
+</ul>
diff --git a/files/ja/web/api/audiocontext/createbiquadfilter/index.html b/files/ja/web/api/audiocontext/createbiquadfilter/index.html
new file mode 100644
index 0000000000..136557bea5
--- /dev/null
+++ b/files/ja/web/api/audiocontext/createbiquadfilter/index.html
@@ -0,0 +1,126 @@
+---
+title: AudioContext.createBiquadFilter()
+slug: Web/API/AudioContext/createBiquadFilter
+translation_of: Web/API/BaseAudioContext/createBiquadFilter
+---
+<p>{{ APIRef("Web Audio API") }}</p>
+
+<div>
+<p>{{ domxref("AudioContext") }}インターフェースの<code>createBiquadFilter()</code>メソッドは<code>、</code>いくつかの一般的なフィルタを設定できる二次フィルターを表す{{ domxref("BiquadFilterNode") }}を生成します。</p>
+</div>
+
+<h2 id="構文">構文</h2>
+
+<pre class="brush: js">var audioCtx = new AudioContext();
+var biquadFilter = audioCtx.createBiquadFilter();</pre>
+
+<h3 id="Description" name="Description">戻り値</h3>
+
+<p>{{domxref("BiquadFilterNode")}}</p>
+
+<h2 id="Example" name="Example">例</h2>
+
+<p>次の例はAudioContextのBiquadFilterNodeの使い方を説明しています。完全に動作する例は、<a href="http://mdn.github.io/voice-change-o-matic/">voice-change-o-matic</a>デモ(<a href="https://github.com/mdn/voice-change-o-matic">ソースコード</a>もあります)を参照してください。</p>
+
+<pre class="brush: js">var audioCtx = new (window.AudioContext || window.webkitAudioContext)();
+
+// このアプリで使う2つのノードを設定する
+var analyser = audioCtx.createAnalyser();
+var distortion = audioCtx.createWaveShaper();
+var gainNode = audioCtx.createGain();
+var biquadFilter = audioCtx.createBiquadFilter();
+var convolver = audioCtx.createConvolver();
+
+// ノードを接続する
+
+source = audioCtx.createMediaStreamSource(stream);
+source.connect(analyser);
+analyser.connect(distortion);
+distortion.connect(biquadFilter);
+biquadFilter.connect(convolver);
+convolver.connect(gainNode);
+gainNode.connect(audioCtx.destination);
+
+// 二次フィルターで操作する
+
+biquadFilter.type = "lowshelf";
+biquadFilter.frequency.value = 1000;
+biquadFilter.gain.value = 25;</pre>
+
+<h2 id="仕様">仕様</h2>
+
+<table class="standard-table">
+ <tbody>
+ <tr>
+ <th scope="col">Specification</th>
+ <th scope="col">Status</th>
+ <th scope="col">Comment</th>
+ </tr>
+ <tr>
+ <td>{{SpecName('Web Audio API', '#widl-AudioContext-createBiquadFilter-BiquadFilterNode', 'createBiquadFilter()')}}</td>
+ <td>{{Spec2('Web Audio API')}}</td>
+ <td> </td>
+ </tr>
+ </tbody>
+</table>
+
+<h2 id="ブラウザ互換性">ブラウザ互換性</h2>
+
+<div>{{CompatibilityTable}}</div>
+
+<div id="compat-desktop">
+<table class="compat-table">
+ <tbody>
+ <tr>
+ <th>Feature</th>
+ <th>Chrome</th>
+ <th>Firefox (Gecko)</th>
+ <th>Internet Explorer</th>
+ <th>Opera</th>
+ <th>Safari (WebKit)</th>
+ </tr>
+ <tr>
+ <td>Basic support</td>
+ <td>{{CompatChrome(10.0)}}{{property_prefix("webkit")}}</td>
+ <td>{{CompatGeckoDesktop(25.0)}} </td>
+ <td>{{CompatNo}}</td>
+ <td>15.0 {{property_prefix("webkit")}}<br>
+ 22</td>
+ <td>6.0{{property_prefix("webkit")}}</td>
+ </tr>
+ </tbody>
+</table>
+</div>
+
+<div id="compat-mobile">
+<table class="compat-table">
+ <tbody>
+ <tr>
+ <th>Feature</th>
+ <th>Android</th>
+ <th>Firefox Mobile (Gecko)</th>
+ <th>Firefox OS</th>
+ <th>IE Mobile</th>
+ <th>Opera Mobile</th>
+ <th>Safari Mobile</th>
+ <th>Chrome for Android</th>
+ </tr>
+ <tr>
+ <td>Basic support</td>
+ <td>{{CompatUnknown}}</td>
+ <td>26.0</td>
+ <td>1.2</td>
+ <td>{{CompatUnknown}}</td>
+ <td>{{CompatUnknown}}</td>
+ <td>{{CompatUnknown}}</td>
+ <td>33.0</td>
+ </tr>
+ </tbody>
+</table>
+</div>
+
+<h2 id="参照">参照</h2>
+
+<ul>
+ <li><a href="/en-US/docs/Web_Audio_API/Using_Web_Audio_API">Using the Web Audio API</a></li>
+</ul>
diff --git a/files/ja/web/api/audiocontext/createbuffer/index.html b/files/ja/web/api/audiocontext/createbuffer/index.html
new file mode 100644
index 0000000000..e94a5a18be
--- /dev/null
+++ b/files/ja/web/api/audiocontext/createbuffer/index.html
@@ -0,0 +1,174 @@
+---
+title: AudioContext.createBuffer()
+slug: Web/API/AudioContext/createBuffer
+translation_of: Web/API/BaseAudioContext/createBuffer
+---
+<p>{{ APIRef("Web Audio API") }}</p>
+
+<div>
+<p>インターフェースの<code>createBuffer()メソッドは、</code>新規の空の{{ domxref("AudioBuffer") }}オブジェクトを生成します。そこにデータを書きこめば、{{ domxref("AudioBufferSourceNode") }}で再生できます。</p>
+</div>
+
+<div class="note">
+<p><strong>Note</strong>: <code>createBuffer()</code> used to be able to take compressed data and give back decoded samples, but this ability was removed from the spec, because all the decoding was done on the main thread, therefore <code>createBuffer()</code> was blocking other code execution. The asynchronous method <code>decodeAudioData()</code> does the same thing — takes compressed audio, say, an MP3 file, and directly gives you back an {{ domxref("AudioBuffer") }} that you can then set to play via in an {{ domxref("AudioBufferSourceNode") }}. For simple uses like playing an MP3, <code>decodeAudioData()</code> is what you should be using.</p>
+</div>
+
+<h2 id="構文">構文</h2>
+
+<pre class="brush: js">var audioCtx = new AudioContext();
+var buffer = audioCtx.createBuffer(numOfChannels, length, sampleRate);</pre>
+
+<h3 id="引数">引数</h3>
+
+<div class="note">
+<p><strong>Note</strong>: For an in-depth explanation of how audio buffers work, and what these parameters mean, read <a href="/en-US/docs/Web/API/Web_Audio_API/Basic_concepts_behind_Web_Audio_API#Audio_buffers.3A_frames.2C_samples_and_channels">Audio buffers: frames, samples and channels</a> from our Basic concepts guide.</p>
+</div>
+
+<dl>
+ <dt>numOfChannels</dt>
+ <dd>integerで現されたバッファのチャンネルの数。実装は少なくとも32チャンネルに対応している</dd>
+ <dt>length</dt>
+ <dd>integerで表されたバッファのサンプルフレームの数</dd>
+ <dt>sampleRate</dt>
+ <dd>1秒あたりのサンプルフレームの数。実装は少なくとも22050から96000の範囲に対応している</dd>
+</dl>
+
+<h3 id="戻り値">戻り値</h3>
+
+<p>{{domxref("AudioBuffer")}}</p>
+
+<h2 id="例">例</h2>
+
+<p>まずは2つの小さな例で、引数をどのように設定するかを説明します:</p>
+
+<pre class="brush: js">var audioCtx = new AudioContext();
+var buffer = audioCtx.createBuffer(2, 22050, 44100);</pre>
+
+<p>このようにすると、ステレオ(2チャンネル)のバッファが生成され、44100Hz(極めて一般的で、多くの通常のサウンドカードはこのレートで動作します)の<code>AudioContext</code>で再生すると、0.5秒間(22050フレーム / 44100Hz )となります。</p>
+
+<pre class="brush: js">var audioCtx = new AudioContext();
+var buffer = audioCtx.createBuffer(1, 22050, 22050);</pre>
+
+<p>このようにすると、モノラル(1チャンネル)のバッファが生成され、44100Hzの<code>AudioContext</code>で再生すると、自動的に44100Hzに再サンプリングされ(そして結果として44100フレームとなり)、1秒間(44100フレーム / 44100Hz)となります。</p>
+
+<div class="note">
+<p><strong>Note</strong>: audio resampling is very similar to image resizing: say you've got a 16 x 16 image, but you want it to fill a 32x32 area: you resize (resample) it. the result has less quality (it can be blurry or edgy, depending on the resizing algorithm), but it works, and the resized image takes up less space. Resampled audio is exactly the same — you save space, but in practice you will be unable to properly reproduce high frequency content (treble sound).</p>
+</div>
+
+<p>次は少し複雑な<code>createBuffer()</code>の例を見てみましょう。2秒間のバッファを生成し、ホワイトノイズを書き込み、{{ domxref("AudioBufferSourceNode") }}で再生します。<a class="external external-icon" href="http://mdn.github.io/audio-buffer/">コードをすぐに実行する</a>ことや、<a class="external external-icon" href="https://github.com/mdn/audio-buffer">ソースコードを閲覧する</a>こともできます。</p>
+
+<pre class="brush: js;highlight[14]">var audioCtx = new (window.AudioContext || window.webkitAudioContext)();
+var button = document.querySelector('button');
+var pre = document.querySelector('pre');
+var myScript = document.querySelector('script');
+
+pre.innerHTML = myScript.innerHTML;
+
+// ステレオ
+var channels = 2;
+// AudioContextのサンプルレートで2秒間の空のステレオバッファを生成する
+var frameCount = audioCtx.sampleRate * 2.0;
+
+var myArrayBuffer = audioCtx.createBuffer(channels, frameCount, audioCtx.sampleRate);
+
+button.onclick = function() {
+ // バッファにホワイトノイズを書き込む;
+  // 単なる-1.0から1.0の間の乱数の値である
+ for (var channel = 0; channel &lt; channels; channel++) {
+ // 実際のデータの配列を得る
+ var nowBuffering = myArrayBuffer.getChannelData(channel);
+ for (var i = 0; i &lt; frameCount; i++) {
+ // Math.random()は[0; 1.0]である
+     // 音声は[-1.0; 1.0]である必要がある
+ nowBuffering[i] = Math.random() * 2 - 1;
+ }
+ }
+
+ // AudioBufferSourceNodeを得る
+  // これはAudioBufferを再生するときに使うAudioNodeである
+ var source = audioCtx.createBufferSource();
+ // AudioBufferSourceNodeにバッファを設定する
+ source.buffer = myArrayBuffer;
+ // AudioBufferSourceNodeを出力先に接続すると音声が聞こえるようになる
+ source.connect(audioCtx.destination);
+ // 音源の再生を始める
+ source.start();
+}</pre>
+
+<h2 id="仕様">仕様</h2>
+
+<table class="standard-table">
+ <tbody>
+ <tr>
+ <th scope="col">Specification</th>
+ <th scope="col">Status</th>
+ <th scope="col">Comment</th>
+ </tr>
+ <tr>
+ <td>{{SpecName('Web Audio API', '#widl-AudioContext-createBuffer-AudioBuffer-unsigned-long-numberOfChannels-unsigned-long-length-float-sampleRate', 'createBuffer()')}}</td>
+ <td>{{Spec2('Web Audio API')}}</td>
+ <td> </td>
+ </tr>
+ </tbody>
+</table>
+
+<h2 id="ブラウザ互換性">ブラウザ互換性</h2>
+
+<div>{{CompatibilityTable}}</div>
+
+<div id="compat-desktop">
+<table class="compat-table">
+ <tbody>
+ <tr>
+ <th>Feature</th>
+ <th>Chrome</th>
+ <th>Firefox (Gecko)</th>
+ <th>Internet Explorer</th>
+ <th>Opera</th>
+ <th>Safari (WebKit)</th>
+ </tr>
+ <tr>
+ <td>Basic support</td>
+ <td>{{CompatChrome(10.0)}}{{property_prefix("webkit")}}</td>
+ <td>{{CompatGeckoDesktop(25.0)}} </td>
+ <td>{{CompatNo}}</td>
+ <td>15.0 {{property_prefix("webkit")}}<br>
+ 22</td>
+ <td>6.0{{property_prefix("webkit")}}</td>
+ </tr>
+ </tbody>
+</table>
+</div>
+
+<div id="compat-mobile">
+<table class="compat-table">
+ <tbody>
+ <tr>
+ <th>Feature</th>
+ <th>Android</th>
+ <th>Firefox Mobile (Gecko)</th>
+ <th>Firefox OS</th>
+ <th>IE Mobile</th>
+ <th>Opera Mobile</th>
+ <th>Safari Mobile</th>
+ <th>Chrome for Android</th>
+ </tr>
+ <tr>
+ <td>Basic support</td>
+ <td>{{CompatUnknown}}</td>
+ <td>26.0</td>
+ <td>1.2</td>
+ <td>{{CompatUnknown}}</td>
+ <td>{{CompatUnknown}}</td>
+ <td>{{CompatUnknown}}</td>
+ <td>33.0</td>
+ </tr>
+ </tbody>
+</table>
+</div>
+
+<h2 id="参考">参考</h2>
+
+<ul>
+ <li><a href="/en-US/docs/Web_Audio_API/Using_Web_Audio_API">Using the Web Audio API</a></li>
+</ul>
diff --git a/files/ja/web/api/audiocontext/createbuffersource/index.html b/files/ja/web/api/audiocontext/createbuffersource/index.html
new file mode 100644
index 0000000000..24f65061c6
--- /dev/null
+++ b/files/ja/web/api/audiocontext/createbuffersource/index.html
@@ -0,0 +1,143 @@
+---
+title: AudioContext.createBufferSource()
+slug: Web/API/AudioContext/createBufferSource
+translation_of: Web/API/BaseAudioContext/createBufferSource
+---
+<p>{{ APIRef("Web Audio API") }}</p>
+
+<div>
+<p>{{ domxref("AudioContext") }}インターフェースの<code>createBufferSource()</code>メソッドは、{{ domxref("AudioBuffer") }}オブジェクトに書き込まれた音声データを再生する{{ domxref("AudioBufferSourceNode") }}を生成します。{{ domxref("AudioBuffer") }}は{{domxref("AudioContext.createBuffer")}}を使った場合や、{{domxref("AudioContext.decodeAudioData")}}でオーディオトラックをデコードしたときに生成されます。</p>
+</div>
+
+<h2 id="構文">構文</h2>
+
+<pre class="brush: js">var audioCtx = new AudioContext();
+var source = audioCtx.createBufferSource();</pre>
+
+<h3 id="戻り値">戻り値</h3>
+
+<p>{{domxref("AudioBufferSourceNode")}}</p>
+
+<h2 id="例">例</h2>
+
+<p>この例では、2秒間のバッファを生成し、ホワイトノイズを書き込み、{{ domxref("AudioBufferSourceNode") }}で再生します。コメントは何をしているかを簡単に説明しています。</p>
+
+<div class="note">
+<p><strong>注:</strong> <a href="http://mdn.github.io/audio-buffer/">コードの実行</a>と<a href="https://github.com/mdn/audio-buffer">ソースの閲覧</a>もできます。</p>
+</div>
+
+<pre class="brush: js;highlight[31]">var audioCtx = new (window.AudioContext || window.webkitAudioContext)();
+var button = document.querySelector('button');
+var pre = document.querySelector('pre');
+var myScript = document.querySelector('script');
+
+pre.innerHTML = myScript.innerHTML;
+
+// ステレオ
+var channels = 2;
+// AudioContextのサンプルレートで2秒間の空のステレオバッファを生成する
+var frameCount = audioCtx.sampleRate * 2.0;
+
+var myArrayBuffer = audioCtx.createBuffer(2, frameCount, audioCtx.sampleRate);
+
+button.onclick = function() {
+ // バッファにホワイトノイズを書き込む;
+  // 単なる-1.0から1.0の間の乱数の値である
+ for (var channel = 0; channel &lt; channels; channel++) {
+ // 実際のデータの配列を得る
+ var nowBuffering = myArrayBuffer.getChannelData(channel);
+ for (var i = 0; i &lt; frameCount; i++) {
+ // Math.random()は[0; 1.0]である
+     // 音声は[-1.0; 1.0]である必要がある
+ nowBuffering[i] = Math.random() * 2 - 1;
+ }
+ }
+
+ // AudioBufferSourceNodeを得る
+  // これはAudioBufferを再生するときに使うAudioNodeである
+ var source = audioCtx.createBufferSource();
+ // AudioBufferSourceNodeにバッファを設定する
+ source.buffer = myArrayBuffer;
+ // AudioBufferSourceNodeを出力先に接続すると音声が聞こえるようになる
+ source.connect(audioCtx.destination);
+ // 音源の再生を始める
+ source.start();
+}</pre>
+
+<h2 id="仕様">仕様</h2>
+
+<table class="standard-table">
+ <tbody>
+ <tr>
+ <th scope="col">Specification</th>
+ <th scope="col">Status</th>
+ <th scope="col">Comment</th>
+ </tr>
+ <tr>
+ <td>{{SpecName('Web Audio API', '#widl-AudioContext-createBufferSource-AudioBufferSourceNode', 'createBufferSource()')}}</td>
+ <td>{{Spec2('Web Audio API')}}</td>
+ <td> </td>
+ </tr>
+ </tbody>
+</table>
+
+<h2 id="ブラウザ互換性">ブラウザ互換性</h2>
+
+<div>{{CompatibilityTable}}</div>
+
+<div id="compat-desktop">
+<table class="compat-table">
+ <tbody>
+ <tr>
+ <th>Feature</th>
+ <th>Chrome</th>
+ <th>Firefox (Gecko)</th>
+ <th>Internet Explorer</th>
+ <th>Opera</th>
+ <th>Safari (WebKit)</th>
+ </tr>
+ <tr>
+ <td>Basic support</td>
+ <td>{{CompatChrome(10.0)}}{{property_prefix("webkit")}}</td>
+ <td>{{CompatGeckoDesktop(25.0)}} </td>
+ <td>{{CompatNo}}</td>
+ <td>15.0{{property_prefix("webkit")}}<br>
+ 22 (unprefixed)</td>
+ <td>6.0{{property_prefix("webkit")}}</td>
+ </tr>
+ </tbody>
+</table>
+</div>
+
+<div id="compat-mobile">
+<table class="compat-table">
+ <tbody>
+ <tr>
+ <th>Feature</th>
+ <th>Android</th>
+ <th>Firefox Mobile (Gecko)</th>
+ <th>Firefox OS</th>
+ <th>IE Mobile</th>
+ <th>Opera Mobile</th>
+ <th>Safari Mobile</th>
+ <th>Chrome for Android</th>
+ </tr>
+ <tr>
+ <td>Basic support</td>
+ <td>{{CompatUnknown}}</td>
+ <td>26.0</td>
+ <td>1.2</td>
+ <td>{{CompatUnknown}}</td>
+ <td>{{CompatUnknown}}</td>
+ <td>{{CompatUnknown}}</td>
+ <td>33.0</td>
+ </tr>
+ </tbody>
+</table>
+</div>
+
+<h2 id="参考">参考</h2>
+
+<ul>
+ <li><a href="/en-US/docs/Web_Audio_API/Using_Web_Audio_API">Using the Web Audio API</a></li>
+</ul>
diff --git a/files/ja/web/api/audiocontext/createchannelmerger/index.html b/files/ja/web/api/audiocontext/createchannelmerger/index.html
new file mode 100644
index 0000000000..e79b116642
--- /dev/null
+++ b/files/ja/web/api/audiocontext/createchannelmerger/index.html
@@ -0,0 +1,133 @@
+---
+title: AudioContext.createChannelMerger()
+slug: Web/API/AudioContext/createChannelMerger
+translation_of: Web/API/BaseAudioContext/createChannelMerger
+---
+<p>{{ APIRef("Web Audio API") }}</p>
+
+<div>
+<p>{{ domxref("AudioContext") }}インターフェースの<code>createChannelMerger()</code>メソッドは、複数のオーディオストリームを1つに混合する{{domxref("ChannelMergerNode")}}を生成します。</p>
+</div>
+
+<h2 id="構文">構文</h2>
+
+<pre class="brush: js">var audioCtx = new AudioContext();
+var merger = audioCtx.createChannelMerger(numberOfInputs);</pre>
+
+<h3 id="引数">引数</h3>
+
+<dl>
+ <dt>numberOfInputs</dt>
+ <dd>入力オーディオストリームのチャンネルの数。指定がない場合は6になる。</dd>
+</dl>
+
+<h3 id="戻り値">戻り値</h3>
+
+<p>{{domxref("ChannelMergerNode")}}</p>
+
+<h2 id="例">例</h2>
+
+<p>この例ではステレオトラックを分け、左右のチャンネルをそれぞれ別に処理する方法を示しています。これを使うためには、{{domxref("AudioNode.connect(AudioNode)") }}メソッドの2番目と3番目の引数を使い、接続元と接続先のチャンネルの番号を指定する必要があります。</p>
+
+<pre class="brush: js;highlight[7,16,17,24]">var ac = new AudioContext();
+ac.decodeAudioData(someStereoBuffer, function(data) {
+ var source = ac.createBufferSource();
+ source.buffer = data;
+ var splitter = ac.createChannelSplitter(2);
+ source.connect(splitter);
+ var merger = ac.createChannelMerger(2);
+
+ // 左チャンネルのボリュームのみ小さくする
+ var gain = ac.createGain();
+ gain.value = 0.5;
+ splitter.connect(gain, 0);
+
+ // splitterをmergerの2番目の入力にして戻す
+ // ここではチャンネルを入れ替えることで、ステレオ音声の左右を逆にしている
+ gain.connect(merger, 0, 1);
+ splitter.connect(merger, 1, 0);
+
+ var dest = ac.createMediaStreamDestination();
+
+ // ChannelMergerNodeを使ったのでステレオのMediaStreamとなった
+ // webオーディオグラフのWebRTCやMediaRecorderなどに渡す
+ merger.connect(dest);
+});</pre>
+
+<h2 id="仕様">仕様</h2>
+
+<table class="standard-table">
+ <tbody>
+ <tr>
+ <th scope="col">Specification</th>
+ <th scope="col">Status</th>
+ <th scope="col">Comment</th>
+ </tr>
+ <tr>
+ <td>{{SpecName('Web Audio API', '#widl-AudioContext-createChannelMerger-ChannelMergerNode-unsigned-long-numberOfInputs', 'createChannelMerger()')}}</td>
+ <td>{{Spec2('Web Audio API')}}</td>
+ <td> </td>
+ </tr>
+ </tbody>
+</table>
+
+<h2 id="ブラウザ互換性">ブラウザ互換性</h2>
+
+<div>{{CompatibilityTable}}</div>
+
+<div id="compat-desktop">
+<table class="compat-table">
+ <tbody>
+ <tr>
+ <th>Feature</th>
+ <th>Chrome</th>
+ <th>Firefox (Gecko)</th>
+ <th>Internet Explorer</th>
+ <th>Opera</th>
+ <th>Safari (WebKit)</th>
+ </tr>
+ <tr>
+ <td>Basic support</td>
+ <td>{{CompatChrome(10.0)}}{{property_prefix("webkit")}}</td>
+ <td>{{CompatGeckoDesktop(25.0)}} </td>
+ <td>{{CompatNo}}</td>
+ <td>15.0{{property_prefix("webkit")}}<br>
+ 22 (unprefixed)</td>
+ <td>6.0{{property_prefix("webkit")}}</td>
+ </tr>
+ </tbody>
+</table>
+</div>
+
+<div id="compat-mobile">
+<table class="compat-table">
+ <tbody>
+ <tr>
+ <th>Feature</th>
+ <th>Android</th>
+ <th>Firefox Mobile (Gecko)</th>
+ <th>Firefox OS</th>
+ <th>IE Mobile</th>
+ <th>Opera Mobile</th>
+ <th>Safari Mobile</th>
+ <th>Chrome for Android</th>
+ </tr>
+ <tr>
+ <td>Basic support</td>
+ <td>{{CompatUnknown}}</td>
+ <td>26.0</td>
+ <td>1.2</td>
+ <td>{{CompatUnknown}}</td>
+ <td>{{CompatUnknown}}</td>
+ <td>{{CompatUnknown}}</td>
+ <td>33.0</td>
+ </tr>
+ </tbody>
+</table>
+</div>
+
+<h2 id="参照">参照</h2>
+
+<ul>
+ <li><a href="/en-US/docs/Web_Audio_API/Using_Web_Audio_API">Using the Web Audio API</a></li>
+</ul>
diff --git a/files/ja/web/api/audiocontext/createchannelsplitter/index.html b/files/ja/web/api/audiocontext/createchannelsplitter/index.html
new file mode 100644
index 0000000000..07444c49d0
--- /dev/null
+++ b/files/ja/web/api/audiocontext/createchannelsplitter/index.html
@@ -0,0 +1,133 @@
+---
+title: AudioContext.createChannelSplitter()
+slug: Web/API/AudioContext/createChannelSplitter
+translation_of: Web/API/BaseAudioContext/createChannelSplitter
+---
+<p>{{ APIRef("Web Audio API") }}</p>
+
+<div>
+<p>インターフェースの<code>createChannelSplitter()</code>メソッドは、オーディオストリームを個別に処理するためにチャンネルを分離する{{domxref("ChannelSplitterNode")}}を生成します。</p>
+</div>
+
+<h2 id="構文">構文</h2>
+
+<pre class="brush: js">var audioCtx = new AudioContext();
+var splitter = audioCtx.createChannelSplitter(numberOfOutputs);</pre>
+
+<h3 id="引数">引数</h3>
+
+<dl>
+ <dt>numberOfOutputs</dt>
+ <dd>入力オーディオストリームを分ける数。引数の指定がなければ6。</dd>
+</dl>
+
+<h3 id="Returns">Returns</h3>
+
+<p>{{domxref("ChannelSplitterNode")}}</p>
+
+<h2 id="例">例</h2>
+
+<p>この例ではステレオトラックを分け、左右のチャンネルをそれぞれ別に処理する方法を示しています。これを使うためには、{{domxref("AudioNode.connect(AudioNode)") }}メソッドの2番目と3番目の引数を使い、接続元と接続先のチャンネルの番号を指定する必要があります。</p>
+
+<pre class="brush: js;highlight[5,12,17]">var ac = new AudioContext();
+ac.decodeAudioData(someStereoBuffer, function(data) {
+ var source = ac.createBufferSource();
+ source.buffer = data;
+ var splitter = ac.createChannelSplitter(2);
+ source.connect(splitter);
+ var merger = ac.createChannelMerger(2);
+
+ // 左チャンネルのボリュームのみ小さくする
+ var gain = ac.createGain();
+ gain.value = 0.5;
+ splitter.connect(gain, 0);
+
+ // splitterをmergerの2番目の入力にして戻す
+ // ここではチャンネルを入れ替えることで、ステレオ音声の左右を逆にしている
+ gain.connect(merger, 0, 1);
+ splitter.connect(merger, 1, 0);
+
+ var dest = ac.createMediaStreamDestination();
+
+ // ChannelMergerNodeを使ったのでステレオのMediaStreamとなった
+ // webオーディオグラフのWebRTCやMediaRecorderなどに渡す
+ merger.connect(dest);
+});</pre>
+
+<h2 id="仕様">仕様</h2>
+
+<table class="standard-table">
+ <tbody>
+ <tr>
+ <th scope="col">Specification</th>
+ <th scope="col">Status</th>
+ <th scope="col">Comment</th>
+ </tr>
+ <tr>
+ <td>{{SpecName('Web Audio API', '#widl-AudioContext-createChannelSplitter-ChannelSplitterNode-unsigned-long-numberOfOutputs', 'createChannelSplitter()')}}</td>
+ <td>{{Spec2('Web Audio API')}}</td>
+ <td> </td>
+ </tr>
+ </tbody>
+</table>
+
+<h2 id="ブラウザ互換性">ブラウザ互換性</h2>
+
+<div>{{CompatibilityTable}}</div>
+
+<div id="compat-desktop">
+<table class="compat-table">
+ <tbody>
+ <tr>
+ <th>Feature</th>
+ <th>Chrome</th>
+ <th>Firefox (Gecko)</th>
+ <th>Internet Explorer</th>
+ <th>Opera</th>
+ <th>Safari (WebKit)</th>
+ </tr>
+ <tr>
+ <td>Basic support</td>
+ <td>{{CompatChrome(10.0)}}{{property_prefix("webkit")}}</td>
+ <td>{{CompatGeckoDesktop(25.0)}} </td>
+ <td>{{CompatNo}}</td>
+ <td>15.0{{property_prefix("webkit")}}<br>
+ 22 (unprefixed)</td>
+ <td>6.0{{property_prefix("webkit")}}</td>
+ </tr>
+ </tbody>
+</table>
+</div>
+
+<div id="compat-mobile">
+<table class="compat-table">
+ <tbody>
+ <tr>
+ <th>Feature</th>
+ <th>Android</th>
+ <th>Firefox Mobile (Gecko)</th>
+ <th>Firefox OS</th>
+ <th>IE Mobile</th>
+ <th>Opera Mobile</th>
+ <th>Safari Mobile</th>
+ <th>Chrome for Android</th>
+ </tr>
+ <tr>
+ <td>Basic support</td>
+ <td>{{CompatUnknown}}</td>
+ <td>26.0</td>
+ <td>1.2</td>
+ <td>{{CompatUnknown}}</td>
+ <td>{{CompatUnknown}}</td>
+ <td>{{CompatUnknown}}</td>
+ <td>33.0</td>
+ </tr>
+ </tbody>
+</table>
+</div>
+
+<h2 id="参考">参考</h2>
+
+<ul>
+ <li><a href="/en-US/docs/Web_Audio_API/Using_Web_Audio_API">Using the Web Audio API</a></li>
+</ul>
diff --git a/files/ja/web/api/audiocontext/createconvolver/index.html b/files/ja/web/api/audiocontext/createconvolver/index.html
new file mode 100644
index 0000000000..ae5acf59c8
--- /dev/null
+++ b/files/ja/web/api/audiocontext/createconvolver/index.html
@@ -0,0 +1,131 @@
+---
+title: AudioContext.createConvolver()
+slug: Web/API/AudioContext/createConvolver
+translation_of: Web/API/BaseAudioContext/createConvolver
+---
+<p>{{ APIRef("Web Audio API") }}</p>
+
+<div>
+<p>{{ domxref("AudioContext") }}インターフェースの<code>createConvolver()</code>メソッドは、音声にリバーブ効果などを適用する{{ domxref("ConvolverNode") }}を生成します。詳細は<a href="http://webaudio.github.io/web-audio-api/#background-3">spec definition of Convolution</a>を参照してください。</p>
+</div>
+
+<h2 id="構文">構文</h2>
+
+<pre class="brush: js">var audioCtx = new AudioContext();
+var convolver = audioCtx.createConvolver();</pre>
+
+<h3 id="Description" name="Description">戻り値</h3>
+
+<p>{{domxref("ConvolverNode")}}</p>
+
+<h2 id="Examples" name="Examples">例</h2>
+
+<p>次の例は畳み込みノードを生成する基礎的なAudioContextの使い方を示しています。まず、畳み込み(インパルス応答)が適用される音声が書き込まれた<code>AudioBuffer</code>を生成し、そしてそれに畳み込みを適用します。例ではコンサートホールの群集の短い音声を使っていて、深く音響したリバーブ効果がかかっています。</p>
+
+<p>例と情報の応用は、<a href="http://mdn.github.io/voice-change-o-matic/">Voice-change-O-maticデモ</a>(<a href="https://github.com/mdn/voice-change-o-matic/blob/gh-pages/scripts/app.js">ソースコード</a>)をチェックしてください。</p>
+
+<pre class="brush: js">var audioCtx = new (window.AudioContext || window.webkitAudioContext)();
+var convolver = audioCtx.createConvolver();
+
+ ...
+
+// XHRで畳み込みノードのための音声トラックを得る
+
+var soundSource, concertHallBuffer;
+
+ajaxRequest = new XMLHttpRequest();
+ajaxRequest.open('GET', 'concert-crowd.ogg', true);
+ajaxRequest.responseType = 'arraybuffer';
+
+ajaxRequest.onload = function() {
+  var audioData = ajaxRequest.response;
+  audioCtx.decodeAudioData(audioData, function(buffer) {
+      concertHallBuffer = buffer;
+      soundSource = audioCtx.createBufferSource();
+      soundSource.buffer = concertHallBuffer;
+    }, function(e){"Error with decoding audio data" + e.err});
+}
+
+ajaxRequest.send();
+
+ ...
+
+convolver.buffer = concertHallBuffer;</pre>
+
+<h2 id="仕様">仕様</h2>
+
+<table class="standard-table">
+ <tbody>
+ <tr>
+ <th scope="col">Specification</th>
+ <th scope="col">Status</th>
+ <th scope="col">Comment</th>
+ </tr>
+ <tr>
+ <td>{{SpecName('Web Audio API', '#widl-AudioContext-createConvolver-ConvolverNode', 'createConvolver()')}}</td>
+ <td>{{Spec2('Web Audio API')}}</td>
+ <td> </td>
+ </tr>
+ </tbody>
+</table>
+
+<h2 id="ブラウザ互換性">ブラウザ互換性</h2>
+
+<div>{{CompatibilityTable}}</div>
+
+<div id="compat-desktop">
+<table class="compat-table">
+ <tbody>
+ <tr>
+ <th>Feature</th>
+ <th>Chrome</th>
+ <th>Firefox (Gecko)</th>
+ <th>Internet Explorer</th>
+ <th>Opera</th>
+ <th>Safari (WebKit)</th>
+ </tr>
+ <tr>
+ <td>Basic support</td>
+ <td>{{CompatChrome(10.0)}}{{property_prefix("webkit")}}</td>
+ <td>{{CompatGeckoDesktop(25.0)}} </td>
+ <td>{{CompatNo}}</td>
+ <td>15.0{{property_prefix("webkit")}}<br>
+ 22 (unprefixed)</td>
+ <td>6.0{{property_prefix("webkit")}}</td>
+ </tr>
+ </tbody>
+</table>
+</div>
+
+<div id="compat-mobile">
+<table class="compat-table">
+ <tbody>
+ <tr>
+ <th>Feature</th>
+ <th>Android</th>
+ <th>Firefox Mobile (Gecko)</th>
+ <th>Firefox OS</th>
+ <th>IE Mobile</th>
+ <th>Opera Mobile</th>
+ <th>Safari Mobile</th>
+ <th>Chrome for Android</th>
+ </tr>
+ <tr>
+ <td>Basic support</td>
+ <td>{{CompatUnknown}}</td>
+ <td>26.0</td>
+ <td>1.2</td>
+ <td>{{CompatUnknown}}</td>
+ <td>{{CompatUnknown}}</td>
+ <td>{{CompatUnknown}}</td>
+ <td>33.0</td>
+ </tr>
+ </tbody>
+</table>
+</div>
+
+<h2 id="参考">参考</h2>
+
+<ul>
+ <li><a href="/en-US/docs/Web_Audio_API/Using_Web_Audio_API">Using the Web Audio API</a></li>
+</ul>
diff --git a/files/ja/web/api/audiocontext/createdelay/index.html b/files/ja/web/api/audiocontext/createdelay/index.html
new file mode 100644
index 0000000000..709a8a375b
--- /dev/null
+++ b/files/ja/web/api/audiocontext/createdelay/index.html
@@ -0,0 +1,143 @@
+---
+title: AudioContext.createDelay()
+slug: Web/API/AudioContext/createDelay
+translation_of: Web/API/BaseAudioContext/createDelay
+---
+<p>{{ APIRef("Web Audio API") }}</p>
+
+<div>
+<p>{{ domxref("AudioContext") }}インターフェースの<code>createDelay()</code>メソッドは、入力音声信号を一定時間遅らせる{{domxref("DelayNode")}}を生成します。</p>
+</div>
+
+<h2 id="構文">構文</h2>
+
+<pre class="brush: js">var audioCtx = new AudioContext();
+var synthDelay = audioCtx.createDelay(maxDelayTime);</pre>
+
+<h3 id="引数">引数</h3>
+
+<dl>
+ <dt>maxDelayTime</dt>
+ <dd>音声信号の最大遅れ時間の秒数。デフォルトは0</dd>
+</dl>
+
+<h3 id="戻り値">戻り値</h3>
+
+<p>{{domxref("DelayNode")}}</p>
+
+<h2 id="例">例</h2>
+
+<p>ループする3つの異なる簡単な例を用意しました。<a href="http://chrisdavidmills.github.io/create-delay/">create-delay</a>を見てください。(<a href="https://github.com/chrisdavidmills/create-delay">ソースコードも閲覧</a>できます。)ただPlayボタンを押すと、ループはすぐ始まります。スライダーを右に動かしPlayボタンを押すと、待ち時間が挿入され、少し時間が過ぎるまで再生が始まりません。</p>
+
+<pre class="brush: js;highlight[4,15,16,21,22]">var AudioContext = window.AudioContext || window.webkitAudioContext;
+var audioCtx = new AudioContext();
+
+var synthDelay = audioCtx.createDelay(5.0);
+
+ ...
+
+var synthSource;
+
+playSynth.onclick = function() {
+ synthSource = audioCtx.createBufferSource();
+ synthSource.buffer = buffers[2];
+ synthSource.loop = true;
+ synthSource.start();
+ synthSource.connect(synthDelay);
+ synthDelay.connect(destination);
+ this.setAttribute('disabled', 'disabled');
+}
+
+stopSynth.onclick = function() {
+ synthSource.disconnect(synthDelay);
+ synthDelay.disconnect(destination);
+ synthSource.stop();
+ playSynth.removeAttribute('disabled');
+}
+
+...
+
+var delay1;
+rangeSynth.oninput = function() {
+delay1 = rangeSynth.value;
+synthDelay.delayTime.value = delay1;
+}
+</pre>
+
+<h2 id="仕様">仕様</h2>
+
+<table class="standard-table">
+ <tbody>
+ <tr>
+ <th scope="col">Specification</th>
+ <th scope="col">Status</th>
+ <th scope="col">Comment</th>
+ </tr>
+ <tr>
+ <td>{{SpecName('Web Audio API', '#widl-AudioContext-createDelay-DelayNode-double-maxDelayTime', 'createDelay()')}}</td>
+ <td>{{Spec2('Web Audio API')}}</td>
+ <td> </td>
+ </tr>
+ </tbody>
+</table>
+
+<h2 id="ブラウザ互換性">ブラウザ互換性</h2>
+
+<div>{{CompatibilityTable}}</div>
+
+<div id="compat-desktop">
+<table class="compat-table">
+ <tbody>
+ <tr>
+ <th>Feature</th>
+ <th>Chrome</th>
+ <th>Firefox (Gecko)</th>
+ <th>Internet Explorer</th>
+ <th>Opera</th>
+ <th>Safari (WebKit)</th>
+ </tr>
+ <tr>
+ <td>Basic support</td>
+ <td>{{CompatChrome(10.0)}}{{property_prefix("webkit")}}</td>
+ <td>{{CompatGeckoDesktop(25.0)}} </td>
+ <td>{{CompatNo}}</td>
+ <td>15.0{{property_prefix("webkit")}}<br>
+ 22 (unprefixed)</td>
+ <td>6.0{{property_prefix("webkit")}}</td>
+ </tr>
+ </tbody>
+</table>
+</div>
+
+<div id="compat-mobile">
+<table class="compat-table">
+ <tbody>
+ <tr>
+ <th>Feature</th>
+ <th>Android</th>
+ <th>Firefox Mobile (Gecko)</th>
+ <th>Firefox OS</th>
+ <th>IE Mobile</th>
+ <th>Opera Mobile</th>
+ <th>Safari Mobile</th>
+ <th>Chrome for Android</th>
+ </tr>
+ <tr>
+ <td>Basic support</td>
+ <td>{{CompatUnknown}}</td>
+ <td>26.0</td>
+ <td>1.2</td>
+ <td>{{CompatUnknown}}</td>
+ <td>{{CompatUnknown}}</td>
+ <td>{{CompatUnknown}}</td>
+ <td>33.0</td>
+ </tr>
+ </tbody>
+</table>
+</div>
+
+<h2 id="参照">参照</h2>
+
+<ul>
+ <li><a href="/en-US/docs/Web_Audio_API/Using_Web_Audio_API">Using the Web Audio API</a></li>
+</ul>
diff --git a/files/ja/web/api/audiocontext/createdynamicscompressor/index.html b/files/ja/web/api/audiocontext/createdynamicscompressor/index.html
new file mode 100644
index 0000000000..2fa5ca43ed
--- /dev/null
+++ b/files/ja/web/api/audiocontext/createdynamicscompressor/index.html
@@ -0,0 +1,138 @@
+---
+title: AudioContext.createDynamicsCompressor()
+slug: Web/API/AudioContext/createDynamicsCompressor
+translation_of: Web/API/BaseAudioContext/createDynamicsCompressor
+---
+<p>{{ APIRef("Web Audio API") }}</p>
+
+<div>
+<p>{{ domxref("AudioContext") }}インターフェースの<code>createDynamicsCompressor()</code>メソッドは、音声信号にコンプレッサーを適用する{{domxref("DynamicsCompressorNode")}}を生成します。</p>
+</div>
+
+<p>コンプレッサーは、音声信号の最大部分の音量を小さくし、最小部分の音量を大きくします。一般的に、より大きく、豊かで、高密度な音になります。これはゲームや音楽アプリケーションでたくさんの別々の音を同時に再生する場合に特に重要です。このような場合、全体の音量の操作したり、出力音声のクリッピング(ひずみ)を避けたいはずです。</p>
+
+<h2 id="構文">構文</h2>
+
+<pre class="brush: js">var audioCtx = new AudioContext();
+var compressor = audioCtx.createDynamicsCompressor();</pre>
+
+<h3 id="戻り値">戻り値</h3>
+
+<p>{{domxref("DynamicsCompressorNode")}}</p>
+
+<h2 id="例">例</h2>
+
+<p>音声トラックにコンプレッサーを追加するために<code>createDynamicsCompressor()</code>を使う簡単なデモコードです。より完全なサンプルは、<a href="http://mdn.github.io/compressor-example/">basic Compressor example</a> (<a href="https://github.com/mdn/compressor-example">ソースコードの閲覧</a>)を参照してください。</p>
+
+<pre class="brush: js;highlight[6,18,19]">// MediaElementAudioSourceNodeを生成する
+// そこにHTMLMediaElementを入れる
+var source = audioCtx.createMediaElementSource(myAudio);
+
+// コンプレッサーノードを生成する
+var compressor = audioCtx.createDynamicsCompressor();
+compressor.threshold.value = -50;
+compressor.knee.value = 40;
+compressor.ratio.value = 12;
+compressor.reduction.value = -20;
+compressor.attack.value = 0;
+compressor.release.value = 0.25;
+
+// AudioBufferSourceNodeを行き先(destination)につなげる
+source.connect(audioCtx.destination);
+
+button.onclick = function() {
+ var active = button.getAttribute('data-active');
+ if(active == 'false') {
+ button.setAttribute('data-active', 'true');
+ button.innerHTML = 'Remove compression';
+
+ source.disconnect(audioCtx.destination);
+ source.connect(compressor);
+ compressor.connect(audioCtx.destination);
+ } else if(active == 'true') {
+ button.setAttribute('data-active', 'false');
+ button.innerHTML = 'Add compression';
+
+ source.disconnect(compressor);
+ compressor.disconnect(audioCtx.destination);
+ source.connect(audioCtx.destination);
+ }
+}</pre>
+
+<h2 id="仕様">仕様</h2>
+
+<table class="standard-table">
+ <tbody>
+ <tr>
+ <th scope="col">Specification</th>
+ <th scope="col">Status</th>
+ <th scope="col">Comment</th>
+ </tr>
+ <tr>
+ <td>{{SpecName('Web Audio API', '#widl-AudioContext-createDynamicsCompressor-DynamicsCompressorNode', 'createDynamicsCompressor()')}}</td>
+ <td>{{Spec2('Web Audio API')}}</td>
+ <td> </td>
+ </tr>
+ </tbody>
+</table>
+
+<h2 id="ブラウザ互換性">ブラウザ互換性</h2>
+
+<div>{{CompatibilityTable}}</div>
+
+<div id="compat-desktop">
+<table class="compat-table">
+ <tbody>
+ <tr>
+ <th>Feature</th>
+ <th>Chrome</th>
+ <th>Firefox (Gecko)</th>
+ <th>Internet Explorer</th>
+ <th>Opera</th>
+ <th>Safari (WebKit)</th>
+ </tr>
+ <tr>
+ <td>Basic support</td>
+ <td>{{CompatChrome(10.0)}}{{property_prefix("webkit")}}</td>
+ <td>{{CompatGeckoDesktop(25.0)}} </td>
+ <td>{{CompatNo}}</td>
+ <td>15.0{{property_prefix("webkit")}}<br>
+ 22 (unprefixed)</td>
+ <td>6.0{{property_prefix("webkit")}}</td>
+ </tr>
+ </tbody>
+</table>
+</div>
+
+<div id="compat-mobile">
+<table class="compat-table">
+ <tbody>
+ <tr>
+ <th>Feature</th>
+ <th>Android</th>
+ <th>Firefox Mobile (Gecko)</th>
+ <th>Firefox OS</th>
+ <th>IE Mobile</th>
+ <th>Opera Mobile</th>
+ <th>Safari Mobile</th>
+ <th>Chrome for Android</th>
+ </tr>
+ <tr>
+ <td>Basic support</td>
+ <td>{{CompatUnknown}}</td>
+ <td>26.0</td>
+ <td>1.2</td>
+ <td>{{CompatUnknown}}</td>
+ <td>{{CompatUnknown}}</td>
+ <td>{{CompatUnknown}}</td>
+ <td>33.0</td>
+ </tr>
+ </tbody>
+</table>
+</div>
+
+<h2 id="参考">参考</h2>
+
+<ul>
+ <li><a href="/en-US/docs/Web_Audio_API/Using_Web_Audio_API">Using the Web Audio API</a></li>
+</ul>
diff --git a/files/ja/web/api/audiocontext/creategain/index.html b/files/ja/web/api/audiocontext/creategain/index.html
new file mode 100644
index 0000000000..c536a0621c
--- /dev/null
+++ b/files/ja/web/api/audiocontext/creategain/index.html
@@ -0,0 +1,128 @@
+---
+title: AudioContext.createGain()
+slug: Web/API/AudioContext/createGain
+translation_of: Web/API/BaseAudioContext/createGain
+---
+<p>{{ APIRef("Web Audio API") }}</p>
+
+<div>
+<p>インターフェースの<code>createGain()</code>メソッドは、音声の全体的なボリュームを操作する{{ domxref("GainNode") }}を生成します。</p>
+</div>
+
+<h2 id="構文">構文</h2>
+
+<pre class="brush: js">var audioCtx = new AudioContext();
+var gainNode = audioCtx.createGain();</pre>
+
+<h3 id="Description" name="Description">戻り値</h3>
+
+<p>{{domxref("GainNode")}}</p>
+
+<h2 id="Example" name="Example">例</h2>
+
+<p>次の例では{{domxref("AudioContext")}}、<code>GainNode</code>を生成する基本的な使い方を示しています。生成した<code>GainNode</code>は、Muteボタンを押したときに<code>gain</code>プロパティの値を設定することで、無音・無音解除するために使っています。完全な例と情報は、<a href="http://mdn.github.io/voice-change-o-matic/">Voice-change-O-matic</a>デモ(<a href="https://github.com/mdn/voice-change-o-matic/blob/gh-pages/scripts/app.js">ソースの閲覧</a>)をクリックしてください。</p>
+
+<pre class="brush: html">&lt;div&gt;
+ &lt;a class="mute"&gt;Mute button&lt;/a&gt;
+&lt;/div&gt;</pre>
+
+<pre class="brush: js">var audioCtx = new (window.AudioContext || window.webkitAudioContext)();
+var gainNode = audioCtx.createGain();
+var mute = document.querySelector('.mute');
+
+source.connect(gainNode);
+gainNode.connect(audioCtx.destination);
+
+ ...
+
+mute.onclick = voiceMute;
+
+function voiceMute() {
+ if(mute.id == "") {
+ gainNode.gain.value = 0;
+ mute.id = "activated";
+ mute.innerHTML = "Unmute";
+ } else {
+ gainNode.gain.value = 1;
+ mute.id = "";
+ mute.innerHTML = "Mute";
+ }
+}</pre>
+
+<h2 id="仕様">仕様</h2>
+
+<table class="standard-table">
+ <tbody>
+ <tr>
+ <th scope="col">Specification</th>
+ <th scope="col">Status</th>
+ <th scope="col">Comment</th>
+ </tr>
+ <tr>
+ <td>{{SpecName('Web Audio API', '#widl-AudioContext-createGain-GainNode', 'createGain()')}}</td>
+ <td>{{Spec2('Web Audio API')}}</td>
+ <td> </td>
+ </tr>
+ </tbody>
+</table>
+
+<h2 id="ブラウザ互換性">ブラウザ互換性</h2>
+
+<div>{{CompatibilityTable}}</div>
+
+<div id="compat-desktop">
+<table class="compat-table">
+ <tbody>
+ <tr>
+ <th>Feature</th>
+ <th>Chrome</th>
+ <th>Firefox (Gecko)</th>
+ <th>Internet Explorer</th>
+ <th>Opera</th>
+ <th>Safari (WebKit)</th>
+ </tr>
+ <tr>
+ <td>Basic support</td>
+ <td>{{CompatChrome(10.0)}}{{property_prefix("webkit")}}</td>
+ <td>{{CompatGeckoDesktop(25.0)}} </td>
+ <td>{{CompatNo}}</td>
+ <td>15.0{{property_prefix("webkit")}}<br>
+ 22 (unprefixed)</td>
+ <td>6.0{{property_prefix("webkit")}}</td>
+ </tr>
+ </tbody>
+</table>
+</div>
+
+<div id="compat-mobile">
+<table class="compat-table">
+ <tbody>
+ <tr>
+ <th>Feature</th>
+ <th>Android</th>
+ <th>Firefox Mobile (Gecko)</th>
+ <th>Firefox OS</th>
+ <th>IE Mobile</th>
+ <th>Opera Mobile</th>
+ <th>Safari Mobile</th>
+ <th>Chrome for Android</th>
+ </tr>
+ <tr>
+ <td>Basic support</td>
+ <td>{{CompatUnknown}}</td>
+ <td>26.0</td>
+ <td>1.2</td>
+ <td>{{CompatUnknown}}</td>
+ <td>{{CompatUnknown}}</td>
+ <td>{{CompatUnknown}}</td>
+ <td>33.0</td>
+ </tr>
+ </tbody>
+</table>
+</div>
+
+<h2 id="参考">参考</h2>
+
+<ul>
+ <li><a href="/en-US/docs/Web_Audio_API/Using_Web_Audio_API">Using the Web Audio API</a></li>
+</ul>
diff --git a/files/ja/web/api/audiocontext/createmediaelementsource/index.html b/files/ja/web/api/audiocontext/createmediaelementsource/index.html
new file mode 100644
index 0000000000..37e38066b2
--- /dev/null
+++ b/files/ja/web/api/audiocontext/createmediaelementsource/index.html
@@ -0,0 +1,154 @@
+---
+title: AudioContext.createMediaElementSource()
+slug: Web/API/AudioContext/createMediaElementSource
+translation_of: Web/API/AudioContext/createMediaElementSource
+---
+<p>{{ APIRef("Web Audio API") }}</p>
+
+<div>
+<p>{{ domxref("AudioContext") }}インターフェースのcreateMediaElementSource()メソッドは、新しく{{ domxref("MediaElementAudioSourceNode") }} オブジェクトを作成するために使用されます。HTML内に存在する{{htmlelement("audio")}} または {{htmlelement("video")}} を指定すると、そのオーディオを再生し、操作することができます。</p>
+
+<p>media element audio source nodesについての詳細は、 {{ domxref("MediaElementAudioSourceNode") }} を参照して下さい。</p>
+</div>
+
+<h2 id="構文">構文</h2>
+
+<pre class="brush: js">var audioCtx = new AudioContext();
+var source = audioCtx.createMediaElementSource(myMediaElement);</pre>
+
+<h3 id="引数">引数</h3>
+
+<dl>
+ <dt><code>myMediaElement</code></dt>
+ <dd>プロセッシング・グラフで操作するための {{ domxref("HTMLMediaElement") }} オブジェクトです。</dd>
+</dl>
+
+<h3 id="戻り値">戻り値</h3>
+
+<p>{{domxref("MediaElementAudioSourceNode")}}</p>
+
+<h2 id="例">例</h2>
+
+<p>以下の例では、createMediaElementSource()を使用して {{ htmlelement("audio") }} から音源を作成します。 再生される音源は {{ domxref("GainNode") }} を介し {{ domxref("AudioDestinationNode") }} に渡されます。マウスポインタが動くとupdatePage()関数が呼ばれ、マウスポインタのY座標の値をウィンドウの高さで割った比率を元に現在のゲインを計算します。また、マウスポインタを上下に動かすことで、再生している音楽の音量を上げ下げできます。</p>
+
+<div class="note">
+<p><strong>注記</strong>:  <a href="http://mdn.github.io/media-source-buffer/">この例のデモ</a>と、<a href="https://github.com/mdn/media-source-buffer">ソース</a>を見ることができます。</p>
+</div>
+
+<pre class="brush: js">var audioCtx = new (window.AudioContext || window.webkitAudioContext)();
+var myAudio = document.querySelector('audio');
+var pre = document.querySelector('pre');
+var myScript = document.querySelector('script');
+
+pre.innerHTML = myScript.innerHTML;
+
+// MediaElementAudioSourceNodeを作成
+// HTMLMediaElementをそこへ接続
+var source = audioCtx.createMediaElementSource(myAudio);
+
+// gain nodeを作成
+var gainNode = audioCtx.createGain();
+
+// マウスポインタのY座標と
+// 画面の高さを保持するための変数を作成
+var CurY;
+var HEIGHT = window.innerHeight;
+
+// マウスが動いたら新しいY座標を取得し、
+// ゲインの値を設定する
+document.onmousemove = updatePage;
+
+function updatePage(e) {
+ CurY = (window.Event) ? e.pageY : event.clientY + (document.documentElement.scrollTop ? document.documentElement.scrollTop : document.body.scrollTop);
+
+ gainNode.gain.value = CurY/HEIGHT;
+}
+
+
+// AudioBufferSourceNodeをgainNodeへ接続
+// gainNodeをdestinationへ接続
+// これで音楽の再生と、マウスカーソルで音量を調節できるようになる
+source.connect(gainNode);
+gainNode.connect(audioCtx.destination);</pre>
+
+<div class="note">
+<p><strong>注記</strong>: createMediaElementSource()を呼んだ結果として {{ domxref("HTMLMediaElement") }} から再生される音声はAudioContextのプロセッシング・グラフへ再度ルーティングされます。従って、<em>createMediaElementSource()を呼んだ後も</em>音声の再生/一時停止はmedia element API及びプレーヤーの再生/一時停止ボタンから操作できます。</p>
+</div>
+
+<h2 id="仕様">仕様</h2>
+
+<table class="standard-table">
+ <tbody>
+ <tr>
+ <th scope="col">仕様</th>
+ <th scope="col">状態</th>
+ <th scope="col">コメント</th>
+ </tr>
+ <tr>
+ <td>{{SpecName('Web Audio API', '#widl-AudioContext-createMediaElementSource-MediaElementAudioSourceNode-HTMLMediaElement-mediaElement', 'createMediaElementSource()')}}</td>
+ <td>{{Spec2('Web Audio API')}}</td>
+ <td> </td>
+ </tr>
+ </tbody>
+</table>
+
+<h2 id="ブラウザの互換性">ブラウザの互換性</h2>
+
+<div>{{CompatibilityTable}}</div>
+
+<div id="compat-desktop">
+<table class="compat-table">
+ <tbody>
+ <tr>
+ <th>Feature</th>
+ <th>Chrome</th>
+ <th>Firefox (Gecko)</th>
+ <th>Internet Explorer</th>
+ <th>Opera</th>
+ <th>Safari (WebKit)</th>
+ </tr>
+ <tr>
+ <td>Basic support</td>
+ <td>{{CompatChrome(10.0)}}{{property_prefix("webkit")}}</td>
+ <td>{{CompatGeckoDesktop(25.0)}} </td>
+ <td>{{CompatNo}}</td>
+ <td>15.0{{property_prefix("webkit")}}<br>
+ 22</td>
+ <td>6.0{{property_prefix("webkit")}}</td>
+ </tr>
+ </tbody>
+</table>
+</div>
+
+<div id="compat-mobile">
+<table class="compat-table">
+ <tbody>
+ <tr>
+ <th>Feature</th>
+ <th>Android</th>
+ <th>Firefox Mobile (Gecko)</th>
+ <th>Firefox OS</th>
+ <th>IE Mobile</th>
+ <th>Opera Mobile</th>
+ <th>Safari Mobile</th>
+ <th>Chrome for Android</th>
+ </tr>
+ <tr>
+ <td>Basic support</td>
+ <td>{{CompatUnknown}}</td>
+ <td>26.0</td>
+ <td>1.2</td>
+ <td>{{CompatUnknown}}</td>
+ <td>{{CompatUnknown}}</td>
+ <td>{{CompatUnknown}}</td>
+ <td>33.0</td>
+ </tr>
+ </tbody>
+</table>
+</div>
+
+<h2 id="関連情報">関連情報</h2>
+
+<ul>
+ <li><a href="/en-US/docs/Web_Audio_API/Using_Web_Audio_API">Web Audio APIの利用</a></li>
+</ul>
diff --git a/files/ja/web/api/audiocontext/createmediastreamdestination/index.html b/files/ja/web/api/audiocontext/createmediastreamdestination/index.html
new file mode 100644
index 0000000000..b3d36b6b52
--- /dev/null
+++ b/files/ja/web/api/audiocontext/createmediastreamdestination/index.html
@@ -0,0 +1,122 @@
+---
+title: AudioContext.createMediaStreamDestination()
+slug: Web/API/AudioContext/createMediaStreamDestination
+tags:
+ - API
+ - AudioContext
+ - Method
+ - Reference
+ - Référence(2)
+ - Web Audio API
+ - createMediaStreamDestination
+translation_of: Web/API/AudioContext/createMediaStreamDestination
+---
+<p>{{ APIRef("Web Audio API") }}</p>
+
+<div>
+<p>{{ domxref("AudioContext") }} インターフェイスの <code>createMediaStreamDestination()</code> メソッドは、<a href="/ja/docs/WebRTC">WebRTC</a> {{domxref("MediaStream")}} と関連付けられた {{domxref("MediaStreamAudioDestinationNode")}} オブジェクトを生成します。このMediaStreamはローカルファイルに格納されたり他のコンピュータに送信されたりする音声ストリームを表します。</p>
+</div>
+
+<p>{{domxref("MediaStream")}} はノードが生成されたときに作成され、{{domxref("MediaStreamAudioDestinationNode")}}の <code>stream</code> プロパティを通じてアクセスすることができます。このストリームは {{domxref("navigator.getUserMedia") }} で得られた <code>MediaStream</code> と同じような使い方ができます。例えば、<code>RTCPeerConnection</code> インターフェイスの <code>addStream()</code> メソッドでリモートの端末に送ることができます。</p>
+
+<p>詳細は {{domxref("MediaStreamAudioDestinationNode")}} のページを参照してください。</p>
+
+<h2 id="Syntax" name="Syntax">構文</h2>
+
+<pre class="brush: js">var audioCtx = new AudioContext();
+var destination = audioCtx.createMediaStreamDestination();</pre>
+
+<h3 id="Returns" name="Returns">戻り値</h3>
+
+<p>{{domxref("MediaStreamAudioDestinationNode")}}</p>
+
+<h2 id="Example" name="Example">例</h2>
+
+<p>次の簡単な例では、{{domxref("MediaStreamAudioDestinationNode")}}と{{ domxref("OscillatorNode") }}と{{ domxref("MediaRecorder") }} (そのため現時点では、このサンプルは Firefox と Chrome でしか動作しません) を作成します。<code>MediaRecorder</code> は <code>MediaStreamDestinationNode</code> からの情報を記録するように設定されています。</p>
+
+<p>ボタンをクリックするとオシレーター(振動子)が開始し、<code>MediaRecorder</code> も開始します。再びボタンを押して止めると、オシレーターと <code>MediaRecorder</code> の両方が停止します。<code>MediaRecorder</code> が停止すると <code>dataavailable</code> イベントが発火され、イベントデータが <code>chunks</code>配列にプッシュされます。その後、<code>stop</code> イベントが発火すると、新しい <code>blob</code> が opus タイプで作られます—そこには <code>chunks</code>配列のデータが書き込まれていて、その blob の URL を指す新しいウィンドウ(タブ)が開きます。</p>
+
+<p>そこで opus ファイルの再生と保存ができます。</p>
+
+<pre class="brush: html;highlight[17]">&lt;!DOCTYPE html&gt;
+&lt;html&gt;
+ &lt;head&gt;
+ &lt;title&gt;createMediaStreamDestination() demo&lt;/title&gt;
+ &lt;/head&gt;
+ &lt;body&gt;
+ &lt;h1&gt;createMediaStreamDestination() demo&lt;/h1&gt;
+
+ &lt;p&gt;Encoding a pure sine wave to an Opus file &lt;/p&gt;
+ &lt;button&gt;Make sine wave&lt;/button&gt;
+ &lt;audio controls&gt;&lt;/audio&gt;
+ &lt;script&gt;
+ var b = document.querySelector("button");
+ var clicked = false;
+ var chunks = [];
+ var ac = new AudioContext();
+ var osc = ac.createOscillator();
+ var dest = ac.createMediaStreamDestination();
+ var mediaRecorder = new MediaRecorder(dest.stream);
+ osc.connect(dest);
+
+ b.addEventListener("click", function(e) {
+ if (!clicked) {
+ mediaRecorder.start();
+ osc.start(0);
+ e.target.innerHTML = "Stop recording";
+ clicked = true;
+ } else {
+ mediaRecorder.stop();
+ osc.stop(0);
+ e.target.disabled = true;
+ }
+ });
+
+ mediaRecorder.ondataavailable = function(evt) {
+ // それぞれの chunk(blobs)を配列に入れる
+ chunks.push(evt.data);
+ };
+
+ mediaRecorder.onstop = function(evt) {
+ // blob を作成し開く
+ var blob = new Blob(chunks, { 'type' : 'audio/ogg; codecs=opus' });
+ document.querySelector("audio").src = URL.createObjectURL(blob);
+ };
+ &lt;/script&gt;
+ &lt;/body&gt;
+&lt;/html&gt;</pre>
+
+<div class="note">
+<p><strong>注:</strong> Github で<a href="https://mdn.github.io/webaudio-examples/create-media-stream-destination/index.html">実際に動作する例を閲覧</a>したり、<a href="https://github.com/mdn/webaudio-examples/blob/master/create-media-stream-destination/index.html">ソースコードを読む</a>ことができます。</p>
+</div>
+
+<h2 id="Specifications" name="Specifications">仕様</h2>
+
+<table class="standard-table">
+ <tbody>
+ <tr>
+ <th scope="col">仕様書</th>
+ <th scope="col">策定状況</th>
+ <th scope="col">コメント</th>
+ </tr>
+ <tr>
+ <td>{{SpecName('Web Audio API', '#dom-audiocontext-createmediastreamdestination', 'createMediaStreamDestination()')}}</td>
+ <td>{{Spec2('Web Audio API')}}</td>
+ <td></td>
+ </tr>
+ </tbody>
+</table>
+
+<h2 id="Browser_compatibility" name="Browser_compatibility">ブラウザー互換性</h2>
+
+<div>
+
+
+<p>{{Compat("api.AudioContext.createMediaStreamDestination")}}</p>
+</div>
+
+<h2 id="See_also" name="See_also">参考</h2>
+
+<ul>
+ <li><a href="/ja/docs/Web_Audio_API/Using_Web_Audio_API">Using the Web Audio API</a></li>
+</ul>
diff --git a/files/ja/web/api/audiocontext/createmediastreamsource/index.html b/files/ja/web/api/audiocontext/createmediastreamsource/index.html
new file mode 100644
index 0000000000..23911f427d
--- /dev/null
+++ b/files/ja/web/api/audiocontext/createmediastreamsource/index.html
@@ -0,0 +1,197 @@
+---
+title: AudioContext.createMediaStreamSource()
+slug: Web/API/AudioContext/createMediaStreamSource
+translation_of: Web/API/AudioContext/createMediaStreamSource
+---
+<p>{{ APIRef("Web Audio API") }}</p>
+
+<div>
+<p>インターフェースの<code>createMediaStreamSource()</code>メソッドは、指定のメディアストリームから(言い換えると{{ domxref("navigator.getUserMedia") }}インスタンスから){{ domxref("MediaStreamAudioSourceNode") }}オブジェクトを生成します。ここからの音声は再生や編集ができます。</p>
+</div>
+
+<p>メディアストリームオーディオソースノードの詳細は{{ domxref("MediaStreamAudioSourceNode") }}のページを参照してください。</p>
+
+<h2 id="構文">構文</h2>
+
+<pre class="brush: js">var audioCtx = new AudioContext();
+var source = audioCtx.createMediaStreamSource(stream);</pre>
+
+<h3 id="引数">引数</h3>
+
+<dl>
+ <dt>stream</dt>
+ <dd>操作のためにオーディオグラフに加えたい{{domxref("MediaStream")}}オブジェクト。</dd>
+</dl>
+
+<h3 id="戻り値">戻り値</h3>
+
+<p>{{domxref("MediaStreamAudioSourceNode")}}</p>
+
+<h2 id="例">例</h2>
+
+<p>この例では、メディア(音声+映像)ストリームを{{ domxref("navigator.getUserMedia") }}から獲得し、それを{{ htmlelement("video") }}要素に渡し、映像は再生しますが音声は再生しないようにします。音声は{{ domxref("MediaStreamAudioSourceNode") }}に渡します。次に、音声をローパスフィルタ{{ domxref("BiquadFilterNode") }}(低音を強めるように働きます)に渡し、そして{{domxref("AudioDestinationNode") }}に渡します。</p>
+
+<p>{{ htmlelement("video") }}要素の下のスライダーはローパスフィルタの増幅量を操作します—スライダーで値を大きくすると、より低音が強くなります!</p>
+
+<div class="note">
+<p><strong>注:</strong> <a href="http://mdn.github.io/stream-source-buffer/">この例の実行</a>と<a href="https://github.com/mdn/stream-source-buffer">ソースの閲覧</a>もできます。</p>
+</div>
+
+<pre class="brush: js;highlight[46]">// プレフィックスが必要な場合を考慮して、getUserMediaはブラウザのバージョンごとに分ける
+
+navigator.getUserMedia = (navigator.getUserMedia ||
+ navigator.webkitGetUserMedia ||
+ navigator.mozGetUserMedia ||
+ navigator.msGetUserMedia);
+
+// 他の変数を定義する
+
+var audioCtx = new (window.AudioContext || window.webkitAudioContext)();
+var myAudio = document.querySelector('audio');
+var pre = document.querySelector('pre');
+var video = document.querySelector('video');
+var myScript = document.querySelector('script');
+var range = document.querySelector('input');
+
+// マウスポインタのY座標と、画面の高さを格納する変数を定義する
+var CurY;
+var HEIGHT = window.innerHeight;
+
+// getUserMediaのブロック - ストリームを得る
+// MediaStreamAudioSourceNodeに渡す
+// 映像はvideo要素に出力する
+
+if (navigator.getUserMedia) {
+ console.log('getUserMedia supported.');
+ navigator.getUserMedia (
+ // 制約: このアプリで音声と映像を有効にする
+ {
+ audio: true,
+ video: true
+ },
+
+      // 成功時のコールバック
+ function(stream) {
+ video.src = (window.URL &amp;&amp; window.URL.createObjectURL(stream)) || stream;
+ video.onloadedmetadata = function(e) {
+ video.play();
+ video.muted = 'true';
+ };
+
+ // MediaStreamAudioSourceNodeを生成し、それにHTMLMediaElementを渡す
+ var source = audioCtx.createMediaStreamSource(stream);
+
+ // 二次フィルターを生成する
+ var biquadFilter = audioCtx.createBiquadFilter();
+ biquadFilter.type = "lowshelf";
+ biquadFilter.frequency.value = 1000;
+ biquadFilter.gain.value = range.value;
+
+ // AudioBufferSourceNodeをgainNodeに、そしてgainNodeをdestinationに接続する
+ // これでマウスを動かすことで音楽のボリュームを調整することができる
+ source.connect(biquadFilter);
+ biquadFilter.connect(audioCtx.destination);
+
+          // マウスが動いたとき新しい座標を得る
+ // そして増幅量を更新する
+
+ range.oninput = function() {
+ biquadFilter.gain.value = range.value;
+ }
+
+ },
+
+ // エラー時のフィードバック
+ function(err) {
+ console.log('The following gUM error occured: ' + err);
+ }
+ );
+} else {
+ console.log('getUserMedia not supported on your browser!');
+}
+
+// pre要素にスクリプトを書き出す
+
+pre.innerHTML = myScript.innerHTML;</pre>
+
+<div class="note">
+<p><strong>注:</strong> <code>createMediaStreamSource()</code>の呼び出しによるメディアストリームの音声は、再び<code>AudioContext</code>の処理グラフに再び入ります。よって、ストリームの再生/停止は、まだメディアAPIとプレイヤーの操作で行えます。</p>
+</div>
+
+<h2 id="仕様">仕様</h2>
+
+<table class="standard-table">
+ <tbody>
+ <tr>
+ <th scope="col">Specification</th>
+ <th scope="col">Status</th>
+ <th scope="col">Comment</th>
+ </tr>
+ <tr>
+ <td>{{SpecName('Web Audio API', '#widl-AudioContext-createMediaStreamSource-MediaStreamAudioSourceNode-MediaStream-mediaStream', 'createMediaStreamSource()')}}</td>
+ <td>{{Spec2('Web Audio API')}}</td>
+ <td> </td>
+ </tr>
+ </tbody>
+</table>
+
+<h2 id="ブラウザ互換性">ブラウザ互換性</h2>
+
+<div>{{CompatibilityTable}}</div>
+
+<div id="compat-desktop">
+<table class="compat-table">
+ <tbody>
+ <tr>
+ <th>Feature</th>
+ <th>Chrome</th>
+ <th>Firefox (Gecko)</th>
+ <th>Internet Explorer</th>
+ <th>Opera</th>
+ <th>Safari (WebKit)</th>
+ </tr>
+ <tr>
+ <td>Basic support</td>
+ <td>{{CompatChrome(10.0)}}{{property_prefix("webkit")}}</td>
+ <td>{{CompatGeckoDesktop(25.0)}} </td>
+ <td>{{CompatNo}}</td>
+ <td>15.0{{property_prefix("webkit")}}<br>
+ 22 (unprefixed)</td>
+ <td>6.0{{property_prefix("webkit")}}</td>
+ </tr>
+ </tbody>
+</table>
+</div>
+
+<div id="compat-mobile">
+<table class="compat-table">
+ <tbody>
+ <tr>
+ <th>Feature</th>
+ <th>Android</th>
+ <th>Firefox Mobile (Gecko)</th>
+ <th>Firefox OS</th>
+ <th>IE Mobile</th>
+ <th>Opera Mobile</th>
+ <th>Safari Mobile</th>
+ <th>Chrome for Android</th>
+ </tr>
+ <tr>
+ <td>Basic support</td>
+ <td>{{CompatUnknown}}</td>
+ <td>26.0</td>
+ <td>1.2</td>
+ <td>{{CompatUnknown}}</td>
+ <td>{{CompatUnknown}}</td>
+ <td>{{CompatUnknown}}</td>
+ <td>33.0</td>
+ </tr>
+ </tbody>
+</table>
+</div>
+
+<h2 id="参考">参考</h2>
+
+<ul>
+ <li><a href="/en-US/docs/Web_Audio_API/Using_Web_Audio_API">Using the Web Audio API</a></li>
+</ul>
diff --git a/files/ja/web/api/audiocontext/createoscillator/index.html b/files/ja/web/api/audiocontext/createoscillator/index.html
new file mode 100644
index 0000000000..e971400f5d
--- /dev/null
+++ b/files/ja/web/api/audiocontext/createoscillator/index.html
@@ -0,0 +1,111 @@
+---
+title: AudioContext.createOscillator()
+slug: Web/API/AudioContext/createOscillator
+translation_of: Web/API/BaseAudioContext/createOscillator
+---
+<p>{{ APIRef("Web Audio API") }}</p>
+
+<div>
+<p>{{ domxref("AudioContext") }}インターフェースの<code>createOscillator()</code>メソッドは、周期的な波形を発生源である{{ domxref("OscillatorNode") }}を生成します。これは基礎的な音源です。</p>
+</div>
+
+<h2 id="構文">構文</h2>
+
+<pre class="brush: js">var audioCtx = new AudioContext();
+var oscillator = audioCtx.createOscillator();</pre>
+
+<h3 id="Description" name="Description">戻り値</h3>
+
+<p>{{domxref("OscillatorNode")}}</p>
+
+<h2 id="Examples" name="Examples">例</h2>
+
+<p>次の例はオシレーターノードを生成する基礎的なAudioContextの使い方を示しています。例と情報の応用は、<a class="external external-icon" href="http://mdn.github.io/voice-change-o-matic/">Voice-change-O-maticデモ</a>(<a class="external external-icon" href="https://github.com/mdn/voice-change-o-matic/blob/gh-pages/scripts/app.js">ソースコード</a>)をチェックしてください。また、{{ domxref("OscillatorNode") }}にはより詳細な情報があります。</p>
+
+<pre class="brush: js">// webオーディオAPIコンテキストを生成する
+var audioCtx = new (window.AudioContext || window.webkitAudioContext)();
+
+// オシレーターノードを生成する
+var oscillator = audioCtx.createOscillator();
+
+oscillator.type = 'square';
+oscillator.frequency.value = 3000; // 値はHz(ヘルツ)
+oscillator.start();</pre>
+
+<h2 id="仕様">仕様</h2>
+
+<table class="standard-table">
+ <tbody>
+ <tr>
+ <th scope="col">Specification</th>
+ <th scope="col">Status</th>
+ <th scope="col">Comment</th>
+ </tr>
+ <tr>
+ <td>{{SpecName('Web Audio API', '#widl-AudioContext-createOscillator-OscillatorNode', 'createOscillator')}}</td>
+ <td>{{Spec2('Web Audio API')}}</td>
+ <td> </td>
+ </tr>
+ </tbody>
+</table>
+
+<h2 id="ブラウザ互換性">ブラウザ互換性</h2>
+
+<div>{{CompatibilityTable}}</div>
+
+<div id="compat-desktop">
+<table class="compat-table">
+ <tbody>
+ <tr>
+ <th>Feature</th>
+ <th>Chrome</th>
+ <th>Firefox (Gecko)</th>
+ <th>Internet Explorer</th>
+ <th>Opera</th>
+ <th>Safari (WebKit)</th>
+ </tr>
+ <tr>
+ <td>Basic support</td>
+ <td>{{CompatChrome(10.0)}}{{property_prefix("webkit")}}</td>
+ <td>{{CompatGeckoDesktop(25.0)}} </td>
+ <td>{{CompatNo}}</td>
+ <td>15.0{{property_prefix("webkit")}}<br>
+ 22 (unprefixed)</td>
+ <td>6.0{{property_prefix("webkit")}}</td>
+ </tr>
+ </tbody>
+</table>
+</div>
+
+<div id="compat-mobile">
+<table class="compat-table">
+ <tbody>
+ <tr>
+ <th>Feature</th>
+ <th>Android</th>
+ <th>Firefox Mobile (Gecko)</th>
+ <th>Firefox OS</th>
+ <th>IE Mobile</th>
+ <th>Opera Mobile</th>
+ <th>Safari Mobile</th>
+ <th>Chrome for Android</th>
+ </tr>
+ <tr>
+ <td>Basic support</td>
+ <td>{{CompatUnknown}}</td>
+ <td>26.0</td>
+ <td>1.2</td>
+ <td>{{CompatUnknown}}</td>
+ <td>{{CompatUnknown}}</td>
+ <td>{{CompatUnknown}}</td>
+ <td>33.0</td>
+ </tr>
+ </tbody>
+</table>
+</div>
+
+<h2 id="参考">参考</h2>
+
+<ul>
+ <li><a href="/en-US/docs/Web_Audio_API/Using_Web_Audio_API">Using the Web Audio API</a></li>
+</ul>
diff --git a/files/ja/web/api/audiocontext/createpanner/index.html b/files/ja/web/api/audiocontext/createpanner/index.html
new file mode 100644
index 0000000000..1b30c60a03
--- /dev/null
+++ b/files/ja/web/api/audiocontext/createpanner/index.html
@@ -0,0 +1,198 @@
+---
+title: AudioContext.createPanner()
+slug: Web/API/AudioContext/createPanner
+translation_of: Web/API/BaseAudioContext/createPanner
+---
+<p>{{ APIRef("Web Audio API") }}</p>
+
+<div>
+<p>{{ domxref("AudioContext") }} の <code>createPanner()</code> を利用すると、新しい {{domxref("PannerNode")}} を作成できます。これは空間音響を実現するために利用されます。</p>
+
+<p>作成された PannerNode は、音声の聴取者の位置と向きから空間的な再生を行います。聴取者の位置と向きは、 {{domxref("AudioListener") }} オブジェクトとして表現され、{{domxref("AudioContext.listener") }} で参照できます。</p>
+</div>
+
+<h2 id="Syntax" name="Syntax">記法</h2>
+
+<pre class="brush: js">var audioCtx = new AudioContext();
+var panner = audioCtx.createPanner();</pre>
+
+<h3 id="Returns" name="Returns">返り値</h3>
+
+<p>{{domxref("PannerNode")}} を返します。</p>
+
+<h2 id="Example" name="Example">利用例</h2>
+
+<p>以下の例では、<code>createPanner()</code> メソッドの利用方法と、 {{domxref("AudioListener")}} と{{domxref("PannerNode")}} による空間音響のコントロール方法について解説します。一般的には、聴取者と音源の 3 次元空間上での位置を決め、アプリケーションの動きに合わせてそれらを更新することになります。これを利用することで、キャラクターが世界の中を動き回るようなゲームで、近づくと聞こえ、遠ざかると聞こえなくなるステレオを実現できます。 以下の例では <code>moveRight()</code> や <code>moveLeft()、</code><code>PositionPanner()</code> などを利用して、位置をコントロールしています。</p>
+
+<p>完全な実装例は <a href="http://mdn.github.io/panner-node/">panner-node example</a> (<a href="https://github.com/mdn/panner-node">ソースコード</a>) を確認してください。このデモでは 2.5 次元上の「メタルの部屋」上で、曲を再生するラジカセの位置を変更させることで変化する音声を体験できます。</p>
+
+<p>付記:以下の例では比較的新しい属性を利用するために、ブラウザの機能を調べています。例えば位置を設定する {{domxref("AudioListener.forwardX")}}) などです。これらが利用できる場合は利用し、そうでない場合は{{domxref("AudioListener.setOrientation()")}}) のような古いメソッドを利用しています。</p>
+
+<pre class="brush: js">// set up listener and panner position information
+var WIDTH = window.innerWidth;
+var HEIGHT = window.innerHeight;
+
+var xPos = Math.floor(WIDTH/2);
+var yPos = Math.floor(HEIGHT/2);
+var zPos = 295;
+
+// define other variables
+
+var AudioContext = window.AudioContext || window.webkitAudioContext;
+var audioCtx = new AudioContext();
+
+var panner = audioCtx.createPanner();
+panner.panningModel = 'HRTF';
+panner.distanceModel = 'inverse';
+panner.refDistance = 1;
+panner.maxDistance = 10000;
+panner.rolloffFactor = 1;
+panner.coneInnerAngle = 360;
+panner.coneOuterAngle = 0;
+panner.coneOuterGain = 0;
+
+if(panner.orientationX) {
+ panner.orientationX.value = 1;
+ panner.orientationY.value = 0;
+ panner.orientationZ.value = 0;
+} else {
+ panner.setOrientation(1,0,0);
+}
+
+var listener = audioCtx.listener;
+
+if(listener.forwardX) {
+ listener.forwardX.value = 0;
+ listener.forwardY.value = 0;
+ listener.forwardZ.value = -1;
+ listener.upX.value = 0;
+ listener.upY.value = 1;
+ listener.upZ.value = 0;
+} else {
+ listener.setOrientation(0,0,-1,0,1,0);
+}
+
+var source;
+
+var play = document.querySelector('.play');
+var stop = document.querySelector('.stop');
+
+var boomBox = document.querySelector('.boom-box');
+
+var listenerData = document.querySelector('.listener-data');
+var pannerData = document.querySelector('.panner-data');
+
+leftBound = (-xPos) + 50;
+rightBound = xPos - 50;
+
+xIterator = WIDTH/150;
+
+// listener will always be in the same place for this demo
+
+if(listener.positionX) {
+ listener.positionX.value = xPos;
+ listener.positionY.value = yPos;
+ listener.positionZ.value = 300;
+} else {
+ listener.setPosition(xPos,yPos,300);
+}
+
+listenerData.innerHTML = 'Listener data: X ' + xPos + ' Y ' + yPos + ' Z ' + 300;
+
+// panner will move as the boombox graphic moves around on the screen
+function positionPanner() {
+ if(panner.positionX) {
+ panner.positionX.value = xPos;
+ panner.positionY.value = yPos;
+ panner.positionZ.value = zPos;
+ } else {
+ panner.setPosition(xPos,yPos,zPos);
+ }
+ pannerData.innerHTML = 'Panner data: X ' + xPos + ' Y ' + yPos + ' Z ' + zPos;
+}</pre>
+
+<div class="note">
+<p>listener と panner に設定された位置が正しく機能するためには、それらがスクリーン上の位置を正しく反映している必要があります。そのためには少し面倒な計算が必要となりますが、すこしやれば慣れる類のものです。</p>
+</div>
+
+<h2 id="仕様">仕様</h2>
+
+<table class="standard-table">
+ <tbody>
+ <tr>
+ <th scope="col">仕様</th>
+ <th scope="col">状況</th>
+ <th scope="col">コメント</th>
+ </tr>
+ <tr>
+ <td>{{SpecName('Web Audio API', '#widl-AudioContext-createPanner-PannerNode', 'createPanner()')}}</td>
+ <td>{{Spec2('Web Audio API')}}</td>
+ <td> </td>
+ </tr>
+ </tbody>
+</table>
+
+<h2 id="ブラウザー互換性">ブラウザー互換性</h2>
+
+<div>{{CompatibilityTable}}</div>
+
+<div id="compat-desktop">
+<table class="compat-table">
+ <tbody>
+ <tr>
+ <th>Feature</th>
+ <th>Chrome</th>
+ <th>Edge</th>
+ <th>Firefox (Gecko)</th>
+ <th>Internet Explorer</th>
+ <th>Opera</th>
+ <th>Safari (WebKit)</th>
+ </tr>
+ <tr>
+ <td>Basic support</td>
+ <td>{{CompatChrome(10.0)}}{{property_prefix("webkit")}}</td>
+ <td>{{CompatVersionUnknown}}</td>
+ <td>{{CompatGeckoDesktop(25.0)}} </td>
+ <td>{{CompatNo}}</td>
+ <td>15.0{{property_prefix("webkit")}}<br>
+ 22 (unprefixed)</td>
+ <td>6.0{{property_prefix("webkit")}}</td>
+ </tr>
+ </tbody>
+</table>
+</div>
+
+<div id="compat-mobile">
+<table class="compat-table">
+ <tbody>
+ <tr>
+ <th>Feature</th>
+ <th>Android</th>
+ <th>Edge</th>
+ <th>Firefox Mobile (Gecko)</th>
+ <th>Firefox OS</th>
+ <th>IE Mobile</th>
+ <th>Opera Mobile</th>
+ <th>Safari Mobile</th>
+ <th>Chrome for Android</th>
+ </tr>
+ <tr>
+ <td>Basic support</td>
+ <td>{{CompatUnknown}}</td>
+ <td>{{CompatVersionUnknown}}</td>
+ <td>26.0</td>
+ <td>1.2</td>
+ <td>{{CompatUnknown}}</td>
+ <td>{{CompatUnknown}}</td>
+ <td>{{CompatUnknown}}</td>
+ <td>33.0</td>
+ </tr>
+ </tbody>
+</table>
+</div>
+
+<h2 id="See_also" name="See_also">関連情報</h2>
+
+<ul>
+ <li><a href="/en-US/docs/Web_Audio_API/Using_Web_Audio_API">Using the Web Audio API</a></li>
+</ul>
diff --git a/files/ja/web/api/audiocontext/createperiodicwave/index.html b/files/ja/web/api/audiocontext/createperiodicwave/index.html
new file mode 100644
index 0000000000..825a1a8de5
--- /dev/null
+++ b/files/ja/web/api/audiocontext/createperiodicwave/index.html
@@ -0,0 +1,139 @@
+---
+title: AudioContext.createPeriodicWave()
+slug: Web/API/AudioContext/createPeriodicWave
+translation_of: Web/API/BaseAudioContext/createPeriodicWave
+---
+<p>{{ APIRef("Web Audio API") }}</p>
+
+<div>
+<p>{{ domxref("AudioContext") }}インターフェースの<code>createPeriodicWave()</code>メソッドは、周期的な波形を定義するために使われる{{domxref("PeriodicWave")}}を生成します。これは{{ domxref("OscillatorNode") }}の出力を決めるために使われます。</p>
+</div>
+
+<h2 id="構文">構文</h2>
+
+<pre class="brush: js">var audioCtx = new AudioContext();
+var wave = audioCtx.createPeriodicWave(real, imag);</pre>
+
+<h3 id="戻り値">戻り値</h3>
+
+<p>{{domxref("PeriodicWave")}}</p>
+
+<h3 id="引数">引数</h3>
+
+<dl>
+ <dt>real</dt>
+ <dd>余弦項の配列 (伝統的なA項)</dd>
+ <dt>imag</dt>
+ <dd>正弦項の配列 (伝統的なB項)</dd>
+</dl>
+
+<h2 id="例">例</h2>
+
+<p>The following example illustrates simple usage of <code>createPeriodicWave()</code>, to create a {{domxref("PeriodicWave")}} object containing a simple sine wave.</p>
+
+<pre class="brush: js;highlight[11]">var real = new Float32Array(2);
+var imag = new Float32Array(2);
+var ac = new AudioContext();
+var osc = ac.createOscillator();
+
+real[0] = 0;
+imag[0] = 0;
+real[1] = 1;
+imag[1] = 0;
+
+var wave = ac.createPeriodicWave(real, imag);
+
+osc.setPeriodicWave(wave);
+
+osc.connect(ac.destination);
+
+osc.start();
+osc.stop(2);</pre>
+
+<p>This works because a sound that contains only a fundamental tone is by definition a sine wave.<br>
+ <br>
+ Here, we create a <code>PeriodicWave</code> with two values. The first value is the DC offset, which is the value at which the oscillator starts. 0 is good here, because we want to start the curve at the middle of the [-1.0; 1.0] range.</p>
+
+<p>The second and subsequent values are sine and cosine components. You can think of it as the result of a Fourier transform, where you get frequency domain values from time domain value. Here, with <code>createPeriodicWave()</code>, you specify the frequencies, and the browser performs a an inverse Fourier transform to get a time domain buffer for the frequency of the oscillator. Here, we only set one component at full volume (1.0) on the fundamental tone, so we get a sine wave.</p>
+
+<p>The coefficients of the Fourier transform should be given in <em>ascending</em> order (i.e. <math><semantics><mrow><mrow><mo>(</mo><mrow><mi>a</mi><mo>+</mo><mi>b</mi><mi>i</mi></mrow><mo>)</mo></mrow><msup><mi>e</mi><mi>i</mi></msup><mo>,</mo><mrow><mo>(</mo><mrow><mi>c</mi><mo>+</mo><mi>d</mi><mi>i</mi></mrow><mo>)</mo></mrow><msup><mi>e</mi><mrow><mn>2</mn><mi>i</mi></mrow></msup><mo>,</mo><mrow><mo>(</mo><mrow><mi>f</mi><mo>+</mo><mi>g</mi><mi>i</mi></mrow><mo>)</mo></mrow><msup><mi>e</mi><mrow><mn>3</mn><mi>i</mi></mrow></msup></mrow><annotation encoding="TeX">\left(a+bi\right)e^{i} , \left(c+di\right)e^{2i} , \left(f+gi\right)e^{3i}   </annotation></semantics></math>etc.) and can be positive or negative.  A simple way of manually obtaining such coefficients (though not the best) is to use a graphing calculator.</p>
+
+<h2 id="仕様">仕様</h2>
+
+<table class="standard-table">
+ <tbody>
+ <tr>
+ <th scope="col">Specification</th>
+ <th scope="col">Status</th>
+ <th scope="col">Comment</th>
+ </tr>
+ <tr>
+ <td>{{SpecName('Web Audio API', '#widl-AudioContext-createPeriodicWave-PeriodicWave-Float32Array-real-Float32Array-imag', 'createPeriodicWave')}}</td>
+ <td>{{Spec2('Web Audio API')}}</td>
+ <td> </td>
+ </tr>
+ </tbody>
+</table>
+
+<h2 id="ブラウザ互換性">ブラウザ互換性</h2>
+
+<div>{{CompatibilityTable}}</div>
+
+<div id="compat-desktop">
+<table class="compat-table">
+ <tbody>
+ <tr>
+ <th>Feature</th>
+ <th>Chrome</th>
+ <th>Firefox (Gecko)</th>
+ <th>Internet Explorer</th>
+ <th>Opera</th>
+ <th>Safari (WebKit)</th>
+ </tr>
+ <tr>
+ <td>Basic support</td>
+ <td>{{CompatChrome(10.0)}}{{property_prefix("webkit")}}</td>
+ <td>{{CompatGeckoDesktop(25.0)}} </td>
+ <td>{{CompatNo}}</td>
+ <td>15.0{{property_prefix("webkit")}}<br>
+ 22 (unprefixed)</td>
+ <td>6.0{{property_prefix("webkit")}}</td>
+ </tr>
+ </tbody>
+</table>
+</div>
+
+<div id="compat-mobile">
+<table class="compat-table">
+ <tbody>
+ <tr>
+ <th>Feature</th>
+ <th>Android</th>
+ <th>Android Webview</th>
+ <th>Firefox Mobile (Gecko)</th>
+ <th>Firefox OS</th>
+ <th>IE Mobile</th>
+ <th>Opera Mobile</th>
+ <th>Safari Mobile</th>
+ <th>Chrome for Android</th>
+ </tr>
+ <tr>
+ <td>Basic support</td>
+ <td>{{CompatUnknown}}</td>
+ <td>{{CompatVersionUnknown}}</td>
+ <td>26.0</td>
+ <td>1.2</td>
+ <td>{{CompatUnknown}}</td>
+ <td>{{CompatUnknown}}</td>
+ <td>{{CompatUnknown}}</td>
+ <td>{{CompatChrome(33.0)}}</td>
+ </tr>
+ </tbody>
+</table>
+</div>
+
+<h2 id="参考">参考</h2>
+
+<ul>
+ <li><a href="/en-US/docs/Web_Audio_API/Using_Web_Audio_API">Using the Web Audio API</a></li>
+</ul>
diff --git a/files/ja/web/api/audiocontext/createscriptprocessor/index.html b/files/ja/web/api/audiocontext/createscriptprocessor/index.html
new file mode 100644
index 0000000000..d3c80ae2cb
--- /dev/null
+++ b/files/ja/web/api/audiocontext/createscriptprocessor/index.html
@@ -0,0 +1,69 @@
+---
+title: AudioContext.createScriptProcessor()
+slug: Web/API/AudioContext/createScriptProcessor
+translation_of: Web/API/BaseAudioContext/createScriptProcessor
+---
+<p>{{ APIRef("AudioContext") }}</p>
+<div class="summary">
+ <p><span class="seoSummary">{{ domxref("AudioContext") }} の createScriptProcessor() メソッドを利用することで、ダイレクトな音声処理ができる {{domxref("ScriptProcessorNode")}} オブジェクトを作成できます。</span></p>
+</div>
+<div class="note">
+ <p><strong>注意</strong>: このノードの利用方法に関しては {{domxref("ScriptProcessorNode")}} をご覧ください。</p>
+</div>
+<h2 id="構文">構文</h2>
+<pre class="syntaxbox"><code><em><span class="idlInterface" id="idl-def-AudioContext"><span class="idlMethod"> <span class="idlMethType"><a class="idlType" href="http://webaudio.github.io/web-audio-api/#idl-def-ScriptProcessorNode"><code>ScriptProcessorNode</code></a></span> <span class="idlMethName"><a href="http://webaudio.github.io/web-audio-api/#widl-AudioContext-createScriptProcessor-ScriptProcessorNode-unsigned-long-bufferSize-unsigned-long-numberOfInputChannels-unsigned-long-numberOfOutputChannels">createScriptProcessor</a></span> (<span class="idlParam">optional <span class="idlParamType">unsigned long</span> <span class="idlParamName">bufferSize</span> = <span class="idlDefaultValue">0 </span></span>, <span class="idlParam">optional <span class="idlParamType">unsigned long</span> <span class="idlParamName">numberOfInputChannels</span> = <span class="idlDefaultValue">2 </span></span>, <span class="idlParam">optional <span class="idlParamType">unsigned long</span> <span class="idlParamName">numberOfOutputChannels</span> = <span class="idlDefaultValue">2 </span></span>);</span></span></em></code></pre>
+<h2 id="Examples" name="Examples">例</h2>
+<p><code>createScriptProcessor()</code>の利用例は以下の通りになります。Web Audio API が提供する機能では望む音声処理を実現できない場合に、このメソッドを利用します。これを利用することで、どの様な音声処理でも記述できます。</p>
+<pre class="brush: js;highlight[5]">SineWave = function(context) {
+ var that = this;
+ this.x = 0; // Initial sample number
+ this.context = context;
+ this.node = context.createScriptProcessor(1024, 1, 1);
+ this.node.onaudioprocess = function(e) { that.process(e) };
+}
+
+SineWave.prototype.process = function(e) {
+ var data = e.outputBuffer.getChannelData(0);
+ for (var i = 0; i &lt; data.length; ++i) {
+ data[i] = Math.sin(this.x++);
+ }
+}
+
+SineWave.prototype.play = function() {
+ this.node.connect(this.context.destination);
+}
+
+SineWave.prototype.pause = function() {
+ this.node.disconnect();
+}</pre>
+<h2 id="Parameters" name="Parameters">引数</h2>
+<dl>
+ <dt>
+ <code>bufferSize</code></dt>
+ <dd>
+ サンプルフレームを単位としたバッファのサイズです。指定する場合は、次のいずれかの値でなくてはなりません: 256, 512, 1024, 2048, 4096, 8192, 16384 。指定されない場合、もしくは 0 が指定された場合、環境における最適な値が設定されます。この値はノードが生存する限り同じ値が利用され、その値は 2 の冪上です。</dd>
+ <dd>
+ この値は <code>audioprocess</code> イベントの発生頻度と、イベントごとに渡されるサンプルフレームの大きさを決めます。小さい値を指定すると低遅延となり、大きな値を指定すると音声の破損やグリッチを避けられます。この値は自分で決めず、実装に決めさせることが遅延と品質の面から推奨されます。</dd>
+ <dt>
+ <code>numberOfInputChannels</code></dt>
+ <dd>
+ 入力のチャンネル数を整数で指定します。デフォルト値は 2 で、最大 32 チャンネルまでサポートします。</dd>
+ <dt>
+ <code>numberOfOutputChannels</code></dt>
+ <dd>
+ 出力するチャンネル数を整数で指定します。デフォルト値は 2 で、最大 32 チャンネルまでサポートします。</dd>
+</dl>
+<div class="warning">
+ <p><strong>Important</strong>: Webkit currently (version 31) requires that a valid <code>bufferSize</code> be passed when calling this method.</p>
+</div>
+<div class="note">
+ <p><strong>注意</strong>: <code>numberOfInputChannels</code> と <code>numberOfOutputChannels</code> の両方に 0 を指定することはできません。</p>
+</div>
+<h2 id="Description" name="Description">返り値</h2>
+<p>A {{domxref("ScriptProcessorNode")}}.</p>
+<h2 id="ブラウザ互換性">ブラウザ互換性</h2>
+<p>{{page("/en-US/docs/Web/API/AudioContext","Browser_compatibility")}}</p>
+<h2 id="仕様">仕様</h2>
+<p>{{page("/en-US/docs/Web/API/AudioContext","Specifications")}}</p>
+<h2 id="関連情報">関連情報</h2>
+<p>{{page("/en-US/docs/Web/API/AudioContext","See_also")}}</p>
diff --git a/files/ja/web/api/audiocontext/createstereopanner/index.html b/files/ja/web/api/audiocontext/createstereopanner/index.html
new file mode 100644
index 0000000000..c77689aa90
--- /dev/null
+++ b/files/ja/web/api/audiocontext/createstereopanner/index.html
@@ -0,0 +1,128 @@
+---
+title: AudioContext.createStereoPanner()
+slug: Web/API/AudioContext/createStereoPanner
+translation_of: Web/API/BaseAudioContext/createStereoPanner
+---
+<p>{{ APIRef("Web Audio API") }}</p>
+
+<div>
+<p>{{ domxref("AudioContext") }}インターフェースの<code>createStereoPanner()</code>メソッドは、音源にステレオパンニングを適用する{{ domxref("StereoPannerNode") }}を生成します。入力されたオーディオストリームは、低コストな<a class="external external-icon" href="http://webaudio.github.io/web-audio-api/#equal-power">equal-power</a>パンニングアルゴリズムで位置が決められます。</p>
+</div>
+
+<h2 id="構文">構文</h2>
+
+<pre class="brush: js">var audioCtx = new AudioContext();
+var panNode = audioCtx.createStereoPanner();</pre>
+
+<h3 id="Description" name="Description">戻り値</h3>
+
+<p>{{domxref("StereoPannerNode")}}</p>
+
+<h2 id="Example" name="Example">例</h2>
+
+<p>この<a href="http://mdn.github.io/stereo-panner-node/">StereoPannerNodeサンプル</a>(<a href="https://github.com/mdn/stereo-panner-node">ソースコード</a>)のHTMLには、{{htmlelement("audio")}}要素と、パン値を増減させるスライダー{{domxref("input")}}しかありません。JavaScpriptでは、{{domxref("MediaElementAudioSourceNode")}}と{{domxref("StereoPannerNode")}}を生成し、この2つを<code>connect()</code>メソッドで接続しています。そして、スライダーを動かすと、<code>oninput</code>イベントハンドラで{{domxref("StereoPannerNode.pan")}}パラメータの値を変更し、ディスプレイのパン値を更新しています。</p>
+
+<p>スライダーを左から右に動かすと、音楽のスピーカーからの出力が左から右にパンされます。</p>
+
+<pre class="brush: js">var audioCtx = new (window.AudioContext || window.webkitAudioContext)();
+var myAudio = document.querySelector('audio');
+
+var panControl = document.querySelector('.panning-control');
+var panValue = document.querySelector('.panning-value');
+
+pre.innerHTML = myScript.innerHTML;
+
+// MediaElementAudioSourceNodeを生成し、そこにHTMLMediaElementを入れる
+var source = audioCtx.createMediaElementSource(myAudio);
+
+// ステレオパンナーを生成する
+var panNode = audioCtx.createStereoPanner();
+
+// イベントハンドラ関数で、スライダーが動いたとき左右のパンの値を左右する
+
+panControl.oninput = function() {
+ panNode.pan.value = panControl.value;
+ panValue.innerHTML = panControl.value;
+}
+
+// AudioBufferSourceNodeをpanNodeに接続し、panNodeを行き先(destination)に接続する
+// これでこのコントロールで音楽をパンを調整することができる
+source.connect(panNode);
+panNode.connect(audioCtx.destination);</pre>
+
+<h2 id="仕様">仕様</h2>
+
+<table class="standard-table">
+ <tbody>
+ <tr>
+ <th scope="col">Specification</th>
+ <th scope="col">Status</th>
+ <th scope="col">Comment</th>
+ </tr>
+ <tr>
+ <td>{{SpecName('Web Audio API', '#widl-AudioContext-createStereoPanner-StereoPannerNode', 'createStereoPanner()')}}</td>
+ <td>{{Spec2('Web Audio API')}}</td>
+ <td> </td>
+ </tr>
+ </tbody>
+</table>
+
+<h2 id="ブラウザ互換性">ブラウザ互換性</h2>
+
+<div>{{CompatibilityTable}}</div>
+
+<div id="compat-desktop">
+<table class="compat-table">
+ <tbody>
+ <tr>
+ <th>Feature</th>
+ <th>Chrome</th>
+ <th>Firefox (Gecko)</th>
+ <th>Internet Explorer</th>
+ <th>Opera</th>
+ <th>Safari (WebKit)</th>
+ </tr>
+ <tr>
+ <td>Basic support</td>
+ <td>{{CompatChrome(42.0)}}</td>
+ <td>{{CompatGeckoDesktop(37.0)}} </td>
+ <td>{{CompatNo}}</td>
+ <td>{{CompatNo}}</td>
+ <td>{{CompatNo}}</td>
+ </tr>
+ </tbody>
+</table>
+</div>
+
+<div id="compat-mobile">
+<table class="compat-table">
+ <tbody>
+ <tr>
+ <th>Feature</th>
+ <th>Android</th>
+ <th>Firefox Mobile (Gecko)</th>
+ <th>Firefox OS</th>
+ <th>IE Mobile</th>
+ <th>Opera Mobile</th>
+ <th>Safari Mobile</th>
+ <th>Chrome for Android</th>
+ </tr>
+ <tr>
+ <td>Basic support</td>
+ <td>{{CompatNo}}</td>
+ <td>37.0</td>
+ <td>2.2</td>
+ <td>{{CompatNo}}</td>
+ <td>{{CompatNo}}</td>
+ <td>{{CompatNo}}</td>
+ <td>{{CompatVersionUnknown}}</td>
+ </tr>
+ </tbody>
+</table>
+</div>
+
+<h2 id="参考">参考</h2>
+
+<ul>
+ <li><a href="/en-US/docs/Web_Audio_API/Using_Web_Audio_API">Using the Web Audio API</a></li>
+</ul>
diff --git a/files/ja/web/api/audiocontext/currenttime/index.html b/files/ja/web/api/audiocontext/currenttime/index.html
new file mode 100644
index 0000000000..0d2a92b3ea
--- /dev/null
+++ b/files/ja/web/api/audiocontext/currenttime/index.html
@@ -0,0 +1,112 @@
+---
+title: AudioContext.currentTime
+slug: Web/API/AudioContext/currentTime
+translation_of: Web/API/BaseAudioContext/currentTime
+---
+<p>{{ APIRef("Web Audio API") }}</p>
+
+<div>
+<p>{{ domxref("AudioContext") }}インターフェースの<code>currentTime</code>読み取り専用プロパティは、再生、タイムラインの可視化などのスケジューリングで使用できる単純増加するハードウェア時間をdoubleの秒数で返します。0から始まります。</p>
+</div>
+
+<h2 id="構文">構文</h2>
+
+<pre class="brush: js">var audioCtx = new AudioContext();
+console.log(audioCtx.currentTime);</pre>
+
+<h3 id="値">値</h3>
+
+<p>double</p>
+
+<h2 id="例">例</h2>
+
+<div class="note">
+<p><strong>注:</strong> 完全な実装の例は、<a href="https://github.com/mdn/">MDN Github repo</a>の<a href="https://github.com/mdn/panner-node">panner-node</a>などを参照してください。<code>audioCtx.currentTime</code>をあなたのブラウザで使ってみてください。</p>
+</div>
+
+<pre class="brush: js;highlight[8]">var AudioContext = window.AudioContext || window.webkitAudioContext;
+var audioCtx = new AudioContext();
+// 古いwebkit/blinkブラウザではプレフィックスが必要です
+
+...
+
+console.log(audioCtx.currentTime);
+</pre>
+
+<h2 id="仕様">仕様</h2>
+
+<table class="standard-table">
+ <tbody>
+ <tr>
+ <th scope="col">Specification</th>
+ <th scope="col">Status</th>
+ <th scope="col">Comment</th>
+ </tr>
+ <tr>
+ <td>{{SpecName('Web Audio API', '#widl-AudioContext-currentTime', 'currentTime')}}</td>
+ <td>{{Spec2('Web Audio API')}}</td>
+ <td> </td>
+ </tr>
+ </tbody>
+</table>
+
+<h2 id="ブラウザ互換性">ブラウザ互換性</h2>
+
+<div>{{CompatibilityTable}}</div>
+
+<div id="compat-desktop">
+<table class="compat-table">
+ <tbody>
+ <tr>
+ <th>Feature</th>
+ <th>Chrome</th>
+ <th>Firefox (Gecko)</th>
+ <th>Internet Explorer</th>
+ <th>Opera</th>
+ <th>Safari (WebKit)</th>
+ </tr>
+ <tr>
+ <td>Basic support</td>
+ <td>{{CompatChrome(10.0)}}{{property_prefix("webkit")}}</td>
+ <td>{{CompatGeckoDesktop(25.0)}} </td>
+ <td>{{CompatNo}}</td>
+ <td>15.0{{property_prefix("webkit")}}<br>
+ 22 (unprefixed)</td>
+ <td>6.0{{property_prefix("webkit")}}</td>
+ </tr>
+ </tbody>
+</table>
+</div>
+
+<div id="compat-mobile">
+<table class="compat-table">
+ <tbody>
+ <tr>
+ <th>Feature</th>
+ <th>Android</th>
+ <th>Firefox Mobile (Gecko)</th>
+ <th>Firefox OS</th>
+ <th>IE Mobile</th>
+ <th>Opera Mobile</th>
+ <th>Safari Mobile</th>
+ <th>Chrome for Android</th>
+ </tr>
+ <tr>
+ <td>Basic support</td>
+ <td>{{CompatUnknown}}</td>
+ <td>26.0</td>
+ <td>1.2</td>
+ <td>{{CompatUnknown}}</td>
+ <td>{{CompatUnknown}}</td>
+ <td>{{CompatUnknown}}</td>
+ <td>33.0</td>
+ </tr>
+ </tbody>
+</table>
+</div>
+
+<h2 id="参考">参考</h2>
+
+<ul>
+ <li><a href="/en-US/docs/Web_Audio_API/Using_Web_Audio_API">Using the Web Audio API</a></li>
+</ul>
diff --git a/files/ja/web/api/audiocontext/decodeaudiodata/index.html b/files/ja/web/api/audiocontext/decodeaudiodata/index.html
new file mode 100644
index 0000000000..db9c106e52
--- /dev/null
+++ b/files/ja/web/api/audiocontext/decodeaudiodata/index.html
@@ -0,0 +1,155 @@
+---
+title: AudioContext.decodeAudioData()
+slug: Web/API/AudioContext/decodeAudioData
+tags:
+ - API
+ - Audio
+ - AudioContext
+ - BaseAudioContext
+ - Method
+ - Reference
+ - Web Audio API
+ - decodeAudioData
+translation_of: Web/API/BaseAudioContext/decodeAudioData
+---
+<p>{{ APIRef("Web Audio API") }}</p>
+
+<p><code>decodeAudioData()</code> は {{ domxref("BaseAudioContext") }} のメソッドで、 {{domxref("ArrayBuffer")}} に書き込まれた音声ファイルデータを非同期にデコードするために使用されます。この場合、 <code>ArrayBuffer</code> は {{domxref("XMLHttpRequest")}} と {{domxref("FileReader")}} から読み込まれます。デコードされた {{domxref("AudioBuffer")}} は {{domxref("AudioContext")}} のサンプリングレートにリサンプリングされ、コールバックやプロミスに渡されます。</p>
+
+<p>この方法は、オーディオトラックから Web Audio API 用のオーディオソースを作成する際に推奨される方法です。この方法は、音声ファイルの断片的なデータではなく、完全なファイルデータに対してのみ動作します。</p>
+
+<h2 id="Syntax" name="Syntax">構文</h2>
+
+<p>古いコールバック構文:</p>
+
+<pre class="syntaxbox notranslate">baseAudioContext.decodeAudioData(<var>ArrayBuffer</var>, <var>successCallback</var>, <var>errorCallback</var>);</pre>
+
+<p>新しいプロミスベースの構文:</p>
+
+<pre class="syntaxbox notranslate">Promise&lt;decodedData&gt; baseAudioContext.decodeAudioData(<var>ArrayBuffer</var>);</pre>
+
+<h3 id="Parameters" name="Parameters">引数</h3>
+
+<dl>
+ <dt><var>ArrayBuffer</var></dt>
+ <dd>デコードする音声データが入った ArrayBuffer です。通常は{{domxref("XMLHttpRequest")}}, {{domxref("WindowOrWorkerGlobalScope.fetch()")}}, {{domxref("FileReader")}} から取得します。</dd>
+ <dt><var>successCallback</var></dt>
+ <dd>デコードが完了すると呼び出されるコールバック関数です。このコールバックの引数は1つで、 <var>decodedData</var> (デコードされた PCM 音声データ) を表す {{domxref("AudioBuffer")}} です。通常は、デコードされたデータを {{domxref("AudioBufferSourceNode")}} に入れて、そこから再生したり、好きなように操作したりすることができます。</dd>
+ <dt><var>errorCallback</var></dt>
+ <dd>任意のエラーコールバックで、音声データのデコードでエラーが発生すると呼び出されます。</dd>
+</dl>
+
+<h3 id="Return_value" name="Return_value">返値</h3>
+
+<p>なし、または <var>decodedData</var> で満足する {{domxref("Promise") }} オブジェクトで.</p>
+
+<h2 id="Example" name="Example">例</h2>
+
+<p>ここでは最初に古いコールバックベースのシステムを、次に新しいプロミスベースの構文を取り上げます。</p>
+
+<h3 id="Older_callback_syntax" name="Older_callback_syntax">古いコールバックベースの構文</h3>
+
+<p>この例では、 <code>getData()</code> 関数は XHR を使用して音声トラックを読み込み、リクエストの <code>responseType</code> を <code>arraybuffer</code> に設定して、レスポンスとして配列バッファーを返すようにして、それを <code>audioData</code> 変数に格納しています。それからこのバッファーを <code>decodeAudioData()</code> 関数に渡します。成功したコールバックは、デコードに成功した PCM データを受け取り、 {{ domxref("AudioContext.createBufferSource()") }} で作成した {{ domxref("AudioBufferSourceNode") }} に入れ、ソースを {{domxref("AudioContext.destination") }} に接続してループするように設定します。</p>
+
+<p>ボタンは単に <code>getData()</code> を実行して、それぞれトラックの読み込みと再生、停止を行うだけです。ソースの <code>stop()</code> メソッドが呼ばれると、ソースは消滅します。</p>
+
+<div class="note">
+<p><strong>注:</strong> <a href="https://mdn.github.io/webaudio-examples/decode-audio-data/">ライブ例の実行</a> (または<a href="https://github.com/mdn/webaudio-examples/tree/master/decode-audio-data">ソースの閲覧</a>) もできます。</p>
+</div>
+
+<pre class="brush: js notranslate">// 変数の定義
+
+var audioCtx = new (window.AudioContext || window.webkitAudioContext)();
+var source;
+
+var pre = document.querySelector('pre');
+var myScript = document.querySelector('script');
+var play = document.querySelector('.play');
+var stop = document.querySelector('.stop');
+
+// 音声トラックの読み込みには XHR を使い、
+// decodeAudioData でデコードし、バッファーに格納する
+// そして、そのバッファーを source に設定する
+
+function getData() {
+ source = audioCtx.createBufferSource();
+ var request = new XMLHttpRequest();
+
+ request.open('GET', 'viper.ogg', true);
+
+ request.responseType = 'arraybuffer';
+
+
+ request.onload = function() {
+ var audioData = request.response;
+
+ audioCtx.decodeAudioData(audioData, function(buffer) {
+ source.buffer = buffer;
+
+ source.connect(audioCtx.destination);
+ source.loop = true;
+ },
+
+ function(e){ console.log("Error with decoding audio data" + e.err); });
+
+ }
+
+ request.send();
+}
+
+// 音声の停止と再生を行うボタン
+
+play.onclick = function() {
+ getData();
+ source.start(0);
+ play.setAttribute('disabled', 'disabled');
+}
+
+stop.onclick = function() {
+ source.stop(0);
+ play.removeAttribute('disabled');
+}
+
+
+// pre要素にスクリプトを設定する
+
+pre.innerHTML = myScript.innerHTML;</pre>
+
+<h3 id="New_promise-based_syntax" name="New_promise-based_syntax">新しいプロミスベースの構文</h3>
+
+<pre class="brush: js notranslate">ctx.decodeAudioData(audioData).then(function(decodedData) {
+ // デコードしたデータをここで使う
+});</pre>
+
+<h2 id="Specifications" name="Specifications">仕様書</h2>
+
+<table class="standard-table">
+ <thead>
+ <tr>
+ <th scope="col">仕様</th>
+ <th scope="col">状態</th>
+ <th scope="col">備考</th>
+ </tr>
+ </thead>
+ <tbody>
+ <tr>
+ <td>{{SpecName('Web Audio API', '#dom-baseaudiocontext-decodeaudiodata', 'decodeAudioData()')}}</td>
+ <td>{{Spec2('Web Audio API')}}</td>
+ <td></td>
+ </tr>
+ </tbody>
+</table>
+
+<h2 id="Browser_compatibility" name="Browser_compatibility">ブラウザーの互換性</h2>
+
+<div>
+<div class="hidden">このページの互換性一覧表は構造化データから生成されています。データに協力していただけるのであれば、 <a class="external" href="https://github.com/mdn/browser-compat-data">https://github.com/mdn/browser-compat-data</a> をチェックアウトしてプルリクエストを送信してください。</div>
+
+<p>{{Compat("api.BaseAudioContext.decodeAudioData")}}</p>
+</div>
+
+<h2 id="See_also" name="See_also">関連情報</h2>
+
+<ul>
+ <li><a href="/ja/docs/Web/API/Web_Audio_API/Using_Web_Audio_API">Web Audio API の使用</a></li>
+</ul>
diff --git a/files/ja/web/api/audiocontext/destination/index.html b/files/ja/web/api/audiocontext/destination/index.html
new file mode 100644
index 0000000000..f93e8682f1
--- /dev/null
+++ b/files/ja/web/api/audiocontext/destination/index.html
@@ -0,0 +1,114 @@
+---
+title: AudioContext.destination
+slug: Web/API/AudioContext/destination
+translation_of: Web/API/BaseAudioContext/destination
+---
+<p>{{ APIRef("Web Audio API") }}</p>
+
+<div>
+<p>インターフェースの<code>destination</code>プロパティは、コンテキストの全ての音声の最終的な行き先を表す{{ domxref("AudioDestinationNode") }} を戻します。これは、あなたのコンピュータのスピーカーのような、オーディオレンダリングデバイスと考えることができます。</p>
+</div>
+
+<h2 id="構文">構文</h2>
+
+<pre class="brush: js">var audioCtx = new AudioContext();
+gainNode.connect(audioCtx.destination);</pre>
+
+<h3 id="値">値</h3>
+
+<p>{{ domxref("AudioDestinationNode") }}</p>
+
+<h2 id="例">例</h2>
+
+<div class="note">
+<p><strong>注:</strong> 完全な実装の例は、<a href="https://github.com/mdn/">MDN Github repo</a>の<a href="https://github.com/mdn/panner-node">panner-node</a>などを参照してください。</p>
+</div>
+
+<pre class="brush: js;highlight[8]">var AudioContext = window.AudioContext || window.webkitAudioContext;
+var audioCtx = new AudioContext();
+// 古いwebkit/blinkブラウザではプレフィックスが必要です
+
+var oscillatorNode = audioCtx.createOscillator();
+var gainNode = audioCtx.createGain();
+
+oscillatorNode.connect(gainNode);
+gainNode.connect(audioCtx.destination);
+</pre>
+
+<h2 id="仕様">仕様</h2>
+
+<table class="standard-table">
+ <tbody>
+ <tr>
+ <th scope="col">Specification</th>
+ <th scope="col">Status</th>
+ <th scope="col">Comment</th>
+ </tr>
+ <tr>
+ <td>{{SpecName('Web Audio API', '#widl-AudioContext-destination', 'destination')}}</td>
+ <td>{{Spec2('Web Audio API')}}</td>
+ <td> </td>
+ </tr>
+ </tbody>
+</table>
+
+<h2 id="ブラウザ互換性">ブラウザ互換性</h2>
+
+<div>{{CompatibilityTable}}</div>
+
+<div id="compat-desktop">
+<table class="compat-table">
+ <tbody>
+ <tr>
+ <th>Feature</th>
+ <th>Chrome</th>
+ <th>Firefox (Gecko)</th>
+ <th>Internet Explorer</th>
+ <th>Opera</th>
+ <th>Safari (WebKit)</th>
+ </tr>
+ <tr>
+ <td>Basic support</td>
+ <td>{{CompatChrome(10.0)}}{{property_prefix("webkit")}}</td>
+ <td>{{CompatGeckoDesktop(25.0)}} </td>
+ <td>{{CompatNo}}</td>
+ <td>15.0{{property_prefix("webkit")}}<br>
+ 22 (unprefixed)</td>
+ <td>6.0{{property_prefix("webkit")}}</td>
+ </tr>
+ </tbody>
+</table>
+</div>
+
+<div id="compat-mobile">
+<table class="compat-table">
+ <tbody>
+ <tr>
+ <th>Feature</th>
+ <th>Android</th>
+ <th>Firefox Mobile (Gecko)</th>
+ <th>Firefox OS</th>
+ <th>IE Mobile</th>
+ <th>Opera Mobile</th>
+ <th>Safari Mobile</th>
+ <th>Chrome for Android</th>
+ </tr>
+ <tr>
+ <td>Basic support</td>
+ <td>{{CompatUnknown}}</td>
+ <td>26.0</td>
+ <td>1.2</td>
+ <td>{{CompatUnknown}}</td>
+ <td>{{CompatUnknown}}</td>
+ <td>{{CompatUnknown}}</td>
+ <td>33.0</td>
+ </tr>
+ </tbody>
+</table>
+</div>
+
+<h2 id="参考">参考</h2>
+
+<ul>
+ <li><a href="/en-US/docs/Web_Audio_API/Using_Web_Audio_API">Using the Web Audio API</a></li>
+</ul>
diff --git a/files/ja/web/api/audiocontext/index.html b/files/ja/web/api/audiocontext/index.html
new file mode 100644
index 0000000000..7af0ee7313
--- /dev/null
+++ b/files/ja/web/api/audiocontext/index.html
@@ -0,0 +1,107 @@
+---
+title: AudioContext
+slug: Web/API/AudioContext
+tags:
+ - API
+translation_of: Web/API/AudioContext
+---
+<p>{{APIRef("Web Audio API")}}</p>
+
+<p><code>AudioContext</code> インターフェイスは{{domxref("AudioNode")}}によって表現され、一緒にリンクした音声モジュールから作った音声処理グラフを表します。音声コンテキストはコンテキストを含むノードの作成と音声処理もしくはデコードの実行の両方を制御します。コンテキスト内部で全てのことが起こるので、何かをする前に <code>AudioContext</code> を作る必要があります。</p>
+
+<p>{{InheritanceDiagram}}</p>
+
+<h2 id="Constructor" name="Constructor">Constructor</h2>
+
+<dl>
+ <dt>{{domxref("AudioContext.AudioContext", "AudioContext()")}}</dt>
+ <dd><code>AudioContext</code> オブジェクトを新しく作成し、返します。</dd>
+</dl>
+
+<h2 id="プロパティ">プロパティ</h2>
+
+<p><em>親インターフェイス{{domxref("BaseAudioContext")}}からプロパティを継承します。</em></p>
+
+<dl>
+ <dt>{{domxref("AudioContext.baseLatency")}} {{readonlyinline}} {{experimental_inline}}</dt>
+ <dd>{{domxref("AudioDestinationNode")}}から音声サブシステムまでの音声を渡す{{domxref("AudioContext")}}によって起きる処理レイテンシーの秒数を返します。</dd>
+ <dt>{{domxref("AudioContext.outputLatency")}} {{readonlyinline}} {{experimental_inline}}</dt>
+ <dd>現在の音声コンテキストの出力レイテンシーの見積もりを返します。</dd>
+</dl>
+
+<h2 id="メソッド">メソッド</h2>
+
+<p>親インターフェイス{{domxref("<em>BaseAudioContext</em>")}} からメソッドを継承します。</p>
+
+<dl>
+ <dt>{{domxref("AudioContext.close()")}}</dt>
+ <dd>任意のシステム音声リソースをリリースするために、音声コンテキストを閉じます。</dd>
+ <dt>{{domxref("AudioContext.createMediaElementSource()")}}</dt>
+ <dd>{{domxref("HTMLMediaElement")}}と関連付けられた{{domxref("MediaElementAudioSourceNode")}}を生成します。これは{{HTMLElement("video")}}要素もしくは{{HTMLElement("audio")}}要素からの再生や操作をするために使うことができます。</dd>
+ <dt>{{domxref("AudioContext.createMediaStreamSource()")}}</dt>
+ <dd>ローカルのコンピューターのマイクもしくは他のソースから来る音声ストリームを表現している{{domxref("MediaStream")}}と関連付けられた{{domxref("MediaStreamAudioSourceNode")}}を生成します。</dd>
+ <dt>{{domxref("AudioContext.createMediaStreamDestination()")}}</dt>
+ <dd>ローカルファイルに保存されたものかその他のコンピューターに送信された音声ストリームを表している{{domxref("MediaStream")}}と関連付けられた{{domxref("MediaStreamAudioDestinationNode")}}を生成します</dd>
+ <dt>{{domxref("AudioContext.createMediaStreamTrackSource()")}}</dt>
+ <dd>メディアストリームトラックを表している{{domxref("MediaStream")}}と関連づけられた{{domxref("MediaStreamTrackAudioSourceNode")}}を生成します。</dd>
+ <dt>{{domxref("AudioContext.getOutputTimestamp()")}}</dt>
+ <dd>二つの関連づけられたコンテキストの音声ストリームの位置の値を含んでいる <code>AudioTimestamp</code> オブジェクトを新しく返します。</dd>
+ <dt>{{domxref("AudioContext.suspend()")}}</dt>
+ <dd>一時的に音声ハードウェアアクセスを停止し、プロセスの CPU/バッテリー使用を減らすために、音声コンテキストの時間の進行を中断します。</dd>
+ <dt>
+ <h3 id="非推奨メソッド">非推奨メソッド</h3>
+ </dt>
+ <dt>{{domxref("AudioContext.resume()")}}</dt>
+ <dd>あらかじめ中断させられた音声コンテキストの時間の進行を返します。</dd>
+ <dt>
+ <p>注意: <code>resume()</code> メソッドはまだ利用することができます。このメソッドは{{domxref("BaseAudioContext")}}インターフェイス({{domxref("BaseAudioContext.resume()")}}を見てください)上で現在定義されています。したがって、{{domxref("AudioContext")}}インターフェイスと{{domxref("OfflineAudioContext")}}インターフェイスの両方でアクセスすることができます。</p>
+ </dt>
+</dl>
+
+<h2 id="例">例</h2>
+
+<p>基本的な音声コンテキストの作成方法:</p>
+
+<pre class="brush: js notranslate">var audioCtx = new AudioContext();</pre>
+
+<p>クロスブラウザー対応版:</p>
+
+<pre class="brush: js notranslate">var AudioContext = window.AudioContext || window.webkitAudioContext;
+var audioCtx = new AudioContext();
+
+var oscillatorNode = audioCtx.createOscillator();
+var gainNode = audioCtx.createGain();
+var finish = audioCtx.destination;
+// etc.</pre>
+
+<h2 id="仕様">仕様</h2>
+
+<table class="standard-table">
+ <tbody>
+ <tr>
+ <th scope="col">仕様書</th>
+ <th scope="col">策定状況</th>
+ <th scope="col">コメント</th>
+ </tr>
+ <tr>
+ <td>{{SpecName('Web Audio API', '#AudioContext', 'AudioContext')}}</td>
+ <td>{{Spec2('Web Audio API')}}</td>
+ <td></td>
+ </tr>
+ </tbody>
+</table>
+
+<h2 id="ブラウザーの互換性">ブラウザーの互換性</h2>
+
+<div>
+
+
+<p>{{Compat("api.AudioContext")}}</p>
+</div>
+
+<h2 id="参考">参考</h2>
+
+<ul style="margin-left: 40px;">
+ <li><a href="/ja/docs/Web_Audio_API/Using_Web_Audio_API">Using the Web Audio API</a></li>
+ <li>{{domxref("OfflineAudioContext")}}</li>
+</ul>
diff --git a/files/ja/web/api/audiocontext/listener/index.html b/files/ja/web/api/audiocontext/listener/index.html
new file mode 100644
index 0000000000..7b4f394727
--- /dev/null
+++ b/files/ja/web/api/audiocontext/listener/index.html
@@ -0,0 +1,112 @@
+---
+title: AudioContext.listener
+slug: Web/API/AudioContext/listener
+translation_of: Web/API/BaseAudioContext/listener
+---
+<p>{{ APIRef("Web Audio API") }}</p>
+
+<div>
+<p>{{ domxref("AudioContext") }}インターフェースの<code>listener</code>プロパティは、3次元音声を実装するために使う{{ domxref("AudioListener") }}オブジェクトを返します。</p>
+</div>
+
+<h2 id="構文">構文</h2>
+
+<pre class="brush: js">var audioCtx = new AudioContext();
+var myListener = audioCtx.listener;</pre>
+
+<h3 id="値">値</h3>
+
+<p>{{ domxref("AudioListener") }}</p>
+
+<h2 id="例">例</h2>
+
+<div class="note">
+<p><strong>注:</strong> 完全な実装の例は、<a class="external external-icon" href="https://github.com/mdn/panner-node">panner-node</a>を参照してください。</p>
+</div>
+
+<pre class="brush: js;highlight[8]">var AudioContext = window.AudioContext || window.webkitAudioContext;
+var audioCtx = new AudioContext();
+// 古いwebkit/blinkブラウザではプレフィックスが必要です
+
+...
+
+var myListener = audioCtx.listener;
+</pre>
+
+<h2 id="仕様">仕様</h2>
+
+<table class="standard-table">
+ <tbody>
+ <tr>
+ <th scope="col">Specification</th>
+ <th scope="col">Status</th>
+ <th scope="col">Comment</th>
+ </tr>
+ <tr>
+ <td>{{SpecName('Web Audio API', '#widl-AudioContext-listener', 'listener')}}</td>
+ <td>{{Spec2('Web Audio API')}}</td>
+ <td> </td>
+ </tr>
+ </tbody>
+</table>
+
+<h2 id="ブラウザ互換性">ブラウザ互換性</h2>
+
+<div>{{CompatibilityTable}}</div>
+
+<div id="compat-desktop">
+<table class="compat-table">
+ <tbody>
+ <tr>
+ <th>Feature</th>
+ <th>Chrome</th>
+ <th>Firefox (Gecko)</th>
+ <th>Internet Explorer</th>
+ <th>Opera</th>
+ <th>Safari (WebKit)</th>
+ </tr>
+ <tr>
+ <td>Basic support</td>
+ <td>{{CompatChrome(10.0)}}{{property_prefix("webkit")}}</td>
+ <td>{{CompatGeckoDesktop(25.0)}} </td>
+ <td>{{CompatNo}}</td>
+ <td>15.0{{property_prefix("webkit")}}<br>
+ 22 (unprefixed)</td>
+ <td>6.0{{property_prefix("webkit")}}</td>
+ </tr>
+ </tbody>
+</table>
+</div>
+
+<div id="compat-mobile">
+<table class="compat-table">
+ <tbody>
+ <tr>
+ <th>Feature</th>
+ <th>Android</th>
+ <th>Firefox Mobile (Gecko)</th>
+ <th>Firefox OS</th>
+ <th>IE Mobile</th>
+ <th>Opera Mobile</th>
+ <th>Safari Mobile</th>
+ <th>Chrome for Android</th>
+ </tr>
+ <tr>
+ <td>Basic support</td>
+ <td>{{CompatUnknown}}</td>
+ <td>26.0</td>
+ <td>1.2</td>
+ <td>{{CompatUnknown}}</td>
+ <td>{{CompatUnknown}}</td>
+ <td>{{CompatUnknown}}</td>
+ <td>33.0</td>
+ </tr>
+ </tbody>
+</table>
+</div>
+
+<h2 id="参考">参考</h2>
+
+<ul>
+ <li><a href="/en-US/docs/Web_Audio_API/Using_Web_Audio_API">Using the Web Audio API</a></li>
+</ul>
diff --git a/files/ja/web/api/audiocontext/mozaudiochanneltype/index.html b/files/ja/web/api/audiocontext/mozaudiochanneltype/index.html
new file mode 100644
index 0000000000..62f6879ebe
--- /dev/null
+++ b/files/ja/web/api/audiocontext/mozaudiochanneltype/index.html
@@ -0,0 +1,95 @@
+---
+title: AudioContext.mozAudioChannelType
+slug: Web/API/AudioContext/mozAudioChannelType
+translation_of: Web/API/AudioContext/mozAudioChannelType
+---
+<p>{{APIRef("Web Audio API")}} {{Non-standard_header}}</p>
+
+<p>{{domxref("AudioContext")}}インターフェースの<code>mozAudioChannelType</code>読み取り専用プロパティは、Firefox OS デバイスで、オーディオコンテキスト要素で再生される音声を再生するオーディオチャンネルを設定するために使えます。</p>
+
+<p>これは<a href="/en-US/docs/Web/API/AudioChannels_API">AudioChannels API</a>に定義された非標準のプロパティです。詳細は<a href="https://developer.mozilla.org/en-US/docs/Web/API/AudioChannels_API/Using_the_AudioChannels_API">Using the AudioChannels API</a>を参照してください。</p>
+
+<h2 id="構文">構文</h2>
+
+<pre class="brush: js">var audioCtx = new AudioContext();
+var myAudioChannelType = audioCtx.mozAudioChannelType;
+</pre>
+
+<p><code>AudioContext</code>のオーディオチャンネルタイプを設定できるのは、次のコンストラクタを使う場合のみです。</p>
+
+<pre class="brush: js">var audioCtx = new AudioContext('ringer');</pre>
+
+<h3 id="値">値</h3>
+
+<p>{{domxref("DOMString")}}</p>
+
+<h2 id="例">例</h2>
+
+<p>TBD</p>
+
+<h2 id="仕様">仕様</h2>
+
+<p>現在はAudioChannels APIには公式の仕様はありません。実装、WebIDLなどの詳細は<a href="https://wiki.mozilla.org/WebAPI/AudioChannels">https://wiki.mozilla.org/WebAPI/AudioChannels</a>を参照してください。</p>
+
+<h2 id="ブラウザ互換性">ブラウザ互換性</h2>
+
+<div>{{CompatibilityTable}}</div>
+
+<div id="compat-desktop">
+<table class="compat-table">
+ <tbody>
+ <tr>
+ <th>Feature</th>
+ <th>Chrome</th>
+ <th>Firefox (Gecko)</th>
+ <th>Internet Explorer</th>
+ <th>Opera</th>
+ <th>Safari (WebKit)</th>
+ </tr>
+ <tr>
+ <td>General support</td>
+ <td>{{CompatNo}}</td>
+ <td>{{CompatNo}}</td>
+ <td>{{CompatNo}}</td>
+ <td>{{CompatNo}}</td>
+ <td>{{CompatNo}}</td>
+ </tr>
+ </tbody>
+</table>
+</div>
+
+<div id="compat-mobile">
+<table class="compat-table">
+ <tbody>
+ <tr>
+ <th>Feature</th>
+ <th>Android</th>
+ <th>Chrome</th>
+ <th>Firefox Mobile (Gecko)</th>
+ <th>Firefox OS</th>
+ <th>IE Phone</th>
+ <th>Opera Mobile</th>
+ <th>Safari Mobile</th>
+ </tr>
+ <tr>
+ <td>General support</td>
+ <td>{{CompatNo}}</td>
+ <td>{{CompatNo}}</td>
+ <td>{{CompatNo}}</td>
+ <td>1.2</td>
+ <td>{{CompatNo}}</td>
+ <td>{{CompatNo}}</td>
+ <td>{{CompatNo}}</td>
+ </tr>
+ </tbody>
+</table>
+</div>
+
+<h2 id="参考">参考</h2>
+
+<ul>
+ <li><a href="/en-US/Apps/Build/App_permissions">App permissions for Firefox OS</a></li>
+ <li><a href="/en-US/docs/Web/API/AudioChannels_API/Using_the_AudioChannels_API">Using the AudioChannels API</a></li>
+ <li>{{domxref("Navigator.mozAudioChannelManager","navigator.mozAudioChannelManager")}}</li>
+ <li>{{domxref("AudioContext")}}</li>
+</ul>
diff --git a/files/ja/web/api/audiocontext/onstatechange/index.html b/files/ja/web/api/audiocontext/onstatechange/index.html
new file mode 100644
index 0000000000..5ce3ecaf26
--- /dev/null
+++ b/files/ja/web/api/audiocontext/onstatechange/index.html
@@ -0,0 +1,101 @@
+---
+title: AudioContext.onstatechange
+slug: Web/API/AudioContext/onstatechange
+translation_of: Web/API/BaseAudioContext/onstatechange
+---
+<p>{{ APIRef("Web Audio API") }}</p>
+
+<div>
+<p>{{ domxref("AudioContext") }}インターフェースの<code>onstatechangeプロパティは、</code>{{Event("statechange")}}イベントが発火した(これはオーディオコンテキストの状態が変わったとき発生します)とき呼ばれるイベントハンドラ関数を定義します。</p>
+</div>
+
+<h2 id="構文">構文</h2>
+
+<pre class="brush: js">var audioCtx = new AudioContext();
+audioCtx.onstatechange = function() { ... };</pre>
+
+<h2 id="例">例</h2>
+
+<p>次のスニペットは<a href="https://github.com/mdn/audiocontext-states/settings">AudioContext states デモ</a>の一部です(<a href="http://mdn.github.io/audiocontext-states/">すぐに実行</a>)。{{domxref("AudioContext.onstatechange")}}ハンドラは、状態が変わるたびにコンソールにログを出力するために使われています。</p>
+
+<pre class="brush: js">audioCtx.onstatechange = function() {
+  console.log(audioCtx.state);
+}
+</pre>
+
+<h2 id="仕様">仕様</h2>
+
+<table class="standard-table">
+ <tbody>
+ <tr>
+ <th scope="col">Specification</th>
+ <th scope="col">Status</th>
+ <th scope="col">Comment</th>
+ </tr>
+ <tr>
+ <td>{{SpecName('Web Audio API', '#widl-AudioContext-onstatechange', 'onstatechange')}}</td>
+ <td>{{Spec2('Web Audio API')}}</td>
+ <td> </td>
+ </tr>
+ </tbody>
+</table>
+
+<h2 id="互換性">互換性</h2>
+
+<div>{{CompatibilityTable}}</div>
+
+<div id="compat-desktop">
+<table class="compat-table">
+ <tbody>
+ <tr>
+ <th>Feature</th>
+ <th>Chrome</th>
+ <th>Firefox (Gecko)</th>
+ <th>Internet Explorer</th>
+ <th>Opera</th>
+ <th>Safari (WebKit)</th>
+ </tr>
+ <tr>
+ <td>Basic support</td>
+ <td>{{CompatChrome(43.0)}}</td>
+ <td>{{CompatGeckoDesktop(40.0)}} </td>
+ <td>{{CompatNo}}</td>
+ <td>{{CompatUnknown}}</td>
+ <td>{{CompatUnknown}}</td>
+ </tr>
+ </tbody>
+</table>
+</div>
+
+<div id="compat-mobile">
+<table class="compat-table">
+ <tbody>
+ <tr>
+ <th>Feature</th>
+ <th>Android</th>
+ <th>Firefox Mobile (Gecko)</th>
+ <th>Firefox OS</th>
+ <th>IE Mobile</th>
+ <th>Opera Mobile</th>
+ <th>Safari Mobile</th>
+ <th>Chrome for Android</th>
+ </tr>
+ <tr>
+ <td>Basic support</td>
+ <td>{{CompatUnknown}}</td>
+ <td>{{CompatUnknown}}</td>
+ <td>{{CompatUnknown}}</td>
+ <td>{{CompatUnknown}}</td>
+ <td>{{CompatUnknown}}</td>
+ <td>{{CompatUnknown}}</td>
+ <td>{{CompatUnknown}}</td>
+ </tr>
+ </tbody>
+</table>
+</div>
+
+<h2 id="参考">参考</h2>
+
+<ul>
+ <li><a href="/en-US/docs/Web_Audio_API/Using_Web_Audio_API">Using the Web Audio API</a></li>
+</ul>
diff --git a/files/ja/web/api/audiocontext/resume/index.html b/files/ja/web/api/audiocontext/resume/index.html
new file mode 100644
index 0000000000..d6e8ac7e27
--- /dev/null
+++ b/files/ja/web/api/audiocontext/resume/index.html
@@ -0,0 +1,74 @@
+---
+title: AudioContext.resume()
+slug: Web/API/AudioContext/resume
+translation_of: Web/API/AudioContext/resume
+---
+<p>{{ APIRef("Web Audio API") }}</p>
+
+<p>{{ domxref("AudioContext") }}インターフェースの<code>resume()</code>メソッドは、一時停止されたオーディオコンテキストの時間の流れを再開します。</p>
+
+<p>{{domxref("OfflineAudioContext")}}でこのメソッドを呼ぶと<code>INVALID_STATE_ERR</code>例外が発生します。</p>
+
+<h2 id="構文">構文</h2>
+
+<pre class="brush: js">Promise&lt;&gt; baseAudioContext.resume();
+</pre>
+
+<h3 id="引数">引数</h3>
+
+<p>なし</p>
+
+<h3 id="戻り値">戻り値</h3>
+
+<p>voidで完了する{{jsxref("Promise")}}。コンテキストが既に閉じている場合、プロミスは失敗します。</p>
+
+<h2 id="例">例</h2>
+
+<p>次のスニペットは<a class="external external-icon" href="https://github.com/mdn/audiocontext-states/settings">AudioContext states デモ</a>(<a class="external external-icon" href="http://mdn.github.io/audiocontext-states/">すぐ実行</a>)から取ったものです。suspend/resumeボタンをクリックすると、{{domxref("AudioContext.state")}}を問い合わせます—もし<code>running</code>ならば、{{domxref("suspend()")}}が呼ばれます。<code>suspended</code>ならば、<code>resume()</code>が呼ばれます。両方ともプロミスに成功するとボタンのラベルが適したものに更新されます。</p>
+
+<pre class="brush: js">susresBtn.onclick = function() {
+  if(audioCtx.state === 'running') {
+    audioCtx.suspend().then(function() {
+      susresBtn.textContent = 'Resume context';
+    });
+  } else if(audioCtx.state === 'suspended') {
+    audioCtx.resume().then(function() {
+      susresBtn.textContent = 'Suspend context';
+    });
+  }
+}
+</pre>
+
+<h2 id="仕様">仕様</h2>
+
+<table class="standard-table">
+ <tbody>
+ <tr>
+ <th scope="col">Specification</th>
+ <th scope="col">Status</th>
+ <th scope="col">Comment</th>
+ </tr>
+ <tr>
+ <td>{{SpecName('Web Audio API', '#dom-baseaudiocontext-resume', 'resume()')}}</td>
+ <td>{{Spec2('Web Audio API')}}</td>
+ <td> </td>
+ </tr>
+ </tbody>
+</table>
+
+<h2 id="ブラウザ互換性">ブラウザ互換性</h2>
+
+<div>
+<div>
+
+
+<p>{{Compat("api.BaseAudioContext.resume")}}</p>
+</div>
+</div>
+
+<h2 id="参考">参考</h2>
+
+<ul>
+ <li><a href="/en-US/docs/Web_Audio_API/Using_Web_Audio_API">Using the Web Audio API</a></li>
+ <li><a href="/en-US/docs/Web/API/Web_Audio_API">Web Audio API</a></li>
+</ul>
diff --git a/files/ja/web/api/audiocontext/samplerate/index.html b/files/ja/web/api/audiocontext/samplerate/index.html
new file mode 100644
index 0000000000..8715d8ae39
--- /dev/null
+++ b/files/ja/web/api/audiocontext/samplerate/index.html
@@ -0,0 +1,112 @@
+---
+title: AudioContext.sampleRate
+slug: Web/API/AudioContext/sampleRate
+translation_of: Web/API/BaseAudioContext/sampleRate
+---
+<p>{{ APIRef("Web Audio API") }}</p>
+
+<div>
+<p>{{ domxref("AudioContext") }}インターフェースの<code>sampleRate</code>プロパティは、このオーディオコンテキストの全てのノードで使われるサンプルレート(1秒あたりのサンプル数)を浮動小数点で返します。</p>
+</div>
+
+<h2 id="構文">構文</h2>
+
+<pre class="brush: js">var audioCtx = new AudioContext();
+var mySampleRate = audioCtx.sampleRate;</pre>
+
+<h3 id="値">値</h3>
+
+<p>浮動小数点</p>
+
+<h2 id="例">例</h2>
+
+<div class="note">
+<p><strong>注:</strong> 完全な実装の例は、<a class="external external-icon" href="https://github.com/mdn/">MDN Github repo</a>の<a class="external external-icon" href="https://github.com/mdn/panner-node">panner-node</a>などを参照してください。<code>audioCtx.sampleRate</code>をあなたのブラウザで使ってみてください。</p>
+</div>
+
+<pre class="brush: js;highlight[8]">var AudioContext = window.AudioContext || window.webkitAudioContext;
+var audioCtx = new AudioContext();
+// 古いwebkit/blinkブラウザではプレフィックスが必要です
+
+...
+
+console.log(audioCtx.sampleRate);
+</pre>
+
+<h2 id="仕様">仕様</h2>
+
+<table class="standard-table">
+ <tbody>
+ <tr>
+ <th scope="col">Specification</th>
+ <th scope="col">Status</th>
+ <th scope="col">Comment</th>
+ </tr>
+ <tr>
+ <td>{{SpecName('Web Audio API', '#widl-AudioContext-sampleRate', 'sampleRate')}}</td>
+ <td>{{Spec2('Web Audio API')}}</td>
+ <td> </td>
+ </tr>
+ </tbody>
+</table>
+
+<h2 id="ブラウザ互換性">ブラウザ互換性</h2>
+
+<div>{{CompatibilityTable}}</div>
+
+<div id="compat-desktop">
+<table class="compat-table">
+ <tbody>
+ <tr>
+ <th>Feature</th>
+ <th>Chrome</th>
+ <th>Firefox (Gecko)</th>
+ <th>Internet Explorer</th>
+ <th>Opera</th>
+ <th>Safari (WebKit)</th>
+ </tr>
+ <tr>
+ <td>Basic support</td>
+ <td>{{CompatChrome(10.0)}}{{property_prefix("webkit")}}</td>
+ <td>{{CompatGeckoDesktop(25.0)}} </td>
+ <td>{{CompatNo}}</td>
+ <td>15.0{{property_prefix("webkit")}}<br>
+ 22 (unprefixed)</td>
+ <td>6.0{{property_prefix("webkit")}}</td>
+ </tr>
+ </tbody>
+</table>
+</div>
+
+<div id="compat-mobile">
+<table class="compat-table">
+ <tbody>
+ <tr>
+ <th>Feature</th>
+ <th>Android</th>
+ <th>Firefox Mobile (Gecko)</th>
+ <th>Firefox OS</th>
+ <th>IE Mobile</th>
+ <th>Opera Mobile</th>
+ <th>Safari Mobile</th>
+ <th>Chrome for Android</th>
+ </tr>
+ <tr>
+ <td>Basic support</td>
+ <td>{{CompatUnknown}}</td>
+ <td>26.0</td>
+ <td>1.2</td>
+ <td>{{CompatUnknown}}</td>
+ <td>{{CompatUnknown}}</td>
+ <td>{{CompatUnknown}}</td>
+ <td>33.0</td>
+ </tr>
+ </tbody>
+</table>
+</div>
+
+<h2 id="参考">参考</h2>
+
+<ul>
+ <li><a href="/en-US/docs/Web_Audio_API/Using_Web_Audio_API">Using the Web Audio API</a></li>
+</ul>
diff --git a/files/ja/web/api/audiocontext/state/index.html b/files/ja/web/api/audiocontext/state/index.html
new file mode 100644
index 0000000000..a19d03f9af
--- /dev/null
+++ b/files/ja/web/api/audiocontext/state/index.html
@@ -0,0 +1,66 @@
+---
+title: AudioContext.state
+slug: Web/API/AudioContext/state
+translation_of: Web/API/BaseAudioContext/state
+---
+<p>{{ APIRef("Web Audio API") }}</p>
+
+<div>
+<p>{{ domxref("AudioContext") }}インターフェースの<code>state</code>読取専用プロパティは、現在の<code>AudioContext</code>の状態を返します。</p>
+</div>
+
+<h2 id="構文">構文</h2>
+
+<pre class="syntaxbox">baseAudioContext.state;</pre>
+
+<h3 id="値">値</h3>
+
+<p>{{domxref("DOMString")}}。取りうる値は:</p>
+
+<ul>
+ <li><code>suspended</code>: オーディオコンテキストは({{domxref("AudioContext.suspend()")}}によって)一時停止中</li>
+ <li><code>running</code>: オーディオコンテキストは通常動作中</li>
+ <li><code>closed</code>: オーディオコンテキストは({{domxref("AudioContext.close()")}}によって)閉じられた</li>
+</ul>
+
+<h2 id="例">例</h2>
+
+<p>次のスニペットは<a href="https://github.com/mdn/audiocontext-states/settings">AudioContext states デモ</a>の一部です(<a href="http://mdn.github.io/audiocontext-states/">すぐに実行</a>)。{{domxref("AudioContext.onstatechange")}}ハンドラは、状態が変わるたびにコンソールにログを出力するために使われています。</p>
+
+<pre class="brush: js">audioCtx.onstatechange = function() {
+  console.log(audioCtx.state);
+}
+</pre>
+
+<h2 id="仕様">仕様</h2>
+
+<table class="standard-table">
+ <tbody>
+ <tr>
+ <th scope="col">Specification</th>
+ <th scope="col">Status</th>
+ <th scope="col">Comment</th>
+ </tr>
+ <tr>
+ <td>{{SpecName('Web Audio API', '#dom-baseaudiocontext-state', 'state')}}</td>
+ <td>{{Spec2('Web Audio API')}}</td>
+ <td> </td>
+ </tr>
+ </tbody>
+</table>
+
+<h2 id="ブラウザ互換性">ブラウザ互換性</h2>
+
+<div>
+<div>
+
+
+<p>{{Compat("api.BaseAudioContext.state")}}</p>
+</div>
+</div>
+
+<h2 id="参考">参考</h2>
+
+<ul>
+ <li><a href="/en-US/docs/Web_Audio_API/Using_Web_Audio_API">Using the Web Audio API</a></li>
+</ul>
diff --git a/files/ja/web/api/audiocontext/suspend/index.html b/files/ja/web/api/audiocontext/suspend/index.html
new file mode 100644
index 0000000000..fd69565f65
--- /dev/null
+++ b/files/ja/web/api/audiocontext/suspend/index.html
@@ -0,0 +1,69 @@
+---
+title: AudioContext.suspend()
+slug: Web/API/AudioContext/suspend
+translation_of: Web/API/AudioContext/suspend
+---
+<p>{{ APIRef("Web Audio API") }}</p>
+
+<p><code>suspend()</code>メソッドは、オーディオコンテキストの時間の流れを一時停止します。音声ハードウェアへのアクセスを一時的に停止し、処理に必要だったCPU/バッテリーの使用を減らすことが出来ます。これは、アプリケーションがしばらくの間オーディオを扱わない間に、音声ハードウェアに電源を供給しないようにしたいときに便利です。</p>
+
+<p>{{domxref("OfflineAudioContext")}}でこのメソッドを呼ぶと<code>INVALID_STATE_ERR</code>例外が発生します。</p>
+
+<h2 id="構文">構文</h2>
+
+<pre class="brush: js">var audioCtx = new AudioContext();
+audioCtx.suspend().then(function() { ... });
+</pre>
+
+<h3 id="戻り値">戻り値</h3>
+
+<p>voidで完了する{{jsxref("Promise")}}。コンテキストが既に閉じている場合、プロミスは失敗します。</p>
+
+<h2 id="例">例</h2>
+
+<p>次のスニペットは<a href="https://github.com/mdn/audiocontext-states/settings">AudioContext states デモ</a>(<a href="http://mdn.github.io/audiocontext-states/">すぐ実行</a>)から取ったものです。suspend/resumeボタンをクリックすると、{{domxref("AudioContext.state")}}を問い合わせます—もし<code>running</code>ならば、<code>suspend()</code>が呼ばれます。<code>suspended</code>ならば、{{domxref("resume")}}が呼ばれます。両方ともプロミスに成功するとボタンのラベルが適したものに更新されます。</p>
+
+<pre class="brush: js">susresBtn.onclick = function() {
+  if(audioCtx.state === 'running') {
+    audioCtx.suspend().then(function() {
+      susresBtn.textContent = 'Resume context';
+    });
+  } else if(audioCtx.state === 'suspended') {
+    audioCtx.resume().then(function() {
+      susresBtn.textContent = 'Suspend context';
+    });
+  }
+}
+</pre>
+
+<h2 id="仕様">仕様</h2>
+
+<table class="standard-table">
+ <tbody>
+ <tr>
+ <th scope="col">Specification</th>
+ <th scope="col">Status</th>
+ <th scope="col">Comment</th>
+ </tr>
+ <tr>
+ <td>{{SpecName('Web Audio API', '#widl-AudioContext-suspend-Promise-void', 'close()')}}</td>
+ <td>{{Spec2('Web Audio API')}}</td>
+ <td> </td>
+ </tr>
+ </tbody>
+</table>
+
+<h2 id="ブラウザ互換性">ブラウザ互換性</h2>
+
+<div>
+
+
+<p>{{Compat("api.AudioContext.suspend")}}</p>
+</div>
+
+<h2 id="参考">参考</h2>
+
+<ul>
+ <li><a href="/en-US/docs/Web_Audio_API/Using_Web_Audio_API">Using the Web Audio API</a></li>
+ <li><a href="/en-US/docs/Web/API/Web_Audio_API">Web Audio API</a></li>
+</ul>