【问题标题】:playframework 2.0 streaming audioplayframework 2.0 流式音频
【发布时间】:2012-06-18 07:05:00
【问题描述】:

所以我使用的是 playframework 2.0,并且我在服务器上使用以下代码成功地流式传输音频:

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;
        });

【问题讨论】:

    标签: javascript jquery html playframework playframework-2.0


    【解决方案1】:

    查看html5 <audio> tag

    这样的事情应该可以解决问题:

    <audio src="@routes.MyController.recording()" controls autoplay loop>  
       <p>Your browser does not support the audio element </p>  
    </audio>
    

    如果你想用 javascript 开始声音,你可以跳过所有的 ajax 东西,只用 javascript/jQuery 添加一个元素。然后声音应该会自动开始。

    注意,IE 不支持波形文件(图!!)。 IE 9 仅支持 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 上找到了这个浏览器兼容性表:developer.mozilla.org/En/…
    猜你喜欢
    • 2011-02-22
    • 1970-01-01
    • 2012-09-16
    • 1970-01-01
    • 1970-01-01
    • 2012-11-06
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多