使用jPlayer流式传输实时音频

pio*_*ion 21 jplayer

我正在学习如何使用jPlayer.我想使用jPlayer 流式传输http://u10.sky.fm:80/sky_the80s音频.

http://www.jplayer.org/1.2.0/demo-08-oggSupportFalse/演示适用于Chrome 9.我尝试使用以下代码片段简化它:

$(document).ready(function() {
  $("#jpId").jPlayer( {
    ready: function () {
      $(this).jPlayer("setFile", "http://mp3-vr-128.as34763.net:80/;stream/1", "http://ogg2.as34763.net/vr160.ogg")
      .jPlayer("play");
    },
    swfPath: "client/js",   
    volume: 60,
    oggSupport: true
  });
});
Run Code Online (Sandbox Code Playgroud)

不幸的是,上述方法无效.我确信我失去了一些东西,因为我是jPlayer的新手.

任何帮助表示赞赏.在此先感谢您的帮助.

再次,理想情况下我想流http://u10.sky.fm:80/sky_the80s.

昨晚在https://groups.google.com/forum/?fromgroups#!topic/jplayer/yW7WoYtrxI8上发布.

更新:以下代码片段工作

$(document).ready(function() {
  $("#jpId").jPlayer( {
    ready: function () {
      $(this).jPlayer("setMedia", {
            m4a: "http://mp3-vr-128.as34763.net:80/;stream/1",
            oga: "http://ogg2.as34763.net/vr160.ogg"
      }).jPlayer("play");
      debug($(this));
    },
    supplied: "m4a, oga",
    swfPath: "client/js"    
  });
});
Run Code Online (Sandbox Code Playgroud)

但我仍然无法制作http://u10.sky.fm:80/sky_the80s的作品.

更新2:下面的代码片段在Firefox雷区工作,但并没有在Chrome 9的工作:

$(document).ready(function() {
  $("#jpId").jPlayer( {
    ready: function () {
      $(this).jPlayer("setMedia", {
              mp3: "http://u10.sky.fm:80/sky_the80s"
//            m4a: "http://mp3-a8-128.as34763.net:80/;stream/1"
//            m4a: "http://mp3-vr-128.as34763.net:80/;stream/1"
      }).jPlayer("play");
      debug($(this));
    },
    supplied: "mp3",
    swfPath: "client/js"    
  });
});
Run Code Online (Sandbox Code Playgroud)

ohr*_*rom 3

您可以检查两件事:

swf的路径是否正确?

jplayer 根据浏览器功能选择播放模式(html5/flash)。尝试使用 swf 的绝对路径,包括文件部分 - 例如:

swfPath:"/static/swf/jplayer.swf"
Run Code Online (Sandbox Code Playgroud)

并确保您可以访问它,在您的情况下可能类似于: http: //www.sky.fm/static/swf/jplayer.swf

你们提供正确的 MIME 类型吗?

正如开发人员指南中所写,您应该确保正确设置 mimetypes。不确定你那里是否有问题。使用以下命令检查提到的流时:

curl http://mp3-a8-128.as34763.net:80/;stream/1 
Run Code Online (Sandbox Code Playgroud)

你得到:

ICY 200 OK
...
content-type:audio/mpeg
...
Run Code Online (Sandbox Code Playgroud)

手册告诉你应该为 m4a 设置音频/mp4。(音频/mpeg用于 mp3)

也许您可以为当前的代码提供运行流的 url?这将使您更容易弄清楚发生了什么。(http://u10.sky.fm:80/sky_the80s不起作用 - 至少对我来说......)