Protect MPEG-DASH Live Streams in Wowza Streaming Cloud With DRM Technology


As part of our recent enhancement to Wowza Streaming Cloud, you can now leverage EZDRM to protect MPEG-DASH live streams. Digital rights management (DRM) technology allows content distributors to thwart unauthorized distribution of their media using sophisticated encryption. These workflows rely on third-party providers to validate each attempt to view a stream before decrypting the content.

In this tutorial, Justin demonstrates how to protect DASH streams using Google Widevine and Microsoft PlayReady. Check out the video above to find out how, or visit our documentation for more detailed instructions.

Full Video Transcript:Justin Miller:

Let’s review how to protect a live video stream on Wowza Streaming Cloud with EZDRM for Google Widevine and Microsoft PlayReady devices. This is done through the DASH delivery protocol. For this demonstration, we’ll be using Wowza Documentation utilizing the Wowza Streaming Cloud REST API on an available stream. You’ll need a Wowza Streaming Cloud account and a properly configured EZDRM account. There are a number of values you’ll need to locate for this process in order to get your Widevine information.

In Wowza Streaming Cloud, verify you have a working live stream. For now, we can shut down the stream. Under Transcoders, we’ll need to locate the transcoder for this stream and copy the ID. We’ll need this later for reference. Next, we’ll go to Stream Targets and access the stream target for this stream. We’ll need to Edit the stream target to allow the use of the DASH delivery protocol. Once it’s been saved, we can then go to our Account Settings and copy the API key for use later. We’ll also need an access key. You may want to add one if none exists.

Now, with all the needed values, we can go back to our documentation and get the cURL script to request a DRM key. We’ll need to copy and paste this information somewhere we can modify it. You’ll need to add the correct username and password before opening a terminal and running the cURL script. From the returned information, you’ll want to look specifically at the EZDRM XML. Within that information, you can find the content ID. Copy and paste that for use later. You’ll also want the server URL. This will be used for decryption purposes by the player.

Now we can confirm DRM on our existing transcoder. Copy the cURL command somewhere for editing. We’ll first replace the username, password and content ID within the command. Then we’ll add our API key and access key for Wowza Streaming Cloud. At the bottom of the script, we’ll also need our host information, the API version, and finally, the transcoder ID for our live video stream. When we’re finished, we can run the script in a terminal, thus configuring our transcoder.

Now back in Wowza Streaming Cloud, we can locate our video stream and Start the Stream once again. You may also need to reconnect the encoder once it’s been started. If you don’t know the URL for your MPEG-DASH delivery, you’ll need to go to Stream Targets, locate your live stream and under Playback URLs, you’ll find the URL for DASH. Copy this for use in your player using Chrome. If you’re not already working with a configured player, you may want to use the stream test option for JW Player recommended by EZDRM. Paste the URL in and test the stream. The stream shouldn’t play since we haven’t configured the player for Widevine. This is where you add the server URL information. Once it’s been added, try testing the stream again. It should work this time.

Well, that’s it for protecting a live video stream on Wowza Streaming Cloud with EZDRM. Thanks for watching and happy streaming.


Search Wowza Resources



Follow Us


About Traci Ruether

Traci Ruether is a Colorado-based B2B tech writer with a background in streaming and network infrastructure. Aside from writing, Traci enjoys cooking, gardening, and spending quality time with her kith and kin. Follow her on LinkedIn at or learn more at