Video on demand tutorial

Wowza VOD tutorial from an MP4 file to a player on your site

This Wowza VOD tutorial shows how to turn an MP4 file into an HLS link and an embedded player, in two ways: on a Wowza Streaming Engine server you run, or in a Primcast video library where you only upload the file.

Both give you the same kind of address, so a player that works with one works with the other. Pick the way that fits, follow the numbered steps, and your video plays on phones and computers.

HLS playback addressVOD

http://your-server:1935/vod/mp4:sample.mp4/playlist.m3u8

your-server:1935
The server's name or IP address and the port Wowza listens on.
vod
The VOD application that reads the file.
mp4:sample.mp4
The file, after a prefix that tells the server it is an MP4.
playlist.m3u8
Asks for HLS. Use manifest.mpd instead for MPEG-DASH.

Two ways to serve Wowza video on demand

The job is the same either way: store the file, answer players that ask for it, and hand out a link. The difference is who looks after the server.

AA Primcast video library

You upload, we run the server

Good when you want videos on your website this week and no server to keep patched.

  • Upload from your browser, several files at once
  • A link and an embed code for every file
  • A link to your library's own server, plus a CDN link when the CDN carries your library
  • A free plan to start, with 1 GB of storage
Follow the library steps

BYour own Wowza Streaming Engine

You run Wowza on a server of yours

Good when you need Wowza's own settings, modules or licence, or your files already live on that server.

  • Full control of the VOD application and its security
  • Your own domain, certificate and player
  • Room to transcode and add live channels on the same machine
  • We can supply the server with a licensed, managed Wowza
Follow the Wowza server steps

Get the video file ready

Neither path re-encodes your video on the way in, so the file you export is the file your viewers get. Export it as an MP4 with the settings below and both will play it.

File settings for Wowza VOD and for a Primcast video library
SettingPrimcast video libraryWowza Streaming Engine
FileMP4, ending in .mp4 or .m4vMP4 for the examples here
VideoH.264 (Baseline, Main or High), 8-bit 4:2:0, up to 1920x1080 and 60 fpsH.264
AudioAAC-LC at 44.1 or 48 kHz, mono or stereo, or no audio at allAAC or MP3
Size of one fileUp to 100 GB, within your plan's storageLimited by your server's disk

Exporting from an editor or with FFmpeg? Choose H.264 video and AAC audio and keep the frame size at 1080p or below. Our FFmpeg streaming tutorial has the commands if you work on the command line.

Wowza VOD setup on your own Streaming Engine

These steps use Wowza Streaming Engine Manager, the web console that comes with Wowza. You need an administrator login and a way to copy files to the server, such as SFTP.

  1. Sign in to Wowza Streaming Engine Manager, open Applications and add an application of the type VOD single server. The examples on this page call it vod.
  2. On the application's Setup tab, click Edit and choose the content directory. The default is the content folder in the Wowza install directory, which is where Wowza keeps its own sample.mp4.
  3. Under Playback Types, turn on the formats your players need. HLS is the one to start with: Safari, iPhones and iPads play it directly, and browser players such as hls.js play it everywhere else. Add MPEG-DASH if your player asks for it.
  4. While you test, set Playback Security to no client restrictions. Save, then restart the application when Manager asks.
  5. Copy your MP4 files into the content directory.
  6. Click Test Playback, type your file name with its prefix, for example mp4:myvideo.mp4, and copy the address for the format you want.
Playback addresses for one file
HLS        http://your-server:1935/vod/mp4:myvideo.mp4/playlist.m3u8
MPEG-DASH  http://your-server:1935/vod/mp4:myvideo.mp4/manifest.mpd
RTSP       rtsp://your-server:1935/vod/mp4:myvideo.mp4
RTMP       rtmp://your-server:1935/vod   stream: mp4:myvideo.mp4

A website served over https cannot play an http address. Before you embed the player on your site, give the Wowza server a TLS certificate and use the https form of the address. Turn playback security back on once the player works.

Upload your videos to a Primcast library

With a video on demand plan there is no FTP client and no server to set up. You upload in the control panel and copy a link when the file is ready.

  1. Start a video on demand plan. The free plan gives you 1 GB of storage and 25 GB of viewing traffic a month, enough to try a few short videos.
  2. Sign in to your control panel and open your video on demand account. Its Video card opens on the VOD tab.
  3. Click Upload videos and choose one or more MP4 files. Each upload shows its speed and the time left, and you can pause it and resume it later.
  4. If the connection drops or you close the tab, come back and choose the same file again. The upload carries on from the parts already received.
  5. When the upload ends the file shows Checking while we confirm it meets the settings in step 02. It then shows Ready, or Rejected with the reason, so you know what to change in your export.

Storage counts what is in your library now. Delete a file you no longer need and its space is free again straight away.

Embed the video player on your website

Every ready file has Preview, Copy CDN link, Copy server link and Embed buttons. Use the link with a player you already have, or the embed code if you want a player made for you. If a file shows a single Copy link button, that is its server link.

CDNCopy CDN link

Plays from the server nearest each viewer

The best choice for most websites. Viewers in different countries each get the video from a server close to them, so it has less distance to travel.

ServerCopy server link

Plays from your library's own server

Use it when a player or an app should always talk to one address. Both links are https HLS addresses, built the same way as the Wowza address in step 03.

  1. Click Embed and choose where the video plays from: the CDN or your server.
  2. Click Copy embed code and paste it into your page where the video should appear. In WordPress, use a Custom HTML block.
  3. Publish the page and open it on a phone and a computer. The player keeps a 16:9 shape and fits the width of the space you give it.

The embed code is a standard HTML5 video player. Safari and iPhones play the HLS link directly, and other browsers load the free hls.js player to do it. It works on https pages and shows no ads.

Wowza VOD questions, answered

What is Wowza VOD?

Wowza VOD is video on demand served by Wowza Streaming Engine: a file stored on the server that each viewer starts whenever they like. The server cuts the file into short pieces as players ask for them, so viewers can start at once and skip ahead without downloading the whole video.

What does mp4: mean in a Wowza URL?

It tells the server what kind of file comes next. In /vod/mp4:myvideo.mp4/playlist.m3u8, vod is the application, mp4:myvideo.mp4 is the file with its prefix, and playlist.m3u8 asks for HLS. Leave the prefix out and the address usually fails.

Which video formats can I use for Wowza VOD?

Use an MP4 with H.264 video and AAC audio. Wowza also accepts MP3 audio in an MP4. A Primcast video library takes .mp4 and .m4v files with H.264 video up to 1080p at 60 fps and AAC-LC audio, and it tells you exactly what to change if a file does not fit.

Can I still upload my videos by FTP?

On a Wowza server of your own, yes: copy the files into the application's content folder with SFTP or FTP. A Primcast video library takes uploads in the control panel instead, which handles large files better because an interrupted upload picks up where it stopped.

How large can one video be?

One file can be up to 100 GB in a Primcast video library, as long as it fits in your plan's storage. On your own Wowza server the only limit is the disk.

Will my video be re-encoded or lose quality?

No. The file is checked and stored as it is, and viewers get exactly what you exported. That is why the export settings in step 02 matter.

Will the video play on iPhone, Android and smart TVs?

Yes. The link is HLS, which iPhones, iPads and Safari play directly, and Chrome, Edge, Firefox and Android browsers play through the embed code's player. Paid video on demand plans also include your own Samsung and LG TV app.

Is there a free way to try Wowza video on demand?

Yes. A Primcast video library runs on Wowza Streaming Engine on our side, and the free video on demand plan gives you 1 GB of storage and 25 GB of viewing traffic a month, with the same upload, links and embed code as the paid plans. Move up a plan when your library grows.

Who can help me if a video will not play?

Open the chat on this page. Our AI assistant answers in seconds and can check your account and its library, and you can ask for a person at any point.

Put your first video online today

Choose a video on demand plan, upload an MP4 and paste one embed code. Questions on the way? The chat is open.