如何在 Flutter 上播放 M3U8 格式的 Android 和 iOS

sec*_*ret 5 live-video flutter

我在 iOS 上找不到 M3U8 Url 播放器的任何解决方案

我试过这些插件;

  • video_player(无法播放)
  • flutter_simple_video_player (仅支持安卓)

jit*_*555 7

chewielib将用于播放m3u8文件

添加依赖项

dependencies:
  chewie: ^0.9.10
Run Code Online (Sandbox Code Playgroud)

代码片段:

import 'package:flutter/material.dart';
import 'package:chewie/chewie.dart';
import 'package:video_player/video_player.dart';

void main() {
  runApp(MaterialApp(home: MyApp()));
}

class MyApp extends StatefulWidget {
  @override
  _MyAppState createState() => _MyAppState();
}

class _MyAppState extends State<MyApp> {
  final videoPlayerController = VideoPlayerController.network(
      'https://live-par-1-abr-cdn.livepush.io/live_abr_cdn/emaIqCGoZw-6/index.m3u8');
  late ChewieController chewieController;

  @override
  void initState() {
    // TODO: implement initState
    super.initState();
    chewieController = ChewieController(
      videoPlayerController: videoPlayerController,
      aspectRatio: 3 / 2,
      autoPlay: true,
      looping: true,
    );
  }

  @override
  Widget build(BuildContext context) {
    return Scaffold(
        appBar: AppBar(
          title: Text("Sample App"),
        ),
        body: Container(
          child: Chewie(controller: chewieController),
        ));
  }
}
Run Code Online (Sandbox Code Playgroud)