跟踪进度 Flutter 视频播放器

DAV*_*TEC 1 flutter flutter-dependencies flutter-layout

嗨,我正在使用颤振视频播放器插件,我有类似的东西,有[{phrase:"something", startAt: 1039}, {phrase:"other somthing", startAt: 26500}]没有办法在 ui 中根据视频播放时的开始时间更改短语。

我尝试使用持续时间为 100 毫秒的计时器,但我没有从 Flutter 视频播放器插件中检索到确切的时间。

Adr*_*ram 7

您可能想看看有状态的小部件,因为它们可以让您做到这一点。简而言之,您可以设置phrase为某个变量,一旦视频开始,您就可以调用setState和更改该变量。Flutter 会自动重绘小部件并更新文本。

要确定视频播放器是否正在播放,您可以向视频控制器添加一个侦听器。

_controller = VideoPlayerController.network(
      'http://www.sample-videos.com/video/mp4/720/big_buck_bunny_720p_20mb.mp4',
    )
      ..addListener(() {
        final bool isPlaying = _controller.value.isPlaying;
        if (isPlaying != _isPlaying) {
          setState(() {
            _isPlaying = isPlaying;
          });
        }
      })
      ..initialize().then((_) {
        // Ensure the first frame is shown after the video is initialized, even before the play button has been pressed.
        setState(() {});
      });
Run Code Online (Sandbox Code Playgroud)