我需要帮助将bytearray导出到wav或mp3(或任何运行的东西!)从我的flash代码导出到我的php页面。
我正在使用麦克风录音机录制语音,我使用网址请求将我的ByteArray发送到我的PHP页面。
我从flash发送再见数组:
var url =“http://localhost/wordswesay/uploads/testrec.php”; var header:URLRequestHeader = new URLRequestHeader(“Content-type”,“application / octet-stream”); var request:URLRequest = new URLRequest(url);
request.requestHeaders.push (header);
request.method = URLRequestMethod.POST;
request.data = soundBytes; //FLV byteArray
var loader:URLLoader = new URLLoader();
trace(request.data);
loader.load(request)
在我的php文件中,我执行以下操作:
<?php
echo "test";
$im = $GLOBALS["HTTP_RAW_POST_DATA"];
$fp = fopen("test.wav", 'w');
fwrite($fp, $im);
fclose($fp);
?>
在服务器端(sime文件作为php脚本)我得到test.wav大约200kb但我无法播放它!媒体播放器表示它无法播放此文件,因为可能不支持编解码器。
任何帮助将不胜感激
答案 0 :(得分:1)
音频文件比音频字节更多,需要一个格式特定的标题,并且字节需要以特定于格式类型的方式存储,这通常(例如mp3)不同然后Flash将给你的原始字节(已经解码)
在Google上查看一个音频编码器,无论是在AS3还是PHP中,都会将你的字节转换成mp3文件,我确信有一些东西,但我不知道有哪一个。希望这能解释为什么它不起作用,并将你推向正确的方向。古德勒克!