Control the quality with adaptive bit rates (ABR)

The PSDK can play video assets that have multiple bit rates to provide more than one quality level.

Based on the bandwidth conditions and the quality of playback (frame rate), the video engine automatically switches the quality level to provide the best playback experience. The PSDK performs transitions between the various quality levels seamlessly and automatically. PSDK exposes the list of renditions and enables you to control some aspects of the adaptive streaming experience.

You can specify multiple profiles that have different bit rates. You can change your ABR settings at any time and the player switches to use the profile that most closely matches the most recent settings.

To configure the adaptive bit-rate (ABR) engine, choose values for the ABR parameters.

  1. Decide on the minimum and maximum bit rates.

    These define a range of bit rates from which the ABR engine can choose. The ABR engine uses profiles only from this range when downloading fragments and rendering images on screen.

  2. Decide on the initial bit rate, in bits per second, to use when beginning playback.

    For preload of the first downloaded fragment, the PSDK selects the profile with the bit-rate value that is closest to (equal to or less than) this initial value. For the first fragment, the minimum/maximum range is ignored.

  3. Assign the new ABR parameter values to the media player.
    @property (assign, nonatomic) int initialBitRate
    @property (assign, nonatomic) int maxBitRate
    @property (assign, nonatomic) int minBitRate
    - (id)initWithABRControlParameters:(int)initialBitRate minBitRate:(int)minBitRate maxBitRate:(int)maxBitRate