An application is a set of configuration options in Wowza Streaming Engine™ that supports a specific use case for the delivery of streaming content. You can use these options and configurable properties to tune and modify an application's default streaming configuration.
A Live application is used to deliver live streams to players (single server) or as an origin server to deliver live streams to other servers running Wowza Media Server or Wowza Streaming Engine software in order to scale content delivery to a large number of players.
This document provides the basic steps that show how to use the Wowza Streaming Engine to publish a live stream from RTMP-based encoders for playback on VIDIZMO player.
In the first section, we will configure a Live Application in the Wowza Streaming Engine and using the Wirecast Application as an encoder, we will verify the streaming between Wowza and Wirecast.
In the second section, we will include VIDIZMO to this configuration by setting up ECDN and a publishing point to schedule Live Webcast through Wowza.
1. Configuring Wowza Streaming Engine
Login to Wowza Streaming Engine and Add a New Application. The live application's URL can be used in the encoder for streaming. Select Application Type as Live.
Provide an appropriate name for your application in the popup window that appears and click on the "+Add" button to add the application.
Select all playback types. All playback types need to be selected to enable stream on different end points.
- Low-latency stream (ideal for chat applications)
To reduce the latency inherent in broadcasting Apple HLS streams, Wowza Streaming Cloud allows you to send shorter file segments, or smaller packets, to Apple HLS stream targets. Although delivering shorter audio and video file segments can reduce latency, shorter file segments also create additional network overhead for the client. If the client doesn't have enough bandwidth, playback may stall, which results in a poor viewing experience.
- Cross-origin resource sharing (CORS) (for HTTP-based streams)
Cross-origin resource sharing (CORS) is a mechanism that allows resources to be requested from a domain that's outside the domain from which the request originated. In general, CORS headers are required to enable browser-based HTML5 video players to fetch video and other information from a Wowza Streaming Engine media server and to allow a website in one domain to request video from a streaming media server in a different domain.
Streaming File Directory
This is the content directory on the server where files required for streaming live content are stored. This path can be the default path or any application-specific directory. Here we are using the default path for Wowza to store the SDP, SMIL or Stream files.
Click on the Save button to save these settings. This will save the application and the message “Your Application Is ready to use” will be displayed.
1. Source Security
As the application is created it will show certain options in the left pane. Among those options, click on Source Security and then click on the Edit button. This screen provides configuration settings for establishing secure connections to the Live Application you have created.
i. Select "Source Security"
ii. RTMP/RTSP Sources: For RTMP/RTSP based encoders the “Require password authentication” option is enabled by default in Wowza. Keep the default settings.
iii. Client Restrictions: Select No Client Restrictions here because user level authentication is already applied within the VIDIZMO application, based on which only authenticated users can view Live Streams.
iv. Click on the "Save" button to save these settings.
2. From the top, black menu bar
i. Select "Server"
ii. Then select Source Authentication from the left-hand panel.
iii. Click on the +Add Source button to bring up the fields for settings up credentials.
Set up credentials against a user that will be used by the encoder to access the Wowza Streaming Engine. The username and password values are case-sensitive and can only contain alphanumeric, period (.), underscore (_), and hyphen (-) characters.
When done, click on the "Add" button to complete the Source Authentication credentials which will be used in the Encoder for authenticating the RTMP and RTSP based sources before they can connect and publish a live stream.
3. Again, from the top, black menu bar, select the "Applications" tab. These options are configured to help establish secure connections from players to this Live Application:
i. From the Selected Application panel on the left-hand side, select Playback Security and then click on the "Edit" button.
ii. Require Secure RTMP Connection: Keep the default settings for the “Require Secure RTMP Connection”. Checking this option will allow RTMP-based player applications connect to this application over a "Secure RTMP" protocol connection (RTMPE, RTMPTE, or RTMPS) and not an unsecured RTMP connection.
iii. Wowza can be configured to use a Secure Hash Algorithm and a private Shared Secret to generate a security token to help protect against spoofing threats. This private Shared Secret is used by both the Server and Client to support Secure Token playback option. Here we will not be using any secure token.
iv. Client Restriction will not be enabled. Here we are using VIDIZMO as the player while the client authentication is done through VIDIZMO.
Click on the "Save" button to save these settings.
After the Playback Security settings have been saved, the application will require a restart for the changes to take effect. Restart the application.
The Application is now ready for use.
Details are required about the URL from the newly created application to be used to configure the encoder e.g. Wirecast Application, to play the stream. This information will be taken from the Wowza Player, using the Test Players feature in Wowza.
4. Test Players
Click on Test Players button on the top right-hand corner to run the Wowza Player. Please note that the Test Player here is being opened to retrieve the URL and not to test any stream since, at this stage, no stream is being pushed to reach here. How to push the stream is covered in the next Step #2 below - Configuring the Encoder.
From the Test Player Window in the Wowza Application, note down the information against the following fields:
The information populated by the player against these fields will be used to make the complete RTMP URL, which will then be used in the Encoder:
Now, based upon the syntax:
rtmp://[wowza-server-ip:1935]/[Live-App-name] : [stream-name]
The required RTMP URL will become:
You only need to provide this part of the URL as the stream name gets added by the Wirecast Encoder.
When you are Scheduling a Live Webcast from the VIDIZMO Application, the complete URL (case sensitive) with the stream name will be required in the Publishing Point, otherwise, the stream will not be pulled i.e. rtmp://192.168.1.182:1935/LexcorpLive/myStream.
2. Configuring Wirecast
Wirecast is among the popularly known and preferred encoders to use for live streaming and supports multiformat encoding while easily streaming to integrate streaming services and CDNs.
To push live streams from the Wirecast Software, see the related article on How To Capture Live Streams Using Wirecast.
When setting up Wirecast Output Settings, make sure to provide the correct credentials in the Set Credentials dialog. These are the same as the Credentials provided in Source Authentication in Wowza's Step #2 above (Source Authentication >> +Add Source).
To go to Set Credential's dialog in Wirecast:
i. Select Output from Wirecast Application's top menu
ii. Click on Set Credentials and enter the credentials used in Wowza's Source Authentication.
iii. Enter the same as the Credentials provided in Source Authentication.
Once you have tested the live stream from the Wirecast Software, you can now go ahead and schedule a Live Webcast in VIDIZMO as the next step.
3. Scheduling A Live Webcast In VIDIZMO
In order to serve a stream over the Web, the finished output of your live event must be converted from a video signal into a file format that is easier to distribute. To do this a robust online server system in the form of a Content Delivery Network (CDN) is required.
To make Live Streaming, or Live Webcasts, more manageable, Live Stream content is digitized, compressed and altered to take up less space. This is accomplished using Encoders, which digitize the content and make it compatible with different browsers, Web players, and devices.
To setup Live Streaming in VIDIZMO, see the related article on How To Schedule A Live Webcast In VIDIZMO.
During the setups, make sure of the following:
i. Under the ECDN setup, you are providing the Streaming URL for that you noted down in the Step # 4 above i.e. rtmp://[wowza server IP:1935]/[LiveAppName]/
ii. Under the Publishing Point setup, you are entering the same URL in the Playback URL field and that the URL (case sensitive) contains the stream name also.
i.e. rtmp://[wowza server IP:1935]/[LiveAppName]/myStream
You can test the settings in VIDIZMO by running the Test Player on Publishing Point screen. Click and expand your Publishing Point to display the "Test Player" link, then click on the "Test Player". This will load the Player on the fight hand side on the same screen.
Click on the "Start" button to start playback.
Successful playback indicates that all configuration settings are correct.
Subject: Central Administration
Action: Get, Update, Add