diff options
Diffstat (limited to 'files/ja/web/api/audiocontext')
23 files changed, 0 insertions, 2915 deletions
diff --git a/files/ja/web/api/audiocontext/createanalyser/index.html b/files/ja/web/api/audiocontext/createanalyser/index.html deleted file mode 100644 index c186d1029c..0000000000 --- a/files/ja/web/api/audiocontext/createanalyser/index.html +++ /dev/null @@ -1,154 +0,0 @@ ---- -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 < 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 deleted file mode 100644 index 136557bea5..0000000000 --- a/files/ja/web/api/audiocontext/createbiquadfilter/index.html +++ /dev/null @@ -1,126 +0,0 @@ ---- -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 deleted file mode 100644 index e94a5a18be..0000000000 --- a/files/ja/web/api/audiocontext/createbuffer/index.html +++ /dev/null @@ -1,174 +0,0 @@ ---- -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 < channels; channel++) { - // 実際のデータの配列を得る - var nowBuffering = myArrayBuffer.getChannelData(channel); - for (var i = 0; i < 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 deleted file mode 100644 index 24f65061c6..0000000000 --- a/files/ja/web/api/audiocontext/createbuffersource/index.html +++ /dev/null @@ -1,143 +0,0 @@ ---- -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 < channels; channel++) { - // 実際のデータの配列を得る - var nowBuffering = myArrayBuffer.getChannelData(channel); - for (var i = 0; i < 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 deleted file mode 100644 index e79b116642..0000000000 --- a/files/ja/web/api/audiocontext/createchannelmerger/index.html +++ /dev/null @@ -1,133 +0,0 @@ ---- -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 deleted file mode 100644 index 07444c49d0..0000000000 --- a/files/ja/web/api/audiocontext/createchannelsplitter/index.html +++ /dev/null @@ -1,133 +0,0 @@ ---- -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 deleted file mode 100644 index ae5acf59c8..0000000000 --- a/files/ja/web/api/audiocontext/createconvolver/index.html +++ /dev/null @@ -1,131 +0,0 @@ ---- -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 deleted file mode 100644 index 709a8a375b..0000000000 --- a/files/ja/web/api/audiocontext/createdelay/index.html +++ /dev/null @@ -1,143 +0,0 @@ ---- -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 deleted file mode 100644 index 2fa5ca43ed..0000000000 --- a/files/ja/web/api/audiocontext/createdynamicscompressor/index.html +++ /dev/null @@ -1,138 +0,0 @@ ---- -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 deleted file mode 100644 index c536a0621c..0000000000 --- a/files/ja/web/api/audiocontext/creategain/index.html +++ /dev/null @@ -1,128 +0,0 @@ ---- -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"><div> - <a class="mute">Mute button</a> -</div></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/createoscillator/index.html b/files/ja/web/api/audiocontext/createoscillator/index.html deleted file mode 100644 index e971400f5d..0000000000 --- a/files/ja/web/api/audiocontext/createoscillator/index.html +++ /dev/null @@ -1,111 +0,0 @@ ---- -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 deleted file mode 100644 index 1b30c60a03..0000000000 --- a/files/ja/web/api/audiocontext/createpanner/index.html +++ /dev/null @@ -1,198 +0,0 @@ ---- -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 deleted file mode 100644 index 825a1a8de5..0000000000 --- a/files/ja/web/api/audiocontext/createperiodicwave/index.html +++ /dev/null @@ -1,139 +0,0 @@ ---- -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 deleted file mode 100644 index d3c80ae2cb..0000000000 --- a/files/ja/web/api/audiocontext/createscriptprocessor/index.html +++ /dev/null @@ -1,69 +0,0 @@ ---- -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 < 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 deleted file mode 100644 index c77689aa90..0000000000 --- a/files/ja/web/api/audiocontext/createstereopanner/index.html +++ /dev/null @@ -1,128 +0,0 @@ ---- -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 deleted file mode 100644 index 0d2a92b3ea..0000000000 --- a/files/ja/web/api/audiocontext/currenttime/index.html +++ /dev/null @@ -1,112 +0,0 @@ ---- -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 deleted file mode 100644 index db9c106e52..0000000000 --- a/files/ja/web/api/audiocontext/decodeaudiodata/index.html +++ /dev/null @@ -1,155 +0,0 @@ ---- -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<decodedData> 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 deleted file mode 100644 index f93e8682f1..0000000000 --- a/files/ja/web/api/audiocontext/destination/index.html +++ /dev/null @@ -1,114 +0,0 @@ ---- -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/listener/index.html b/files/ja/web/api/audiocontext/listener/index.html deleted file mode 100644 index 7b4f394727..0000000000 --- a/files/ja/web/api/audiocontext/listener/index.html +++ /dev/null @@ -1,112 +0,0 @@ ---- -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 deleted file mode 100644 index 62f6879ebe..0000000000 --- a/files/ja/web/api/audiocontext/mozaudiochanneltype/index.html +++ /dev/null @@ -1,95 +0,0 @@ ---- -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 deleted file mode 100644 index 5ce3ecaf26..0000000000 --- a/files/ja/web/api/audiocontext/onstatechange/index.html +++ /dev/null @@ -1,101 +0,0 @@ ---- -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/samplerate/index.html b/files/ja/web/api/audiocontext/samplerate/index.html deleted file mode 100644 index 8715d8ae39..0000000000 --- a/files/ja/web/api/audiocontext/samplerate/index.html +++ /dev/null @@ -1,112 +0,0 @@ ---- -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 deleted file mode 100644 index a19d03f9af..0000000000 --- a/files/ja/web/api/audiocontext/state/index.html +++ /dev/null @@ -1,66 +0,0 @@ ---- -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> |