With version 4.8.23 of the Wowza Streaming Engine™ media server software, you can stream directly to Wowza CDN™ and use its edge network to deliver streams to global audiences over HLS. You can send a single stream or a group of transcoded live stream renditions straight to a Wowza CDN on Fastly endpoint for distribution.
Push-based workflow overview
This guide provides information about creating a Fastly stream target for a push-based CDN workflow introduced with Wowza Streaming Engine 4.8.23. These steps do not require any firewall changes. After a successful setup, you can utilize the Wowza Video edge network to deliver your live stream to viewers.
You can alternatively set up your connection to Wowza CDN on Fastly for a pull-based workflow, which does require some firewall configuration. To add your stream targets using a pull connection, see Pull streams from Wowza Streaming Engine to Wowza CDN.
To help you determine which CDN workflow best fits your streaming needs, see Scaling Wowza Streaming Engine with Wowza CDN.
Note: You can only use the built-in push-based CDN workflow described in this guide with Wowza Streaming Engine 4.8.23. For earlier versions, we recommend the following to achieve the same push-based functionality:
- If running versions 4.8.18 to 4.8.22, you must download a separate plugin.
- For versions before 4.8.18, you should set up an S3 bucket in AWS as an origin to distribute your live streams. For more, see Send Apple HLS content to Amazon S3 using Wowza Streaming Engine.
Before you start
Before you can add a stream target for distribution to Wowza Video, make sure to complete these tasks:
- Generate a JWT access token in Wowza Video.
- Create a live application in Wowza Streaming Engine Manager.
1. Add a stream target
To send streams directly to Wowza Video for CDN distribution, you must add stream targets to an existing live application in Wowza Streaming Engine. The steps in this section assume you've already created a Live (Single server or origin) application. For help with this task, see Create applications.
- In Wowza Streaming Engine Manager, click the Applications tab.
- Select your live application from the list.
- From the selected live application, click Stream Targets in the sidebar navigation.
- On the Stream Targets page, click the Add Stream Target button.
- Select Wowza Video from the Wowza Target Destinations options.
- Complete the fields on the Wowza Video Configuration page.
- Stream Target Name (required): Enter the name of the stream target. Use a name to help you identify it from other stream targets.
- Source Stream Name (required): Add the name of the incoming source stream you plan to send to the destination.
- Select Region: Indicate the location of the Wowza Video server to which the streams will be pushed. For the best performance and most reliable stream, choose the region closest to the physical location of your Wowza Streaming Engine instance.
- Push Single Stream or Adaptive Bitrate Streams:
- Single stream: Select to upload a single stream.
- Adaptive bitrate stream: Select to upload a group of transcoded streams for adaptive bitrate content. To send a set of adaptive bitrate renditions to a CDN endpoint, you must use the Transcoder feature to produce renditions with the same stream name prefix.
- Wowza Video API Token (required): If adding this workflow for the first time, paste your Wowza Video API token. This value is saved and can be edited later. Existing Wowza Video customers can use the Access Token Management page to manage their personal tokens. See Generate an access token (JWT) for additional instructions. For those new to Wowza Video, see Wowza Streaming Engine with Video to get started.
- Click Add this target to save the configuration.
Note: At this point, the Application.xml file containing all configurations for your application is updated to contain the API token value you added in this section.
2. Enable stream targets
Before you stream, you must enable stream targets for your live Wowza Streaming Engine application or for the individual stream target you created.
- Go to the contents panel of your live application and click Stream Targets.
- On the Stream Targets page, click Enable Stream Targets.
When stream targets are enabled, a checkmark appears next to the Stream Targets text in the sidebar navigation. The Stream Targets page shows the status as Enabled.
- If the status of an individual stream target is Disabled, click the corresponding Enable icon in the Actions column for that stream target.
When a stream target is enabled, its status on the Stream Targets page is set to one of the following:
- Waiting: The target is enabled but is not yet pushing the stream to the target destination because either the target's configured source stream is not connected to the Wowza Streaming Engine input or Wowza Streaming Engine has not completed initializing the connection to the target destination.
- Active: The Wowza Streaming Engine instance successfully connected to the target destination. It is actively pushing the stream.
- Error: The Wowza Streaming Engine instance unsuccessfully tried to connect to the target destination. Ensure the target's configured source stream is connected to the Wowza Streaming Engine input. Errors might be due to an invalid target configuration or an issue with the destination server.
Note: The status of each stream target updates automatically if your Wowza Streaming Engine application has fewer than 100 stream targets. If your application has more than 100 stream targets, you can click Refresh to update the status.
- When prompted, click Restart Now so your change takes effect.
3. Push to Wowza Video
Once the stream target is created and enabled, you can check its status and push it to Wowza Video for distribution.
- Go to the sidebar navigation for your live application and click Stream Targets. The status of the stream target initially appears as Waiting.
- Start a stream and send it to your Wowza Streaming Engine server. For more about publishing live streams, see Connect a live source to Wowza Streaming Engine.
- To verify your incoming stream, check the Incoming Streams page for your application. Incoming adaptive bitrate streams include the transcoded versions of your stream. When you publish the live stream, the following occurs:
- The status of your stream target changes to Active. A Playback URL is created and visible in Wowza Streaming Engine. You can see this Playback URL if you click to view the stream target settings in Wowza Streaming Engine. For more, see About playing Wowza Streaming Engine streams.
- The stream target is also created in Wowza Video, where you can view it by clicking Advanced > Stream Targets. The Playback URL is also available in Wowza Video. For more, see Stream Target Details page in Wowza Video.
Viewer data for Wowza CDN on Fastly stream targets is available in near-real time. Use the following resources to get viewer data:
- Usage Details page in Wowza Video
- Get viewer data for a Wowza CDN stream target with the Wowza Video REST API
- Wowza Streaming Engine with Wowza Video
- Scaling Wowza Streaming Engine with Wowza CDN
- Pull streams from Wowza Streaming Engine to Wowza CDN
- Send a stream from Wowza Streaming Engine to Wowza Video for transcoding
- Protect a Wowza CDN on Fastly stream target with token authentication in Wowza Video
- Geo-block Wowza CDN on Fastly stream targets in Wowza Video
- Manage HLS playback over SSL for Wowza CDN on Fastly in Wowza Video