Sunday 31 January 2010

The Work Keeps Going

So, when I should really be working on my coursework project, I've been putting a bit more time into AllDay DJ. In the short time I have been doing this, I've managed to pull a fair bit off. Below is the list of features I've added this week:

Sweep Point
In previous version of AllDay DJ sweepers and voice tracks were dumbly played over the intro for songs. Now it's possible to have such a sweeper fully produced then sweep on the dry bit (like those "we play music like this... Donkey FM!" jingles). How? Just set the sweep point.

Networking
A large number of stations are doing it - taking programming from another station. The command cart system has been built in AllDay DJ to allow simple networking between a "server" station and a number of clients. The result: you get a nifty program from down the road with your own adverts and jingles.

Even better - it's a plain text protocol. This makes building extras for the system easy. All command start with ADDJ 3.0 to indicate the protocol (ADDJ) and version (3.0) and then consist of single words plus parameters. Proof, I suppose, that I listen to my lecturers about designing network protocols.

Command Cart System
It's not only networking that has benefited from work in this area. It's now possible to take an IRN feed and have it go in any sound card on your system and out any other. Very useful! The only issue now is endurance testing it - there's only so many times I can put up listening to a dummy news feed (really some music).

Keyboard Shortcuts
No need to fumble with that mouse any more! Some sensible shortcuts have now been build into AllDay DJ and work no matter what AllDay DJ window is in focus. Not bad for a Java application. The plan is to work on an extra mini-keyboard at some point with will have all the major keys in one place.

Scheduling
This is mostly done - music and jingle scheduling works on the well loved "deck" model and repetition rules can be enforced. As for adverts - erm... I've never had to schedule any in my life! Ideas for what would be required here are always considered good.

So... wrapping up: Remember - this is all cross-platform. I've been developing on a Windows XP system and testing on a headless Linux server (well, running vnc4server - there's no monitor plugged in). Also, it's all sitting on top of the reliable and easily backed up PostgreSQL database system. No bespoke binary rubbish here!

Sunday 24 January 2010

Voice Tracking in 4 Easy Steps

It's a part of modern radio that you can't get away from - voice tracking. If your response is "voice what?", it's the recording of presenter links in advance to be played out by the computer later. Often you won't know this practice is being used.

Anyway, its a feature missing from the older versions of AllDay DJ. So, I've just added it to version 3 as demonstrated in the following screen capture:



The left screen is the voice tracking panel and consists of the following steps:

  1. Record or choose the audio to use.
  2. Review the audio.
  3. Add details (so other users can tell what it is).
  4. Save then drag-and-drop into the log.
The right-hand screen is the log screen. Normally, it's showing the current log. However, as shown by the banner, it's actually a "future" log for 24/01/2010 at 11:00. You can edit and save any log without affecting what's going to air. Neat, eh? What's more, you can drag and drop audio from the future log into empty players to preview with. Even neater!