Getting Started with Ramp Multicast+ and Video Cloud

This topic provides an overview of using the Ramp AltitudeCDN™ Multicast+ eCDN solution with Brightcove Video Cloud.

Introduction

Ramp's AltitudeCDN™ Multicast+ product is an enterprise live video distribution system that makes use of multicast enabled networks to reduce video traffic over the local network, the internet gateway, and limited bandwidth links within the enterprise network. With Multicast+, client desktop computers using the Brightcove Player will pull the stream from a Multicast+ receiver client on the local computer which "tunes in" to the live stream delivered on the network by the Multicast+ server.  The Multicast+ server pulls the live stream from the Brightcove CDN or an on-premise streaming server. Multicast+ is a completely on-premise solution delivered as a software appliance and is managed by the AltitudeCDN™ Altimeter management console.  Multicast+ can be used standalone or in concert with AltitudeCDN™ Omnicache for mixed unicast/multicast networks.

The integration with the Brightcove uses the Multicast+ Video.js plug-in to rewrite the stream URL to the local Multicast+ receiver client server.  For complete details on setting up the Multicast+ server for use with Video Cloud, see this TechNote from Ramp.

Before proceeding with the instructions below, please complete the Multicast+ Quickstart process with the Ramp team to ensure that the Multicast+ server, local Multicast+ receivers, and the local network are configured properly.

Player Configuration

Start by configuring a Brightcove player to use the Multicast+ plug-in. Create a new player with the desired skin and options.

Then, add the Multicast+ Video.js plug-in.

Copy and paste from here:

      //livetools.ramp.com/omnicache/plugin/multicastplugin.allinone.min.js
      

Finally, set the Multicast+ plug-in options.  First, the player will need to know the multicast IP address and port for the live multicast broadcast.  The player can be locked to a particular multicast address by specifying a "maddr" parameter in the Options such as

      "maddr": "239.0.0.1",

However, ideally the player would get the multicast address from the Brightcove media object that it is currently playing.  This is especially useful if the player needs to fall back to an Omnicache server or the stream from the CDN because it will already have the original stream URL.  If "maddr" is not specified in the plug-in Options, the plug-in will look for the multicast IP address in a Custom Field named "multicastaddress". To set the Custom Field value on a media object, open the media object in Brightcove Studio and click Edit on the Custom Fields section:

For a mixed unicast/multicast environment, use the "omnicache" parameter in the Options to specify an Omnicache server for the player to fall back to if the Multicast+ receiver client is not available on the playback device or if the multicast stream is not available on that segment of the network.

Copy and paste from here:


  "params": {
    "minTime1": 15,
    "minTime0": 5,
    "keyStoreUri": "default",
    "receiverType": "native",
    "receiverHost": "hostname",
    "allowHttpFallback": false,
    "omnicache": "https://omnicache_backup_server"
  }, 

  "verbose": true
}

 

Parameter definitions:

  • maddr: - The multicast stream address and port.  This plug-in also is aware of the 'multicastaddress' custom field which can be used instead of hard-coding the maddr in the player plug-in.
  • allowHttpFallback: (default false) - prevents the code from trying to connect to an insecure receiver when on a secure page (possible in some situations)
  • keyStoreUri: (default "default") - allows the code to use an embedded key store rather than looking for one to load
  • receiverHost: "brightcove.multicast-receiver.altitude.net" - supplies the certified name for localhost
  • receiverType: "native" - allows the code to use default settings rather than trying to locate an external file that is specific to the OS
  • minTime0: limits the polling of the receiver to specified number of seconds of 0-bytes received
  • minTime1: limits the polling of the receiver to specified number of seconds of not having received the first segment of 3
  • omnicache: URL for omnicache back up server if the multicast stream cannot be found

Embed Brightcove Player

Finally, embed the Brightcove player on your web page using the standard player publishing process.


Providing Live Stream Manifest to Multicast+

To broadcast a live stream on the enterprise network, Multicast+ needs to know the stream manifest URL delivered by the Brightcove CDN or an internal streaming server. When using the Live workflow in Brightcove Video Cloud, the stream manifest URL is not known until the live event starts streaming. To provide the manifest URL to Multicast+, you will start the live stream, copy the stream manifest, and then save the stream manifest on the Multicast+ server via the Altimeter console.

Start Live Stream and Determine Stream Manifest

To determine the stream manifest, first create the live event. Note that you can create a live event days or weeks prior to starting the live stream. In that case you will complete a portion of the instructions below first and then later you will complete the remainder of the instructions.

Select the default player, not the Multicast+ enabled player.

Choose your live stream profile.

Ensure that your output options do not have any RTMP formatted renditions as it will be easier to find the HLS stream manifest URL.

Start the encoder for the live stream and copy the manifest URL. If you see a live event preview player instead of the QR code as shown below, you still have an RTMP formatted rendition.

If you need to keep RTMP renditions in your live stream, you can always start the stream playback and grab the manifest URL from the browser debugger. To do this, copy the player URL.

Paste the player URL into a new tab in the browser, open up the browser debugger (Chrome shown in this example) and copy the master.m3u8 HLS stream manifest URL.

Finally, follow the instructions in this Multicast+ TechNote or other Multicast+ and Altimeter documentation to configure a new broadcast with the stream URL.