mirror of
https://github.com/kyleneideck/BackgroundMusic
synced 2024-11-25 21:50:17 +00:00
4c0c656538
BGMApp has to set BGMDevice, and often also the Null Device for a short time, as the systemwide default audio device, which makes CoreAudio put them in the preferred devices list in its Plist file. And since the list is limited to three devices, it only gives us one or two usable ones. Ideally, CoreAudio just wouldn't add our devices to its list, but I don't think we can prevent that. As a partial workaround, we now store our own copy of the preferred devices list without our devices, which BGMApp can use to figure out which devices were pushed out of CoreAudio's list by our devices. This doesn't fix the problem entirely because our devices still take up room in CoreAudio's list when BGMApp is closed, but I think that would be harder to solve. See #167. Also: - Handle setting the initial output device in BGMPreferredOutputDevices instead of BGMAudioDeviceManager. - Fix a crash in BGMOutputVolumeMenuItem::dealloc caused by using dispatch_sync to dispatch to the main queue while running on the main queue. - Fix a crash in BGMPreferredOutputDevices if /Library/Preferences/Audio/com.apple.audio.SystemSettings.plist doesn't exist. - Add Swinsian to the list of music players in the README. (I must have forgotten to do that when I added support for it.) |
||
---|---|---|
.. | ||
BGM_TestUtils.h | ||
BGM_Types.h | ||
BGM_Utils.cpp | ||
BGM_Utils.h | ||
BGMXPCProtocols.h |