# HLS Manifest

API call format

GET /broker/vod/list/<source_guid>/hls/{<hls_manifest_media_type>}

Description

Get HLS manifest by GUID. This call gets a manifest for HLS codec by specifying source GUID and <hls_manifest_media_type>.

Precondition:

  • No authorization token is needed.
  • Mandatory elements (should be specified):

Postcondition

  • On success response code should be 200
  • On success the whole JSON body of all HLS video segments and other information are returned.
  • On failure an error will be returned with the right error code and description.

Example:

[Request] GET https://<base_api_url>/broker/vod/list/<source_guid>/hls/hls_manifest_720_2500000
[Request Headers] {"Content-Type":"application/json","Accept":"application/json","Authorization":"<IdToken>"}
[Response] 200
[Response Headers] {"Content-Type":["application/json"],"Content-Length":["..."],"Connection":["keep-alive"],"Date":["..... GMT"],"x-amzn-RequestId":["....."],....]}
[Response] 
{
  "status": true,
  "data": {
    "destBucket": "<vod-destinationbucket>",
    "fileName": "<hls_name>_1280x720p-2.5Mbps-2500000.m3u8",
    "mediaType": "hls_manifest_720_2500000",
    "videoBitRate": 3220853,
    "segmentsInfo": {
      "mediaTypeKey": "hls_segments_",
      "hlsSegmentOffsets": [
        0,
        6006,
        12012,
        18018,
      	...
        1279278
      ],
      "segmentsCount": 214,
      "segments": [
        {
          "fileName": "<hls_name>_1280x720p-2.5Mbps-2500000_00001.ts",
          "offset": 0,
          "destBucket": "<vod-destinationbucket>",
          "cdnUrl": "https://<server>/sources/<source_guid>/hls/<hls_name>_1280x720p-2.5Mbps-2500000_00001.ts",
          "filePath": "<source_guid>/hls/<hls_name>_1280x720p-2.5Mbps-2500000_00001.ts",
          "mediaType": "hls_segments_000001", //<hls_segment_media_type>
          "mediaSequence": 1,
          "duration": 6.006,
          "number": "000001",
          "discontinuityStarts": [],
          "bitRate": "2500000",
          "endList": true,
          "guid": "<source_guid>",
          "playlistType": "VOD",
          "timeline": 0,
          "targetDuration": 7,
          "discontinuitySequence": 0,
          "key": "<vod-destinationbucket>/sources/<source_guid>/hls/<hls_name>_1280x720p-2.5Mbps-2500000_00001.ts",
          "height": 720
        },
        {
          "fileName": "<hls_name>_1280x720p-2.5Mbps-2500000_00002.ts",
          "offset": 6.006,
          "destBucket": "<vod-destinationbucket>",
          "cdnUrl": "https://<server>/sources/<source_guid>/hls/<hls_name>_1280x720p-2.5Mbps-2500000_00002.ts",
          "filePath": "<source_guid>/hls/<hls_name>_1280x720p-2.5Mbps-2500000_00002.ts",
          "mediaType": "hls_segments_000002", //<hls_segment_media_type>
          "mediaSequence": 1,
          "duration": 6.006,
          "number": "000002",
          "discontinuityStarts": [],
          "bitRate": "2500000",
          "endList": true,
          "guid": "<source_guid>",
          "playlistType": "VOD",
          "timeline": 0,
          "targetDuration": 7,
          "discontinuitySequence": 0,
          "key": "<vod-destinationbucket>/sources/<source_guid>/hls/<hls_name>_1280x720p-2.5Mbps-2500000_00002.ts",
          "height": 720
        },
		.....
        {
          "fileName": "<hls_name>_1280x720p-2.5Mbps-2500000_00214.ts",
          "offset": 1279.278,
          "destBucket": "<vod-destinationbucket>",
          "cdnUrl": "https://<server>/sources/<source_guid>/hls/<hls_name>_1280x720p-2.5Mbps-2500000_00214.ts",
          "filePath": "<source_guid>/hls/<hls_name>_1280x720p-2.5Mbps-2500000_00214.ts",
          "mediaType": "hls_segments_000214", //<hls_segment_media_type>
          "mediaSequence": 1,
          "duration": 2.002,
          "number": "000214",
          "discontinuityStarts": [],
          "bitRate": "2500000",
          "endList": true,
          "guid": "<source_guid>",
          "playlistType": "VOD",
          "timeline": 0,
          "targetDuration": 7,
          "discontinuitySequence": 0,
          "key": "<vod-destinationbucket>/sources/<source_guid>/hls/<hls_name>_1280x720p-2.5Mbps-2500000_00214.ts",
          "height": 720
        }
      ]
    },
    "cdnUrl": "https://<server>/sources/<source_guid>/hls/<hls_name>_1280x720p-2.5Mbps-2500000.m3u8",
    "filePath": "<source_guid>/hls/<hls_name>_1280x720p-2.5Mbps-2500000.m3u8",
    "frameRate": "29.970",
    "guid": "<source_guid>",
    "bitRate": "2500000",
    "width": 1280,
    "height": 720,
    "averageBitrate": "2687236",
    "key": "<vod-destinationbucket>/sources/<source_guid>/hls/<hls_name>_1280x720p-2.5Mbps-2500000.m3u8",
    "codecs": "avc1.640028,mp4a.40.5"
  }
}