swift 如何设置AVPlayer的音量

ozxc1zmp  于 12个月前  发布在  Swift
关注(0)|答案(4)|浏览(162)

我正在尝试为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
}

字符串

whhtz7ly

whhtz7ly1#

  • 播放器音量= 0.8*

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

u2nhd7ah

u2nhd7ah2#

Apple Docs说这不可能。
此属性用于控制播放器相对于系统音量的音频音量。在iOS中没有编程方式来控制系统音量,但您可以使用MediaPlayer框架的MPVolumeView类来呈现控制系统音量的标准用户界面。
由于AVPlayer音量是相对于系统音量而言的,因此您永远无法强制AVPlayer播放的音量高于系统音量。

efzxgjgh

efzxgjgh3#

你在评论中说:
我的假设是,在上面的代码中设置的值应该覆盖系统卷的值
这个假设是错误的。如果系统音量是0.2,而你将播放器的音量设置为0.8,你所做的就是让播放器更柔和(0.16)。正如the documentation告诉你的:
此属性用于控制播放器相对于系统音量的音频音量。iOS中没有编程方式来控制系统音量。

5q4ezhmt

5q4ezhmt4#

在给玩家.音量= 100后,

相关问题