使用ByteArray向PHP后台传输wav音频数据

本文讨论了如何在使用PHP接收通过POST方法上传的音频数据时,确保完整地接收并保存音频文件,避免仅接收文件头部数据的问题。通过提供特定的PHP接收代码示例,确保了二进制原始数据的正确读取与保存。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

我在as里获取了麦克风的输入,并转换成了.wav的音频文件,但是我将音频数据用ByteArray类保存后POST上传到PHP时,传过去的始终是wav文件的头7个字节即“REFF,?” ,ByteArray是二进制保存的,那么我怎么才能把数据完整的post过去?
QQ截图20130116114722.png 
QQ截图20130116114841.png 
网上有的说ByteArray以流的形式上传,要将数据以值对的格式Post

最佳答案

supok 查看完整内容

你的问题这几天我一直在研究 确实是用phpPOST的办法接受的 接受代码: $xdata = $GLOBALS[HTTP_RAW_POST_DATA]; if(empty($xdata)) { $xmlstr = file_get_contents('php://input'); } echo $_GET['hash']; $wav = $xdata;//得到post过来的二进制原始数据 $file = fopen("wav/".$filename,"w");//打开文件准备写入 fwrite($file,$wav);//写入 fclose($file);//关闭 e ...
1 0
 
 
   

Rank: 2Rank: 2

威望
0 点
义气
5 点
沙发
  发表于 2013-1-16 10:34:44
你的问题这几天我一直在研究
确实是用phpPOST的办法接受的
接受代码:
$xdata =  $GLOBALS[HTTP_RAW_POST_DATA];  
    if(empty($xdata)) {  
        $xmlstr = file_get_contents('php://input');  
    }  
    echo $_GET['hash']; 
    $wav = $xdata;//得到post过来的二进制原始数据  
    $file = fopen("wav/".$filename,"w");//打开文件准备写入  
    fwrite($file,$wav);//写入  
    fclose($file);//关闭  
  
    echo "uploaded ok!";
 
   

A_nan  

Rank: 22Rank: 22Rank: 22Rank: 22

威望
275 点
义气
840 点

六角金星勋章 AQ大侠 AQ小生 蓝色海洋水心勋章赤子之心勋章 游戏开发者 白骨精 CDC广州-灿烂笑脸

板凳
  发表于 2013-1-16 11:15:10
等flash023来回答你吧,这个真心不会
 
 
   

Rank: 2Rank: 2

威望
0 点
义气
5 点
马扎
  发表于 2013-1-20 10:42:20
补充:flash 不能支持  WAV
AS3可以自己解码,所以可以支持(已经有开源的类)
 
 
   

Rank: 4

威望
0 点
义气
5 点
地板
  发表于 2013-1-20 12:20:26
留着以后用得着
 
 
   

Rank: 3Rank: 3Rank: 3

威望
0 点
义气
5 点
6
  发表于 2013-1-21 17:46:17
supok 发表于 2013-1-16 10:34 
你的问题这几天我一直在研究
确实是用phpPOST的办法接受的
接受代码:

没有更好的答案了,至少你的思路跟我一样
 
 
   

Rank: 4

威望
0 点
义气
5 点
7
  发表于 2014-9-15 17:42:08
直接传bytearray不是更好吗?为什么要传wav?
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值