Javascript playframework 2.0流式音频
因此,我使用playframework 2.0,并在服务器上使用以下代码成功地传输音频:Javascript playframework 2.0流式音频,javascript,jquery,html,playframework,playframework-2.0,Javascript,Jquery,Html,Playframework,Playframework 2.0,因此,我使用playframework 2.0,并在服务器上使用以下代码成功地传输音频: public static Result recording() { File wavFile = new File("C:\\test.wav"); return ok(wavFile); } 这个很好用 我的问题是它会换到一个新的页面。我希望它能打开一个小对话框,或者创建一个新的div。 所以我想我必须创建一个ajax请求,我可以创建一个新的div,但我不确定如何处理成功的数据对象。任
public static Result recording() {
File wavFile = new File("C:\\test.wav");
return ok(wavFile);
}
这个很好用
我的问题是它会换到一个新的页面。我希望它能打开一个小对话框,或者创建一个新的div。
所以我想我必须创建一个ajax请求,我可以创建一个新的div,但我不确定如何处理成功的数据对象。任何例子都会很有帮助我没有找到:
$('#sound').click( function(evt) {
$.ajax({
type: 'POST',
url: jQuery("#sound").attr("href"),
data: jQuery("#sound").serialize(),
dataType: "json",
success: function(data) {
//What do i need to do here
alert('Call history download');
},
error: function(data) {
setError('Call history download failed');
}
});
return false;
});
看看这本书
像这样的事情应该可以做到:
<audio src="@routes.MyController.recording()" controls autoplay loop>
<p>Your browser does not support the audio element </p>
</audio>
您的浏览器不支持音频元素
如果您想用javascript启动声音,可以跳过所有ajax内容,只需使用javascript/jQuery添加一个元素。然后声音会自动启动
注意,IE不支持wave文件(图!!)。IE9只支持MP3。但是Firefox和Opera不支持MP3。要支持多种文件格式,可以执行以下操作:
<audio controls autoplay loop>
<source src="@routes.MyController.recordingWave()" type="audio/wave" />
<source src="@routes.MyController.recordingMp3()" type="audio/mp3" />
<p>Your browser does not support the audio element </p>
</audio>
您的浏览器不支持音频元素
好的,所以我使用了你给我的音频标签,它在chrome中运行得很好,但在firefox中不会出现。它应该在firefox中运行!您可能必须提供几种音频格式,因为浏览器不同意支持哪种格式。我在MDN上找到了以下浏览器兼容性表: