How to Install

Attention

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

Hint

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

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.

The beta repositories are only to be consulted as part of a request or support process. Without this no support is to be expected. The beta repositories employ a username/password as part of the URL (e.g. http://USERNAME:PASSWORD@beta.{apk,apt,yum,zip}unified-streaming.com).

How to install for different platforms:

Alpine

To install on Alpine, follow the steps described below.

Add repository

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

#!/bin/sh

wget -q -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 the Unified Streaming repository:

#!/bin/sh

# Set variable to specify Alpine version
alpine_version="v3.11"

echo https://stable.apk.unified-streaming.com/alpine/${alpine_version} >> /etc/apk/repositories

or, to add the beta the Unified Streaming repository:

#!/bin/sh

# Set variable to specify Alpine version
alpine_version="v3.11"

echo https://beta.apk.unified-streaming.com/alpine/${alpine_version} >> /etc/apk/repositories
Release USP ${alpine_version}
Earlier than 1.10.18 v3.8 only
1.10.18 and later v3.8 or v3.11

Choose version

To show the available versions of our software (only checking the available versions for 'mp4split' is enough, as all of our software follows this same versioning scheme):

#!/bin/sh

apk search -v -d 'mp4split'

Please see the Release notes for the release notes.

Installation on Alpine

Note

The software requires a license key. On Linux, 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 Information.

Choose whether you need to install 'mp4split' only (Unified Packager), or Apache and the 'mod_smooth_streaming' webserver module as well (Unified Origin):

Attention

On Linux, installing 'mp4split' also installs the 'unified_capture' (Unified Capture) and 'unified_remix' (Unified Remix) command-line tools.

Unified Packager ('mp4split' only)

To use Unified Packager or for other use cases where you don't need the webserver module, install the latest 'mp4split' like so:

#!/bin/sh

apk --update add mp4split
Uninstall 'mp4split'

To uninstall 'mp4split':

#!/bin/sh

apk del mp4split

Unified Origin ('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):

#!/bin/sh

apk --update add apache2 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 'mp4split' and 'mod_smooth_streaming'

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

#!/bin/sh

apk del mod_smooth_streaming

Unified Remix ('unified_remix' or 'mod_unified_remix')

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

To run 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 (on Linux).

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':

#!/bin/sh

apk --update add apache2 mod_unified_remix

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

Amazon Linux 2 / CentOS / RedHat (RHEL)

To install on Amazon Linux 2, CentOS or RedHat, follow the steps described below.

Attention

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

Add repository

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
Amazon Linux 2 https://stable.yum.unified-streaming.com/amzn2/x86_64
CentOS 8.x https://stable.yum.unified-streaming.com/centos/8/x86_64
CentOS 7.x https://stable.yum.unified-streaming.com/centos/72/x86_64
CentOS 6.x Apache 2.4 https://stable.yum.unified-streaming.com/centos/68-deprecated/x86_64
CentOS 6.x Apache 2.2 https://stable.yum.unified-streaming.com/centos/68-apache22-deprecated/x86_64

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

Version Base URL
Amazon Linux 2 https://beta.yum.unified-streaming.com/amzn2/x86_64
CentOS 8.x https://beta.yum.unified-streaming.com/centos/8/x86_64
CentOS 7.x https://beta.yum.unified-streaming.com/centos/72/x86_64
CentOS 6.x Apache 2.4 https://beta.yum.unified-streaming.com/centos/68-deprecated/x86_64
CentOS 6.x Apache 2.2 https://beta.yum.unified-streaming.com/centos/68-apache22-deprecated/x86_64

Note

Even though '72' and '68' in the CentOS paths both refer to a specific 'minor' version of this distribution, the same paths can be used for other minor versions of the same major release.

Choose version of Unified Streaming packages

To show the available versions of our software (only checking the available versions for 'mp4split' is enough, as all of our software follows this same versioning scheme):

#!/bin/bash

yum --showduplicates list mp4split | expand

Please see the Release notes for the release notes.

Installation on Amazon Linux 2 / CentOS / RedHat

Note

The software requires a license key. On Linux, 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 Information.

Choose whether you need to install 'mp4split' only (Unified Packager), or Apache and the 'mod_smooth_streaming' webserver module as well (Unified Origin):

Attention

On Linux, installing 'mp4split' also installs the 'unified_capture' (Unified Capture) and 'unified_remix' (Unified Remix) command-line tools.

Unified Packager ('mp4split')

To use Unified Packager or for other use cases where you don't need the webserver module, install 'mp4split' like so:

#!/bin/bash

yum install mp4split
Uninstall 'mp4split'

To uninstall 'mp4split':

#!/bin/bash

yum remove mp4split

Unified Origin ('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):

#!/bin/bash

yum install httpd 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 'mp4split' and 'mod_smooth_streaming'

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

#!/bin/bash

yum remove mod_smooth_streaming

Unified Remix ('unified_remix' or 'mod_unified_remix')

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

To run 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 (on Linux).

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':

#!/bin/bash

yum install httpd mod_unified_remix

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

Debian / Ubuntu

To install Debian or Ubuntu, follow the steps described below.

Add repository

To add the Unified Streaming stable repository, use the following:

#!/bin/bash

sudo sh -c 'echo "deb [arch=amd64] https://stable.apt.unified-streaming.com bionic multiverse" > /etc/apt/sources.list.d/unified-streaming.list'

Or, to add the Unified Streaming beta repository, use the following:

#!/bin/bash

sudo sh -c 'echo "deb [arch=amd64] https://beta.apt.unified-streaming.com bionic multiverse" > /etc/apt/sources.list.d/unified-streaming.list'

The command-line above will add the repository for Ubuntu 18. To add a different version, replace bionic with the name associated with the distribution you are running, as listed below:

Version Name
Debian 8 jessie-deprecated
Debian 9 stretch
Ubuntu 14 trusty-deprecated
Ubuntu 16 xenial
Ubuntu 18 bionic

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

#!/bin/bash

wget https://stable.apt.unified-streaming.com/unifiedstreaming.pub
sudo apt-key add unifiedstreaming.pub

The shell will print OK, but you can check if the key is imported like this:

#!/bin/bash

sudo apt-key list

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

#!/bin/bash

sudo apt-get update

Choose version

To show the available versions of our software (only checking the available versions for 'mp4split' is enough, as all of our software follows this same versioning scheme):

#!/bin/bash

sudo apt list -a mp4split

Please see the Release notes for the release notes.

Installation on Debian / Ubuntu

Note

The software requires a license key. On Linux, 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 Information.

Choose whether you need to install 'mp4split' only (Unified Packager), or Apache and the 'mod_smooth_streaming' webserver module as well (Unified Origin):

Attention

On Linux, installing 'mp4split' also installs the 'unified_capture' (Unified Capture) and 'unified_remix' (Unified Remix) command-line tools.

Unified Packager ('mp4split')

To use Unified Packager or for other use cases where you don't need the webserver module, install 'mp4split' like so:

#!/bin/bash

sudo apt-get install mp4split
Uninstall 'mp4split'

To uninstall 'mp4split':

#!/bin/bash

sudo apt-get remove mp4split

Unified Origin ('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):

#!/bin/bash

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 'mp4split' and 'mod_smooth_streaming'

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

#!/bin/bash

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

Unified Remix ('unified_remix' or 'mod_unified_remix')

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

To run 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 (on Linux).

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':

#!/bin/bash

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

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

Windows

Attention

The installation instructions for Windows rely on Powershell - which you can start by typing 'PowerShell' in the search bar or in cmd.exe (i.e., Command Prompt).

To install on Windows, follow the steps described below.

Install dependency: Microsoft Visual C++ Redistributable

Executables and DLLs are self-contained and have no dependencies other than the Microsoft Visual C++ Redistributable for Visual Studio 2015, 2017 and 2019. Please install this package if you did not do so already:

Invoke-WebRequest https://aka.ms/vs/16/release/VC_redist.x64.exe -OutFile vc_redist.x64.exe
# After downloading the package, run it to install it
.\vc_redist.x64.exe

Available Windows versions

The following Windows versions are available:

Version Name
Windows 2012 12-deprecated
Windows 2016 16

The following instructions assume Windows 2016 is used (so they point to the '16' builds on our repository).

Choose version of Unified Streaming packages

You can check which versions of our software are available:

(Invoke-Webrequest https://stable.zip.unified-streaming.com/windows/16/x86_64/win.sha256sum).rawcontent

This will print an overview like:

HTTP/1.1 200 OK
Date: Fri, 28 Jun 2019 12:19:44 GMT
Server: Apache/2.4.29
ETag: "1c2d-58aa6a1e42d18"
Accept-Ranges: bytes

ccca407857318c531e10c44067193849f7990f648e5017ad0849ce43ef651931  apache_mod_smooth_streaming-1.7.32-win64.zip
95f10815dfd879b95b62788f97ef7cf0390a398133414427a2e6a7b3d47a4949  apache_mod_smooth_streaming-1.8.4-win64.zip
9723d6c0e1165c40b03f4cdeca34e5a9377661e4cc191b448b1ec0f3969c0df2  apache_mod_smooth_streaming-1.8.5-win64.zip
7c2717e932b336d416493c4e5afe196e671e7395235d46374c66e99ba14011ec  apache_mod_smooth_streaming-1.8.6-win64.zip
baff503ce5c1abfc67321294cc36784f591ef93f29f13b892560eea70dccfc52  apache_mod_smooth_streaming-1.8.7-win64.zip
0390ff8ad390482cc853add135e6e0dfabd2756f37c28828e8ed7b96f418cf62  apache_mod_smooth_streaming-1.9.5-win64.zip
75630746b0d3634a7baa1ff7ddc14e52e6534a497cd33746dea69940c516d93a  apache_mod_smooth_streaming-1.9.6-win64.zip
....

Please see the Release notes for the release notes.

Verify authenticity of packages

You don't use a package manager to install our software on Windows, meaning you will need to verify the authenticity of the packages. For this we offer a set of three files:

  • List of checksums (hashes) per zipped package, per version: win.sha256sum
  • Signature of win.sha256sum: win.sha256sum.asc
  • Our public key to verify the signature's authenticity: usp-win-2019-public.pem

You can download these files from the following locations:

Invoke-WebRequest -Uri https://stable.zip.unified-streaming.com/windows/16/x86_64/win.sha256sum -OutFile win.sha256sum
Invoke-WebRequest -Uri https://stable.zip.unified-streaming.com/windows/16/x86_64/win.sha256sum.asc -OutFile win.sha256sum.asc
Invoke-WebRequest -Uri https://stable.zip.unified-streaming.com/usp-win-2019-public.pem -OutFile usp-win-2019-public.pem

Unfortunately, Windows does not offer any native tools to verify downloads based on a list of checksums, a signature and a public key. You will need two Unix command-line tools to verify the authenticity of our Windows packages: openssl and sha256sum.

As both openssl and sha256sum are shipped with most Linux distributions, there are several options you have to check our Windows packages after you have downloaded them:

  • On a machine running Linux
  • On a machine running Windows, by running Linux using Windows Subsystem for Linux
  • On a machine running Windows, by running Cygwin (with both tools installed)
  • On 'any' machine, by using Docker to spin up Linux container

In all of the above scenarios you need to make sure the directory you downloaded the zipped package(s) also contains the file with checksums (win.sha256sum), the signature of that file (win.sha256sum.asc) and our public key (usp-win-2019-public.pem).

In the first three scenarios run the following two commands in this directory:

#!/bin/bash

openssl dgst -sha256 -verify usp-win-2019-public.pem -signature win.sha256sum.asc win.sha256sum
sha256sum -c win.sha256sum 2>&1 | grep OK

In the fourth scenario using Docker, run the following in this directory:

$install_openssl = "apk add --no-cache openssl"
$verify_signature = "openssl dgst -sha256 -verify usp-win-2019-public.pem -signature win.sha256sum.asc win.sha256sum"
$verify_checksum = "sha256sum -c win.sha256sum 2>&1 | grep OK"
docker run --rm -v ${pwd}:/data -w /data alpine:latest sh -c "$install_openssl && $verify_signature && $verify_checksum"

All scenarios should result in a Verified OK message being printed to confirm the authenticity of the signature, followed by the name(s) of the zipped packages you have downloaded along with an OK. For example, when you are verifying mp4split-1.10.18-win64.zip the result should be:

Verified OK
mp4split-1.10.18-win64.zip: OK

Installation of packages on Windows

Note

The software requires a license key. On Windows, the preferred way is to create a file that contains the key (e.g., usp-license.key), which then can be specified 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 Information.

Choose whether you want to install:

Unified Packager ('mp4split')

To use Unified Packager or for other use cases where you don't need to have the webserver module installed, just download and install 'mp4split':

$usp_repo = "https://stable.zip.unified-streaming.com/windows/16/x86_64"
$usp_version = "1.10.18"
$usp_path = "C:\Program Files\Unified Streaming"

# Download package (after doing so, verify its authenticity before proceeding)
Invoke-WebRequest -Uri $usp_repo/mp4split-$usp_version-win64.zip -OutFile mp4split-$usp_version-win64.zip

# Expand package
Expand-Archive mp4split-$usp_version-win64.zip

# Create a 'Unified Streaming' directory in your 'Program Files' if it does not already exist
if ( -Not (Test-Path -PathType Container -Path $usp_path ) ) { New-Item -ItemType Directory $usp_path }

# Get 'mp4split.exe' from expanded archive, and move it to the 'Unified Streaming' directory
Get-ChildItem -Path mp4split-$usp_version-win64 -Recurse -Filter mp4split.exe | Move-Item -Destination $usp_path

Unified Capture ('unified_capture')

To use Unified Capture on Windows, you only need to download and install the 'unified_capture' package:

$usp_repo = "https://stable.zip.unified-streaming.com/windows/16/x86_64"
$usp_version = "1.10.18"
$usp_path = "C:\Program Files\Unified Streaming"

# Download package (after doing so, verify its authenticity before proceeding)
Invoke-WebRequest -Uri $usp_repo/unified_capture-$usp_version-win64.zip -OutFile unified_capture-$usp_version-win64.zip

# Expand package
Expand-Archive unified_capture-$usp_version-win64.zip

# Create a 'Unified Streaming' directory in your 'Program Files' if it does not already exist
if ( -Not (Test-Path -PathType Container -Path $usp_path ) ) { New-Item -ItemType Directory $usp_path }

# Get 'unified_capture.exe' from expanded archive, and move it to the 'Unified Streaming' directory
Get-ChildItem -Path unified_capture-$usp_version-win64 -Recurse -Filter unified_capture.exe | Move-Item -Destination $usp_path

Unified Remix ('unified_remix')

To use Unified Remix as a command-line tool on Windows, you need to download and install the 'unified_remix' package:

$usp_repo = "https://stable.zip.unified-streaming.com/windows/16/x86_64"
$usp_version = "1.10.18"
$usp_path = "C:\Program Files\Unified Streaming"

# Download package (after doing so, verify its authenticity before proceeding)
Invoke-WebRequest -Uri $usp_repo/unified_remix-$usp_version-win64.zip -OutFile unified_remix-$usp_version-win64.zip

# Expand package
Expand-Archive unified_remix-$usp_version-win64.zip

# Create a 'Unified Streaming' directory in your 'Program Files' if it does not already exist
if ( -Not (Test-Path -PathType Container -Path $usp_path ) ) { New-Item -ItemType Directory $usp_path }

# Get 'unified_remix.exe' from expanded archive, and move it to the 'Unified Streaming' directory
Get-ChildItem -Path unified_remix-$usp_version-win64 -Recurse -Filter unified_remix.exe | Move-Item -Destination $usp_path

Unified Origin ('mp4split' and 'mod_smooth_streaming')

To run Unified Origin, you need to install 'mp4split', Apache and the 'mod_smooth_streaming' webserver module.

First, install Apache:

Note

Apache Lounge blocks downloads from a shell.

Then, install 'mp4split' (if you haven't installed it already) as well as the 'mod_smooth_streaming' webserver module:

$usp_repo = "https://stable.zip.unified-streaming.com/windows/16/x86_64"
$usp_version = "1.10.18"
$usp_path = "C:\Program Files\Unified Streaming"

# Download packages (after doing so, verify their authenticity before proceeding)
Invoke-WebRequest -Uri $usp_repo/mp4split-$usp_version-win64.zip -OutFile mp4split-$usp_version-win64.zip
Invoke-WebRequest -Uri $usp_repo/apache_mod_smooth_streaming-$usp_version-win64.zip -OutFile apache_mod_smooth_streaming-$usp_version-win64.zip

# Expand packages
Expand-Archive mp4split-$usp_version-win64.zip
Expand-Archive apache_mod_smooth_streaming-$usp_version-win64.zip

# For 'mp4split', create a 'Unified Streaming' directory in your 'Program Files' if it does not already exist
if ( -Not (Test-Path -PathType Container -Path $usp_path ) ) { New-Item -ItemType Directory $usp_path }

# Then get 'mp4split.exe' from the expanded archive, and move it to the 'Unified Streaming' directory
Get-ChildItem -Path mp4split-$usp_version-win64 -Recurse -Filter mp4split.exe | Move-Item -Destination $usp_path

# For 'mod_smooth_streaming', grab the module from the expanded archive and move it to the 'modules' subdirectory of where Apache is installed
Get-ChildItem -Path apache_mod_smooth_streaming-$usp_version-win64 -Recurse -File -Filter mod_smooth_streaming.so | Move-Item -Destination c:\Apache24\modules
Configure Apache

After you have installed our software and Apache 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.

Add 'mp4split' and other tools to system-wide path settings

In order to run 'mp4split' and the other Unified Streaming command-line tools without explicitly specifying the paths to their executables, you can add the path to where they are installed to the system-wide 'path' settings. To do this, follow the instructions below (but be aware that these will make changes to your registry):

$usp_path = "C:\Program Files\Unified Streaming"

# Get current system-wide 'path' settings, store them in variable and print result
(Get-ItemProperty -Path 'Registry::HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\Session Manager\Environment' -Name PATH).path | Set-Variable -Name "old_path" -PassThru | Select-Object -ExpandProperty value

# Add the path to where 'mp4split' was installed to the system-wide 'path' settings and print result
Set-ItemProperty -Path 'Registry::HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\Session Manager\Environment' -Name PATH -Value "$old_path;$usp_path" -PassThru | Select-Object -ExpandProperty PATH