我在Firefox中遇到JWPlayer解码音频的问题。这是在ASP.Net MVC应用程序中。
在Chrome和IE中,这没有问题。但是,在Firefox中,我收到了Media resource http://localhost:3126/RawData/PlayEchoicAudio/[id here].m4a could not be decoded.
正在使用以下代码初始化JWPlayer:
$(".playSound").live("click", function (e) {
e.preventDefault();
var url = $(this).attr("href");
jwplayer("mediaplayer").setup({
flashplayer: "/Static/js/JWPlayer/player.swf?1",
file: url,
autostart: true,
width: 1,
height: 1,
controls: false
});
});
服务器端的代码是:
public virtual FileResult PlayEchoicAudio(Guid dataPointId) {
var result = [query db here];
return File(result.Audio, "audio/mp4", "sound.m4a");
}
此代码最初返回的MIME类型为audio/aac
。根据{{3}},它应该是audio/mp4
。这并没有破坏Chrome / IE中的功能,但它也没有使它适用于Firefox。
任何人都知道我错过了什么?
答案 0 :(得分:2)
JW Player没有"解码"任何东西。它将音频文件传递给浏览器的本机HTML5功能,或传递给Flash。它只是一个转向脚本,有一些控件,广告等皮肤。
你似乎正在使用JW Player 5(" player.swf"是一个死的赠品),现在已经非常过时了。请勿明确引用Flash播放器(您正在使用的旧版本或新版本)。如果需要,jwplayer.js脚本会自动调用其他脚本(尽管需要进行共处)。不要为玩家提供虚假的维度 - 我相信在某些情况下会破坏它。