Export (0) Print
Expand All

2.2.7 Live Ingest

The LiveIngest and related fields contain data required to request the start of a live broadcast.

LiveIngestRequest (variable): The URI [RFC2396] to which the LiveIngestRequest is sent.

Identifier (variable): A unique URISAFE_IDENTIFIER that enables the server to differentiate between different streams. Each identifier can have at most one active connection.

EventID (variable): An optional identifier that enables the reuse of URLs without collision due to downstream cache pollution. Publishing streams with different event names to the same publish URL simultaneously is an error. All encoders MUST use the same EventID identifier, either blank or a string. The default value is the empty string.

StreamID (variable): A unique identifier used to collate fragments in the case of encoder failover. Allows separate encoder nodes to POST to separate URLs, but multiple active connection URLs with the same StreamID identifier can be used for redundancy, in which case the server will filter out duplicated or out-of-order fragments. Commonly used to distinguish between video quality (for example "Streams(1080p)", "Streams(720p)", "Streams(480p)").

The syntax of the fields defined in this section, specified in ABNF [RFC5234], is as follows:

LiveIngestRequest = Protocol "://" BroadcastURL Identifier
Protocol = "http" / "https"
BroadcastURL = ServerAddress "/" PresentationPath 
PresentationPath = URISAFE_IDENTIFIER ".isml"
Identifier = [EventID ]StreamID
EventID = "/Events(" URISAFE_IDENTIFIER ")"
StreamID = "/Streams(" URISAFE_IDENTIFIER ")"

LiveIngestMessage (variable): The structure of the long-running POST operation requests sent from the encoder to the LiveIngestRequest.

The syntax of the fields defined in this section, specified in ABNF [RFC5234], is as follows:

LiveIngestMessage = FileType [StreamManifest] LiveServerManifest MoovBox *1Fragment
© 2014 Microsoft