我正在尝试开发一个在线音乐点唱机(有点像“喜欢”,我制作了一个小视频:http://www.le-guevel.com/player.ogv)。 我正在使用jQuery jPlayer来浏览浏览器端的音乐,但是我遇到了firefox的一个问题:它没有读取我的mp3文件。
我知道由于专利原因,mozilla拒绝实施它。我也知道jPlayer应该回退到flash解决方案来读取mp3。 问题是我实际上读取了不同格式的文件(主要是mp3和ogg)。从我在jPlayer源代码中看到的内容(2.1.0版本中的~l.640):
// If jPlayer is supporting any format in a solution, then the solution is used.
this.html.used = false;
this.flash.used = false;
$.each(this.solutions, function(solutionPriority, solution) {
$.each(self.formats, function(formatPriority, format) {
if(self[solution].support[format]) {
self[solution].used = true;
return false;
}
});
});
玩家决定使用html5或flash(不是两者)。因此,当我用ogg和mp3初始化jPlayer时,播放器决定使用html5(支持ogg)。我可以改变优先权
解决方案(html和flash)。但是如果我把闪存置于最高优先级,播放器将不会播放我的ogg文件,因为jPlayer的flash二进制文件不支持ogg。
有什么方法可以让它起作用吗?
最简单的解决方案当然是以相同的格式对我的所有文件进行编码,但我不愿意这样做
第二个解决方案是强制firefox读取mp3。我知道firefox可以用外部插件读取mp3:我在我的debian上安装了gecko-mediaplayer,我可以在firefox上读取mp3文件。但是它
兼容html5?
第三种解决方案是编辑jPlayer flash插件以使其支持ogg。但我对Actionscript编程一无所知,我更喜欢使用html5 ...
最后一个解决方案是使用另一个浏览器(如铬),但我习惯了Firefox,并希望保留它。
你可以想象,我更喜欢第二种解决方案,但我不确定它是否可行。有人可以帮帮我吗?
谢谢:)(对我可能不好的英语感到抱歉)。