というJavaScript関数は、Flashのマイクが音声データを収集する速度に応じて、ほぼ100 msごとに呼び出されます。JavaScript:Adobe Flashから同じ機能で複数の呼び出しをスケジュールする方法
function jsReceiveRawAudioDataFromFlash(rawData) {
document.write("Beginning of this JS function");
// Computation expensive work
// I CANNOT put this work in Flash, must be in JavaScript
// Send it to the network (server)
document.write("Beginning of this JS function");
}
Flashマイクがオーディオデータの断片を収集するたびに、このJavaScript関数を呼び出します。
このJS関数はrawData
を受け取り、非常に高価な計算をしてからネットワーク(サーバー)に送ります。
前回の呼び出しが完了せず、別の呼び出しが開始され、前回の呼び出しの実行されなかった部分が削除されていました。 EDIT - (私はそれを修正した後、それは落とされない、この関数内でメモリの問題を持っていた)
だから私は、コールのスケジュールを設定する必要があります。どうすればいい?
ありがとうございました。ピーター
「落とした」とは? JSは単に関数の実行を落とすだけではありません。関数からグローバル変数を変更していますか? – bfavaretto
@bfavarettoはい、生のオーディオデータを受け取り、それをエンコードするグローバルAudioStreamを変更します。 –
@bfavaretto、私はその機能の中にメモリの問題がありました。私はそれを固定した後、落ちることはありません。 –