Set Up a Live Slicer for a Live Event

Configure a Live Slicer to feed a live event, including the settings required for event-based slicing.

An alternative to the Live Slicer is the CameraSlicer. It provides a simplified streaming solution when the full functionality and flexibility provided by the Live Slicer and the Live Events Dashboard are not needed.

Prepare the Live Slicer to stream a live event

  1. Verify that the latest version of the Live Slicer (231114.04.01) is installed.
    View Live Slicer release notes

  2. Verify that the system time on the computer hosting the Live Slicer is accurate. Use Network Time Protocol (NTP) to sync your Linux server's time with a public time server.

    The Live Events Dashboard uses UTC time to schedule certain commands to the Live Slicer. Inaccurate system time on the computer hosting the Live Slicer may cause synchronization issues.

    Sample synchronization issues:

    • It could prevent the Live Slicer from ending an event, causing it to perpetually slice content into an orphaned live event.
    • It may prevent on-demand content from being generated for the live event.
  3. Define the following settings in the Live Slicer configuration file (/etc/uplynk.conf):

    api_port: 127.0.0.1:65009
    preview: on
    livepreview_with_audio: on
    livepreview_max_viewers: 2

    Additional information for each of the above Live Slicer settings is provided below.

    • api_port: Verify that the Live Slicer has been configured to listen for API requests on a specific port.

    • preview: Enables the live preview capability within the Live Events Dashboard.

    • livepreview_with_audio: Enables audio within the Live Events Dashboard's live preview when using Live Slicer version 22083100 or higher.

    • livepreview_max_viewers: Limits the number of simultaneous viewers of a live preview.

      Each live preview instance consumes resources on the computer hosting the Live Slicer. This setting prevents performance issues by capping the number of simultaneous connections.

  4. Recommended: Secure the communication between the Live Slicer and the Live Events Dashboard through the use of SSL/TLS.

🚧

If a Live Slicer is not configured to support TLS, then browsers may not properly load the Live Events Dashboard due to the page containing a mixture of HTTP and HTTPS content. Some browsers display a warning icon in the address bar to indicate this issue. An operator may then choose to accept this potential security threat by configuring the browser to allow insecure content.

Set up SSL/TLS

Set up Automatically

The Live Slicer may communicate with the Live Events Dashboard over SSL/TLS. TLS secures all transferred data by encrypting it.

Set up TLS for the Live Slicer

A TLS certificate may be automatically generated by the CMS, downloaded, and then installed on the computer hosting the Live Slicer by performing the following steps:

  1. Verify that the Live Slicer is hosted on a computer with a public IP address.

  2. Update the Live Slicer configuration file (/etc/uplynk.conf) with the following changes and then save your changes:

    • Set the ssl_port setting to the desired port.

      Example: ssl_port: 65010

    • If present, remove the ssl_cert and manual_ip settings.

  3. Verify that your firewall is configured to allow traffic on the port defined by the ssl_port setting.

  4. Restart the Live Slicer.

Set up TLS Certificate Manually

Configure the Live Slicer to communicate over HTTPS by generating and installing a TLS certificate on the computer hosting it.

  1. Register a domain for each desired Live Slicer via a domain registrar (e.g., Dyn, Namecheap, GoDaddy, or Freenom). The recommended setup for multiple Live Slicers is to use subdomains (e.g., ls1.example.com, ls2.example.com, ls3.example.com, etc.). These subdomains may then be secured via a single wildcard SSL certificate.

  2. Obtain a TLS certificate:

    • Order a TLS certificate from a Certificate Authority (e.g., DigiCert, GoDaddy, or Let's Encrypt).
    • Generate a self-signed TLS certificate.
      • Self-Signed SSL Certificate: This type of setup requires configuring each browser that connects to the Live Events Dashboard to trust this TLS certificate.
  3. Store the TLS certificate on the computer hosting the Live Slicer.

  4. Define the following settings in the Live Slicer configuration file: (/etc/uplynk.conf):

Live Slicer ConfigurationDescription
ssl_port: 65010Define the port through which the Live Slicer will send and receive TLS traffic. This sample configuration uses port 65010 for TLS traffic, but it can be configured to any available port.
ssl_cert: /Path/SSLCertificate.pemIdentify the TLS certificate through which data will be encrypted by replacing the following variables:
  • Path: Replace this with the path to the directory where the desired TLS certificate resides.
  • SSLCertificate: Replace this with the TLS certificate's filename.
manual_ip: DomainNameDefines the hostname through which TLS traffic will flow.
  1. Optional. Self-Signed SSL Certificates Only: Perform the following steps from each web browser that will load the Live Events Dashboard:

    • Load a Live Slicer's test page.

      Syntax: https://{Live Slicer Hostname}:{SSL Port}/testpage

      Sample URL: https://ls1.example.com:65010/testpage

    • Upon receiving a TLS warning, configure the browser to trust the self-signed SSL certificate.

    • Verify that the browser can now connect to the Live Events Dashboard.

    • Repeat this procedure for each desired Live Slicer.

Dynamic IP Addresses
Typically, the computer hosting the Live Slicer should be assigned a static IP address. However, there are certain conditions (e.g., slicing at a conference behind a firewall) under which the computer hosting the Live Slicer may be assigned a dynamic IP address. A workaround for this type of setup is to use ngrok to expose a local server behind a NAT or firewall to the internet. Ngrok will generate a TLS-enabled URL for that server. After which, modify the manual_ip Live Slicer configuration setting to point to this URL.


Did this page help you?