JPlayer可以从字节数组播放文件吗?

时间:2014-06-16 03:53:35

标签: jplayer

我正在使用JPlayer根据用户输入播放不同的音频文件。每次用户输入输入时,我都会调用REST Web服务来检索要播放的音频文件。 REST服务的响应是byte []。

我想要实现的是将这个字节数组保存在内存中,而不是将其写入文件,并将该字节[]用于jplayer。我不知道如何让JPlayer播放一个byte []。

var file = [[${audiofile}]]

$(document).ready(function(){                    
    $("#jquery_jplayer_1").jPlayer(
    { 
        ready: function () {                            
            $(this).jPlayer("setMedia",{                                                                
            wav: file
        });
    },

变量文件的计算结果为byte []。尝试播放音频时,我在控制台中看到以下错误。

未捕获的TypeError:对象 -1,-5,-112,-60,0,3,19,124,-73 .......

如果有人有任何建议,我将不胜感激。

由于

1 个答案:

答案 0 :(得分:2)

不幸的是,此功能目前尚未实现。来自1945行的JPlayer 2.9.2的源代码:

    setMedia: function(media) {

        /*  media[format] = String: URL of format. Must contain all of the supplied option's video or audio formats.
         *  media.poster = String: Video poster URL.
         *  media.track = Array: Of objects defining the track element: kind, src, srclang, label, def.
         *  media.stream = Boolean: * NOT IMPLEMENTED * Designating actual media streams. ie., "false/undefined" for files. Plan to refresh the flash every so often.
         */

请注意最后一行。希望我有更好的消息。

参考:https://github.com/happyworm/jPlayer/blob/master/src/javascript/jplayer/jquery.jplayer.js

一些研究员接近解决方案,但不是JPlayer。参考:How to play audio byte array (not file!) with JavaScript in a browser