Solution Stories: Live Announcements App

Published on Oct 18, 2023

header with the text 'Solutions Story - Live Announcment App

ABSTRACT: Specialized external audio feeds can interact with pre-programmed music and messages during play-out: an example of CUBE’s modular architecture.


CUBE is primarily a software-first company, and we’re in our element when the software modules we’ve created can be assembled in new and innovative ways into new apps that solve different problems for clients.

A beach town trolley tour company came to us with these challenges:

  • They wanted their guests riding along to hear pre-programmed beach-themed music, with message inserts professionally recorded by their marketing agency weaved in throughout the ride.
  • Then they also wanted the driver to be able to make announcements over a microphone whenever necessary, with the pre-programmed music fading out automatically the moment the driver starts speaking so that the driver would be audible.
  • After the driver finishes speaking, the pre-programmed music should resume by skipping to the next song in the program, for compliance with music licensing rules.

The first need is easily handled with our standard Licensed Music app, which is for playing messaging inserts with licensed music like Revolution Music.

For the remaining requirements, we created a small add-on app that can be installed on existing CUBE hardware and which coordinates with our standard Licensed Music app through the power of CUBE’s modular architecture.

Modules of our Licensed App

To see how our modular architecture facilitates this type of integration, here is a diagram of some of the modules in the standard Licensed Music app. The app has many different modules (more than we’re showing here), which can all talk to one another and exchange commands. This makes it possible to wire these modules up in different and customizable ways.

diagram showing the modules of our standard licensed music app

The above diagram shows:

  • The Network Management module handles keeping the device up to date with its scheduling instructions and audio.
  • The Scheduler module sends commands about scheduled playlist changes to the Music module and the Messaging module.
  • The Music module handles the licensed music (eg Revolution Music), and the Messaging module which handles the messaging insert. These two modules coordinate and send commands to the playback engine to trigger playback of the relevant audio.
  • The Playback engine module assembles and plays the audio you hear through the amplifier and speakers.

diagram showing the order in which the standard Licened Music App plays the content

This diagram shows how the standard Licensed Music app plays the content out:

  • As one song finishes, it fades out, while the next song has already started fading in. This provides a smooth cross-fade effect, just like you hear on a radio station.
  • If a message is scheduled to play, it is held until it can play in the gap between two songs.
  • Songs are not interrupted for messages, unless the message is urgent.

Specialized Add-on App

When our pre-built apps aren’t exactly what a client needs to solve their problem, that’s when we can use our software modules, reassembled in different ways (or even with custom programming) to accomplish exactly what they need!

The system delivered to the tour company is installed both with our standard Licensed Music app as well as a specialized add-on app. This add-on app adds the modules which handle the interleaving of the external driver announcements, which could happen at totally unpredictable times.

This diagram shows the modules when both apps are present:

diagram showing how the app function with both modules present

The most important of the add-on modules is the Voice Activity module, which monitors the external microphone.

  • When it detects that the driver is talking:
    • it triggers the Fader module, and
    • it starts passing the external microphone audio through to the Playback engine module.
  • When it detects that the driver has stopped talking:
    • it stops passing the external microphone audio through to the Playback engine module.
    • It sends the “Skip” command to both the Music and the Message modules, triggering those to start their next item on their schedule.
    • It signals the Fader module to go back to the original music level.

The other add-on module is the specialized Fader module, which tells the playback engine module how to fade out or in what it is currently playing.

The result is that when the driver has stopped talking, the pre-programmed audio automatically resumes from the beginning of the next song at the original music volume level.

The play-out sequence is thus a smooth combination of the three different sources of program material:

  1. Scheduled music channels
  2. Scheduled messages
  3. Announcements from the drive

diagram showing the play-out-sequence of licensed music app with specialized add-on modules

The riders hear the pre-programmed songs playing, then fading out when the driver speaks, and then the next song begins fading in when the driver is finished speaking. A beautiful cross-fade between the music and the driver’s announcements!

Summary, Other Examples

This illustrates one of the many ways we can build and assemble software modules into a custom app that solves a client challenge.

Other variations of this add-on app include:

  • When a restaurant chain asked that the audio from specific videos in their digital signage system should override the background music
  • When a bank asked for the “Next person to counter X” chime from an external system to be integrated, and this data to be aggregated so that they could better understand how busy each branch was at different times.

If you would like to explore a challenge or problem that we may be able to solve, please reach out to us by scheduling a consultation on our calendar!

Contact our Collaboration Team

By continuing to use our website, you acknowledge the use of cookies. See our cookie policy.