How To Build Custom Modules in Wowza Streaming Engine 

Wowza’s new Developer Deep Dive webinar series kicked off by focusing on a core strength of Wowza Streaming Engine: unparalleled extensibility. In this session, Mike Vitale, VP of Product and Strategy, and I demonstrated how developers can leverage custom modules to build sophisticated, tailor-made video workflows.

While Wowza Streaming Engine offers a robust set of features out of the box, the ability to write custom code gives organizations the flexibility to integrate unique business logic directly into the media server.

Watch The Webinar

The Foundation of Flexibility: Extensive APIs and Docker

One of the most significant advantages for developers is the stability of Wowza’s APIs. Many custom modules, even those built years ago for version 4.0, still function reliably today because the underlying Java interfaces are consistent. This ensures that custom logic doesn’t break during routine engine upgrades.

To further streamline the developer experience, Wowza is increasingly leveraging Docker to simplify the build and deployment process. By using pre-configured containers and build scripts, developers can spin up a local instance of Wowza Streaming Engine and compile custom JAR files in seconds. This provides a ready-to-go environment for rapid prototyping, without risk to the broader system.

Enhancing Monetization with HLS Interstitials

One workflow we covered was adding HLS Interstitials for server-guided ad insertion. Unlike traditional client-side methods, this approach allows the server to instruct the player on exactly when and what to play through the HLS manifest.

By extending the HTTPProvider and MediaPacketizer classes, developers can:

  • Inject Dynamic Content by using a REST API to trigger the insertion of ads, emergency alerts, or localized content into a live stream.
  • Manipulate Manifests in Real-Time by adding EXT-X-DATERANGE tags to the manifest that define precise start dates and durations for interstitial assets.
  • Control Playback Behavior by delivering transitions where the player automatically cuts to a 10-second ad and resumes the live broadcast exactly where it left off.

Interactive Experiences via ID3 Metadata Injection

Beyond advertising, we also explored how ID3 metadata can create synchronized, interactive viewer experiences. By injecting JSON payloads directly into the video stream, developers can trigger client-side events in perfect sync with the frames.

For E-commerce and Education, this could be used to trigger a browser to advance presentation slides or display “buy now” sidebars based on specific moments in the video. To synchronize data, pass complex objects, such as GUIDs, arrays, or integers, to a custom player. This updates the UI without needing a secondary data socket. Maintain full workflow control by managing these triggers through a custom REST API endpoint, built directly into the Wowza instance.

Leveraging the Community and Professional Services

The Wowza GitHub repository currently hosts over 50 public examples and plugins, including solutions for SCTE-35 sensing and an open-source integration with Whisper that provides free, high-accuracy speech-to-text captions.

Whether you are forking an existing repository to add new features, or building a proprietary module from scratch, a well-integrated system will meet your exact technical requirements. For organizations that require highly specialized workflows but lack in-house Java expertise, Wowza’s Professional Services team is available to design, build, and maintain these custom projects.

Ready to start building?

Watch the Developer Deep Dive Webinar VOD here. And visit our GitHub repository to download modules and start experimenting. We can’t wait to see what you build. Don’t hesitate to reach out if you have any questions.

About Ian Zenoni

Ian Zenoni has been in the video industry for over 20 years and at Wowza for over 10. While at Wowza Ian has architected, built, and deployed solutions and services for live video streaming, both in the cloud and on premises. As Chief Architect Ian researches the latest technology in video streaming to integrate into Wowza’s products and services. He is also a co-organizer of the local Denver Video meetup group that meets quarterly in the Denver metro area.
View More

FREE TRIAL

Live stream and Video On Demand for the web, apps, and onto any device. Get started in minutes.

START STREAMING!
  • Stream with WebRTC, HLS and MPEG-DASH
  • Fully customizable with REST and Java APIs
  • Integrate and embed into your apps

Search Wowza Resources


Subscribe


Follow Us



Back to All Posts