11import 'dart:io' ;
22
3- import 'package:video_player/video_player .dart' ;
3+ import 'package:better_player/better_player .dart' ;
44import 'package:file_picker/file_picker.dart' ;
55import 'package:image_picker/image_picker.dart' ;
66import 'package:piwigo_ng/constants/SettingsConstants.dart' ;
@@ -593,15 +593,24 @@ class VideoItem extends StatefulWidget {
593593 _VideoItemState createState () => _VideoItemState ();
594594}
595595class _VideoItemState extends State <VideoItem > {
596- VideoPlayerController _controller;
596+ BetterPlayerController _controller;
597597
598598 @override
599599 void initState () {
600600 super .initState ();
601- _controller = VideoPlayerController .file (File (widget.path))
602- ..initialize ().then ((_) {
603- setState (() {});
604- });
601+ BetterPlayerDataSource betterPlayerDataSource = BetterPlayerDataSource .file (widget.path);
602+ _controller = BetterPlayerController (
603+ BetterPlayerConfiguration (
604+ aspectRatio: 1 ,
605+ autoPlay: true ,
606+ looping: true ,
607+ fit: BoxFit .cover,
608+ controlsConfiguration: BetterPlayerControlsConfiguration (
609+ showControls: false
610+ ),
611+ ),
612+ betterPlayerDataSource: betterPlayerDataSource);
613+ setState (() {});
605614 }
606615
607616 @override
@@ -612,25 +621,18 @@ class _VideoItemState extends State<VideoItem> {
612621
613622 @override
614623 Widget build (BuildContext context) {
615- if (_controller.value.isInitialized) {
616- return FittedBox (
617- fit: BoxFit .cover,
618- child: GestureDetector (
619- onTap: () {
620- setState (() {
621- _controller.value.isPlaying
622- ? _controller.pause ()
623- : _controller.play ();
624- });
625- },
626- child: SizedBox (
627- width: _controller.value.size? .width ?? 0 ,
628- height: _controller.value.size? .height ?? 0 ,
629- child: VideoPlayer (_controller),
630- ),
631- ),
624+ return GestureDetector (
625+ onTap: () {
626+ setState (() {
627+ _controller.isPlaying ()
628+ ? _controller.pause ()
629+ : _controller.play ();
630+ });
631+ },
632+ child: AspectRatio (
633+ aspectRatio: 1 ,
634+ child: BetterPlayer (controller: _controller),
635+ )
632636 );
633- }
634- return CircularProgressIndicator ();
635637 }
636- }
638+ }
0 commit comments