ホームページ >ウェブフロントエンド >jsチュートリアル >HTML5オーディオを操作するための5つのライブラリとAPI
この投稿では、HTML5オーディオAPIとHTML5オーディオ要素を活用するいくつかのJavaScriptライブラリを調査し、Webゲームやアプリケーションでのサウンド操作へのさまざまなアプローチを提供します。 ライブラリは、さまざまなプロジェクトのニーズに応える多様な機能と複雑さを紹介します。
キーテイクアウト:
<code class="language-javascript">// after including the webaudiox library var context = new AudioContext() // Create lineOut var lineOut = new WebAudiox.LineOut(context) // load a sound and play it immediately WebAudiox.loadBuffer(context, 'sound.wav', function(buffer){ // init AudioBufferSourceNode var source = context.createBufferSource(); source.buffer = buffer source.connect(lineOut.destination) // start the sound now source.start(0); });</code>
howler.jsanalyser2canvas
howler.jsは、WebオーディオAPIの優先順位付けがhtml5オーディオに戻る多用途のJavaScriptオーディオライブラリです。
キャッシュ
マルチトラック再生
メソッドチェーン
<code class="language-javascript">// after including the webaudiox library var context = new AudioContext() // Create lineOut var lineOut = new WebAudiox.LineOut(context) // load a sound and play it immediately WebAudiox.loadBuffer(context, 'sound.wav', function(buffer){ // init AudioBufferSourceNode var source = context.createBufferSource(); source.buffer = buffer source.connect(lineOut.destination) // start the sound now source.start(0); });</code>
Pedalboard.jsは、WebオーディオAPIを使用して、特にギターのオーディオエフェクトの作成に焦点を当てています。 そのオブジェクト指向の構造は、エフェクトチェーンの作成を簡素化します。 pedals.ioはその機能を例示しています
<code class="language-javascript">var sound = new Howl({ urls: ['sounds.mp3', 'sounds.ogg'], sprite: { blast: [0, 1000], laser: [2000, 3000], winner: [4000, 7500] } }); // shoot the laser! sound.play('laser');</code>専門化されていますが、クリエイティブアプリケーションはそのコア機能を超えて可能です。
<code class="language-javascript">// initialize the stage and get the context var stage = new pb.Stage(); var ctx = stage.getContext(); // initialize the board and pedals var board = new pb.Board(ctx); var od = new pb.stomp.Overdrive(ctx); var reverb = new pb.stomp.Reverb(ctx); var vol = new pb.stomp.Volume(ctx); // add pedals to board board.addPedals([od, reverb]); board.addPedalsAt(1, vol); // tweak pedal settings od.setDrive(0.7); od.setLevel(0.7); reverb.setLevel(0.3); vol.setLevel(0.2); // set the board on stage and start playing! stage.setBoard(board);</code>
機能には、パンニング、3Dパンニング、フィルター、リバーブ、マイク入力が含まれます。 ただし、現在、Firefoxのサポートがありません
fifer
その重要な利点は、フラッシュフォールバックによる後方互換性です。
Web Audio APIリソースとブラウザのサポート:
<code class="language-javascript">var piano = new Wad({ source : 'square', env : { attack : .01, decay : .005, sustain : .2, hold : .015, release : .3 }, filter : { type : 'lowpass', frequency : 1200, q : 8.5, env : { attack : .2, frequency : 600 } } }) piano.play({ pitch : 'C5' }) piano.play({ pitch : 'Eb5', filter : { q : 15 } }) piano.play({ pitch : 'F5', env : { release : .2 } })</code>上記のライブラリはWebオーディオAPIを要約しますが、直接API学習のリソースには、Boris Smusの「Web Audio API」ブック(O'Reilly)、HTML5 RocksのWebオーディオ紹介、MDNのドキュメントが含まれます。 WebオーディオAPIのブラウザサポートは普遍的ではなく、一部のモバイルブラウザーとSafari(ベンダーのプレフィックスが必要)が不足しており、IEには完全に存在しません。
よくある質問(FAQ):(このセクションは、書き換え/言い換えタスクとは無関係の情報が含まれており、かなりの長さを追加するため省略されています。
以上がHTML5オーディオを操作するための5つのライブラリとAPIの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。