Common use cases

Common use cases

Optimizing end-to-end latency

A low latency feature is now available on both and services to improve the transmission duration of data.

To enable this feature, the following steps must be done on both and servers.

  1. Create and configure a service:

    1. Configure the parameters as for any other service:

      • Configure the General parameters.
      • Configure the source parameters in the Input tab.
      • Configure the video and audio parameters in the Media processing tab.
      • Select the export type and all the encoding parameters in the Encoding tab.
    2. Add and configure as many outputs as needed in the Output tab and:

      • Tick the Direct Path for low latency checkbox in the Common MPEG-2 TS parameters section.
      • Enter the publication IP address in the Output stream section.
  2. Create and configure a catalog:

    1. Add an HLS or DASH over CMAF output to the catalog.

    2. Configure the General parameters and tick the Low latency checkbox in the General parameters section.

    3. Configure the remaining output parameters as for any other catalog output:

      • Configure the DASH parameters if needed.
      • Configure the HLS parameters if needed.
      • Configure the delivery parameters.
  3. Create and configure a service:

    1. Configure the Ingest parameters and:

      • Enter the same Stream IP address as set up in the output tab of the service.
      • Tick the Direct Path for low latency checkbox.
    2. Configure the DVR parameters:

      • Define the storage location for the DVR.
      • Set the DVR duration.
      • Set the DVR writing mode to Low latency.
    3. Associate the service with the catalog that contains the HLS or DASH over CMAF output configured with the Low latency parameter.

  4. Start both and services.

End-to-end latency is now reduced compared with other services.

Publishing Redundancy mode for MediaKind Packager

In order to guarantee service delivery to consumers, MediaKind Packager provides the following Publishing redundancy mode: 1+1 active / standby server mode

Attention: The Publishing redundancy is only available:

  • in distributed deployment mode where at least two MediaKind Packaging servers are synchronized;
  • for HLS and HSS live services.

Configuring the synchronization between MediaKind Packager servers

Synchronizing your pool of MediaKind Packager servers mode allows you to record and deliver the same content on distinct servers and therefore ensures a transparent failover of the service with no impact on the delivery network and the consumer.

To configure the synchronization between servers, follow these steps:

  1. Open the common configuration file of server A using vi editor:

    # vi /etc/mediakind/mkp/charts/customer-values.yaml
  2. Edit the Synchronization values in the dvrManager section:

    dvrManager:
        synchronizer:
            port: 1234
            nicName: eth1
            address: 239.1.2.3
            type: udp
    • type: Set the value to udp (communication between the MediaKind Packager servers is done with the UDP protocol). Default value is none.
    • address: Enter a multicast address used for the UDP communication.
    • nicName: Enter the name of the nic used for the UDP communication (enXXXXXX).
    • port: Enter the port used for the UDP communication.

    If you want to define multicastSources, add this field as an array in synchonizer definition:

    dvrManager:
        synchronizer:
            port: 1234
            nicName: eth1
            address: 239.1.2.3
            type: udp
            multicastSources: |
                ["10.86.86.218"]

    In case of multiple multicast addresses, define this list as below :

    dvrManager:
        synchronizer:
            port: 1234
            nicName: eth1
            address: 239.1.2.3
            type: udp
            multicastSources: |
                ["10.86.86.218", "10.86.86.219", "10.86.86.220"]
  3. Configure the Channel Routing feature in the advancedSettings section:

    originserver:
      advancedSettings:
        useChannelRouting: true
  4. Execute the following script to apply the changes:

    # /etc/mediakind/mkp/charts/apply_customer_values.sh
  5. Repeat on each MediaKind Packager server using the same parameters.

Configuring the publishing synchronization between two servers

The Servers synchronization mode is already configured.

Synchronizing your pool of MediaKind Packager servers mode allows you to deliver the same content from two distinct servers and therefore ensures a transparent failover of the service with no impact on the delivery network and the consumer.

Publication is done in active / standby mode. The standby publishing server become active when:

  • The current active publishing server becomes unavailable (after a shutdown or unexpected error);

  • The link between the two servers is broken.

    Note: There is no automatic switch back when the initial active server is back online.

To configure the synchronization between servers, follow these steps:

  1. Open the common configuration file of server A using vi editor:

    # vi /etc/mediakind/mkp/charts/customer-values.yaml
  2. Edit the Synchronization values in the publisher section:

    publisher:
        synchronizer:
            port: 1234
            nicName: eth1
            address: 239.1.2.3
            type: udp
    • port: Enter the port used for the UDP communication.
    • nicName: Enter the name of the nic used for the UDP communication (enXXXXXX).
    • address: Enter a multicast address used for the UDP communication.
    • type: Set the value to udp (communication between the MediaKind Packager servers is done with the UDP protocol). Default value is none.

    If you want to define multicastSources, add this field as an array in synchonizer definition:

    publisher:
        synchronizer:
            port: 1234
            nicName: eth1
            address: 239.1.2.3
            type: udp
            multicastSources: |
                ["10.86.86.218"]

    In case of multiple multicast addresses, define this list as below :

    publisher:
        synchronizer:
            port: 1234
            nicName: eth1
            address: 239.1.2.3
            type: udp
            multicastSources: |
                ["10.86.86.218", "10.86.86.219", "10.86.86.220"]
  3. Edit the Channel Routing feature:

    originserver:
      advancedSettings:
        useChannelRouting: true

    useChannelRouting: Set the value to true.

  4. Execute the following script to apply the changes:

    # /etc/mediakind/mkp/charts/apply_customer_values.sh
  5. Repeat on each MediaKind Packager server using the same parameters.

DVR Redundancy mode for MediaKind Packager

In order to guarantee service delivery to consumers, MediaKind Packager provides the following DVR redundancy modes:

⚠️
The DVR redundancy is only available in distributed deployment mode where at least two MediaKind Packager servers are synchronized.

Configure synchronization between MediaKind Packager servers

Synchronizing your pool of MediaKind Packager servers mode allows you to record and deliver the same content on distinct servers and therefore ensures a transparent failover of the service with no impact on the delivery network and the consumer.

To configure the synchronization between servers, follow these steps:

  1. Open the common configuration file of server A using vi editor:

    # vi /etc/mediakind/mkp/charts/customer-values.yaml
  2. Edit the Synchronization values in the dvrManager section:

    dvrManager:
        synchronizer:
            port: 1234
            nicName: eth1
            address: 239.1.2.3
            type: udp
    • type: Set the value to udp (communication between the MediaKind Packager servers is done with the UDP protocol). Default value is none.
    • address: Enter a multicast address used for the UDP communication.
    • nicName: Enter the name of the nic used for the UDP communication (enXXXXXX).
    • port: Enter the port used for the UDP communication.
  3. Configure the Channel Routing feature in the advancedSettings section:

    originserver:
      advancedSettings:
        useChannelRouting: true
  4. Execute the following script to apply the changes:

    # /etc/mediakind/mkp/charts/apply_customer_values.sh
  5. Repeat on each MediaKind Packager server using the same parameters.

Server auto-assignmentd

  • Your MediaKind headend is composed of at least two synchronized MediaKind Packager servers.
  • You have created and configured one Catalog that contains at least one output.
  • You have created and configured one Live Packaging service that:
    • contains at least one source and a publishing point.
    • is linked to an existing Catalog.

The Server auto-assignement mode allows you to let your MediaKind solution manage the services work load amongst all your MediaKind Packager servers. When a new service is started, the service processing is dynamically assigned to the least loaded server.

To start the service with an auto-assigned server, follow these steps:

  1. Click the Services link in the left panel from the Packager user interface.

  2. Click the field in the Mandatory column to display available servers.

  3. Select AUTO.

  4. Click the button in the Actions column to start the related service. The service status turns from stopped to started.

The service is processed on the elected MediaKind Packager server. If the server comes to fail, a new MediaKind Packager server will be elected from the pool of servers and the service will resume from this new server.

1+1 active / active server mode

  • Your MediaKind headend is composed of at least two synchronized MediaKind Packager servers.
  • You have created and configured one Catalog that contains at least one output.
  • You have created and configured one Live Packaging service that:
    • contains at least one source and a publishing point.
    • is linked to an existing Catalog.

The 1+1 active / active server mode allows you to assign one Live Packaging service to two MediaKind Packager servers. Both servers will therefore process the service and guarantee the availability of the content even if one server may come to fail.

To start the service with the two servers, follow these steps:

  1. Access the MediaKind Packager user interface and click the Services link in the left panel.

  2. Click the field in the Mandatory column to display available servers.

  3. Select one server. Do not select AUTO in this mode.

  1. Repeat to select the second server. Do not select AUTO in this mode.

  2. Click the button in the Actions column to start the related service. The service status turns from stopped to started.

The service is processed on both MediaKind Packager servers. If one server comes to fail, the content will still be available on the other server.

Parameters mapping key for encryption

MediaKind Packager catalogs and their specifically configured outputs can be combined with any existing Live or On-Demand packaging services.

The Parameters mapping key functionality allows you to override some of these paremeters with the paremeters of a Live or On-Demand packaging service and therefore adapts the assets delivery requirements without having to multiply the catalog outputs.

To override the parameters of an output with the parameters of a Live or On-Demand packaging service, you must enter an identical key on both:

  • Output configuration page:

    The Parameters mapping key field must be filled with a unique key value.

  • Live or On-Demand packaging service configuration page:

    The Key field is composed of the Parameters mapping key value followed by the parameter to be changed.

    The Value field must be filled with the parameter value that will override the existing output parameter value.

 KeyValue
Common overloadable parameters for all encryptionscontentIdValue of the content ID
HLS with Fairplay fixed keyprotection.keyEncryption key
protection.keyIdKey identifier
protection.ivInitialization vector
protection.uriUri
protection.keyForrmatKey format
protection.keyFormatVersionsKey format version
HSS with PlayReady fixed keyprotection.keyEncryption key
protection.keyIdKey identifier
protection.licenseAcquisitionUrlURL for license acquisition
protection.domainServiceIdDomain service ID
protection.licenseUiUrlUser URL for license check
DASH with Common Encryption fixed keyprotection.keyEncryption key
protection.keyIdKey identifier
protection.widevine.policyPolicy
protection.widevine.providerProvider name
protection.playready.licenseAcquisitionUrlURL for license acquisition
protection.playready.licenseUiUrlUser URL for license check
protection.playready.domainServiceIdDomain service ID
  • MediaKind Packager catalog contains the following two outputs:

    |Output 1|Output 2| |

|

|

  • MediaKind Packager service contains the following key and value parameters:

Results:

  • Output 1 is published with License acquisition url defined in output 1 configuration

  • Output 2 is published with License acquisition url defined in service configuration (overriding empty field in output 2 configuration)