import 'package:flutter/material.dart'; import 'package:chewie/chewie.dart'; import 'package:video_player/video_player.dart'; import 'dart:io'; class FikoYTVideoPlayer extends StatefulWidget { final String videoFilePath; const FikoYTVideoPlayer({Key? key, required this.videoFilePath}) : super(key: key); @override _FikoYTVideoPlayerState createState() => _FikoYTVideoPlayerState(); } class _FikoYTVideoPlayerState extends State { late VideoPlayerController _videoPlayerController; late ChewieController _chewieController; @override void initState() { super.initState(); _initializeControllers(); } void _initializeControllers() { // VideoPlayerController dosya yolu ile başlatılıyor _videoPlayerController = VideoPlayerController.file(File(widget.videoFilePath)); // ChewieController oluşturuluyor ve video oynatıcı ayarlanıyor _chewieController = ChewieController( videoPlayerController: _videoPlayerController, aspectRatio: 16 / 9, autoInitialize: true, autoPlay: false, looping: false, // İsteğe bağlı kontrol ayarları allowedScreenSleep: false, materialProgressColors: ChewieProgressColors( playedColor: Colors.red, handleColor: Colors.redAccent, backgroundColor: Colors.grey, bufferedColor: Colors.lightGreen, ), ); } @override void dispose() { _videoPlayerController.dispose(); _chewieController.dispose(); super.dispose(); } @override Widget build(BuildContext context) { return AspectRatio( aspectRatio: _videoPlayerController.value.aspectRatio, child: Chewie(controller: _chewieController), ); } }