flutter 视频播放器 第三方插件Flutter chewie 的使用

flutter 播放器 chewie第三方插件的使用

  1. chewie: ^0.9.8+1
    传送门
  2. video_player: ^0.10.1+6
    传送门
VideoPlayerController videoPlayerController;
ChewieController chewieController;

 @override
 void initState() {
   // TODO: implement initState
   super.initState();
//    player.setDataSource(
//        "https://www.xxx/test.mp4",
//        autoPlay: false);
     //配置视频地址
     videoPlayerController = VideoPlayerController.network(
         'https://xxx/test.mp4');
     chewieController = ChewieController(
       videoPlayerController: videoPlayerController,
       aspectRatio: 3 / 2, //宽高比
       autoPlay: false, //自动播放
       looping: false, //循环播放
     );
 }
 
 @override
 void dispose() {
   /**
    * 页面销毁时,视频播放器也销毁
    */
   videoPlayerController.dispose();
   super.dispose();
 }
//播放器
Chewie(
controller: chewieController,
),

效果图

构造属性说明
videoPlayerController视频的控制器
autoInitialize在启动时初始化视频。 这将准备播放视频。
startAt在特定位置开始播放视频
autoPlay显示视频后立即播放
looping视频是否应循环播放
showControlsOnInitialize初始化小部件时是否显示控件。
showControls是否完全显示控件
customControls定义自定义控件
errorBuilder当视频播放出现错误时,您可以构建自定义
aspectRatio视频的宽高比。 重要的是要获得正确的尺寸,将回退到适合的空间内。
cupertinoProgressColors用于iOS控件的颜色。 默认情况下,iOS播放器使用,从原始iOS 11设计中采样的颜色。
materialProgressColors物料进度条要使用的颜色。 默认情况下,材质 播放器使用主题中的颜色。
placeholder初始化之前,占位符显示在视频下方
overlay在视频和控件之间放置的小部件
fullScreenByDefault定义按下播放器时播放器是否以全屏启动
allowedScreenSleep定义播放器是否全屏睡眠
allowFullScreen定义是否应显示全屏控件
isLive定义控件是否应用于实时流视频
allowMuting定义是否应显示静音控件
systemOverlaysAfterFullScreen定义退出全屏后可见的系统覆盖
deviceOrientationsAfterFullScreen退出全屏后定义一组允许的设备方向
routePageBuilder为全屏定义自定义RoutePageBuilder
  • 5
    点赞
  • 12
    收藏
    觉得还不错? 一键收藏
  • 4
    评论
Chewie件是一个Flutter视频播放器,它支持多种视频格式,包括FLV格式。要使用Chewie件播放FLV格式的视频,您需要在Flutter项目中添加chewie和video_player件,并使用以下代码: ``` import 'package:flutter/material.dart'; import 'package:video_player/video_player.dart'; import 'package:chewie/chewie.dart'; class VideoPlayerScreen extends StatefulWidget { final String videoUrl; VideoPlayerScreen({this.videoUrl}); @override _VideoPlayerScreenState createState() => _VideoPlayerScreenState(); } class _VideoPlayerScreenState extends State<VideoPlayerScreen> { VideoPlayerController _videoPlayerController; ChewieController _chewieController; @override void initState() { super.initState(); _videoPlayerController = VideoPlayerController.network(widget.videoUrl); _chewieController = ChewieController( videoPlayerController: _videoPlayerController, aspectRatio: 16 / 9, autoPlay: true, looping: true, ); } @override void dispose() { _videoPlayerController.dispose(); _chewieController.dispose(); super.dispose(); } @override Widget build(BuildContext context) { return Scaffold( body: Center( child: Chewie( controller: _chewieController, ), ), ); } } ``` 在上面的代码中,VideoPlayerScreen是一个StatefulWidget,它接受一个videoUrl参数,该参数是要播放的FLV格式视频的URL。在initState方法中,我们创建一个VideoPlayerController和一个ChewieController,然后在build方法中使用Chewie小部件来显示视频播放器。最后,在dispose方法中,我们释放视频播放器Chewie控制器的资源。 希望这可以帮助您使用Chewie件播放FLV格式的视频

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值