ASライブラリからオーディオデータを取得しようとしています.ドキュメントから、関数は次のようになります:
protected function audioData():String
{
var ret:String="";
buffer.position = 0;
while (buffer.bytesAvailable > 0)
{
ret += buffer.readFloat().toString() + ";";
}
return ret;
}
私のコードとこのライブラリの間には、このコードを持つ別の js があります。
audioData: function(){
return this.flashInterface().audioData().split(";");
},
私のコードから、次のようにアクセスします。
function getdata(){
var data = Recorder.audioData();
console.log("audioData: " + data);
}
しかし、返された値を Firebug に出力しようとしました。浮動小数点値の非常に長いコンマ区切りのリストを取得しました。byte[] バッファを取得するにはどうすればよいですか? JSNI経由で Java からバッファにアクセスするため、バッファの意味は Java に似ています。
ログ出力の例を次に示します (実際のログは非常に長いです)。
-0.00030517578125,0.00006103515625,0.00115966796875,0.00146484375,-0.00091552734375,-0.000946044921875,-0.001983642578125,-0.003997802734375,-0.005126953125,-0.00360107421875,-0.0032958984375,-0.004119873046875,-0.00433349609375,-0.0023193359375,-0.0008544921875,-0.003448486328125,-0.00347900390625,-0.0054931640625 、-0.0067138671875、-0.005279541015625、-0.006072998046875、
出力を作成する AS を再コンパイルすることはできません。今のところ、javascript で SWF コンポーネントに接続し、その浮動小数点を受け入れてバイト配列に戻すことができます。FDT 5 IDE の AS プロジェクトには、アプリケーションのモックアップを作成する必要があるエラーが多すぎます。
ASライブラリを必要に応じて再コンパイルしたいのですが、今はそのまま使用したいだけです。