Media Server
Installation and configuration
Video tutorials on Unreal Media Server can be found at
UnrealStreaming channel on YouTube and at our
"SDK and Tutorials" web page.

1. Installation and connectivity test

After you have downloaded and run the installation program for Unreal Media Server, the service named UMediaServer should be running and listening on TCP ports 5119, 5135 and 443.

The installation program sets up a sample video clip by creating a virtual folder called MediaRoot, mapping this folder to the program installation folder ("Program Files\Unreal Streaming\MediaRoot" by default) and placing file "test.avi" in this folder.

To test the server connectivity, install our Streaming Media Player.
Start the player, select "Play File" and enter IP address or machine name of the Media Server computer (use localhost if player and server are on the same computer). Choose TCP or HTTP or RTP(UDP) as a transport protocol and make sure there are no firewalls between client and server machines that block port 5119. You can also choose HTTPS delivery and port 443. If these particular ports are blocked, use Media Server Configuration tool, which is a part of Media Server installation, to change these port numbers. Write "mediaroot\test.avi" as a filename. Once the client computer can reach the server computer, you should be able to stream the test file.

2. VOD streaming

Simply copy your media files to the mediaroot folder and the server can stream them. Using Media Server Configuration tool, you can create other virtual folders and map them to different physical locations on the server machine or to shared LAN folders.
For working with shared LAN folders, the security should be setup such that the account under which UMediaServer runs, has access to this network drive. By default, UMediaServer runs under local system account. Use "control panel - services - UMediaServer properties" to change the account.

Files residing in virtual folders can be streamed via different streaming protocols to HLS players, Flash players, Unreal Streaming Media Player, Windows Media Player, set-top boxes and mobile devices. Files can be streamed in on-demand and live modes. Visit the FAQ page for step by step instructions for streaming files in different ways to different players.

Virtual folder can be configured to allow or prohibit a playlist behavior which means that a player plays all the files within virtual folder in a sequential on-demand mode. Playlist-enabled virtual folders can also be streamed in live Multicast mode to Unreal Streaming Media Player (standalone or embedded in web page). Refer to the architecture page to learn about multicast.
Configuration program allows to broadcast an individual file in live mode via MPEG2-TS protocol, for delivery to set-top box. A file can also be streamed in live mode when added to "live playlist" type of live broadcast.

3. Live broadcasts

Configuration program also allows creating so called "Live Broadcasts" that represent publishing points for live audio/video encoders. Push and pull mode live encoders are supported. If you have an RTSP IP camera or RTMP publishing device, you can create a live broadcast of type "Rebroadcast live RTMP/RTSP/WebRTC/HLS/MPEG2-TS/MS-WMSP stream" to stream from this device to Unreal Media Server. Create the same type of live broadcast for WebRTC publishing, receiving live HLS stream, or pushing streams from various software encoders such as FMLE, OBS, ffmpeg.
Static and Dynamic live broadcasts refer to live sources configured with our own live encoder named Unreal Live Server. For static broadcasts the Media Server initiates connection to the Live Server on TCP port 5120; for dynamic ones the Live Server initiates connection to Media Server on configurable TCP port (5130 by default). The choice between static and dynamic live broadcasts depends on your network infrastructure. For example, if Live Server runs behind NAT firewall, on the computer with periodically changing IP address, then outside Media Server may not always be able to initiate a connection to Live Server. Use dynamic live broadcast in this case.

Unreal Media Server can stream live content to HTML5 WebRTC players, Unreal HTML5 MSE players, HLS players, Flash players, Silverlight, Windows Media players, Unreal Streaming Media players, mobile devices and set-top boxes. Visit the FAQ page for step by step instructions for configuring HTML5 and HLS streaming, time-shifted live streaming, live playlist and other advanced features.

4. Unreal Live Server

Unreal Live Server should be installed on the computer that has live media sources attached to it. Live media sources include: digital cameras, microphones, analog video sources (analog camera or TV) connected to Video card or to Video Capture card that supports DirectShow interface. There can be multiple live sources attached to a single computer. Hardware encoding appliances with DirectShow support are also supported.
Download and run the installation program for Unreal Live Server . The service named ULiveServer should be running and listening on TCP port 5120. Use Live Server configuration tool to add and configure a source for your live media content, such as camera/microphone/capture card. When configuring a live source, choose appropriate encoding that matches the player you want to use. For example, use H264/AAC for Flash player, H264/VP8/VP9/Opus for WebRTC players, and VC1/WMA for Silverlight player. You can also configure access restrictions based on Media Server IP addresses.
It's important to understand that requests to Live Server will be coming from Media Server computer, not from the player computers. Media Server will send requests to Live Server based on "Live Broadcast" settings, configured with Media Server. In case of static live broadcast, the Media Server will first initiate a TCP (port 5120) connection to Live Server. Once a connection is established, the Media Server will send request for live media. In case of dynamic live broadcast, the Media Server will expect the Live Server to initiate a connection. Live Server configuration tool allows initiating a connection to Media Server on configurable TCP port.
Live Server also allows recording of Audio/Video sources to ASF/MP4/MKV files, based on scheduler or motion/beat detection, independently of streaming.

5. User Authentication methods

While by default live broadcasts and virtual folders have anonymous access and don't need any authentication to be played, they can be configured to require internal or session-based authentication. Internal authentication can only be used with Unreal Streaming Media Player (standalone or embedded in web page). Session-based authentication can be used with your own web app that authenticates users. Refer to the architecture page to learn more about authentication.

6. Creating a link to media resource

The most convenient way for the users to access remote media is to click on a link in the Web browser. Setup of Streaming Media Player registers a custom URL protocol on user's machine. This is a UMS protocol, allowing launching Streaming Media Player directly from the hyperlink on the Web page. The person who configures the Media Server is responsible for creation of these links and putting them to web pages.

The link can refer to File, Playlist or Alias of the live source.
Link should consist of 4 parts:

  1. "ums:\\" or "ums://".
  2. Transport protocol followed by semicolon - TCP, HTTP, HTTPS, RTP, MULTICAST.
  3. Media Server IP address followed by backslash. If no port is specified, default port corresponding to the transport protocol will be used for the connection. Default TCP/HTTP/RTP/MULTICAST port is 5119; default HTTPS port is 443.
  4. Actual media name. In no slash or backslash is found in the name, the name will be treated as the Alias of the live broadcast. Otherwise: If the word "playlist\" is found in the name, the name will be treated as a playlist. Otherwise the name will be treated as filename.

The hyperlink for playing a file myfile.avi via TCP Unicast might look like this:
<A HREF="ums:\\TCP:\Media\Myfile.avi"> Myfile.avi</A>
The hyperlink for playing a live broadcast named MyWebCam via HTTP Unicast might look like this:
<A HREF="ums:\\HTTP:\MyWebCam">My Web Camera</A>
or like this, if playing on LAN via RTP Multicast:
<A HREF="ums:\\MULTICAST:\MyWebCam">My Web Camera</A>
The hyperlink for playing a playlist named Media via RTP Unicast might look like this:
<A HREF="ums:\\RTP:\playlist\Media">Media virtual folder</A>

For previewing local live sources, specify ums:\\localpreview:ID, where ID is local live source ID.
For playing in fullscreen mode, append ///FULLSCREEN to the end of the link

The part shown in brown is the actual UMS link.
This link can alternatively be used on the local user's machine in two ways:
Passing it as a parameter to Streaming media player:
StreamingMediaPlayer.exe ums:\\TCP:\Media\File.avi
Running the link alone:
In all the described cases Streaming media player will launch and play remote media.

7. Creating MMS links

MMS links are a lot like UMS links, with the exception of not specifying the network protocol right before IP address. Media Server Configuration program allows creating MMS playlists containing MMS links for any virtual folder. Use MMS links for "Open URL" option in any MMS-capable player. Note that the content must be encoded with WMV(VC-1), WMA or MP3 codecs in order to be playable by MMS players.

It is recommended to use forward slashes in MMS links.
Assuming Media Server's port for client connections was changed from default 5119 to 5127,
MMS link for playing a file named "File.avi", residing in virtual folder "Mediaroot", looks like this:
MMS link for playing a live broadcast named "Webcam" looks like this:

8. Creating RTMP links

RTMP links must have a fixed word for Flash application, which is "live" for live broadcasts and "vod" for files. Otherwise they look exactly like MMS links. RTMP links are assigned to a Flash player on a web page. Refer to our demo page and SDK package for examples.

Assuming Media Server's port for client connections was changed from default 5119 to 5127,
RTMP link for playing a file named "Test.mkv", residing in virtual folder "Mediaroot", looks like this:
RTMP link for playing a live broadcast named "Webcam" looks like this:



   2003-2019 Unreal Streaming Technologies. All rights reserved.