Chorale installation

Installing Chorale on Linux/Unix
Before resorting to installing Chorale from source, you should check whether your Linux/Unix distribution has an existing binary package for Chorale. If it does, that will save you a lot of hassle.

If you want or need to install Chorale on Linux/Unix from this web site, it comes only in source-tarball form. It uses the standard “configure” mechanism, so installing it is like any other package:

tar xjf chorale-X.XX.tar.bz2
cd chorale-X.XX
configure --help
configure any-options-you-feel-you-need
make -j4
su
make install
If all is successful, it will install two binaries: choraled, the background daemon that does all the file-serving, and choralecd, the desktop application that acts as the example user-interface. A small collection of ancillary files (icons and so on) are installed in /usr/local/share (or wherever else you tell it to).

To test the choraled installation, start it with:

choraled name-of-your-music-directory
After a pause while choraled scans your media files, it will announce its presence on the network, and UPnP and Receiver-protocol clients should be able to connect and play your music. If you don’t yet have any suitable clients, choralecd itself can be used.

Consult “choraled --help” for other settings to customise the operation of choraled. Once it’s working to your satisfaction, you should probably arrange for choraled to start automatically on boot-up; exactly how this works varies from distribution to distribution. On some systems just adding a line:

/usr/local/bin/choraled your-args
to the file /etc/rc.local is enough, but on others it’s more involved. If you don’t want to run choraled as root — which, unless you trust all the devices on your network, you probably don’t — then the user it runs as needs read access to the music locations (obviously) and write access to the directory its database is in (“-f” option to choraled). If using the DVB recording features, it also needs write access to the “music-root/Recordings” directory.

In a multi-computer network, probably only one server — the one with the music files — should start choraled as a file server. The others, if they have CD drives or audio outputs that should be shared, can also run choraled but should use the “-r” and “-m” options. In particular, Rio Receivers don’t cope if more than one server is active on the network.

By default, Chorale is built with debugging and tracing support enabled. To build leaner versions, use:

make DEBUG=0 -j4
make DEBUG=0 install
Naturally you don’t have to use “-j4”. Use whatever “-jN” number you normally would, or omit it altogether. (Don’t use -j without the number — make will start over 180 g++’s simultaneously, enough to trouble even a very fast machine.)

Using the tracing support (by running “choraled -d your-args”) should be very helpful if you need to report a problem with choraled.

Republishing Receiver servers as UPnP
Chorale 0.15 and later is capable of republishing, or gatewaying, an existing Receiver server (such as a Rio Central) to UPnP clients (such as Roku Soundbridge or Sony Playstation 3). To do this, use the “--assimilate-receiver” option when starting choraled.

As the Receiver protocol only allows for one server per network, using “--assimilate-receiver” disables Chorale’s own Receiver server. (If you supply a music-directory too, Chorale will merge the two sources of music and supply the UPnP client with the combination.)

Rio Receiver service from Linux/Unix
Rio Receivers (and Dell Digital Audio Receivers, which are the same thing really) boot their firmware from the network when powered-on. The firmware in question is copyright Rio, and will be for decades, so can’t be offered for download here. The file “libreceiverd/README” in the Chorale distribution explains how and where to obtain the firmware files.

This is only necessary for real Rio Receivers; Empeg car-player Receiver Edition does not require these firmware files.

Installing Chorale on Windows
Chorale for Windows comes as a binary package, and need not be compiled each time. (If you do want to recompile it, see below.) Chorale is tested on Windows XP, but should work on anything from Windows 2000 onwards.

In the Zip file, you get the Chorale service executable choralesvc.exe, plus a small collection of DLLs and other supporting files. Chorale installation is only half-automated: first you must unzip the Zip file wherever you want Chorale to reside — say, “Program Files\Chorale”.

Then, using a command-window, run choralesvc with the “-i” or “--install” option:

c:
cd \Program Files\Chorale
choralesvc -i “name-of-your-music-folder
If all is successful, a message will be printed saying so. You need to be logged-in as an administrator user to install Chorale.

Chorale usually runs as a service — meaning, it runs whenever Windows is running, whether or not anyone is logged-in — and can be started or stopped in Control Panel / Services in the normal way. However (at least on Windows XP) when you first install Chorale, you need to run it once as a normal program in order to get Windows Firewall to allow it to use the network:

c:
cd \Program Files\Chorale
choralesvc -d
lots of tracing information will appear, and a dialog box will pop-up saying “Do you want to keep blocking this program?”
Click on “Unblock” to reassure Windows Firewall. Then go to Control Panel / Administrative Tools / Services, find Chorale in the list, right-click on it, and choose Restart. Hopefully, this will all be made automatic in a future release.

The ability to run Chorale as a normal program (“choralesvc -d”) should also be very helpful if you need to report a problem.

If you ever want to change your music folder, run “choralesvc -i” again with the new folder; there is no need to uninstall Chorale (“choralesvc -u”) first.

Rio Receiver service from Windows
To serve real Rio Receivers, Chorale needs the firmware files installed by the original Receiver server software, Rio Audio Receiver Manager. You should install that first (instructions are included in the Windows downloads of Chorale), but — as Receivers can only work with one server at a time — you should then disable (not uninstall) Audio Receiver Manager by removing it from the Start->Programs->Startup menu.

Chorale for Windows reads the registry entries left by Audio Receiver Manager, in order to find the firmware files — hence there is no equivalent of Linux choraled’s “-w” or “--arf” options.

Republishing Receiver servers as UPnP
Chorale 0.15 and later is capable of republishing, or gatewaying, an existing Receiver server (such as a Rio Central) to UPnP clients (such as Roku Soundbridge or Sony Playstation 3). To do this, use the “--assimilate-receiver” option when installing choralesvc:
choralesvc -i --assimilate-receiver
As the Receiver protocol only allows for one server per network, using “--assimilate-receiver” disables Chorale’s own Receiver server. (If you supply a music-folder too, Chorale will merge the two sources of music and supply the UPnP client with the combination.)

Modifying and recompiling Chorale for Windows
Chorale for Windows is currently built using an i586-mingw32 cross-compiler from Linux. If you have a suitable cross-compiler installed, the incantation is:
tar xjf chorale-X.XX.tar.bz2
cd chorale-X.XX
configure --host=i586-mingw32 any-other-options
make -j4

Native compilation, whether with Mingw32 or MSVC, has not been tried — but might work. Patches are welcome.

Uninstalling Chorale for Windows
Uninstallation is very much like installation:
c:
cd \Program Files\Chorale
choralesvc -u
Obviously, you need to replace “C:\Program Files\Chorale” with wherever you put choralesvc when installing it.
— Peter Hartley, 2009-May-01
Get chorale at SourceForge.net. Fast, secure and Free Open Source software downloads