/

Publishing multiple profiles via an encoder


Publishing multiple profiles via an encoder

Once the provision has been provided to the Stream Manager it is possible to start publishing. Make a broadcast request to the stream manager to get the IP address of the most available origin server. The provision specifies the different variants of the video stream that need to be provided. Each of these variants can be broadcasted with a media encoder like Wirecast, Flash Live Media Encoder or others. The different entities involved and their connections are shown in Figure 3. In this case the same origin is used for all the different variants. The origin then sends the streams to the relays which then deliver it to the edges that eventually serve the subscribers.

Figure 3: Overview of the system when a media encoder is used to publish three variants of a stream.

For each stream variant the following call needs to be made:

Method:GET

URL: https://yourstreammanager.com/streammanager/api/3.1/event/live/mystream?action=broadcast

Where:

  • yourstreammanager.com: is the host of your Stream Manager
  • mystream_1: is the guid of the stream variants that will be published

If the call is successful the Stream Manager will return an object that specifies the scope and address of the origin to use. These properties will then be used to define the endpoint in the media encoder stream configuration.

As an example, if the JSON object returned by the Stream Manager is:

{
     "serverAddress": 192.168.0.23,
     "scope": "live",
     "name": "mystream_1"
}

You would want to broadcast, using RTMP, the stream variants that you defined in your provision:

  • rtmp://192.168.0.23:1935/live/mystream_1
  • rtmp://192.168.0.23:1935/live/mystream_2
  • rtmp://192.168.0.23:1935/live/mystream_3