【问题标题】:coreaudio: how to get/set the system alert volume as opposed to device volumecoreaudio:如何获取/设置系统警报音量而不是设备音量
【发布时间】:2012-09-05 12:30:27
【问题描述】:

这几天我一直在搜索文档和邮件列表,但似乎找不到答案。

我有一个 OS X 应用程序,除其他外,它使用 kAudioDevicePropertyVolumeScalar 和朋友查询可用的硬件设备及其当前音量。

我想要做的是获取并设置由 kAudioHardwarePropertyDefaultSystemOutputDevice 表示的系统输出设备的 -alert-volume (?) 而不是该设备的音量。

根据我的有限理解澄清,这是用户可以在“播放音效”下的“系统偏好设置”中调整的音量设置。

搜索 coreaudio-api 列表,我发现这个音量设置不是设备属性,而是某种派生值,但我不知道从哪里开始。

我们将不胜感激。

【问题讨论】:

    标签: macos cocoa core-audio


    【解决方案1】:

    我不确定您是否真的需要通过 CoreAudio 阅读它,但以下方法可以正常工作:

    NSUserDefaults *defaults = [NSUserDefaults standardUserDefaults];
    [defaults addSuiteNamed:@"com.apple.systemsound"];        
    NSLog(@"%f", [defaults floatForKey:@"com.apple.sound.beep.volume"]);
    

    虽然这可能会随着操作系统更新而改变,因为设置存储在 ~/Library/Preferences/com.apple.systemsound.plist 中。

    【讨论】:

      猜你喜欢
      • 2019-01-08
      • 1970-01-01
      • 2023-03-25
      • 2012-05-04
      • 2018-11-16
      • 2017-10-02
      • 2018-08-17
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多