Emergency Alerting With Different Voices

Our EAS application monitors your country‘s NADD stream and, if there is an emergency message that matches your alerting box, it will immediately interrupt and play the announcement. The way EAS messages play on radio, TV or cable depends on how they were issued by the originator. Many messages are sent by Pelmorex or NAAD as an MP3 file, sometimes served from AWS. The player downloads this file and plays it on the air. If the MP3 file is missing or corrupted, the application will fall back on its onboard texttospeech (TTS) engine, reading out the description of the CAP alert. The quality of the onboard alerts is typically quite poor, and may sound like a robot reading the text.

Canadian CAP-CP Common Alerting Protocol

Canadian CAP-CP Common Alerting Protocol

OBPlayer has the capability to use AWS POLLY Machine Learning AI for texttospeech (TTS) instead of the onboard TTS. When an alert is received, the text is sent to AWS POLLY using the various voices available in the dashboard setup. If the server at POLLY fails, or times out, OBPlayer will automatically switch to the onboard TTS espeak application. POLLY is an AWS service that offers a free key for basic alerting, which is easily configured in the player dashboard. For larger networks, the cost of the AWS service starts at $4.00 USD per million characters, sufficient for thousands of hours of TTS. When a valid CAP message is received, users of OBPlayer on a CATV head end with an image file (such as a JPEG from the alert issuer) will find that it plays full screen, with a POLLY TTS of the message, if no MP3 file is sent. If no MP3 or JPEG file is included in the alert, a red scroll (white text) will display with accompanying TTS. This feature is configurable in the player dashboard setup.

See our latest Support documentation for POLLY Voices and instructions how to obtain a free API key.

Alert Ready Test May 5 2021   

Station English French
On-Air CFET using Polly Ai Voices
Clone of CFET feed using Espeak  

Overall, the first scheduled test using new code on  OBPlayer-5 ML350 hardware platform with Polly AI voices enabled was successful. The alert was heard on air with clear audio, and the player behaved as expected. Two ML350 boxes with Polly AI language enabled and onboard Espeak TTS worked well during the live on air broadcast on CFET Radio 106.7 FM Tagish, Yukon. The Polly AI enabled box was clear and easily understood, while the onboard Espeak TTS was not as good. Both boxes behaved as expected when playing the test alert and when rebooting.

A couple of minutes past the scheduled time of 13:55 Pacific, an alert was broadcast with two female voices speaking the CAP test message in English and French. The alert was heard on CFET with clear levels and a slight crackle/distortion due to source over modulation. The “.ca URL was pronounced correctly asdotseea when using Polly TTS, however, when using Espeak TTS, the URL was pronounced asdotkah“. The alert box was set to UTC time and functioned properly, playing the broadcast intrusive message one time as required, with the option to replay the alert manually in the dashboard menu until it was canceled or expired. When the playout computer was rebooted five minutes after the test was over, the alert started playing again and was canceled immediately, moving it to the expired queue. Logs and alerts showed that both boxes behaved as they should, without any user intervention.

This onair broadcast heard on CFET featured two different female voices speaking the CAP test message in English, followed by French. The audio quality was good, with only a slight crackle or distortion, and the source was not overlymodulated. It was clear that the voices were computergenerated, not robotic sounding. The French alert generated by espeak TTS was not very good, but the alert generated by Polly was clear and easily understood. Polly pronounced the “.ca URL correctly asdotseea while espeak pronounced it asdotkah“.

Alert came a couple of minutes past the scheduled time for 13:55 Pacific, with brief silence which cut in for a second,  before attention tones. This silence break (when POLLY is used) is a known issue with our code.  Date\Time set for UTC on alert player box.

The on air broadcast heard on CFET were 2 different female voices, speaking the CAP test message in English, followed by French. Levels OK, clear, maybe a slight crackle\distortion, source over modulation. Could still tell it was a computer, not robotic sounding.  In the espeak French alert, “www” didn’t sound correct.  Alerts broadcast with onboard Espeak TTS wasn’t very good, using Polly was clear and easily understood.  Polly pronounced the “.ca” url correctly as “dot-see-a” while espeak pronouced it as “dot-kah”

A couple of minutes after initial successful test, used our function button to replay the test alert.  It did this properly, and reported in logs it was being played a second time. This allows stations to set to the player to play the BI (Broadcast Intrusive) message the required one time, but with the option to replay this alert manually in dashboard menu, until it is either; canceled or when it is set to expire in the CAP message. I inadvertently rebooted the playout computer five minutes after the test had finished. Upon startup, it began to play the test alert, simulating what would happen if a power failure occurred during an alert. Based on the expected behavior, the alert should have replayed once upon power restoration, unless the message had expired. I then used the cancel button to expire the alert, which did occur immediately; however, the alert finished playing while still in progress. Subsequently, the alert was moved to the expired queue.

Reviewing both the logs and alerts, it is evident that both boxes behaved as they were designed to and properly played the test alerts without any user intervention.

Alert Ready Tests – Polly Dashboard

Alert Ready Tests -OBPlayer Dashboard

CAP Alert Issued by EMO-YG through the Alert Ready emergency messaging network

<?xml version=”1.0″ encoding=”UTF-8″?><alert xmlns=”urn:oasis:names:tc:emergency:cap:1.2″><identifier>48E30C4B-0DBC-BA1B-E318-D67DB22FEDEA</identifier><sender>YukonEmergencyMeasuresOrganization</sender><sent>2021-05-05T13:57:59-07:00</sent><status>Actual</status><msgType>Update</msgType><scope>Public</scope><code>profile:CAP-CP:0.4</code><code>layer:SOREM:1.0</code><references>YukonEmergencyMeasuresOrganization,A273868D-5266-331E-EE5E-D3A1C35F224D,2021-05-05T13:55:06-07:00</references><info><language>en-CA</language><category>Other</category><event>Test Message</event><urgency>Immediate</urgency><severity>Minor</severity><certainty>Observed</certainty><eventCode><valueName>profile:CAP-CP:Event:0.4</valueName><value>testMessage</value></eventCode><effective>2021-05-05T13:57:59-07:00</effective><onset>2021-05-05T13:45:00-07:00</onset><expires>2021-05-05T14:30:00-07:00</expires><senderName>Yukon Emergency Measures Organization</senderName><headline>Test – this is a scheduled test of the Yukon Emergency Alerting System</headline><description>This is a TEST of the Yukon Emergency Alerting System, issued by Yukon EMO. If this had been an actual emergency, you would hear instructions that would assist you to protect you and your family. Visit www.yukon.ca and stay tuned to local media. This is ONLY a TEST.</description><web>https://yukon.ca/en/emergencies-and-safety</web><parameter><valueName>layer:SOREM:1.0:Broadcast_Immediately</valueName><value>Yes</value></parameter><parameter><valueName>layer:SOREM:1.0:Broadcast_Text</valueName><value>This is a TEST of the Yukon Emergency Alerting System, issued by Yukon EMO. If this had been an actual emergency, you would hear instructions that would assist you to protect you and your family. Visit www.yukon.ca and stay tuned to local media. This is ONLY a TEST.</value></parameter><parameter><valueName>layer:SOREM:2.0:WirelessImmediate</valueName><value>Yes</value><

CAP Common Alerting Protocol

Hire an expert with experience to custom code solutions for your project, big or small. We look forward to providing your government organization and country with the best CAP (Common Alerting Protocol) emergency alert automation solution available. Please Sponsor and contribute to open source projects that utilize CAP.

Sign up for our Newsletter and Contact us for more info. We are here to help.

CAP Common Alerting ProtocolCAP Global Development

CAP Global Development Status