是否有可能可靠地获得AudioDeviceID
Mac 的内置输出?我尝试使用kAudioHardwarePropertyDefaultOutputDevice
来获取当前选择的输出设备,但这可以是任何旧设备,具体取决于用户在系统首选项中选择的内容——我只想要内置扬声器的 ID。
AudioObjectPropertyAddress theAddress = { kAudioHardwarePropertyDefaultInputDevice,
kAudioObjectPropertyScopeGlobal,
kAudioObjectPropertyElementMaster };
verify_noerr (AudioObjectGetPropertyData(kAudioObjectSystemObject,
&theAddress,
0,
NULL,
&propsize,
&inputDevice));
目前我正在获取所有设备的列表并通过执行检查设备的名称字符串name == "Built-in Output"
。这适用于我的机器,但似乎不是一个非常强大的解决方案!有没有类似的东西kAudioHardwarePropertyBuiltInOutputDevice
?