Monitoring PPM for Online Streams

August 1, 2011


Here's one way to monitor your online PPM signal.

If you engineer at any radio station in one of Arbitron's 48 PPM markets you are already familiar with Arbitron's PPM encoding and encoding monitoring systems. For those unfamiliar, PPM is a clever system that uses acoustical masking techniques to hide codes within a station's program audio for the purpose of continually identifying that broadcast station. While inaudible to humans, these codes are easily heard by the pager-sized Portable People Meters worn by Arbitron panelists for the purpose of generating ratings data. To a station in a PPM market, un-encoded audio is tantamount to being off the air. No codes, no ratings; a worst-case scenario that has already happened at least once and cost that station one whole month of ratings. Yikes!

Arbitron provides an encoding monitor for every encoded audio service; HD Radio, Web streams, AM, FM, etc. These monitors are your only source of confidence that your stations' audio is truly encoded. For this they must be connected to a reliable source of audio - a source representative of what a PPM panelist would hear; what their Portable People Meter will receive. This is a fairly simple and straightforward scheme for the over-the-air broadcast: connect a well-fed tuner to the input of the encoding monitor and connect the encoding monitor to a suitable alerting system. Repeat once for each station you need to monitor.

The scenario changes when you consider needing to monitor encoded Internet audio streams. For us, that adds six more encoded audio paths and leads to a puzzling predicament. For me, it wasn't enough to simply monitor what was hitting our streaming encoder. I wanted to make certain the PPM codes were intact after their long journey through processing, codecs, and distribution channels. Again, representative of what an actual Portable People Meter receives. This meant having to continuously feed audio from something that could tune in the streams.

Previous solution

My first solution was not a bad solution by any measure. I didn't want to run six computers full time so I bought several Roku Soundbridge M1001 network music players, had Middle Atlantic provide rack mount shelves with custom cut faceplates, mounted them and fed them to the encoding monitors. I thought this a well-designed solution and it worked reasonably well for several years. Unfortunately, Roku has discontinued the M1001 and I have found no satisfactory replacement. While the Roku is a reasonable unit for anyone wishing to use such an appliance it was none too happy being pressed into continuous service. Frequent attacks of silence and user interface freeze-ups had us restarting one or more of them almost daily. Not what you want feeding an alerting system. Remember Aesop's fable about the boy who cried wolf?

Six Radio? Sure! Pro applications running at once.

Six Radio? Sure! Pro applications running at once.


Recently our stations made several upgrades to the streams. Most significant was a switch to AAC encoding which the Roku M10001 couldn't decode. The time had come to replace them.

Clearly the need was for a compact, inexpensive and above all reliable source of audio to feed our streams to the PPM encoding monitors. My intention was to feed every encoding monitor from just one computer. The benefit would be low cost, lower power consumption, low space requirement, and single point management. For this to be viable several challenges had to first be met. Obviously a computer that could accommodate six simultaneous audio outputs would have to be found. I would need to find software that was not averse to "tuning" several streams and outputting them each through independent audio ports.

- continued on page 2



Here's one way to monitor your online PPM signal.

The hardware and software

Finding a suitable rack mountable computer was simple. A quick browse of the storeroom yielded a used 2RU case with a 2.66GHz Pentium 4 and a fresh install of Windows XP Pro. I first tried without success to use two Digigram MixArt audio cards that provide four outputs each, unfortunately their age and tricky wave driver support made them unsuitable. For an alternative I found the M-Audio Delta1010LT that provides four stereo unbalanced outputs is relatively inexpensive and supports my PC's PCI-X bus architecture. I bought two. Total cost: $340.

The software proved to be the hard part. I first checked out the usual suspects: VLC, Winamp, Quicktime, iTunes, Window Media Player. All had issues. You couldn't run more than one instance of the player or you couldn't select the desired audio output - each stream has to be assigned it's own dedicated audio port. Also important is repeatable configuration so that if the system needs to be restarted all of the audio patches remain. Naturally no software designer ever imagined it necessary to connect to more than one stream so I needed to find a way to run six instances of the player application each assigned to its own dedicated audio output.

Following a somewhat exhaustive search I fell upon an obscure player and web stream recorder application by The Best Ware Studio called Radio? Sure! Pro. Thinking the program aptly named I tried it and found it hit all of my bullet points. I could run six instances each pointed to a different output of the two M-Audio Delta LT1010 cards installed in the system. Best of all each instance could be started by way of a simple desktop shortcut. Total cost: $10.

Task manager shows minimal resource requirements, the mixer app for the M-Audio Delta 1010LT cards, and one of the applications.

Task manager shows minimal resource requirements, the mixer app for the M-Audio Delta 1010LT cards, and one of the applications.


Configuration

Radio? Sure! Pro reads its configuration at application startup from an XML file located in whatever folder you chose to run the executable from. This makes it possible to install several copies of the program, edit the XML accordingly, and create a shortcut. The XML file is really the key here. If the programmer had chosen to save his settings in the registry, it would not have been possible to create several slightly different setups whereby the audio output and stream URL are unique. Of course editing the XML file is a snap too, compared with attempting to locate and manipulate several cryptic registry entries.

With six streams all playing out simultaneously, I note a minimal 20-30 percent CPU load and very consistent 500MB of RAM memory in use. As I write this, our system has performed without fail or interaction for three solid months and I suspect it will run smoothly well into the future.


Kernen is the chief engineer of WCSX, WRIF and WMGC, Greater Media Detroit.



Receive regular news and technology updates. Sign up for our free newsletter here.

Comments