e89c421313
From: Christian Kröner <ckroener@gmx.net> This just copies the necessary bits and pieces from the ALSA plugin and applies them to OSXOutput based on dop config setting. It only changes the OSXOutput plugin as needed for DoP (further changes to support additionally e.g. integer mode or setting the physical device mode require rather a complete rewrite of the output plugin). Fortunately the Core Audio API is by default bit perfect and supports DoP with minimal changes (setting the sampling rate accordingly after ensuring that the physical mode supports at least 24 bits per channel seems to be enough). This was tested on an Amanero Combo384 device hooked up to a ES9018 DAC. USAGE (try only on DACs that support DoP): - Add dop "yes" option to mpdconf - Be sure to set at least 24bits per channel before playing some DSD file (using Audio-MIDI-Setup) - Based on the dop setting, MPD will change the sample rate as required and output DoP signal to the DAC - Hog mode is recommended to ensure that no other program will try to mix some output with the DoP stream (resulting in bad noise) - Alternatively set the default output device to another device (e.g. the built-in output) to avoid having other audio interfere with DSD playback |
||
---|---|---|
.. | ||
plugins | ||
Client.hxx | ||
Control.cxx | ||
Control.hxx | ||
Domain.cxx | ||
Domain.hxx | ||
Filtered.cxx | ||
Filtered.hxx | ||
Finish.cxx | ||
Init.cxx | ||
Interface.cxx | ||
Interface.hxx | ||
MultipleOutputs.cxx | ||
MultipleOutputs.hxx | ||
OutputAPI.hxx | ||
OutputCommand.cxx | ||
OutputCommand.hxx | ||
OutputPlugin.cxx | ||
OutputPlugin.hxx | ||
Print.cxx | ||
Print.hxx | ||
Registry.cxx | ||
Registry.hxx | ||
SharedPipeConsumer.cxx | ||
SharedPipeConsumer.hxx | ||
Source.cxx | ||
Source.hxx | ||
State.cxx | ||
State.hxx | ||
Thread.cxx | ||
Timer.cxx | ||
Timer.hxx |