Signal for announcement overtime? (Talking too long)
A feature packed DJ console and internet radio client for Linux users
Status: Beta
Brought to you by:
s-fairchild
Could we get a new signal (idjcmonitor.py) that fires when a preprogrammed announcement goes into overtime (i.e., talking is longer than the planned duration)?
Use case: I’d like to make the red lamp in my signal tower flash (instead of being "on" for "On Air") to show "Hey, you’re talking too long".
This is mainly used for shows with pretty strict timing requirements, and often used in professional studios.
Seems perfectly reasonable.
Feature now ready for testing and also example usage code is in the docsrc directory.
Brilliant, thanks. Adapted my signal handler code and testing …
I’d like to support both »old« and »new« IDJC versions with the same code. Is there a better way to check for availability of the new "announcement" signal than this?
Last edit: Moonbase 2018-06-01
Exceptions are considered Pythonic. Even more so if failure is the exceptional case.
Just compiled v0.8.18_development (Commit hash: a2b65ec81edfdbb00fac5a54818f1d45afa4fbc3) on Linux Mint 18.3 (Ubuntu 16.04-based) and it works just great. I didn’t (yet) test your AnnouncementOverrunMonitor() class but used my code for the SignalBox MQTT stuff:
Works exactly as intended: Song ends (red light starts flashing to show EOM), announcement starts (red light on=microphone(s) open) and as soon as the preset time has run out the red light starts blinking.
Perfect, thanks a lot!
I still wonder which is better, the "try/except" code above or checking for something like
Which would you suggest?
The overrun class was written to handle the possibility that there is more than one announcement active. Closing one but not all should not alter RED.
After all announcements are closed the right thing to do is reset the blinking state and hopefully the microphone closed signal will arrive after (otherwise that's a bug that needs fixing) and use mic closed to clear RED (which it already does, right?). There might be an unsightly brief flash if an LED is used.
Thanks for noticing, actually already tested … works just fine, even with many microphones :-)
No bugs found, for this use case it was just a little too much overhead to use the overrun class.
Just a few more days for me writing documentation and it’ll all be ready for GitHub …
FYI: I’ve had three other IDJC users test this in the meantime, and it has been accepted with quite some enthusiam :-)