使用PHP将生成的.wav文件保存到服务器

时间:2012-11-13 22:52:06

标签: php javascript wav

  

可能重复:
  How to stream a WAV file?

我正在开发一个用户可以撰写自己的音乐的网站,该网站将为其创建生成.wav文件。这是正常工作(因为我可以在页面上播放)。但是,我想将此文件保存到稍后要收听/下载的服务器,并且HTML音频标签无法再打开和播放保存的文件版本。

除了原始数据之外,除了文件之外,我还必须放入什么文件?我是否真的需要打开它并生成一个URI,而不是将音频标签的src属性设置为文件的位置?

目前,我正在播放的wav文件如下所示:

wav = [headerChunk, fmtChunk, dataChunk].join(''); 
var URI = "data:audio/wav;base64," + escape(btoa(wav));
document.getElementById("player").setAttribute("src", URI);

为了保存这个,我只是将'wav'直接写入文件;然后我尝试通过将音频标签的src设置为服务器上该文件的位置来播放它。

1 个答案:

答案 0 :(得分:0)

我讨厌成为坏消息的承载者,在一个理想的世界中,你需要用JQuery发布文件,但我认为你没有像你想象的那样拥有文件,(你可以这么做,但它是不太可能,周围的安全墙太多了)你更有可能a)拥有一个带有文件的Java对象,或者b)(很多更可能)一个flash对象音乐在里面。

在这种情况下,这个“技巧盒”需要被告知发布它:即如果你在浏览器客户端中将音乐文件作为物理文件,那么你可能已经下载了它,如果你编辑/创建的话它在浏览器中以某种方式你可能在内存中有一个flash对象 - 在这种情况下获取flash发布它是你唯一的方式