fluttercommunity / fluttercommunity/chewie

Video re-downloads when seeking back on Android

Open
#741 0 comments 0 reactions 0 assignees View on GitHub
Dominant language
Dart
Stars
2.1k
Forks
1.1k
Avg merge
6d 8h
Merged PRs (30d)
6

Description

**Issue description:**
- Using a network mp4 video.
- The video has finished downloading before I press play.
- When seeking forward, there is generally no problem.
- When seeking back on Android, **the video re-downloads** before proceeding.
- No issue on iOS: there is no loading time at all when seeking.

**Demonstration on Android:**
https://github.com/fluttercommunity/chewie/assets/59314108/7ba433a9-994e-4de0-b86e-d3c676cdea59

**Demonstration on iOS:**
https://github.com/fluttercommunity/chewie/assets/59314108/6fcb3b50-d289-4fa1-9be8-77ed26f90610

**Minimal reproduction code:**
```
import 'package:chewie/chewie.dart';
import 'package:flutter/material.dart';
import 'package:video_player/video_player.dart';

void main() {
runApp(
const MaterialApp(
home: Scaffold(
body: MyApp(),
),
),
);
}

class MyApp extends StatefulWidget {
const MyApp({super.key});

@override
State createState() => _MyAppState();
}

class _MyAppState extends State {
late final VideoPlayerController videoController;
ChewieController? chewieController;

Future init() async {
const url =
'https://firebasestorage.googleapis.com/v0/b/calistree.appspot.com/o/exerciseVideos%2Fe097%2Fe097-264.mp4?alt=media';
videoController = VideoPlayerController.network(url);
await videoController.initialize();
chewieController = ChewieController(
videoPlayerController: videoController,
);
setState(() {});
}

@override
void initState() {
init();
super.initState();
}

@override
void dispose() {
videoController.dispose();
chewieController?.dispose();
super.dispose();
}

@override
Widget build(BuildContext context) {
return chewieController == null
? const Center(
child: CircularProgressIndicator.adaptive(),
)
: SafeArea(
child: Chewie(controller: chewieController!),
);
}
}

```

Contributor guide

No contributing guide indexed for this repository

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.