xbmc/xbmc — pull request #3998 by jmarshallnz (2014-01-10 09:56:46+00:00)
Title: Darwin sink for ActiveAE

This is purely here in the hopes that someone else takes it forward. I'm on holiday for the next 12 days so won't have any test environment to work with, so it's over to others.

@Memphiz, @davilla, @night199uk, @elupus.

It's quite messy - I fully expect that lots of ActiveAE rules are being broken in the process, but at least the OSX sink works with the default device. i.e. I have UI sounds + sound reasonably in-sync during movie playback. Passthrough isn't done at all, and once done there'll need to be a decent amount of refactoring I suspect to pull out the audio device stuff into it's own class.

I suggest comparing the old AudioRenderer from Eden, along with the CoreAudio helpers in order to check how to handle passthrough and the like. Obviously all the mixing stuff can be killed off with ActiveAE handling that for us.

https://github.com/xbmc/xbmc/blob/Eden/xbmc/cores/AudioRenderers/CoreAudioRenderer.cpp
https://github.com/xbmc/xbmc/blob/Eden/xbmc/osx/CoreAudio.cpp

I look forward to seeing some movement on this by the time I get back from holiday :)