Configuration beacons

The configuration beacon captures the encoder's configuration and setup details including system attributes, software and hardware, encoding attributes in terms of raw and encoded streams. Beacons are expected to be sent on start/restart/change events on encoders.

The following is an example curl request:

curl -H "Content-Type: application/json" -X POST -d '{}' http://akamai-host-xyz.net
Configuration beacon parameters
Parameters (case sensitive) Description Example value
encoder_id Unique identifier for the encoder provided by Akamai. It should be constant for all the beacons generated from the same encoder. e007
time Represents the date and time when the configuration beacon was captured (epoch). 1456445060
stream_id Stream identifier that uniquely identifies the stream per Akamai configuration. 12345
vendor The encoder manufacturer. XYZ Corp
model The encoder model. abc, genNext 1.0
hardware_revision The encoder hardware version. v1.5.0
firmware_revision The encoder firmware version. v1.abc.xyz
software_revision The encoder software version. 1.00.101
last_updated_time Represents the date and time when the encoder software or firmware was last updated (epoch). 1456445060
os Encoder's operating system type and version. linux 12.4
cpu Description of the encoder CPU (typically model and number of cores). intel, 4 core
gpu Description of the encoder Graphics Processing Unit (gpu) - typically model and no of cores. nvidia, 2 core
allocated_memory Memory allocated and configured for the encoding session . 8192
total_memory Total available memory with unit. 65536
ip IP address of the encoder. 192.168.2.20
input_type Represents the input type, which has one the following values: SDI, ASI, or IP. SDI
input_video_format String description of the input video format. will be one of the formats specified in the following format widthxheight

where:

  • width is the width of the frame in pixels.
  • height is the height of the frame in pixels.
  • x is the delimiter.
  • r is the raster (p- progressive, i- interlaced).
  • fr is the frame rate of the video.
Ex. 1920x1080i30, 1280x720p60, 720x480i29.97 1920x1080i30
aspect_ratio Aspect ratio of the input stream in a colon-separated format. 16:9
input_video_pid Input video packet identifier for ASI / IP stream. This must be empty for SDI. 100
input_caption_present A Boolean value that represents whether or not a caption is present. It must be either 1 or 0. 1
video Represents an array of objects detailing the input and output configuration on the encoder related to video, audio, and ancillary feeds.

Each video object represents a combination of one incoming raw video stream, multiple video outputs, multiple audio and multiple ancillary feeds corresponding to the encoding setup.

video_output Represents an array of all outgoing video bitrate streams for a given encoded video feed.
  • video_bitrate - Output video bitrate expected (in kbps).
  • video_resolution - Output video resolution expected. This is calculated using widthxheight delimited by 'x'.
  • aspect_ratio - Output video aspect ratio expected.
  • deinterlace_mode - Interlace or progressive mode.
  • output_frame_rate - Configured output video frame rate.
  • key_frame_interval - Interval at which the iframe is repeated.
  • Idr_interval - Instantaneous Decoder Refresh (IDR) repeat interval.
  • b_frame_count - Number of b frames.
  • entropy_coding - A type of lossless coding that compresses digital data by representing frequently occurring patterns with a few bits and rarely occurring patterns with many bits. It can have the value CABAC or CAVLC.
  • segment_duration - Length of the segment in seconds.
  • 200k
  • 1920x1080
  • 16:9
  • i
  • 30
  • 30
  • 10
  • 100
  • CABAC
  • 10
audio Represents an array of objects, each of which maps one incoming audio feed to one or more corresponding encoded/outgoing audio bitrate streams. A video object contains multiple audio objects.
audio_output Represents an array of encoded/outgoing audio bitrate streams corresponding to a given encoded audio feed.
  • audio_input_pid - audio input packet identifier (pid)
  • audio_language - Audio language
  • audio_output_pid - Audio output packet identifier (pid)
  • audio_group - Group ID for the audio
  • audio_bitrate - Configured output audio bitrate
  • audio_codec_type - Audio codec
  • audio_channels - Number of audio channels (for example: mono, stereo, or 5.1, 7.1)
  • audio_auto_select - A Boolean value indicates that you can auto-select the. It has the values 1 or 0. 1 is auto select, 0 is do not auto select.
  • 100
  • English
  • 100
  • EN
  • 56
  • aac
  • 7.1
  • 1
ancillary Represents an array of objects, each of which maps one ancillary input feed (for example, subtitle) to one corresponding outgoing feed. Multiple ancillary objects are contained in a given video object. "in": "scte-35"

=>

"out": "scte-35"

The following is an example of the configuration beacon:


{
  "encoder":{


    "encoder_id":"e007",
    "time":"1456445060",
    "system":{

        "ip":"192.168.2.20",
        "vendor":"XYZ Corp",
        "model":"abc, genNext 1.0",
        "last_updated_time":"1456445060",
        "hardware_revision":"v1.5.0",
        "firmware_revision":"v1.abc.xyz",
        "cpu":"intel, 4 core",
        "gpu":"nvidia, e core",
        "allocated_memory":"8192",
        "total_memory":"65536",
        "software_revision":"1.00.101",
        "os":"linux 12.4"
    },     
    "video":[
      {
            "stream_id":"12345",
            "input_type":"SDI",
            "input_video_format":"1920x1080i30",
            "aspect_ratio":"16:9",
            "input_video_pid":"100",
            "input_caption_present":"1",


            "video_output":[
                { 
                    "video_bitrate":"800",
                    "video_resolution":"1920x1080",
                    "aspect_ratio":"16:9",
                    "deinterlace_mode":"i",
                    "output_frame_rate":"30",
                    "key_frame_interval":"30",
                    "Idr_interval":"10",
                    "b_frame_count":"100",
                    "entropy_coding":"CABAC",
                    "segment_duration":"10"
                },

                {
                    "video_bitrate":"1200",
                    "video_resolution":"1920x1080",
                    "aspect_ratio":"16:9",
                    "deinterlace_mode":"i",
                    "output_frame_rate":"30",
                    "key_frame_interval":"30",
                    "Idr_interval":"10",
                    "b_frame_count":"100",
                    "entropy_coding":"CABAC",
                    "segment_duration":"10"
                },


                {        
                    "video_bitrate":"2000",
                    "video_resolution":"1920x1080",
                    "aspect_ratio":"16:9",
                    "deinterlace_mode":"i",
                    "output_frame_rate":"30",
                    "key_frame_interval":"30",
                    "Idr_interval":"10",
                    "b_frame_count":"100",
                    "entropy_coding":"CABAC",
                    "segment_duration":"10"                
                }
             ],
"audio":[
               {
                   "audio_input_pid":"100",
                   "audio_language":"EN",
                   "audio_output":[
                      {
                        "audio_output_pid":"1000",
                        "audio_group":"EN",
                        "audio_bitrate":"56",
                        "audio_codec_type":"aac",
                        "audio_channels":"7.1",
                        "audio_auto_select":"1"
                      },
                      {
                        "audio_output_pid":"2000",
                        "audio_group":"EN",
                        "audio_bitrate":"56",
                        "audio_codec_type":"aac",
                        "audio_channels":"2.1",
                        "audio_auto_select":"0"
                      }
                  ]
                },
                {
                    "audio_input_pid":"200",
                    "audio_language":"German",
                    "audio_output":[
                      {
                        "audio_output_pid":"3000",
                        "audio_group":"EN",
                        "audio_bitrate":"56",
                        "audio_codec_type":"aac",
                        "audio_channels":"7.1",
                        "audio_auto_select":"1"
                      },
                      {
                        "audio_output_pid":"4000",
                        "audio_group":"EN",
                        "audio_bitrate":"56",
                        "audio_codec_type":"aac",
                        "audio_channels":"2.1",
                        "audio_auto_select":"0"
                      }
                  ]
                }
              ],

          "ancillary": [

            {"in": "dvbsubtitles", "out": "webvtt"},
            {"in": "608_708_closed_captions", "out": "webvtt"},
            {"in": "scte-35", "out": "scte-35"},
            {"in": "scte-104", "out": "scte-35"}

          ]
        },

        {
          "stream_id":"98765",
          "...":"..."
        }
    ]
  }
}