Test, QC & Monitoring Global Viewpoint – January 2022

Python - The New Gaffer Tape

Any self-respecting engineer or operational broadcast technologist will have in their tool kit at least one role of gaffer tape. But as we move to a software connected world, our trusted friend is finding a new collaborator in the form of Python, the go-to scripting language for broadcasters.

As we move to a software connected world, the concept of gaffer tape is taking on a whole new meaning in the form of software glue. The proliferation of IP is leading us to take parts of the IT industry and use them to transfer and distribute video and audio, often in real-time, with minimal latency.

The trusted GPIO has served us well and has allowed a whole cacophony of broadcast equipment to be connected. These early forms of automation simplified control and improved workflows.

Virtualized IT infrastructures are promoting the adoption of microservices and small footprint programs. Moving away from the huge and often difficult to maintain monolithic code deployments is making flexibility, scalability, and resilience a reality for broadcasters adopting this new technology.

These smaller programs need to exchange control and monitoring messages to allow them to collaborate and work together as a unified solution, and this is providing massive opportunities for system integrators and solution providers.

Modern coding methods accommodate API interfaces from the ground up to facilitate simplified control leading to REST and NATS interfaces that allow JSON messages to be distributed, shared, and exchanged. Furthermore, logging is often an inherent feature allowing broadcasters to have a detailed understanding of which resource is being used, when, and how often.

Python is a relatively straight forward scripting language in terms of ease of use, and the ubiquitous “Hello World!” program can be written within a few minutes even by the most inexperienced of users. The interpreter works across the main Linux, Windows and MacOS platforms using anything from a simple text editor to a full-blown IDE for programming, debugging, and testing.

The script is intuitive and anybody who has dabbled in C will be building solutions to complex problems in no time at all. Writing code to connect to API interfaces is relatively straight forward and a multitude of libraries are available that facilitate features such as OAUTH2 authentication for those with security in mind.

Many other industries are using Python, from machine learning to automation control, so a whole community of developers with more support forums than you care to think about are available to help and suggest solutions that may not be immediately obvious. Python has incredible power and flexibility and is used by professional developers throughout the world.

If you haven’t tried Python, then you really should. In the same way that GPIOs were the hardware glue of the 20thcentury, Python is proving to be the software glue of the 21st century to help broadcasters orchestrate multiple systems into a complete scalable, flexible, and resilient workflows.