問題タブ [audiocontext]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
0 に答える
626 参照

javascript - Web オーディオ API でサウンドを生成する最も効率的な方法

Web オーディオ API を使用して、いくつかのエフェクトを備えた fm シンセを構築しています。すべてが正常に機能しますが、オーディオにかなりの不具合があり、フリーズして途切れ始めます。これは、ブラウザーがすべてのオーディオ情報を一度に処理する能力を持っていないためだと思います。

ノートが再生されるたびに多くのオーディオ ノードがオーディオ コンテキストに追加されるので、未使用のノードがオーディオ コンテキストを遅くするかどうか疑問に思っています。

私のコード:

非常に醜いように見えますが、サウンドを再生する別の方法が思い浮かびません。

tuna js を使用してコーラス、リバーブ、フィルターを作成しています。

さらに、JavaScript を低レベルで最適化する方法に関する情報があれば幸いです。

0 投票する
0 に答える
2469 参照

node.js - AudioContext を使用した Socket.io は、受信時にオーディオ エラーを送受信します。

フロントエンドにsocket.io、audioContext、js、サーバーにNode.js、socket.ioを使用して、ユーザーが多くの人にオーディオを即座に送信できるものを構築しようとしています。

オーディオを録音してサーバーに送信し、他のユーザーに送信することはできますが、データを再生することはできません。それらを送信する方法またはそれらを受信するバッファーを処理する方法の問題に違いないと思います。

次のエラーが表示されます:更新してください!

decodeAudioData に渡されたバッファに、不明なコンテンツ タイプが含まれています。

オーディオは正常に渡され、バッファはエラーなしで作成されますが、サウンド フィードバックはありません。

ユーザーが録音を押すと、次の機能で録音/ストリーミングが開始されました。

これがすべての始まりです:

次に、サーバーはソケットを使用して、元の送信者が送信したものをブロードキャストします。

そして、データが再生されます:更新! 私は audioContext.decodeData を使用していましたが、これはストリーミングしていない MP3 または WAV ファイルからのオーディオの読み取り/デコードにのみ使用されることがわかりました。新しいコードではエラーは表示されませんが、オーディオ フィードバックはありません。

PS 誰かが私がやろうとしていることにさらに興味を持っている場合は、遠慮なく連絡してください。

0 投票する
1 に答える
195 参照

javascript - audioContext をいじる

このSO answerに触発されて、私はこのコードを持っていますが、動作しますが、ポップしてスムーズに聞こえません。

Q: これをもう少しスムーズに聞こえるようにする簡単な方法はありますか?

0 投票する
1 に答える
168 参照

html - AudioContext (HTML5) に音量変更イベントはありますか?

オーディオ ノードを使用してアプリを開発していますが、物理ボタンを使用してデバイスの音量が変更された場合など、音量が変更されたかどうかを知る必要があります。そうする方法はありますか?

ありがとう。

0 投票する
1 に答える
168 参照

javascript - mp3 のバッファリング中にパーツが重なる

BinaryJS を使用して nodeJS サーバーから MP3 ファイルをストリーミングしようとしています - http://binaryjs.com/

しかし、クライアント側でバッファをデコードしていると、オーバーラップしているように見えます。つまり、新しいデータのチャンクが前のデータが終了する数ミリ秒前に再生され、オーディオが遅れます。

新しいバッファを開始する前に、現在のバッファが終了するまでクライアントを待機させる方法はありますか?

サーバ:

クライアント:

0 投票する
1 に答える
415 参照

javascript - Livescript: AudioContext を定義できません

XMLHttpRequests と AudioContext を使用してオーディオを読み込もうとしています。コードは次のようになります。

エラーはTypeError: Cannot read property 'decodeAudioData' of undefined.

console.log で audioContext を実行すると、有効な audioContext オブジェクトが取得されるのに、コード実行時に未定義になるのはなぜですか?

0 投票する
2 に答える
765 参照

javascript - Jasmine テストで AudioContext を解放する方法

audioContext を設定する Angular サービスがあります。Jasmine はテストごとに新しいサービスを作成しているため、6 回のテストの後、すべてのテストがエラーで失敗します。

Error: Failed to construct 'AudioContext': The number of hardware contexts provided (6) is greater than or equal to the maximum bound (6).

テスト間で AudioContext をクリアする方法はありますか? afterEach ブロックで試してみAudioPlayer.context.close()ましたが、機能していないようです。

サービスは次のようになります。

テストは次のようになります。

助けてくれてありがとう!

問題を示す jsFiddle は次のとおりです: http://jsfiddle.net/briankeane/cp929can/1/