マイクから録音された音声を bytearray に保存し、AS3Websocket ライブラリ ( https://github.com/Wollize/AS3WebSocket ) 経由でサーバーに送信します。
private function processMicInput(event:SampleDataEvent):void {
if (isRecording) {
while (event.data.bytesAvailable) {
recordingBuffer.writeShort(event.data.readFloat()*0x7fff);
}
websocket.sendBytes(recordingBuffer);
recordingBuffer.clear();
}
}
ただし、データをリトルエンディアンにしたい。recordingBuffer
bytearray をリトル エンディアンに設定するかビッグ エンディアンに設定するかは問題ではないようです。常にビッグ エンディアンとして送信されます。内部的には、AS3Websocket ライブラリはビッグエンディアンに設定されたソケットを使用しているようです。これが問題ですか?もしそうなら、どうすればこれを回避できますか?