Starting with Live¶
It is recommended to first check the install by following Verifying Your Setup.
To setup Adaptive Bitrate (ABR) Streaming you need to create a ‘publishing point’ before the encoder can be started.
#/bin/bash mp4split -o /var/www/live/channel1/channel1.isml
After this is done, you can use any encoder that supports fragmented MP4 output over HTTP (see the Factsheet).
When the encoder starts, the webserver will update the server manifest with the information on the incoming stream, create a .db3 file to maintain meta data and start writing the .ismv files containing the ingest:
channel1/ channel1.db3 channel1.isml stream1.ismv
The encoder needs to be stopped for a full reset, because otherwise the webserver will keep a lock on the .db3 file and it will not be recreated.
You may also create a server manifest with mp4split directly using the Publishing Point API:
For an encoder to be able to start, stop and restart (the
option) the encoder needs to be configured to use Coordinated Universal Time (UTC) as the time it uses.
Please refer to the Encoder Settings section or the encoder manual on how to configure this.
For the webserver to ingest the stream there should be a mapping between hostname and filesystem, e.g. the following should be set in your Apache vhost configuration in ‘/etc/apache/sites-enabled/live.conf’:
ServerName live.example.com DocumentRoot /var/www/live
The ServerName should also exist in your DNS to resolve to the ip address of the USP server.
It is not advised to use the ip address of the webserver, as the webserver then cannot make the vhost mapping.
Creating the server manifest as described above will create a ‘channel1’ directory in the DocumentRoot ‘/var/www/live’:
The url for the encoder then becomes:
For Nginx please refer to the Configuration section.
For an overview of how the encoder needs to be setup (use UTC, closed GOP etc), please see the Encoding Requirements section.