Synchronator

Synchronator brings bit perfect volume control to Hi-Fi systems with Linux as source.

This enables control of your Hi-Fi amplifier volume level for Airplay, DLNA, OpenHome, MPD, Squeezelite, and Roon a.o.

Technical background

Contrary to many other operating systems in Linux it is not uncommon that audio applications, such as MPD and Shairport, allow audio data and mixer/volume data to be send to different (audio) devices. By sending mixer data to a dummy/virtual soundcard*, volume control can be enabled without touching the audio data. Synchronator in turn can synchronise that volume level with any Hi-Fi system/amplifier that can be externally controlled (RS232/I2C/TCP/IR)**. In addition, changes in volume level at the amplifier side are synced back.

*) For Roon and the like a dummy mixer is created for the actual audio device/dac instead.

**) Support for IR control (via LIRC) is experimental. Tester(s) is (are) needed.

Requirements for audio applications

The only requirement for audio applications is that it allows Linux (Alsa) to take care of volume instead of some internal algorithm.

Known supported applications

Requirements for Hi-Fi amplifiers

Obviously, for a computer to control an amplifier that amplifier needs to be controllable. Many amplifiers are controllable via a serial connection (e.g. RS232, TTL, etc).

Synchronator supports serial (RS232, TTL, etc), TCP and I2C connections. IR support is experimental. At this moment I2C and IR devices can only be controlled, changes at that end will not be synced back to Synchronator. If there is any use for this functionality (I didn't find any): post a request.

Known supported amplifiers/brands

Features summary

Alternative uses

Synchronator is designed to synchronise the volume level between Linux and Hi-Fi. However, other applications can be thought of also. By running multiple instances of Synchronator, commands between incompatible devices can be translated. A few examples follow:

Installation and configuration

For installation check the installation manual or the extended installation manual

For setting the appropriate configuration settings check the configuration manual

For using Synchronator in combination with Roon, check the Roon configuration manual.

Downloads

Download the configuration library from http://www.hyperrealm.com/libconfig/.