use betterplayer instead of chewie
This commit is contained in:
		@@ -1,6 +1,5 @@
 | 
			
		||||
import 'package:chewie/chewie.dart';
 | 
			
		||||
import 'package:better_player/better_player.dart';
 | 
			
		||||
import 'package:flutter/material.dart';
 | 
			
		||||
import 'package:video_player/video_player.dart';
 | 
			
		||||
 | 
			
		||||
class VideoScreenMobile extends StatefulWidget {
 | 
			
		||||
  const VideoScreenMobile({Key? key, required this.url}) : super(key: key);
 | 
			
		||||
@@ -11,27 +10,28 @@ class VideoScreenMobile extends StatefulWidget {
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
class _VideoScreenMobileState extends State<VideoScreenMobile> {
 | 
			
		||||
  ChewieController? _chewieController;
 | 
			
		||||
  BetterPlayerController? _betterPlayerController;
 | 
			
		||||
 | 
			
		||||
  @override
 | 
			
		||||
  Widget build(BuildContext context) {
 | 
			
		||||
    if (_chewieController == null) {
 | 
			
		||||
    if (_betterPlayerController == null) {
 | 
			
		||||
      return Column(
 | 
			
		||||
        crossAxisAlignment: CrossAxisAlignment.center,
 | 
			
		||||
        mainAxisAlignment: MainAxisAlignment.center,
 | 
			
		||||
        children: const [CircularProgressIndicator(), Text("loading...")],
 | 
			
		||||
      );
 | 
			
		||||
    } else {
 | 
			
		||||
      return BetterPlayer(
 | 
			
		||||
        controller: _betterPlayerController!,
 | 
			
		||||
      );
 | 
			
		||||
    }
 | 
			
		||||
    return Chewie(
 | 
			
		||||
      controller: _chewieController!,
 | 
			
		||||
    );
 | 
			
		||||
  }
 | 
			
		||||
 | 
			
		||||
  @override
 | 
			
		||||
  void dispose() {
 | 
			
		||||
    super.dispose();
 | 
			
		||||
    _chewieController?.videoPlayerController.dispose();
 | 
			
		||||
    _chewieController?.dispose();
 | 
			
		||||
    _betterPlayerController?.videoPlayerController?.dispose();
 | 
			
		||||
    _betterPlayerController?.dispose();
 | 
			
		||||
  }
 | 
			
		||||
 | 
			
		||||
  @override
 | 
			
		||||
@@ -41,18 +41,12 @@ class _VideoScreenMobileState extends State<VideoScreenMobile> {
 | 
			
		||||
  }
 | 
			
		||||
 | 
			
		||||
  void _init() async {
 | 
			
		||||
    final VideoPlayerController _controller =
 | 
			
		||||
        VideoPlayerController.network(widget.url);
 | 
			
		||||
    await _controller.initialize();
 | 
			
		||||
 | 
			
		||||
    _chewieController = ChewieController(
 | 
			
		||||
        videoPlayerController: _controller,
 | 
			
		||||
        autoPlay: true,
 | 
			
		||||
        looping: true,
 | 
			
		||||
        allowFullScreen: true,
 | 
			
		||||
        allowMuting: true,
 | 
			
		||||
        allowPlaybackSpeedChanging: true,
 | 
			
		||||
        zoomAndPan: true);
 | 
			
		||||
    BetterPlayerDataSource betterPlayerDataSource =
 | 
			
		||||
        BetterPlayerDataSource(BetterPlayerDataSourceType.network, widget.url);
 | 
			
		||||
    _betterPlayerController = BetterPlayerController(
 | 
			
		||||
        BetterPlayerConfiguration(
 | 
			
		||||
            autoPlay: true, looping: true, allowedScreenSleep: false),
 | 
			
		||||
        betterPlayerDataSource: betterPlayerDataSource);
 | 
			
		||||
 | 
			
		||||
    setState(() {});
 | 
			
		||||
  }
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user