IJKPlayer拖動播放進度會導致重新請求數據,未使用已經緩衝好的數據,所以應該儘量控制緩衝區大小,減少不必要的數據損失。 mMediaPlayer.setOption(IjkMediaPlayer.OPT_CATEGORY_PLAYER, "max-buffer-size", 100 * 102 ...
IJKPlayer拖動播放進度會導致重新請求數據,未使用已經緩衝好的數據,所以應該儘量控制緩衝區大小,減少不必要的數據損失。
mMediaPlayer.setOption(IjkMediaPlayer.OPT_CATEGORY_PLAYER, "max-buffer-size", 100 * 1024);//設置緩衝區為100KB,目前我看來,多緩衝了4秒
mMediaPlayer.setOption(IjkMediaPlayer.OPT_CATEGORY_PLAYER, "min-frames", 100);// 視頻的話,設置100幀即開始播放
解決播放一段時間後出錯:
mMediaPlayer.setOption(IjkMediaPlayer.OPT_CATEGORY_FORMAT, "reconnect", 1);//重連模式,如果中途伺服器斷開了連接,讓它重新連接,參考 https://github.com/Bilibili/ijkplayer/issues/445