How does ConvoProxy work? (Version 2.x and later)

ConvoProxy runs on a Synology/QNAP NAS/Linux or Windows machine. When a streamer asks for a media file, ConvoProxy will contact the ordinary media server and - acting as a ‘man-in-middle’ or ‘proxy’ - convolves and transcodes data sent by the other server. The regular media server does not need to run on the same machine/box as ConvoProxy. If box running ConvoProxy is, e.g., called xxx, ConvoProxy will present itself as ConvoProxy[xxx]

Differences from ConvoProxy 1.2.x and earlier: in those older releases, the media server had to run on the same machine/NAS as ConvoProxy, and ConvoProxy impersonated the media server, presenting itself under the same name to the streamer/Control Point. Furthermore, earlier releases of ConvoProxy did not support Windows.

The internal processing pipeline used by ConvoProxy is depicted here.

Which source media types does ConvoProxy support?

Currently: WAV, M4A, FLAC, MP3, and AIFF.

Why does ConvoProxy produce WAV output?

The overall experience with the related project “ConvoFS”, was a strong demand for WAV output. Furthermore, it is the easiest to implement. So the easy choice for ConvoProxy is to do WAV output.

Is ConvoProxy free?

ConvoProxy is Open Source, free to use, and licensed under the “MIT license”. The choice of this license rather than e.g., the GPL license was motivated by the programming language chosen (“Go” aka “Golang”) and the licenses of 3rd party components. It has no practical consequences for the end-user.

To see the program source code for a given release of ConvoProxy. please download the Linux distribution and unpack it. Alternatively, you can - if you’ve already installed ConvoProxy - generate a “log+config” bundle (under the Misc menu) and download it. It is in ZIP format, and contains the source code too.

What do I need to run ConvoProxy?

You may use a QNAP/Synology Intel/AMD-based (e.g., Atom/Celeron/Xeon/Ryzen 64 bit) NAS or an ordinary PC/Virtual machine running Windows or Linux.

A QNAP NAS has to support running docker containers. For a list of Synology/QNAP models supporting these requirements, please refer to the links: Synology1, Synology2 and QNAP.

Synology NAS devices with known success stories include most ‘Plus’ models.

For Synology boxes running DSM 6.x, there’s a choice of running a docker-enabled version or a ‘native’ version. For DSM 7.x, there is and will only be the native version. The native versions require the installation of the 3rd party package ffmpeg.

What products are in use with ConvoProxy?

ConvoProxy initially only supported Linn streamers. Current releases are developed and tested also with Raspberry Pi-based streaming products in UpNp or OpenHome mode. Success with other vendors include SMS streamers from SotM.

For media files stored on local storage, ConvoProxy is in widespread use with the Minim media server.

Does ConvoProxy support gapless playback?

Indeed, when the playback of a track nears completion, ConvoProxy will query your streamer for the upcoming music track and start processing it in advance so there won’t be any gaps in live recordings.

Take care

General common sense wrs DRC setups are also advisable when using ConvoProxy - turn down the amplifier volume when a new filter is uploaded, avoiding loudspeakers getting damaged _should_ the filter file be corrupt.