调试jPlayer Flash mp3播放
Debugging jPlayer Flash mp3 playback
由于这个Chrome问题导致jPlayer 1.6.0在Chrome 36中使用Flash解决方案播放mp3,我发现我的mp3不能通过Flash插件播放。mp3通过HTML5解决方案在Firefox 30和IE 11中播放很好。
注意我不感兴趣的修复播放使用HTML 5而不是Chrome -最新版本的jPlayer做到了。相反,我想了解为什么通过Flash播放不工作。
mp3存放在archive.org上。
当我开始播放时,我观察到的是,在Chrome网络检查器中,我得到一个状态完成的mp3 URL请求,然后是另一个处于状态(待处理)的相同URL请求。
我在Firefox中从HTML5解决方案中看到的是对mp3 URL的两个请求都收到302重定向,然后是对实际mp3 URL的长时间运行请求,该请求成功地流式播放mp3
jPlayer检查器显示进度和时间更新指标在3和4之间切换,加载启动,播放和等待都发生了,但却停留在0。
所以我认为Flash播放器可能没有处理重定向。但是我不确定如何解决这个问题。
我创建了一个JSFiddle http://jsfiddle.net/e4WnF/4/来演示这个问题。
我已经尝试使用Wireshark来找出发生了什么。虽然Firefox使用HTML 5播放器,我看到GET请求的结果是302,但我在Chrome下没有看到这个GET请求的迹象。
我已经通过移动到jPlayer 1.6.4解决了这个问题,但这并不能改变我的mp3在没有HTML 5音频支持的浏览器中无法工作的事实。
Thanks
这是一个影响很多人的问题,它是由最近的Chrome更改引起的,现在已经回滚了,但是直到它过滤到更新,你需要做一些改变。在jPlayer群组中,至少有10个线程和一个关于这个问题的jPlayer bug ticket。还有一个关于这个的Chrome bug tracker ticket。
事实证明,jPlayer和Soundcloud等其他网站实际上并没有坚持RFC 3003规范,当Chrome收紧他们的代码时,这就破坏了它。Chrome现在已经回滚了这个更改,但是直到过滤通过,你可以从github下载最新的jplayer代码,或者在jquery.jplayer.js文件的第696行周围立即进行以下更改,使其看起来像这样:
mp3: {
//codec: 'audio/mpeg; codecs="mp3"',
codec: 'audio/mpeg',
flashCanPlay: true,
media: 'audio'
},
请让我知道这是否解决了问题。
- 使链接播放.mp3文件
- 在网页上连续播放mp3的最有效方式(如网络收音机)
- 播放mp3文件之前,请参阅其他页面的javascript
- 如何使用Javascript播放mp3
- 在安卓上播放mp3的黑客
- 在点击时播放mp3文件与javascript
- 基本 Web 音频 API 不播放 mp3 文件
- 为什么获胜't Jplayer CirclePlayer播放mp3,其他Jplayer皮肤都可以
- 如何在没有任何html5功能的情况下通过javascript播放mp3文件
- 使用javascript播放mp3文件
- 如何在网页中播放mp3
- 播放mp3按钮点击与PRIMEFACES
- 如何在网页上播放.mp3或.m4a音频,同时显示嵌入的专辑艺术?(使用Javascript、HTML5或Flash)
- IE11 HTML5不能播放MP3文件
- 如何检测浏览器类型在HTML5或Javascript播放mp3,而不是在Safari/IE浏览器的webm
- 用soundmanager2播放MP3几秒钟
- 播放MP3文件顺序没有HTML5音频与JavaScript
- 为什么FireFox不能播放mp3文件?
- Firefox无法播放mp3
- 在Firefox中使用howler.js播放mp3