How to set up video on demand streaming

This tutorial shows how to use Wowza Streaming Engine™ media server software to stream video on-demand (VOD) content to all supported player technologies.


Tutorial Troubleshooting More resources



This tutorial shows you how to set up an application for video on demand (VOD) streaming. As the name denotes, VOD lets users play video streams at their convenience. The source of a VOD stream is a file on the server. Wowza Streaming Engine software administrators can configure VOD streaming applications by using UI options in Wowza Streaming Engine Manager or by setting properties in Application.xml. Both configuration methods have the same result. Wowza Media Server™ software administrators must configure VOD streaming applications in the Application.xml file. This tutorial uses the sample video file [install-dir]/content/sample.mp4.

Wowza Streaming Engine Manager configuration

This section shows you how to set up a VOD streaming application in Wowza Streaming Engine Manager. The example uses an application named vod, which is included in default Wowza Streaming Engine software installations. You can use this same procedure if you want to create a new vod streaming application.

You can use the Streaming Engine Manager with the latest versions of most web browsers that support HTML5 and Cascading Style Sheets level 3 (CSS 3). We recommend the Google Chrome browser.
  1. Make sure Wowza Streaming Engine Manager is running. See How to start and stop Wowza Streaming Engine software.
  2. In the Streaming Engine Manager Welcome page, click the Applications tab at the top of the page.
  3. Configure the vod application:
    1. In the Applications contents panel, click vod, and then click Edit. (If you want to create a new on-demand streaming application, click Applications, Add Application, then Video on Demand (VOD). Follow the instructions in the UI.)

    2. Select all of the Playback Types, and then click Save.

    3. The following alert appears after every configuration change. You can wait until all changes are completed before you restart.

  4. Configure playback authentication:
    1. In the Applications contents panel, click Playback Security, and then click Edit.

    2. On the Playback Security page under Client restrictions select No client restrictions, and then click Save.

  5. Restart the application.

The application runs whenever Streaming Engine software is running.

XML configuration

This section shows you how to configure the vod application by editing the Application.xml configuration file in a text editor.
Note: If you created your application by following the previous section, you can skip this section. If you make changes to Application.xml and you're using Wowza Streaming Engine™ software, any supported settings will be displayed in the manager the next time it's started. Wowza Media Server™ software doesn't support Wowza Streaming Engine Manager, so you must edit Application.xml in a text editor if you're running Wowza Media Server.
  1. Create the application folder [install-dir]/applications/vod.
  2. Create the configuration folder [install-dir]/conf/vod and copy [install-dir]/conf/Application.xml to this new folder.
  3. Edit the newly copied Application.xml file and make the following changes (some of these settings may already be present):
    1. Set the Streams/StreamType property to:
    2. Set the HTTPStreamers property to:
    3. Set the RTP/Authentication/PlayMethod to:
  4. Start the Wowza media server.


  • In the following examples, [wowza-ip-address] is the IP address or domain name of the Wowza media server.
  • To play your own content, copy it to the [install-dir]/content folder and substitute its filename in place of sample.mp4 in the sample URLs in this section.

Wowza Streaming Engine Manager

In Streaming Engine Manager, click Test Players in the upper-right corner of the vod application page. The Test Players window that opens includes test players that are preconfigured to stream the sample.mp4 video file over various streaming formats.

Each tab in the Test Players window either hosts a test player that you can use to play the video file or provides instructions for playing the video file. For example, to use the Adobe HDS protocol to playback the sample.mp4 video file, click the Adobe HDS tab, and then click Start.

The test players are also online on our Wowza Test Players webpage.

Example players

You can also use example players installed in [install-dir]/examples/ to test your streaming applications. For more information see the following articles:

Adaptive bitrate streaming

Adaptive bitrate (ABR) streaming to Adobe Flash Player, Apple iOS devices, Microsoft Silverlight, and MPEG-DASH players requires multiple files that are pre-encoded to the desired bitrates for streaming. For stream-switching to occur properly, the keyframes of each of the files must be aligned with each other. You also must create a Synchronized Multimedia Integration Language (SMIL) file that links the files together for playback.

For more information, see How to do adaptive bitrate streaming.



RTSP/RTP streaming is used to stream to Android and BlackBerry mobile devices. Android mobile devices formerly supported Adobe Flash player, but Android no longer supports Flash. Newer Android devices now support Apple HLS. HLS works best on Android 4.0 devices and above.

To stream to RTSP/RTP, be sure that UDP ports 0-65535 are open and mapped to the Wowza media server.
Note: To configure a Wowza media server for RTSP/RTP streaming, follow the instructions provided in How to troubleshoot RTSP/RTP playback.

Property to force output to MPEG-TS (set-top box)

When using RTSP/RTP to stream out content, you can force the output to MPEG-TS, which is required by many set-top boxes. For more information, see How to generate and control MPEG-TS output for set-top boxes.

Property to change the AAC packetization method

A Wowza media server can use the mpeg4-generic and mp4a-latm (3gpp) packetization methods to output AAC audio. The default packetization method is mpeg4-generic.

Wowza Streaming Engine Manager configuration

To switch to mp4a-latm (3gpp), do the following:
  1. In the Streaming Engine Manager contents panel, click vod.
  2. On the vod application page Properties tab, click Custom in the Quick Links bar or scroll to the bottom of the page.
    Note: Access to the Properties tab is limited to administrators with advanced permissions. For more information, see Manage credentials.
  3. In the Custom area, click Edit.
  4. Click Add Custom Property, and then do the following:
    1. Add the audioPacketizerAAC property with the following values:
      • Path: Select /Root/Application/RTP.
      • Name: Enter audioPacketizerAAC.
      • Type: Select String.
      • Value: Enter com.wowza.wms.rtp.packetizer.RTPPacketizerMPEG4LATM.
    2. Click Add.
  5. On the Properties tab, click Save.
  6. Click Restart in the upper-right corner of the vod application page to restart the application. 

XML configuration

To switch to mp4a-latm (3gpp):
  1. Use a text editor to open the [install-dir]/conf/[application]/Application.xml file for your live application and add the following properties to the RTP/Properties container. Be sure to add the properties to the correct <Properties> container in Application.xml as there are several such containers in the file.
  2. Restart the Wowza media server software to apply the changes.

More resources

How to play your first video on demand stream (video tutorial)
How to troubleshoot RTSP/RTP playback
How to set up an application for RTSP/RTP streaming
How to configure Apple QuickTime player for RTSP/RTP playback on Windows
How to configure VLC player for RTSP/RTP playback (RTSP/RTP interleaved and tuning)
How to find Apple iOS device supported profile and level information
JW Player Dynamic Streaming
Flowplayer Dynamic Streaming

If you're having problems or want to discuss this article, post in our forum.