WHAT IS AudioRack Suite?

AudioRack Suite is an open-source radio broadcast automation and live assist system.  The system is composed of three major components:

1. server - faceless (deamon) multi-client, mutli-bus audio engine

2. clients - User interface to control the server and manage the music library and automation schedule.

3. database server (MySQL 5.x and latter supported)

The Server---

The server component, called arserver, is a faceless program which manages the playing, recording, and processing of all the audio.  It is a multi-input, multi-output mixer which can handle live audio input sources, VoIP audio sources, and file based audio sources.  arserver also manages the current playlist, handling segues, logging item meta-data, performing database queries for automation, etc. arserver also handles four mute groups and monitor mix-minus functions for it's audio outputs.  The mix-minus functionality is also used for creating a mix-minus feed back to VoIP callers when an VoIP audio source is live.  arserver interacts with clients connected to it, with the database server, the host computers audio interfaces and the host computers file system.  MIDI machine control mapping options are available for live inputs to control tape and CD players. The server also supports up to 8 AudioUnit processor plugin per player, output, or recorder, processor speed allowing.  

Since arserver is responsible for playing audio files, it must have either direct or reliable network access to the disks which contain the audio files referenced in it's music library.

By default, arserver is run automatically when the ARStudio client run if arserver isn't already running.  It can optionally be set to run automatically as part of the host computer's startup boot process, in which case it runs in a special "arserver" user account.  In this mode, user changes on the host computer via login window or "fast user changes"  will not effect/stop arserver.  This is the recommended mode of operation for an internet or broadcast radio station.  AppleScripts are included (in the /Applications/ARSuite/ folder) to enable and disable this mode.

The Client---

The client can be any of the following programs:

1. ARStudio - a live-assist client to arserver written in objective-c.  It's fast, efficient, work well over a network even if the network is slow.  This is the client for live DJ use.

2. ARManager - a library and automation management client also written in objective-c.  This client interacts with database and audio files only and does not involve arserver.   

3. Telnet - for the advanced user, you can use any telnet type program to connect to arserver via it's TCP/IP control port and manipulate it using text commands.

The clients can run on either the same host computer as the server or on a separate computer which has network access to the database (see below) and arserver.

The Database---

While not part of this installation package, the system requires access to a MySQL database server (version 5.x or higher required).  The database can reside on the same host computer as arserver, or on another machine as long as it is reliable reachable by the arserver host computer via a network.  It will become possible (in the future) to use PostgreSQL, SQLite, or other database systems with a libdbi interface.  But for the moment, only MySQL is supported.  

MAC OS X SYSTEM REQUIRMENTS
- Intel based Macintosh system.  

- QuickTime 7.0 or higher 

- OS X 10.6 or higher
	
- at least 256M of RAM, 512M would do you good. 

arserver allocates wired (dedicated, never paged out) memory for all of it's 11 second audio buffers. This work out to around 4MB per player at the 44.1ksps file sample rate plus 34MB for an eight channel, 96 ksps mix bus buffer and an additional 8MB per input definition (for mix-minus buffer).

- 1.2 GHz or faster recommended for default 96ksps audio engine sample rate.

- Access to a MySQL server.  

Tested with MySQL 5.x.

!!!!! UPGRADING FROM A PRE 3.2.1 VERSION !!!!!

VERY VERY IMPORTANT -- AudioRack Suite Versions 3.2.1 and later do not support the pre 3.2.1 file Hash format.  If you need to upgrade, the steps that follow must be performed:

1. Rename preferences files:
a. From the home folder of the account you run ARStudio and ARManager in, go to the Library/Preferences/ folder.
b. Rename the preference files org.arsuite.armanager.plist and org.arsuite.arstudio.plist to com.redmountainradio.armanager.plist and com.redmountainradio.arstudio.plist

2. Run the installer package as if you were installing ARSuite for the first time.

3. After the installer is done, run ARManager in /Applications/ARSuite/.  ARManage will prompt you to connect to a library.  Enter the library connection information (or use a favorite if set previously) and click the "Initialize" button. This will upgrade the database from it's previous version to current version. Initializing an already up-to-date database will be ignored.  Note: a similar process can be done from ARStudio in from the "configure server" database panel. 

4. Run ARStudio in /Applications/ARSuite/. From ARStudio, run/connect to ARServe as you did before, making certain you have disk/network access to all audio files in your music library. Open the ARStudio console window (under the Windows menu) and type Type dbsync<return> in the text field at the bottom of the window.  This causes ARServer to go through all the files in the music library calculating the new Hash code used in this version of ARSuite for each file.  ARStudio showing the progress of the dbsync, disabling all other functions until it is complete.  This takes about 10 minutes with a 15,000 song library
		

WHAT WILL THIS INSTALLER DO?

This package installs arserver and AudioRack.  This package does NOT include a database server.

- arserver and new libdbi library components will be installed in:
  /usr/local/arserver/

- old PowerPC libdbi library will be installed in:
  /usr/local/lib/
WARNING:  Existing libdbi components will be overwritten!

- ARSuite clients and related application will be installed in:
  /Applications/ARSuite/

- The old AudioRack realbasic application will be removed!  The old AudioRack client is no longer supported and is no longer compatible with the Library database structure.  ARStudio and ARManager together replace and expand on the original functionality found in the old AudioRack application.

- daemon mode (run at system startup) config files installed in:
  /etc/arserver/
and
  /Library/StartupItems/ARServer

- creates a new user and group called 'arserver' which arserver runs under in daemon mode.

Again, this installer WILL overwrite previously installed libdbi components found in /usr/local/lib to upgrade to the new libdbi 0.8.2 release. It will NOT overwrite any already existing arserver configuration files.  However, this version has new locations for config files so old files will not be read when you run arserver.  When run under a normal user, config files will be placed in ~/Library/Preferences for that user.  In daemon mode the config files will go in /etc/arserver/

WHERE CAN I LEARN MORE ABOUT AUDIORACK

Unfortunately, I have not had a chance to complete the documentation for AudioRack, however there are extensive, step by step installation examples to get you started.  It is a complicated system, so I understand that it is a lot to ask of the user.  However, I wrote this system for my own use at mountainradio.com, so what you see is what you get.  
Visit the AudioRack web site at http://redmountainradio.com/arsuite/ to see if I have any new information or for old documentation of previous (and vastly different) versions of ARSuite.

And finally, go to http://mountainchill.com to hear ARSuite in action!

Content © 2006 - 2010, Ethan Funk
ethan@redmountainradio.com
Sept 15, 2010
