• Quick Start
  • Booting
  • Platform
  • Portals
  • References
    • API Reference TOI3
    • IIP Reference
  • Resources
ARRIS Enterprises, Inc. Confidential Information

kreatv-option-mediasource-protocol-hls_bcm15

This IIP adds support for HTTP Live Streaming (HLS).

Parameters

Name Repeat Description Type Default Example
advanced_config_enabled Once

This option enables more advanced configuration alternatives which can be used for improving the HLS playback experience, or to reduce the amount of memory reserved for HLS playback. With this option enabled, there are two mutually exclusive ways of specifying how much memory should be reserved for HLS playback:

  • Specifying the max_target_duration and max_bitrate parameters, i.e., the worst-case scenario that the HLS playback should be able to manage. By looking at these two parameters, the IIP install script can calculate a reasonable memory reservation size which should be enough to fulfill this specified scenario, given that the STB is able to download the HLS stream at the required speed.
  • Specifying memory_size. This is suitable for customers that want direct control of how much memory that should be reserved for HLS playback.

If advanced configuration is disabled, the HLS playback will be automatically configured using a reasonable setup that should work in most network environments. More specifically, this setup assumes a maximum target duration of 10 seconds and a maximum bit-rate of 8 Mbit/s. This default setup will result in reserving about 21 MiB (21500 KiB) of memory for HLS playback.

Furthermore, enabling advanced configuration makes it possible to specify the expected maximum network latency (see parameter max_network_latency for more information). The default configuration will result in a bandwidth-delay product/TCP receive buffer of at least 256 KiB.

Boolean false advanced_config_enabled=true
max_bitrate Once Specifies (in Mbit/s) the maximum expected bit-rate of an HLS stream. Specifying a too low value here might affect the smoothness when switching between different variants (i.e., when switching audio/video stream qualities). This bit-rate is also used together with the maximum network latency (specified by the max_network_latency parameter) to dimension the TCP socket size in such a way that the wanted bit-rate can be achieved. This parameter is only valid if advanced configuration is enabled (see advanced_config_enabled).

Valid range is {1, ...}.

Integer max_bitrate=20
max_network_latency Once Specifies (in milliseconds) the maximum expected round-trip network latency between the STB and the HLS server. For high-latency networks (e.g. wireless networks), specifying this latency can significantly improve the throughput. The value specified will be used to calculate a reasonably sized TCP socket receive buffer for achieving the bit-rate specified in max_bitrate but with a scaling factor of 1.5 to allow for some margin so that the STB is able to download the data at a quicker rate than the consumption rate. If the calculated value is within Linux TCP auto tuning limits; that limit will be used instead. Please observe that the maximum size of the TCP receive buffer is still limited by what is written in "/proc/sys/net/core/rmem_max". Please also note that the receive buffer size calculated here will be used for all TCP receive connections. This parameter is only valid if advanced configuration is enabled (see advanced_config_enabled).

Valid range is {0, ...}.

Value descriptions:

  • 0
    Setting this value will result in using a 256KiB TCP receive buffer size. If that value is within Linux TCP auto tuning limits; that limit will be used instead.
Integer 0 max_network_latency=100
max_target_duration Once The target duration is the maximum segment length that an HLS playlist may contain. This option specifies (in seconds) the maximum expected target duration of an HLS stream. Specifying a too low value here might affect the smoothness when switching between variants (i.e., video/audio quality). This parameter is only valid if advanced configuration is enabled (see advanced_config_enabled). This parameter may not be specified if the parameter memory_size is already specified.

Valid range is {1, ...}.

Integer max_target_duration=10
memory_size Once Specifies (in KiB) how much memory should be reserved for HLS playback. Specifying a too low value here might affect the general playback experience. E.g., by having more memory reserved, it is likelier that the HLS playback can keep playing a high-quality/bitrate variant without having to switch down to a lower quality/bitrate on temporary network problems. This parameter is only valid if advanced configuration is enabled (see advanced_config_enabled). This parameter may not be specified if the parameter max_target_duration is already specified.

Valid range is {640, ...}.

Integer memory_size=20000

Details

Version5.1.p5
Content version-
Branchkreatv.5.1.p5
Date20170210
Time143600
Architecturebcm15
Rootdisk dependencieskreatv-option-mediasource-protocol-http
Finalize dependencies-
Installation scriptsbuildtime, kit
Dependency onlyno
Explicityes
Allow any parametersno

5.1.p5

Copyright (c) 2017 ARRIS Enterprises, LLC. All Rights Reserved. ARRIS Enterprises, LLC. Confidential Information.