帮助文档

Help documentation

Vitamio视频缓冲处理

受限于网速等原因,播放网络视频时一般都会要加上缓冲处理,一般可以通过设置加大缓冲和显示正在缓冲的进度条来改善体验。

关键代码 

/** 是否需要自动恢复播放,用于自动暂停,恢复播放 */
    private boolean needResume;

    @Override
    public boolean onInfo(MediaPlayer arg0, int arg1, int arg2) {
        switch (arg1) {
        case MediaPlayer.MEDIA_INFO_BUFFERING_START:
            //开始缓存,暂停播放
            if (isPlaying()) {
                stopPlayer();
                needResume = true;
            }
            mLoadingView.setVisibility(View.VISIBLE);
            break;
        case MediaPlayer.MEDIA_INFO_BUFFERING_END:
            //缓存完成,继续播放
            if (needResume)
                startPlayer();
            mLoadingView.setVisibility(View.GONE);
            break;
        case MediaPlayer.MEDIA_INFO_DOWNLOAD_RATE_CHANGED:
            //显示 下载速度
            Logger.e("download rate:" + arg2);
            break;
        }
        return true;
    }

 

用法 

注册MediaPlayer或VideoPlayer的setOnInfoListener即可

参考 

VPlayer默认缓冲大小设置(setBufferSize):如果是本地视频,设置为0;网络视频,设置为 512 * 1024(单位byte)。


© 2011-2013 Xuan Yi Xia Inc. All rights reserved