将AVAudioPlayer音量设置为用户的铃声音量?

时间:2009-03-05 06:18:28

标签: iphone avfoundation

我遇到了AVAudioPlayer卷的问题。

我可以将theAudio.volume属性设置为1.0,但我只想在用户将其iphone铃声设置为的音量播放音频。

删除volume属性默认为1.0。

这似乎微不足道,但我无法在任何地方找到它的引用。

非常感谢!

2 个答案:

答案 0 :(得分:4)

您设置为AVAudioPlayer实例的音量只是一个相对音量,例如,如果您想播放两个声音,一个是另一个音量的一半,则将第一个设置为0.5,将第二个设置为1.0。

实际设备音量仅由用户控制,不能以编程方式进行更改。 (Audio & Video Coding How-To's - How do I access the hardware volume controller?

您可以为控制全局卷的用户添加MPVolumeView。

答案 1 :(得分:1)

我通过设置此回调来跟踪硬件更改

AudioSessionAddPropertyListener(kAudioSessionProperty_CurrentHardwareOutputVolume, audioVolumeChangeListenerCallback, self);

但出于某种原因,我认为我得出结论,获取初始状态需要一个未发布的API调用。我此刻不记得了。也许这些信息会让你开始朝着正确的方向前进!