flutter播放器组件Chewie代码片
Easul Lv4

Chewie播放器

  • 依赖包chewie: ^1.4.0
  • 依赖包video_player: ^2.6.1
  • 插件常见问题
    • 无法播放网络视频,需要添加一下视频播放权限。参见
折叠代码块DART 复制代码
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
import 'dart:ui';

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

class ChewiePlayer extends StatefulWidget {
const ChewiePlayer({Key? key, required this.tvUrl}) : super(key: key);
final List tvUrl;

@override
State<StatefulWidget> createState() => _ChewiePlayerState();
}

class _ChewiePlayerState extends State<ChewiePlayer> {
final double _viewHeight = window.physicalSize.width / 16 * 9;
late final videoPlayerController;
late final chewieController;
late final playerWidget;

void _chewiePlayerInit() {
videoPlayerController = VideoPlayerController.network(widget.tvUrl[0]);
chewieController = ChewieController(
videoPlayerController: videoPlayerController,
aspectRatio: 3 / 2,
autoPlay: true,
looping: true,
);
playerWidget = Chewie(
controller: chewieController,
);
}

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

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

@override
Widget build(BuildContext context) {
return Scaffold(
appBar: AppBar(
title: const Text(
'chewie测试',
style: TextStyle(color: Colors.white),
),
),
body: playerWidget,
);
}
}
 评论
来发评论吧~
Powered By Valine
v1.5.2