You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Flutter中video_player是否支持iOS端master.m3u8多分辨率播放?

问题解答

1. video_player是否不支持master.m3u8?

是的,官方的video_player包不支持HLS master playlist(多码率自适应播放列表),它仅能解析并播放单码率的媒体播放列表(即你单独加载的子播放列表)。这就是你加载master.m3u8时无法正常工作,但单独加载子列表可以的核心原因。

2. Flutter中支持master.m3u8的替代播放器

以下是几个可解决该问题的Flutter播放器:

  • flutter_vlc_player:基于VLC媒体库开发,完全支持HLS自适应码流(包括master.m3u8),跨平台兼容iOS/Android,还支持几乎所有主流视频格式,具备完整的播放控制、字幕支持等功能。
  • better_player:作为video_player的增强封装,新增了对HLS master playlist的支持,同时保留video_player的易用性,额外提供缓存管理、进阶播放控制等功能。
  • ijkplayer_flutter:基于ijkplayer(FFmpeg封装的播放器)开发,支持HLS自适应码流,自定义性强,适合对播放底层有定制需求的场景。

附:格式化后的master.m3u8代码示例

final masterPlaylistContent = '''
#EXTM3U
#EXT-X-VERSION:10
#EXT-X-STREAM-INF:BANDWIDTH=2000000,RESOLUTION=1280x720,CODECS="avc1.64001f,mp4a.40.2"
${fixedPlaylistUrls['${name}_0_playlist.m3u8']}
#EXT-X-STREAM-INF:BANDWIDTH=800000,RESOLUTION=640x360,CODECS="avc1.64001f,mp4a.40.2"
${fixedPlaylistUrls['${name}_1_playlist.m3u8']}
''';

内容的提问来源于stack exchange,提问作者dvsmo

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.22 07:53:15