如何设置AVPlayer的音量

问题描述 投票:0回答:4

我正在尝试设置 AVPlayer 的音量,但似乎不起作用。它占用系统容量并忽略代码中设置的值。以下是我的代码。我们如何设置音量级别?

let player = AVPlayer(url: URL(string:recordingFileURL)!)
let playerController = AVPlayerViewController()
playerController.player = player
playerController.videoGravity = AVLayerVideoGravity(rawValue: AVLayerVideoGravity.resizeAspectFill.rawValue)

self.present(playerController, animated: true) {
    player.play()
    player.volume = 0.8 // Doesn't have any affect
}
ios swift avplayer
4个回答
5
投票

播放器.音量= 0.8

此属性在 iOS 上最有用,用于控制 AVSampleBufferAudioRenderer 相对于其他音频输出的音量,而不是用于设置绝对音量。


4
投票

Apple 文档说这是不可能的。

该属性用于控制播放器音频相对于系统音量的音量。 iOS 中没有编程方式来控制系统音量,但您可以使用 MediaPlayer 框架的 MPVolumeView 类来呈现用于控制系统音量的标准用户界面。

由于 AVPlayer 音量是相对于系统音量而言的,因此您永远不能强制 AVPlayer 播放的声音大于系统音量。


4
投票

您在评论中说:

我的假设是上面代码中设置的值应该覆盖系统卷的值

这个假设是错误的。如果系统音量为 0.2,而您将播放器的音量设置为 0.8,那么您所做的就是使播放器变得更柔和 (0.16)。正如文档告诉您的那样:

该属性用于控制播放器音频相对于系统音量的音量。 iOS 中没有编程方式来控制系统音量。


0
投票

给player.volume = 100后,它就制作好了并且效果

© www.soinside.com 2019 - 2024. All rights reserved.