【问题标题】:How to mute the volume in videoplayer in flutter如何在颤动中将视频播放器中的音量静音
【发布时间】:2019-09-22 18:57:11
【问题描述】:

我正在构建一个应用程序,用户可以在其中访问图库或相机中的视频,但我想在运行视频时静音。我添加了音量增大和静音图标。下面是视频播放器和点击图标的代码。

Stack(
                  children: <Widget>[
                    AspectRatio(
                      aspectRatio: 16/9,
                      child: VideoPlayer(_controller),
                    ),
                     Padding(
                       padding: const EdgeInsets.only(bottom: 15.0),
                       child: Column(
                         mainAxisAlignment: MainAxisAlignment.end,
                         children: <Widget>[
                               GestureDetector(
                                 child: Icon(
                                   _controller.value.isPlaying ? Icons.pause : Icons.play_arrow,
                                   color: Colors.white,
                                   size: 35.0,
                                 ),
                                 onTap: (){
                                   setState(() {
                                     if(_controller.value.isPlaying){
                                       _controller.pause();
                                     }else{
                                       _controller.play();
                                     }
                                   });
                                 },
                               ),
                         ],
                       ),
                     ),
                    Column(
                      mainAxisAlignment: MainAxisAlignment.spaceAround,
                      children: <Widget>[
                        GestureDetector(
                          child: Icon(
                            _controller.value.isPlaying ? Icons.volume_up : Icons.volume_off,
                            color: Colors.white,
                            size: 30.0,
                          ),
                          onTap: (){
                            setState(() {
                              // what to write herre  
                            });
                          },
                        ),
                      ],
                    ),
                  ],
                ),

【问题讨论】:

    标签: flutter


    【解决方案1】:

    我看到你使用这个插件: video_player.

    所以你可以在这里看到:example。

    您可以将音量设置为零。

    controller.setVolume(0.0);

    希望对您有所帮助。

    【讨论】:

    • 确定后点击音量图标应该调用controller.setVolume(0.0);如果我再次点击音量,那么它是如何工作的
    • 只使用一个标志
    • 是的,但是在 Web 上,这不符合要求自动播放静音模式的安全规则。
    【解决方案2】:

    除了此处提到的先前答案之外,您还可以执行以下操作来静音和取消静音视频。 让

    _controller = VideoPlayerController.network(
            'https://flutter.github.io/assets-for-api-docs/assets/videos/bee.mp4');
    
    1. 对于静音只需将 _controller.setVolume() 设置为 0.0,如下所示:

           _controller.setVolume(0.0);
      
    2. 要取消静音,请将 _controller.setVolume() 设置为 1.0,如下所示:

           _controller.setVolume(1.0);
      

    将它们包含在 setState 中

    注意:取消静音时,音量级别将与静音前的最后一个值相同,即使我们将其设置为 1.0。 针对 Android 设备进行了测试和验证

    【讨论】:

      猜你喜欢
      • 2022-08-23
      • 2020-07-14
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2020-08-10
      • 2021-02-18
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多