How to Install

Note

  • If you are looking for an evaluation, please use the Docker Express setup

  • The beta repositories are only to be consulted as part of a request or support process, outside of which no support is to be expected

  • Licenses for used third party libraries can be found at What third party software is used?

The stable repositories contain GA versions from 1.7.31 on. Please see the Release notes for which versions are GA.

Please take into account that in some cases a release is not available for a certain version of an OS, for instance when the OS version is of a later date than the Unified release.

Add repository on Alpine

First, add the Unified Streaming public key (otherwise apk will fail, complaining about missing keys):

#!/bin/sh

wget -O /etc/apk/keys/alpine@unified-streaming.com.rsa.pub \
  https://stable.apk.unified-streaming.com/alpine@unified-streaming.com.rsa.pub

Then, to add the stable or beta Unified Streaming repository:

#!/bin/sh

# Set 'stable' or 'beta' repository as source
repo="stable"

alpine_version=$(cat /etc/alpine-release | sed -r "s/(\d*\.\d*)\.\d*/\1/")
echo https://${repo}.apk.unified-streaming.com/alpine/v${alpine_version} >> /etc/apk/repositories

Note

Please see End Of Life for which versions of Alpine are available.

Finally, to ensure apk package information is up-to-date, run:

#!/bin/sh

apk update

Now, you're ready to install our software with a single command using your apk package manager, see Installation on Linux (all supported distributions).

Add repository on Rocky Linux, AlmaLinux, or Red Hat Enterprise Linux (RHEL)

Attention

Take into account that you will probably need to configure iptables, firewalld and, in case of Red Hat derivatives, Security-Enhanced Linux (SELinux) in order to successfully stream or capture video. How this should be done is not part of these installation instructions.

Create a file unified-streaming.repo in /etc/yum.repos.d with the following content for the stable release

[unified-streaming]
name=unified-streaming
baseurl=<base-url-for-specific-distribution>
enabled=1
gpgcheck=1
gpgkey=https://stable.yum.unified-streaming.com/unifiedstreaming.pub

And replace <base-url-for-specific-distribution> with the base URL from the table below, which shows an overview of the different stable versions that are available:

Version

Base URL

Rocky 8, AlmaLinux 8 or RHEL 8

https://stable.yum.unified-streaming.com/rocky/8/x86_64

Rocky 9, AlmaLinux 9 or RHEL 9

https://stable.yum.unified-streaming.com/rocky/9/x86_64

or, to install the beta version, use one of the following URLs:

Version

Base URL

Rocky 8, AlmaLinux 8 or RHEL 8

https://beta.yum.unified-streaming.com/rocky/8/x86_64

Rocky 9, AlmaLinux 9 or RHEL 9

https://beta.yum.unified-streaming.com/rocky/9/x86_64

Note

Rocky Linux, AlmaLinux and Red Hat Enterprise Linux (RHEL) binaries are compatible, i.e. our Rocky Linux packages can also be installed and used on both RHEL and AlmaLinux.

Finally, to ensure yum package information is up-to-date, run:

#!/bin/sh

sudo yum makecache

Now, you're ready to install our software with a single command using your yum package manager, see Installation on Linux (all supported distributions).

Add repository on Ubuntu / Debian

Packages are available for the following Ubuntu and Debian releases:

Version

Arch

Release Name

Ubuntu 24

amd64

noble

Ubuntu 24

arm64

noble-ports

Ubuntu 22

amd64

jammy

Ubuntu 22

arm64

jammy-ports

Ubuntu 20

amd64

focal

Ubuntu 20

arm64

focal-ports

Debian 12

amd64

bookworm

To add the stable or beta Unified Streaming repository for one of these releases, use the following:

#!/bin/bash

# Choose release name and architecture (note: 'arm64'
# only available on 'focal-ports', 'jammy-ports', and 'noble-ports')
release="noble"
arch="amd64"

# Set 'stable' or 'beta' repository as source
repo="stable"

# Add Unified Streaming public key to apt keyrings
sudo mkdir -m 0755 -p /etc/apt/keyrings
sudo wget -O /etc/apt/keyrings/unifiedstreaming.asc \
  https://${repo}.apt.unified-streaming.com/unifiedstreaming.pub

# Generate apt source list
echo "deb [arch=${arch} signed-by=/etc/apt/keyrings/unifiedstreaming.asc] https://${repo}.apt.unified-streaming.com ${release} multiverse" |\
  sudo tee /etc/apt/sources.list.d/unified-streaming.list

Finally, to ensure apt package information is up-to-date, run:

#!/bin/sh

sudo apt-get update

Now, you're ready to install our software with a single command using your apt package manager, see Installation on Linux (all supported distributions).

Installation on Linux (all supported distributions)

Note

The software requires a license key. The preferred way is to create a file that contains the key (e.g., usp-license.key), which then can be specified in Apache's configuration or when you run one of our command-line tools. How to specify your license key for Apache is explained in Setting up a virtual host (and specifying your license key). For more info, see License Key.

Choose whether you want to install Unified Packager ('mp4split') and our other command-line tools only, or Apache and the 'mod_smooth_streaming' (dynamic packaging with Unified Origin), 'mod_unified_remix' (dynamic use of Unified Remix), or 'mod_unified_transcode' (to use your server as a media processing unit) modules as well:

In addition, if you don't necessarily want to install the latest version available in our repository but rather decide on a specific version instead, you can check all available versions of our software (only checking the available versions for 'mp4split' is enough, as all of our software follows this same versioning scheme).

Alpine:

apk search -v -d 'mp4split'

Rocky Linux / RedHat (RHEL) / AlmaLinux:

sudo yum --showduplicates list mp4split | expand

Ubuntu / Debian:

sudo apt list -a mp4split

Please see the Release notes for the release notes.

Command-line tools 'mp4split', 'unified_capture' and 'unified_remix'

To use Unified Packager or any of our other command-line tools when you don't need the Unified Origin or Unified Remix web server modules, install 'mp4split' and our other command-line tools will be installed as dependencies alongside it:

Alpine:

apk --update add mp4split

Rocky Linux / RedHat (RHEL) / AlmaLinux:

sudo yum install mp4split

Ubuntu / Debian:

sudo apt-get install mp4split

Uninstall 'mp4split'

To uninstall 'mp4split':

Alpine:

apk del mp4split

Rocky Linux / RedHat (RHEL) / AlmaLinux:

sudo yum remove mp4split

Ubuntu / Debian:

sudo apt-get remove --auto-remove mp4split

Using Manifest Edit ('manifest_edit') for statically packaged content

When installing Unified Origin, Manifest Edit capabilities are automatically installed as a dependency. This is not the case when installing Unified Packager ('mp4split'). If you need Manifest Edit capabilities with Unified Packager, this functionality can be installed as a standalone command-line tool.

Alpine:

apk --update add manifest-edit

Rocky Linux / RedHat (RHEL) / AlmaLinux:

sudo yum install manifest-edit

Ubuntu / Debian:

sudo apt-get install manifest-edit

And uninstalled.

Alpine:

apk del manifest-edit

Rocky Linux / RedHat (RHEL) / AlmaLinux:

sudo yum remove manifest-edit

Ubuntu / Debian:

sudo apt-get remove --auto-remove manifest-edit

Note

Removing manifest-edit will also remove mod_smooth_streaming, so only remove it when you are using the standalone command-line tool!

Unified Origin web server module ('mp4split' and 'mod_smooth_streaming')

Install Apache and the webserver module like so (the same version of 'mp4split' will be automatically installed as well, alongside any other dependencies for 'mod_smooth_streaming' that are not yet installed). These include:

  • apache2/httpd

  • mp4split

  • mod_unified_s3_auth

  • manifest-edit (python3, pip3, PyYaml, schema)

Warning

When installing Unified Streaming via a package manager, http proxy server or offline, please ensure the relevant core dependencies/packages are accessible and installed.

Sub-dependencies for packages should be checked on a machine that is identical to the one where the packages will later be installed. This can be achieved by running:

pip wheel --no-cache-dir --wheel-dir ./wheels PyYAML==6.0.1 schema==0.7.5

Alpine:

apk --update add apache2 mod_smooth_streaming

Rocky Linux / RedHat (RHEL) / AlmaLinux:

sudo yum install httpd mod_smooth_streaming

Ubuntu / Debian:

sudo apt-get install apache2 libapache2-mod-smooth-streaming

Configure Apache

After you have installed our software and Apache on your Linux distribution of choice, you still need to configure several things before you can successfully stream video. Please see the How to Configure (Unified Origin) section for the necessary information on how to do this.

Uninstall 'mod_smooth_streaming' and dependencies

To uninstall the 'mod_smooth_streaming' webserver module and its dependencies (among which is 'mp4split'):

Alpine:

apk del mod_smooth_streaming

Rocky Linux / RedHat (RHEL) / AlmaLinux:

sudo yum remove mod_smooth_streaming

Ubuntu / Debian:

sudo apt-get remove --auto-remove libapache2-mod-smooth-streaming

Unified Remix web server module ('mod_unified_remix')

Unified Remix can be installed as a command-line tool or as an Apache module.

To run Unified Remix statically you need to install it as a command-line tool. To do this, simply install 'mp4split' as 'unified_remix' is automatically installed alongside it.

To run Unified Remix dynamically you need to install it as a module for Apache. This is very similar to installing Unified Origin, but instead of 'mod_smooth_streaming', you need to install 'mod_unified_remix':

Alpine:

apk --update add apache2 mod_unified_remix

Rocky Linux / RedHat (RHEL) / AlmaLinux:

sudo yum install httpd mod_unified_remix

Ubuntu / Debian:

sudo apt-get install apache2 libapache2-mod-unified-remix

Configure Apache

Like when installing Unified Origin, you need to configure Apache after installing the Unified Remix module: How to Configure (Unified Remix).

Unified Transcoding web server module ('mod_unified_transcode')

Installing mod_unified_transcode

To configure a media processing unit to serve remote transcoding requests, first install (and, if required enable) the mod_unified_transcode Apache module.

Alpine:

apk --update add apache2 mod_unified_transcode

Rocky Linux / RedHat (RHEL) / AlmaLinux:

sudo yum install httpd mod_unified_transcode

Ubuntu / Debian:

sudo apt-get install apache2 libapache2-mod-unified-transcode
sudo a2enmod mod_unified_transcode

Installing and activating the transcoding plugins

For backward compatibility, by default, mod_unified_transcode will use the mfx transcoding plugins, which rely on the Intel Media SDK. However, for Linux, the Intel Media SDK is only available on Ubuntu, requires access to an Intel GPU, and needs additional system-level installation and configuration steps. Please see here for details.

New in version 1.15.0: As the preferred alternative, we now provide the mp4split-ffmpeg-plugins and mp4split-x264-plugins packages, which rely on the FFmpeg libraries and a running instance of the x264_encoding_service. The steps required to:

  • install these packages

  • configure the service control manager for the x264_encoding_service

  • providing a transcoders file, and

  • configuring a transcoding location in the Apache web server configuration

are described here.

Installation on Windows

For installing USP version 1.14.0 or later on Windows, please see this page. For older USP versions, please refer to this document.