jPlayer太早结束音轨2-8%(几秒钟)?

时间:2013-10-07 03:35:43

标签: javascript audio jplayer

我不确定这可能是什么......它有点难以调试。

基本上使用jPlayer时,每个音轨都会过早地结束几秒钟(仅限mp3格式)。

我正在使用S3 / Cloudfront CDN进行分发,但我不认为它与它有任何关系(除非有一些奇怪的标题问题可能会产生这样的症状)。到目前为止,我已经尝试过大约5种不同的mp3,但效果相同。

此外,.progress-bar也没有达到100%,结束时约为95%,然后转到下一个播放列表项目。

var fnmApp = (function() {

    var player = function() {

        var options = {
            swfPath       : '<%= asset_path 'Jplayer.swf' %>'
          , supplied      : 'mp3'
          , solution      : 'html,flash'
          , wmode         : 'transparent'
          , smoothPlayBar : false
        };

        var fnmPlaylist = new jPlayerPlaylist({
            jPlayer: '#fnmp'
          , cssSelectorAncestor: '#fnmp-container'
        }, mixtapePlaylist, options); 

        $('.fnmp-container .jp-gui a').click(function(e) {
            e.preventDefault();
        });
    };

    return {
        player: player
    };

})();

1 个答案:

答案 0 :(得分:0)

通过HTTP流式传输MP3文件有点问题,因为在完全下载文件并计算帧数之前,通常无法知道该文件的大小(时间或样本)。大多数玩家通过估计时间来解决这个问题,然后在播放继续时更新该估计值,或者只是在文件末尾滚动时,如果在原始估计长度之后仍有数据可以播放。

听起来发生的事情是原始估计长度被用于播放长度。这可能是播放音频或其正在使用的编解码器的任何错误。使用jPlayer,您可以使用Flash或浏览器通过HTML5进行播放。由于强制Flash over HTML5适用于您的情况,我相信这是您正在使用的Chrome构建中的一个错误。不幸的是,没有直接的方法可以解决这个问题,因为它无法控制。你只能解决它。