Adaptive streaming is media streaming which adjusts its bit rate during playback. It offers reduced network usage and buffering time, and increased picture quality compared to traditional media streaming. For more information, see Adaptive bitrate streaming on Wikipedia.
The AVPlay API supports 3 common adaptive streaming engines. The following table lists the file extensions for which adaptive streaming is enabled.
Streaming Engine
File Extensions
MPEG-DASH
.mpd
Smooth Streaming
.ism/Manifest
HTTP Live Streaming (HLS)
.m3u8
Table 1. Supported file extensions for adaptive streaming
NoteFor more information on the versions of HLS supported on Samsung TVs, see the General Specifications.
Playing Adaptive Streaming Media
Adaptive streaming media playback is implemented using the AVPlay API in the same way as other media. The AVPlay instance handles the adaptive streaming media type based on the basic specifications for the stream.
When the AVPlay instance is in the IDLE state, you can adjust some adaptive streaming parameters by calling the setStreamingProperty() method with the ADAPTIVE_INFO property:
...
var bitRateString = 'BITRATES=5000~10000|STARTBITRATE=HIGHEST|SKIPBITRATE=LOWEST';
webapis.avplay.setStreamingProperty('ADAPTIVE_INFO', bitRateString);
...
webapis.avplay.prepare();
The following table specifies the allowed parameters and values for the ADAPTIVE_INFO property. You can set multiple parameters by separating them with a "|" character.
Parameter
Description
Values
BITRATES
Bit rate of the stream
Range indicated by a "~" character, or a fixed bit rate. For example:
BITRATES= 5000~50000
BITRATES=6000
FIXED_MAX_RESOLUTION
Maximum streaming resolution (for 4K and 8K streaming only, if resolutions not defined in meta data)
"widthXheight" in pixels, for example "3000x2000"
STARTBITRATE
Bit rate for the start of adaptive streaming
LOWEST, HIGHEST, AVERAGE, or a fixed number as a string
SKIPBITRATE
Bit rate to ignore during streaming
LOWEST, HIGHEST, AVERAGE, or a fixed number as a string
START_TIME
Resume time for live streaming
Time in milliseconds
Table 2. ADAPTIVE_INFO parameters
The following bit rates are recommended for each stream resolution:
Resolution
Bit Rates
8K (7680x4320)
60Mbps / 45Mbps / 25Mbps
4K (3840x2160)
15Mbps / 10Mbps
2560x1440
6.5Mbps
FHD (1920x1080)
5Mbps, 3Mbps
HD (1280x720)
1.5Mbps
Table 3. Recommended streaming bit rates
Implementing 4K and 8K Adaptive Streaming
To implement adaptive streaming for 4K and 8K resolution TVs:
If the stream resolutions are not fully defined in the meta data, or if you want simply to define a maximum stream resolution, set the desired maximum resolution using the setStreamingProperty() method of the AVPlay API:
The following table describes the recommended specifications for MPEG-DASH streaming at 8K resolution.
Item
Recommendation
Notes
Video Codec
HEVC (H.265)
Profile: Main10 6.1 Maximum reference frames (decoded buffers): 6
Recommeded number of I-frames: 1 frame/GOP
GOP structure: SAP1 or SAP2 If any GOP has continuous I-frames, data feeding delay can cause jittering.
Maximum I-frame size:
60p: 3.5Mbyte
30p: 7Mbyte
Audio Codec
AAC (2 channel) DD/DD+ (5.1, 7.1)
-
Media Format
fMP4
fMP4 recommended for compatibility with 2018-19 models Supported: CMAF (since 2020 models)
Resolution
Maximum 7680x4320
Multiple resolutions and bit rates recommended to support changes in network conditions.
Frame Rate
30fps, 25fps, or 24fps
Supported: Maximum 60fps (50, 25, 24, 23.97)
Bit Rate
Maximum 80Mps
Supported: Average 100Mbps
Streaming Protocol
MPEG-DASH
Recommeded segment duration:
VOD: max 6 seconds
LIVE: max 2 seconds
HDR
HDR10+
Supported: HLG, HDR10, HDR10+
DRM
PlayReady CENC (CTR) encryption
Supported: CBCS encryption (since 2019 models)
Subtitles
SMPTE-TT WebVTT
Not support subtitle with image inside (SMPTE-TT/png) Not support LIVE with external subtitle
Table 4. Recommended content specifications for 8K MPEG-DASH streaming
The following table describes the recommended specifications for HLS streaming at 8K resolution.
Item
Recommendation
Remarks
Video Codec
HEVC (H.265)
Profile: Main10 6.1 Maximum reference frames (decoded buffers): 6
Recommeded number of I-frames: 1 frame/GOP
GOP structure: SAP1 or SAP2 If any GOP has continuous I-frames, data feeding delay can cause jittering.
Maximum I-frame size:
60p: 3.5Mbyte
30p: 7Mbyte
Audio Codec
AAC (2 channel) DD/DD+ (5.1, 7.1)
Media Format
MPEG-TS
MPEG-TS recommended for compatibility with 2018-19 models Supported: fMP4, CMAF (since 2020 models)
Resolution
maximum 7680x4320
Multiple resolutions and bit rates recommended to support changes in network conditions.
Frame rate
30fps, 25fps or 24fps
Supported: Maximum 60fps (50, 25, 24, 23.97)
Bitrate
Maximum 80Mps
Supported: Average 100Mbps
Streaming Protocol
HLS
Recommeded segment duration:
VOD: max 6 seconds
LIVE: max 4 seconds
HDR
HDR10+
Supported: HLG, HDR10, HDR10+
DRM
AES-128 encryption
Supported: PlayReady with CMAF format (since 2020 models) CENC (CTR) encryption , CBCS (since 2019 models)
Subtitles
SMPTE-TT (text) (external) WebVTT (external)
-
Table 5. Recommended content specifications for 8K HLS streaming
Live Streaming Limitations
The jumpForward(), jumpBackward(), and seekTo() methods of the AVPlay API, which are related to live seeking, have limited functionality in live streaming. If you want to use live seek, the streaming server must maintain past and future segments. The seekable range is limited to the segments maintained on the server. The following table lists the streaming engines that support live seek.
Streaming Engine
Live Seek Support
MPEG-DASH
Yes
Smooth Streaming
HTTP Live Streaming (HLS)
Table 6. Streaming engines supporting live seek
Manage Your Cookies
We use cookies to improve your experience on our website and to show you relevant
advertising. Manage you settings for our cookies below.
Essential Cookies
These cookies are essential as they enable you to move around the website. This
category cannot be disabled.
Company
Domain
Samsung Electronics
.samsungdeveloperconference.com
Analytical/Performance Cookies
These cookies collect information about how you use our website. for example which
pages you visit most often. All information these cookies collect is used to improve
how the website works.
Company
Domain
LinkedIn
.linkedin.com
Meta (formerly Facebook)
.samsungdeveloperconference.com
Google Inc.
.samsungdeveloperconference.com
Functionality Cookies
These cookies allow our website to remember choices you make (such as your user name, language or the region your are in) and
tailor the website to provide enhanced features and content for you.
Company
Domain
LinkedIn
.ads.linkedin.com, .linkedin.com
Advertising Cookies
These cookies gather information about your browser habits. They remember that
you've visited our website and share this information with other organizations such
as advertisers.
Company
Domain
LinkedIn
.linkedin.com
Meta (formerly Facebook)
.samsungdeveloperconference.com
Google Inc.
.samsungdeveloperconference.com
Preferences Submitted
You have successfully updated your cookie preferences.