【问题标题】:Flutter video_player Duration?颤振 video_player 持续时间?
【发布时间】:2022-12-12 12:44:36
【问题描述】:

我在这里使用 Flutter video_player 包:https://pub.dev/packages/video_player

我如何获得视频的时长?我可以看到有一个 position 属性,所以我需要它来及时获取当前值。

但是我如何获得视频的总时长呢?视频来自URL

我正在制作自定义播放器,所以我需要这两个值。

【问题讨论】:

    标签: flutter dart flutter-dependencies


    【解决方案1】:

    要获得总持续时间,您可以使用视频控制器

     VideoPlayerController _controller = VideoPlayerController.network('https://flutter.github.io/assets-for-api-docs/assets/videos/bee.mp4')
          ..initialize().then((_) {
            // Ensure the first frame is shown after the video is initialized, even before the play button has been pressed.
          });
    
     Duration durationOfVideo = _controller.value.duration;
    

    您也可以直接存储整数而不是持续时间,如下图所示

    【讨论】:

      【解决方案2】:

      您可以创建一个函数来计算视频 Dutarion 并对其进行格式化。

        getVideoPosition() {
          var duration = Duration(milliseconds: videoController.value.position.inMilliseconds.round());
          return [duration.inMinutes, duration.inSeconds].map((seg) => seg.remainder(60).toString().padLeft(2, '0')).join(':');
        }
      

      创建这个函数后,你只需要调用它来显示持续时间。 前任。:

      Text(getVideoPosition())
      

      【讨论】:

        【解决方案3】:
        totalVideoDuration = _controller.value.duration;
        currentDuration = _controller.value.position;
        

        你可以通过Controller获得

        【讨论】:

          猜你喜欢
          • 2019-01-28
          • 2021-01-17
          • 2021-09-05
          • 2020-01-28
          • 2019-05-02
          • 1970-01-01
          • 2019-04-30
          • 2021-10-23
          • 2019-04-30
          相关资源
          最近更新 更多