Custom Gubbins

Much of what I do is a custom solution for when requirements are “a bit special” – or when there’s no existing solution available.  A great deal of my work never gets mentioned on this site but I’ll try to you an idea…

Along with Windows applications, I also dabble with Arduino and RaspberryPi – Any project I write for these platforms will be free and open-source.  There are already lots of “studio clock” apps for the Pi (I’m way too late to that party), but simple on-air controllers (GPIO, RS232, Ethernet etc) as well as wall-mounted logo-displays are ideal projects for the RPi.  Watch this space!

Please note that I am fully-booked at the moment and unable to undertake new projects no matter how interesting or lucrative!


Now Playing / RDS / TA Integration
I have helped a few Community Radio stations integrate their playout (mAirList, Myriad) into their FM RDS.  Along with the addition of the current song sent to the RadioText field, the Traffic (TA) feature can also be triggered (and disabled!) by playing the station’s travel jingles.  I’ve also provided scripts for customers using Myriad’s “OCP” which determines whether a playing item (advert, song, jingle etc) needs to be sent to the website, RDS, online etc – or, in this case, send a generic message about the station/show.


Studio/Split Transmitter Routing
As part of an earlier custom solution (Arduino audio switcher), I was asked to come up with a front-end that can be run on a 7 or 10-inch touchscreen display.  It shows audio levels, studio routing as well as split assignments and timing.  A number of GPIOs are offered allowing “mic-live” and other status LEDs.

It has the ability to select a “master” controller in order to assign studio audio routing as well as split-triggering.  This software may be released publically as it’s fully compatible with AdSplits.

uScreen Transmission and Split Routing


Splits Monitor
Written to show the status of multiple “split” players across a network.  Uses TCP/UDP as well as RS232 to display status+timing for up to 20 split players.  Panels are green during normal playback, blue at <10sec followed by red at <5sec.

A version of this application is available as part of my AdSpits package

The application can be moved by dragging the bottom/right areas as well as right-click to configure panel layout (1, 2, 3 or x-by-y panels on a grid).  An option to be “always on top” means it can sit on the same machine as your playout software.  The screenshot below shows SplitMon during playback of remote “splits” – and showing the contents of each “break”.  A more basic (and smaller) view is also available, similar to “GARC” – showing timing and current track.

Split Monitor during playback


RadioLookupRadioLookup
A lookup application that displays nearby AM, DAB, FM transmitters/services within a set distance from specified location.  Using Ofcom’ TXParams data, it can easily tell you what DAB services are nearby as well as search for local Community Radio stations.

A reduced-functionality version of this software is freely available on the RadioLookup page with the ability to unlock the full feature-set for a one-time £5 donation.


SiteMonitor
This was written in late 2015 and takes audio from several inputs and offers a VU Meter for each, plus several GPIO displays.  I recently wanted to improve the VU metering on another project and used this as a test for my attack/release timings.

SiteMonitor - custom application


Audio File Backup (with fail-safe validation)
A recent task has been to produce an application that enables audio files (songs, adverts, jingles etc) to be backed-up regularly.  This could easily be achieved with an xcopy batch file but what if the audio file has been corrupted?

My solution was to produce a simple Windows GUI that would look at various audio folders and copy new/replaced files to a backup location but also highlight issues such as significant audio length discrepancies.  It allowed regularly changing items like promos to be copied (and archieved) but issues with songs (that don’t really change duration much!) are flagged for attention.  It became evident that the program needed to know not only the size of the file, but also whether it really did contain audio!


On-Air Controller / Split Routing
I was asked to come up with a reliable “on-air” controller and “split” handler.  Essentially, the customer wanted to use several studios from which to broadcast but to a variety of different “destinations” (ie: transmitters).  They also wanted the ability to play “split” advertising+branding and have my controller deal with the incoming+outgoing GPIO signals.

Each studio is a “source” and each transmitter (with split playout) is a “destination.  My solution would take an IP or RS232 command from a studio as they took/released control so that when a single “split” command came from the studio, the controller would send commands (GPIO, RS232 or TCP/UDP) to the destination/s currently under that studio’s control.  A series of relays and buffer-amps controlled the audio side of things.  As the controller was on the broadcaster’s LAN, it could push status updates to a remote monitor as well as issue debug logs.

This solution was achieved using an Arduino MEGA, ethernet shield and a 1U enclosure.  Arduino programs (or “sketches”) are written in C++ and offer great flexibility and cost-savings over a dedicated PC.


Image Picker for Radio Studio
Customer wanted to display a variety of logo images on wall-mounted flatscreens in their studios.  The addition of a “Now Playing” text banner was proposed, and my solution was a “Windows” GUI showing a list of available logos – When clicked, the logo would display on each screen.  Unique to each logo was the placement of the now playing information which could be dragged to a position fitting it around the various logo designs.