fijkplayer icon indicating copy to clipboard operation
fijkplayer copied to clipboard

循环播放m3u8格式视频第一次播放完成后卡住不动

Open yuchuan08 opened this issue 3 years ago • 2 comments

  楼主好:
 我用的版本fijkplayer: ^0.10.0开发,进行m3u8格式视频循环播放,在Android和iOS上面都会出现第一次播放完成后卡住不动。以下是相关代码和错误日志,还请查看,谢过。

await videoPlayer.setDataSource(videoUrl, autoPlay: true);
await videoPlayer.setLoop(0);
await videoPlayer.setOption(FijkOption.playerCategory, "enable-accurate-seek", 1);

错误日志: ] E/IJKMEDIA(16270): http://xxxxxxxx/qp9AQbC6F.m3u8: error while seeking [ ] D/IJKMEDIA(16270): FFP_MSG_BUFFERING_START: [ ] D/IJKMEDIA(16270): ffp_toggle_buffering_l: end [ ] D/IJKMEDIA(16270): ijkmp_get_msg: FFP_MSG_SEEK_COMPLETE [ ] D/IJKMEDIA(16270): FFP_MSG_SEEK_COMPLETE: [ ] D/IJKMEDIA(16270): FFP_MSG_BUFFERING_END: [ +40 ms] I/flutter (16270): [dbg] 2021-11-26 14:24:41.769790 [fijk] FijkPlayer{id:2} freeze start [ ] I/flutter (16270): [dbg] 2021-11-26 14:24:41.773595 [fijk] FijkPlayer{id:2} freeze end [ +182 ms] D/IJKMEDIA(16270): ffp_toggle_buffering_l: start

yuchuan08 avatar Nov 26 '21 06:11 yuchuan08

我也遇到了类似问题,楼主有解决吗

luqiuan avatar Mar 17 '22 09:03 luqiuan

@luqiuan 有个小方案可以参考一下: await videoPlayer.setOption(FijkOption.playerCategory, "enable-accurate-seek", 1); initializePlayerFuture = videoPlayer.setDataSource(videoUrl, autoPlay: true); videoPlayer.addListener(() async { if (videoPlayer.state == FijkState.completed) { await videoPlayer.seekTo(1); await videoPlayer.pause(); await videoPlayer.start(); } });

yuchuan08 avatar Mar 17 '22 12:03 yuchuan08