如何在Flutter中播放视频列表?

我正在使用fluttervideo_player包播放视频列表。

List sourceList;

sourceList = [
  {
    "size": 69742504,
    "name": "lucky-roulette.mp4",
    "mimetype": "video/mp4",
  },
  {
    "size": 69742504,
    "name": "BigBuckBunny.mp4",
    "mimetype": "video/mp4",
  }
];

我已经检查了这个问题,并对其进行了一些自定义代码。

void play() {
  log.fine("Now playing: $_nowPlayingUrl");
  _adController = VideoPlayerController.network(_nowPlayingUrl);
  _adController.initialize().then((_) => setState(() {}));
  _adController.play();
  _adController.addListener(checkIfVideoFinished);
}

void checkIfVideoFinished() {
  if (_adController == null ||
      _adController.value == null ||
      _adController.value.position == null ||
      _adController.value.duration == null) return;
  if (_adController.value.position.inSeconds ==
      _adController.value.duration.inSeconds) {
    _adController.removeListener(checkIfVideoFinished);
    _adController.dispose();
    // Change _nowPlayingIndex
    setState(() {
      _nowPlayingIndex = (_nowPlayingIndex + 1) % _totalIndex;
    });
    play();
  }
}

但是使用此代码段会发出异常 Another exception was thrown: A VideoPlayerController was used after being disposed.

有更好的方法在Flutter中播放和循环播放视频列表吗?

布朗索汉

最近,我测试了视频列表示例。请检查github FlutterVideoListSample中的源代码我认为必须丢弃视频小部件。

就我而言,我在初始化之前清除了旧的VideoPlayerController。而且chewie,在进入全屏模式时,我不会使用会创建新页面的插件,因此无法处理下一个视频小部件。

依存关系
video_player: '>=0.10.11+1 <2.0.0'
FlutterVideoListSample中的一些代码
VideoPlayerController _controller;

void _initializeAndPlay(int index) async {
  print("_initializeAndPlay ---------> $index");
  final clip = _clips[index];
  final controller = VideoPlayerController.asset(clip.videoPath());
  final old = _controller;
  if (old != null) {
    old.removeListener(_onControllerUpdated);
    old.pause(); // mute instantly
  }
  _controller = controller;
  setState(() {
    debugPrint("---- controller changed");
  });

  controller
    ..initialize().then((_) {
      debugPrint("---- controller initialized");
      old?.dispose();
      _playingIndex = index;
      controller.addListener(_onControllerUpdated);
      controller.play();
      setState(() {});
    });
}

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

如何在我的flutter应用程序中添加带有视频的多个youtube播放列表?

来自分类Dev

如何在RecyclerView列表中间播放视频

来自分类Dev

调用onclick函数时如何在jwplayer中播放视频...播放列表

来自分类Dev

如何在iOS中播放视频PHAsset?

来自分类Dev

如何在QML中播放视频?

来自分类Dev

目前如何在Pygame中播放视频?

来自分类Dev

如何在YouTube中播放私人视频?

来自分类Dev

如何在WPF中向后播放视频?

来自分类Dev

如何在flutter中添加链接到Firebase的多个视频播放器

来自分类Dev

如何在jQuery中播放视频并暂停播放?

来自分类Dev

如何在Android的YouTube中获取我的播放列表视频的正确JSON格式?

来自分类Dev

如何在本机播放器中播放youtube视频以及如何下载youtube视频

来自分类Dev

如何在 Qt Designer 中推广的 QVideoWidget 中播放视频?

来自分类Dev

如何在UIWebview中获取当前正在播放的视频的URL

来自分类Dev

如何在Android的WebView中播放Dailymotion视频

来自分类Dev

如何在Google Glass的WebView中播放YouTube视频

来自分类Dev

如何在静音的UIWebView中播放youtube视频?

来自分类Dev

如何在iOS Sprite Kit SKVideoNode中控制视频的播放?

来自分类Dev

如何在余烬应用程序中播放YouTube视频

来自分类Dev

如何在iPhone Phonegap中播放内联视频

来自分类Dev

如何在UIWebView中播放时更改嵌入视频的大小?

来自分类Dev

如何在Surfaceview中隐藏视频并保持音频播放

来自分类Dev

如何在Android videoview中播放VIMEO视频URL

来自分类Dev

如何在Mozilla FIrefox中播放MKV视频?

来自分类Dev

React Native:如何在FlatList中播放视频

来自分类Dev

如何在浏览器中播放实时视频?

来自分类Dev

如何在html中连续播放许多视频文件

来自分类Dev

如何在Windows Phone 7中播放YouTube视频?

来自分类Dev

如何在Firefox中播放音频和视频流?

Related 相关文章

  1. 1

    如何在我的flutter应用程序中添加带有视频的多个youtube播放列表?

  2. 2

    如何在RecyclerView列表中间播放视频

  3. 3

    调用onclick函数时如何在jwplayer中播放视频...播放列表

  4. 4

    如何在iOS中播放视频PHAsset?

  5. 5

    如何在QML中播放视频?

  6. 6

    目前如何在Pygame中播放视频?

  7. 7

    如何在YouTube中播放私人视频?

  8. 8

    如何在WPF中向后播放视频?

  9. 9

    如何在flutter中添加链接到Firebase的多个视频播放器

  10. 10

    如何在jQuery中播放视频并暂停播放?

  11. 11

    如何在Android的YouTube中获取我的播放列表视频的正确JSON格式?

  12. 12

    如何在本机播放器中播放youtube视频以及如何下载youtube视频

  13. 13

    如何在 Qt Designer 中推广的 QVideoWidget 中播放视频?

  14. 14

    如何在UIWebview中获取当前正在播放的视频的URL

  15. 15

    如何在Android的WebView中播放Dailymotion视频

  16. 16

    如何在Google Glass的WebView中播放YouTube视频

  17. 17

    如何在静音的UIWebView中播放youtube视频?

  18. 18

    如何在iOS Sprite Kit SKVideoNode中控制视频的播放?

  19. 19

    如何在余烬应用程序中播放YouTube视频

  20. 20

    如何在iPhone Phonegap中播放内联视频

  21. 21

    如何在UIWebView中播放时更改嵌入视频的大小?

  22. 22

    如何在Surfaceview中隐藏视频并保持音频播放

  23. 23

    如何在Android videoview中播放VIMEO视频URL

  24. 24

    如何在Mozilla FIrefox中播放MKV视频?

  25. 25

    React Native:如何在FlatList中播放视频

  26. 26

    如何在浏览器中播放实时视频?

  27. 27

    如何在html中连续播放许多视频文件

  28. 28

    如何在Windows Phone 7中播放YouTube视频?

  29. 29

    如何在Firefox中播放音频和视频流?

热门标签

归档