/

ABR API for Flash-based subscriber


ABR API for Flash-based subscriber

An API is provided by the Flash-based subscriber to allow to start, stop and switch stream variants explicitly. The following API calls are provided:

  • setABRVariants
  • setABRLevel
  • setABRVariantUpgradeSettings
  • startABRController
  • stopABRController

setABRVariants

Requests to use the provided ABR variants when performing Adaptive Bitrate Control.

Arguments:

  • abrVariants: Object - Provisioning Variants object
  • level: int - The target level to use for playback

setABRLevel

Requests to set a specific ABR level thus overriding the value chosen by the SDK.

Arguments:

  • level: int - The level to set the ABR based on the variants provided in setABRVariants
  • firm: Boolean: Flag to disable the automatic level switching performed by the Adaptive Bitrate Controller.

setABRVariantUpgradeSettings

Provides the stream upgrade settings that the Adaptive Bitrate Controller should use when upgrading a stream that was previously downgraded.

Arguments:

  • abrVariantUpgrades: Object - A configuration object that defines the associated retry limits based on the levels of the provision variants.

An example of abrVariantUpgrades object is:

{
  minimumDowngradePlaybackSpan: 2000,
  upgrade: [
    {
      level: 1,
      retryTimeout: 0
    },
    {
      level: 2,
      retryTimeout: 2000
    },
    {
      level: 3,
      retryTimeout: 4000
    }
  ]
}

startABRController

Request to start the Adaptive Bitrate Controller from automatically downgrading and upgrading the streams based on the status of the network and bandwidth available.

stopABRController

Request to stop the Adaptive Bitrate Controller from automatically downgrading and upgrading the streams based on the status of the network and bandwidth available.