Browser TVSDK 2.4 Release Notes describe the new, supported and unsupported features and the known issues in Browser TVSDK 2.4.

Introduction

Browser TVSDK is a toolkit that allows you to add advanced video playback functionality, content protection, and advertising to your browser-based video player applications.

Browser TVSDK 2.4 provides JavaScript APIs to build browser-based video applications and includes playback support in the following modes:

  • HTML5 only
  • HTML5 with auto flash fallback
  • Flash always

This release includes the following information:

Browser TVSDK API documentation.

Browser TVSDK programming guide.

TVSDK for 1.4 DHLS to Browser TVSDK 2.4 Migration Guide.

Converting from Browser TVSDK 2.4.6 to version 2.4.7.

• A reference implementation, which is included in the build.

Note:

For a complete list of the security considerations for this release, see Security considerations.

What's new and supported features

This release of Browser TVSDK provides new features that you can use to enhance your video applications.

New in 2.4.12 Update (Build 204)

The following addition is available as part of Browser TVSDK 2.4.12 Update (Build 204):

  • Implementation of volume API of AdobePSDK.MediaPlayer is changed to allow autoplay on iOS when playback is muted.

New features in previous releases

New features

New in 2.4.12

The following addition is available as part of Browser TVSDK 2.4.12 release:

• A new API, auditudeSettings.ignoreVPAIDAds, is added to allow ignoring VPAID ads received from the Auditude server. The API does not work for Flash Fallback.

New in 2.4.11

The following enhancements and additions are available as part of Browser TVSDK 2.4.11 release:

• HLS Live segment failover is supported for MSE and Flash fallback modes.

• Support for AuditudeSettings.creativeRepackagingDomain API is now available for MSE as well. It was previously supported only with Flash fallback mode.

 

• The release contains fixes for critical customer issues. See Issues fixed a list

New in 2.4.10

The following enhancements and additions are available as part of Browser TVSDK 2.4.10 release:

 

• TVSDK provides enableLogging() to enable or disable the logging. Refer to the API documentation for usage.

• TVSDK does not anymore support Default Chapters, when using Adobe Analytics. Define and manage Chapters using your application.

• The release contains fixes for critical customer issues. See Issues fixed a list.

New in 2.4.9

The following enhancements and additions are available as part of Browser TVSDK 2.4.9 release:

• HLS VOD and Live streams with time discontinuity but without discontinuity markers are supported.

• ID3 v2.4.0 frames are supported with Safari video tag for HLS VOD and Live streams.

• Secure Ad loading implementation ensures that ad server calls are upgraded to secure HTTP based on API configuration. For the details, see AdobePSDK.AdvertisingMetadata and AdobePSDK.ForceHttpsAdConfiguration classes. This feature is not supported in Flash fallback mode.

• Ad ID information and Extension information associated with VAST 3.0 responses are now made available to the application by TVSDK and can be used to implement Moat integration for Ad measurements. For the details, see AdobePSDK.NetworkAdInfo API. This is not supported in Flash fallback mode.

• AdobePSDK.ForceHttpsConfiguration class is not available anymore. It is succeeded by

AdobePSDK.ForceHttpsAdConfiguration class.

• A new API, AdobePSDK.optimizeFlashCalls, is now available to optimize the calls to improve HLS playback experience in Flash fallback mode. This is disabled by default.

New in 2.4.8 Update (Build 6002)

This update contains fixes for critical customer issues. See Fixed Issues, for the list.

New in 2.4.8

The following enhancements and additions are available as part of Browser TVSDK 2.4.8 release:

• The SDK is now compliant with the Chrome EME and the best practices changes available starting Chrome v58. For more details see https://storage.googleapis.com/wvdocs/Chrome_EME_Changes_and_Best_Practices.pdf

• The UI Framework now supports HLS Access DRM on Flash, Ad only, and Targeting Info workflow.

• The setDRMAuthenticateData API is added to the UI Framework. To play streams protected with Adobe Access DRM, invoke this API. Alternately, drmAuthenticateData attribute can be specified in the player. See AdobePSDK.videoBehavior for details.

New in 2.4.7

The following features are new in version 2.4.7:

• Addition of the UI Configurator in the UI Framework

You can configure the player in one of the following ways:

• Using a JSON object

• Using APIs

To help generate the JSON object, Browser TVSDK provides a UI Configurator tool.

In this tool, you can select various settings, click Test Configuration to verify the settings, and click Download Configuration to download the settings. After downloading the file, you can pass the contents of this file as JSON object, to the ptp.videoPlayer API.

• Addition of the MediaPlayerItemConfig API to the UI Framework

 

Various features, including advertisingMetadata, advertisingFactory, adSignalingMode, networkConfiguration, customRangeMetadata, useHardwareDecoder, subscribeTags, adTags, thumbnailScrubber, billingMetricsConfiguration, can be configured through MediaPlayerItemConfig. For more information, see the AdobePSDK.MediaPlayerItemConfig documentation in the Browser TVSDK API documentation.

In the UI Framework, the way of passing network configurations through the player configuration has been modified.

Version 2.4.6

var player = ptp.videoPlayer(‘#videoHolder’, {

player: {

networkConfiguration: <network configuration object>

}

};

Version 2.4.7

var player = ptp.videoPlayer(‘#videoHolder’, {

player: {

mediaPlayerItemConfig: {

networkConfiguration: <network configuration object>

}

}

};

  • Support for DRM and Analytics workflows in the UI Framework

DRM configurations and Analytics Tracking can be enabled through the UI Framework.

  • Addition of AdobePSDK.embedSWFinFullScreenDiv API

This new API provides flexibility to the player app for selecting the div in which it can embed the FlashFallback.swf file.

  • Replaced getVersion API from AdobePSDK.MediaPlayer class with AdobePSDK.Version class for TVSDK version related information. For details, see AdobePSDK.Version API here.

New in 2.4.6

The following features are new in version 2.4.6:

  • Browserify Support 
    Browserify allows you to use the node.js style modules in the browser. You can define the dependencies and Browserify bundles everything into one JavaScript file.
  • Billing

With the help of billing, Browser TVSDK can collect player usage metrics to bill Primetime customers.

 

Note:

The deprecated enum MediaPlayer.Events and deprecated constants in Enum PSDKErrorCode have been removed in version 2.4.6. For more information, see Converting from Browser TVSDK 2.4.5 to version 2.4.6.

New in 2.4.5

The following features are new in version 2.4.5:

  • Full Event Replays and Ads 

    HLS Full Event Replay (FER) streams now supports ad resolution and ad behaviors. To enable this support, set the ad signaling mode to MANIFEST_CUES when creating the MediaPlayerItemConfig object.
  • MediaplayerView ScalePolicy Support 

    Application developers can now specify a different scalePolicy for the view using MediaplayerView scalePolicy property.
  • Anamorphic Content Support

Anamorphic content playback is now supported when using MSE and Flash playback.

  • Selective application of withCredentials

When withCredentials is set to true, the Access-Control-Allow-Origin header cannot be set to a wild card. Depending on the response of server, Browser TVSDK will selectively set the withCredentials attribute. For more information about this support, see Browser TVSDK API docs.

Version 2.4.4

The following features were new in version 2.4.4:

  • Chromecast sample app

This release provides support for a sender and receiver app that demonstrates playback of DASH VOD streams and DASH Widevine streams with client side ad insertion.

  • Advanced failover support

This release contains support for advanced failover use cases (segment and server failover) for HLS VOD streams.

Version 2.4.3

The following features were new in version 2.4.3:

  • Custom tags for DASH VOD

Inline custom tags (Events) can be subscribed to and received as TimedMetadata object.

  • Playback of streams without extensions

HLS and DASH streams without extensions are now supported. For the manifest file, the resourceType needs to be specified when loading the resource. For segments and VTT files, the Content-Type response header is used to determine the content type.

Version 2.4.2

The following features were new in version 2.4.2:

  • API Parity

For a complete list of the API parity, see the TVSDK for 1.4 DHLS to Browser TVSDK 2.4 Migration Guide.

  • Sample-AES support

This release adds support for Sample-AES encrypted content playback on MSE and Flash fallback. The requirement to host AES content over secure origin on Google Chrome have been removed.

  • Support for AAC containers

The playback of files with the .aac extension is now supported. This can be audio-only streams or alternate audio.

 

Note:

AC3 and enhanced AC3 codecs are not yet supported.

  • Tokenized stream playback

HLS streams that are delivered through a Content Delivery Network (CDN) can sometimes use authentication tokens on the manifest and segment requests for verification, and these tokens can be provided as URL parameters or as cookie headers. The playback of such streams are now supported.

Version 2.4.1

The following features were new in version 2.4.1:

  • UI framework

This framework, designed to accelerate UI development for JavaScript-based video player applications, consists of APIs for including basic controls like play/pause and volume and for easily adding or removing elements like scrub bar states and closed caption settings. You can specify the behavior associated with controls, create custom controls, and skin the player UI. This all happens through the framework, with no need for manipulating the DOM structure directly.

  • HLS playback enhancements for Live streams

This release supports discontinuities caused by ad insertion. It uses the EXT-PROGRAM-DATE-TIME tag followed by the EXT-MEDIA-SEQUENCE tag to synchronize across adaptive bitrate profiles for smooth playback.

  • VPAID 2.0 support

The video player ad-serving interface definition (VPAID), version 2.0, provides a rich media experience for users and allows publishers to better target ads, track ad impressions, and monetize video content. This release supports linear JavaScript VPAID ads for video-on-demand (VOD) content.

  • Custom HLS tags

Media streams can carry additional metadata in the form of tags in the playlist/manifest file. Browser TVSDK lets you specify and subscribe to additional tags and be notified when those tags appear in the manifest.

  • Ad markers displayed on the player timeline

This release supports showing ad markers on the player timeline for both VOD and Live content. You can see this behavior in the reference player.

Supported in 2.4

The following features were available in version 2.4:

  • MP3 audio playback

This release supports MP3 audio playback on browsers with Media Source Extensions (MSE) and with the Safari video tag.

  • MP4 video playback

    The following features are supported:
    • Single stream playback
    • Pre-roll and Post-roll MP4 ads with ad behaviors and tracking
    • Pre-roll and Post-roll HLS ads with ad behaviors and tracking
    • Pre-roll and Post-roll DASH ads with ad behaviors and tracking

 

Supported platforms

Browser TVSDK has specific requirements for the levels of platforms and software that it needs to run on. The following platforms and software levels are supported:

Desktop configurations

  • Microsoft Windows 7:
    • Internet Explorer 11+
    • Chrome 33+
    • Firefox 38+
  • Microsoft Windows 8.1
    • Internet Explorer 11+
    • Chrome 33+
    • Firefox 38+
  • Microsoft Windows 10
    • Edge+
  • Apple OS X
    • Safari 9+
    • Chrome 33+
    • Firefox 38+

Mobile Web configurations

  • Android 4.4
    • Native browser
    • Chrome 33+
  • Android 5.0
    • Native Browser
    • Chrome 33+
  • Android 6.0
    • • Chrome 33+
  • Apple iOS 9
    • Safari 9+
    • Chrome 33+
  • Apple iOS 10
    • Safari 9+
    • Chrome 33+

• Google Chromecast (second-generation; for DASH playback only)

 

Browser

Technology

 

Browser TVSDK Video Tag1

Browser TVSDK MSE

Flash

Default Technology

iOS

MP4 and HLS

-

-

Video tag

Android

MP4

HLS and DASH

-

MSE

Apple Safari 8

MP4 and HLS

-

MP4 and HLS

Video tag

Google Chrome

MP4

HLS and DASH

MP4 and HLS

MSE

Mozilla Firefox

MP4

HLS and DASH

MP4 and HLS

MSE2

Internet Explorer 11

(Windows 7)

MP4

-

MP4 and HLS

Flash

Internet Explorer 11

(Windows 8.1)

MP4

HLS, DASH

MP4 and HLS

MSE

 

Feature matrix

Here is a list of the supported and unsupported features for this release:

  • MP3 Audio Features — Core Playback
  • MP4 Video Features — Core Playback
  • MP4 Video Features — Core Ad Insertion

Note:

In the feature matrix tables below, a 'Y' means that the feature is supported in the current release.

MP3 Audio Features

Table 1: Core Playback

Category

Content Type

Feature

Flash

HTML5

FF, IE, Chrome, Android Chrome

Safari, iOS Safari

Playback

MP3 VOD

General Playback (Play, Pause, Seek)

Not Supported

Y

Y

 

1         The Browser TVSDK Video tag does not support streaming and DRM. The codec and container support is not the same across all browsers.

2         Firefox defaults to Flash Player for version 41 or earlier.

MP4 Audio Features

Table 2: Core Playback

Category

Content Type

Feature

Flash

HTML5

FF, IE, Chrome, Android Chrome

Safari, iOS Safari

Playback

MP4 VOD

General Playback (Play, Pause, Seek)

Not Supported

Y

Y

Table 3: Core Ad Insertion

Category

Content Type

Feature

Flash

HTML5

FF, IE, Chrome, Android Chrome

Safari, iOS Safari

Ad Insertion

MP4 VOD

Pre-roll (MP4)

Not Supported

Y

Y

Ad Insertion

MP4 VOD

Post-roll (MP4)

Not Supported

Y

Y

 

For more information about HLS or DASH feature support, see below.

HLS feature matrix

Here is the feature matrix for the HLS features in Browser TVSDK.

  • HLS Core playback
  • HLS Advanced playback features
  • HLS Content protection features
  • HLS Core ad insertion features
  • HLS Advanced ad insertion features
  • HLS Integrations

Note:

In the feature matrix tables below, a 'Y' means that the feature is supported in the current release.

HLS Features

The following features are supported:

Table 4: HLS Core playback

Category

Content type

Feature

Flash

HTML5

FF, IE, Chrome, Android Chrome

Safari, iOS Safari

Playback

VOD + Live

General playback (play, pause, seek)

 

Y

 

Y

 

Y

Playback

FER VOD

General playback (play, pause, and seek)

 

Y

 

Y

 

Y

Playback

VOD + Live

Adaptive bit rate

Y

Y

Y

Playback

VOD + Live

608/708 captions

Y

Y

Y

Playback

VOD + Live

WebVTT

Y

VOD only

VOD only

Playback

VOD + Live

Manifest Failover

Y

Y

Y

Playback

VOD + Live

Advanced Failover

Y

Y

Platform Limitation

Playback

VOD + Live

QoS and player notifications

Y

Y

Limited QoS support

Playback

VOD + Live

Support for cookie headers

Y

Y

Platform Limitation

Playback

VOD + Live

Setting buffer control parameters

 

Y

 

Y

Platform Limitation

Playback

VOD + Live

Set adaptive

bit-rate controls

Y

Y

Platform Limitation

Playback

VOD + Live

Custom tags

Y

Y

Platform Limitation

Playback

VOD + Live

Late-binding audio

Y

Y

Platform Limitation

Playback

VOD + Live

302 redirect

Y

Y

Platform Limitation

 

Table 5: HLS advanced playback features

Category

Content type

Feature

Flash

HTML5

FF, IE, Chrome, Android Chrome

Safari, iOS Safari

Playback

VOD

Playback at offset

Y

Y

Y

Playback

VOD

Audio-only playback

Y

Y

Y

Playback

VOD

Trick Play

Y

Y

Y

Playback

VOD

Smooth Trick Play

Y

Y

Platform Limitation

Playback

VOD + Live

ID3 parsing

Y

Y

Y

Playback

VOD + Live

Discontinuity marker support

Y

Y

Y

Playback

VOD + Live

Tokenized streams

Y

Y

Platform Limitation

Playback

VOD + Live

Billing

Y

Y

Y

Table 6: HLS Content protection features

Category

Content type

Feature

Flash

HTML5

FF, IE, Chrome, Android Chrome

Safari, iOS Safari

Content Protection

VOD + Live

AES-128

 

Y

 

Y

 

Y

Content Protection

VOD + Live

Sample-AES

Y

Y

Y

Content Protection

VOD

DRM

Adobe Access

Not Supported

FairPlay

 

Table 7: HLS Core ad insertion features

Category

Content type

Feature

Flash

HTML5

FF, IE, Chrome, Android Chrome

Safari, iOS Safari

Ad Insertion

VOD + Live

Pre-roll (MP4/HLS)

Y

Y

Y

Ad Insertion

VOD + Live

Mid-roll (HLS)

Y

Y

Platform Limitation

Ad Insertion

VOD

Post-roll (MP4/HLS)

Y

Y

Y

Ad Insertion

FER VOD

Ad resolution and behaviors

Y

Y

Platform Limitation

Ad Insertion

VOD + Live

Default ad policy

Y

Y

Platform Limitation

Ad Insertion

VOD + Live

VAST 2.0/3.0

Y

Y

Y

Ad Insertion

VOD + Live

VMAP 1.0

Y

Y

Y

Ad Insertion

VOD + Live

Creative Repackaging (MP4 to HLS)

 

Y

 

Y

 

Y

 

Table 8: HLS Advanced ad insertion features

Category

Content type

Feature

Flash

HTML5

FF, IE, Chrome, Android Chrome

Safari, iOS Safari

Ad Insertion

VOD

Ad only

Not Supported

Y

Y

Ad Insertion

VOD + Live

Targeting parameters

Y

Y

Y

Ad Insertion

VOD + Live

Custom parameters

Y

Y

Y

Ad Insertion

VOD + Live

Custom ad policy

Y

Y

Platform Limitation

Ad Insertion

VOD + Live

Lazy ad loading

Y

Not Supported

Platform Limitation

Ad Insertion

VOD

Companion ads, Banner ads, Clickable ads

 

Y

 

Y

 

Y

Ad Insertion

VOD

VPAID 2.0

SWF

JavaScript

JavaScript

 

Table 9: HLS Integrations

Category

Content type

Feature

Flash

HTML5

FF, IE, Chrome, Android Chrome

Safari, iOS Safari

Integrations

VOD + Live

Adobe Analytics VHL integration

 

Y

 

Y

 

Y

 

DASH feature matrix

Here is the feature matrix for the DASH features in Browser TVSDK.

DASH Core playback features

DASH Advanced playback features

DASH Content protection features

DASH Core ad insertion features

DASH Advanced ad insertion features

DASH Integrations

 

Note:

In the feature matrix tables below, a Y means that the feature is supported in the current release.

DASH Features

The following features are supported:

Table 10: DASH Core playback features

Category

Content type

Feature

 

HTML5 FF, IE, Chrome, Android Chrome

Playback

VOD + Live

General playback (play, pause, seek)

 

Y

Playback

FER VOD

General playback (play, pause, and seek)

Not Supported

Playback

VOD + Live

Adaptive bit rate

Y

Playback

VOD + Live

608/708 captions

Y

Playback

VOD + Live

WebVTT

VOD only

Playback

VOD + Live

Failover

VOD only

Playback

VOD + Live

QoS and player notifications

Y

Playback

VOD + Live

Support for cookie headers

Y

Playback

VOD + Live

Setting buffer control parameters

Y

Playback

VOD + Live

Set adaptive bit-rate controls

Y

Playback

VOD + Live

Custom tags (EventStream)

VOD only (Inline)

Playback

VOD + Live

Late-bound audio

VOD only

Playback

VOD + Live

302 redirect

VOD only

 

Table 11: DASH Advanced playback features

Category

Content type

Feature

HTML5 FF, IE, Chrome, Android Chrome

Playback

VOD

Playback at offset

Y

Playback

VOD

Audio-only playback

Y

Playback

VOD

Trick play

Y

Playback

VOD

Smooth Trick Play

Y

Playback

VOD + Live

ID3 parsing

Not Supported

Playback

VOD + Live

Multi-period support

VOD only

Playback

VOD + Live

Tokenized streams

Not Supported

Playback

VOD + Live

Billing

Y

Table 12: DASH Content protection features

Category

Content type

Feature

 

HTML5

FF, IE, Chrome, Android Chrome

Content Protection

VOD + Live

AES-128

Not Supported

Content Protection

VOD + Live

Sample-AES

Not Supported

Content Protection

VOD

DRM

• Widevine on Chrome, Firefox 47+, and Chromecast

• PlayReady on Internet Explorer on Windows 8.1 and Edge

• Primetime DRM for Windows Firefox (video only)

Table 13: DASH Core ad insertion features

Category

Content type

Feature

 

HTML5

FF, IE, Chrome, Android Chrome

Ad Insertion

VOD + Live

Pre-roll (MP4/DASH)

VOD only

Ad Insertion

VOD + Live

Mid-roll (DASH)

VOD only

Ad Insertion

VOD

Post-roll (MP4/DASH)

Y

Ad Insertion

FER VOD

Ad Resolution and Behaviors

Not Supported

Ad Insertion

VOD + Live

Default ad policy

VOD only

Ad Insertion

VOD + Live

VAST 2.0/3.0

VOD only

Ad Insertion

VOD + Live

VMAP 1.0

VOD only

Ad Insertion

VOD + Live

Creative Repackaging (MP4 to DASH)

Not supported

Table 14: DASH Advanced ad insertion features

Category

Content type

Feature

 

HTML5

FF, IE, Chrome, Android Chrome

Ad Insertion

VOD

Ad only

Y

Ad Insertion

VOD

Targeting parameters

VOD only

Ad Insertion

VOD

Custom Parameters

VOD only

Ad Insertion

VOD + Live

Custom ad policy

Not Supported

Ad Insertion

VOD + Live

Lazy ad loading

Not Supported

Ad Insertion

VOD

Companion ads,banner ads, clickable ads

Not Supported

Ad Insertion

VOD

VPAID 2.0

Not Supported

Table 15: DASH Integrations

Category

Content type

Feature

 

HTML5

FF, IE, Chrome, Android Chrome

Integrations

VOD + Live

Adobe Analytics VHL integration

 

Y

 

Issues fixed

Issues fixed in version 2.4.12 Update (Build 204)

The following issues are fixed in Browser TVSDK verison 2.4.12 Update (Build 204):

21647 - bTVSDK should allow automatic video playback on iOS devices when audio is muted.

Issues fixed in previous releases

Previous releases

Issues fixed in version 2.4.12

The following issues are fixed in Browser TVSDK verison 2.4.12:

21465 - Error Key System Access Denied is received when playing a DRM-protected DASH stream after a DASH Live stream is played.

21442 - Enable content autoplay on iOS Web, after preroll ad is played with a user gesture.

21240 - Provided API to filter VPAID ads parsed from Auditude/VMAP.

Issues fixed in version 2.4.11

The following issues are fixed in Browser TVSDK verison 2.4.11:

Core playback features:

19192: TVSDK now implements TextFormat:bottomInset and TextFormat:safeArea. Due to these enhancements, closed captions can be re-positioned if the control bar is displayed on the screen.

21009: Closed captions persist on the screen in case of seek across discontinuity till new captions appear.

21141: Seek back is rejected due to a race condition during segment append.

21142: Making seekable playback ranges available when the player is in INITIALIZED state. Due to these changes, start session at position is now supported.

21363: 608/708 closed captions are going out of sync after ad insertion for DASH streams.

Ad insertion features:

21179: Mid-roll related issues (long pauses, black frames) with VOD content are now resolved by correctly setting the ad.primaryAsset.adParameters property.

21257: The MP4 file with highest bit rate is selected for transcoding if MP4 is not a valid mime-type and the creative repackaging feature is enabled.

21361: TVSDK now passes ad system and creative ID from the VAST response as query parameters in the creative packaging request in order to support additional normalization rules.

Issues fixed in version 2.4.10

The following issues are fixed in Browser TVSDK verison 2.4.10:

Core playback features:

21060: Invalid codec error thrown with HLS streams that contain discontinuity and the ISO BMFF boxes run to end of stream.

21045: Auto play not working on iOS after the first video playback in a playlist is completed.

20975: Frame rate is returned as NaN by the QoS provider on Chrome browser.

20823: Unsupported codec error thrown on encountering segments with no data.

20769: SDK now starts with the current bit rate on seek instead of switching immediately based on ABR policy.

20031: When in portrait mode on IE11 (Windows 8.1), the video screen becomes small. Content protection feature:

 

19316: Skip segments that fail decryption in case of HLS AES-128 streams.

Issues fixed in version 2.4.9

The following issues are fixed in Browser TVSDK verison 2.4.9:

Core playback features:

13407: DASH streams may stall if Firefox stops sending "ontimeupdate" event during playback.

16380: During Muxed Audio Video Content Playback of segments having non-matching start times via MSE, Audio Sync Error between Representations accumulates on ABR switches, ultimately resulting in Error (Chromium issue

#663686).

17985: On playing particular ISO-BMFF stream on Firefox browser, playback gets stuck(Firefox issue#1342913). This is fixed since Firefox v53.

19141: Uncaught (in promise) ReferenceError: width is not define.

18997, 19299: Video flicker issue at segment boundary. This was happening since SDK was not calculating the last sample's Composition time offset correctly.

19780: Playback does not starts for HLS content and HLS Ad on Firefox v53 (Firefox issue #354653).

20046: Program Date Time is received as key instead of value when received as timed metadata object.

20047: useDefaultResizeHandler throws an error with Flash fallback.

20179: Flash Fallback not working with Flash Player v25.0.0.171.

20293: Firefox stops buffering data for certain HLS streams leading to stall.

20626: Player throws media decode error on Chrome due to incorrect handling of video samples with zero duration.

20078: Playback stalls on browser error 'QuotaExceeded'.

18639: In HLS Live stream 608 CC text sometime appear as misspelled.

20028: ClosedCaptions size parameter doesn't change font size.

20613: Closed captions boxes overlap with each other making them illegible.

Core Ad Insertion (CSAI) features:

20043: Missing Ad impression and Ad tracking calls with multiple ads and third party redirects.

20044: When using creative repackaging, all ads in the ad break need to be repackaged successfully otherwise the ad break is completely discarded.

20097: Ad playback is skipped and main content resumes immediately rather than wait for timeout of 20 seconds if ad manifest is not available.

Issues fixed in version 2.4.8 Update (Build 6002)

The following issues are fixed in Browser TVSDK verison 2.4.8 Update (Build 6002):

14126: Playback may stall on Firefox (issue #1316024) due to internal gap in MSE source buffer. Try seeking in order to resume playback

19608: Fix to honor the timeoffset value from Auditude VMAP response.

19635: Fixes Video Stall in Internet Explorer 11 on Windows 10.

19761: Fixes for ABR issues with HLS.

19780: Fixes the Ad playback with HLS content that was broken in Mozilla Firefox v53.

19877 and 19744: The issues fixes the inconsistency in selecting bitrate after a seek operation. Now the bitrate selection on seek is the lower value of the current bitrate and the bitrate at the start-up.

 

19881: Playback stuck and buffering overlay appears for infinite time after seeking is performed for 3-4 times.

19884: Confirm compliance with Chrome 59 Beta Verified Media Path (VMP) requirements. bTVSDK was able to playback Widevine DRM content with Chrome 59 Beta.

19916: DRM playback on UI-Framework was broken. Now, it invokes acquireLicense even if there is no policy in the metadata.

Issues fixed in version 2.4.8

The following issues are fixed in Browser TVSDK 2.4.8 release:

10075: When seeking ahead of timeline, play complete event was not received on Firefox and Chrome and seek event was not received on Firefox.

15775: Play complete event not received on Windows 8.1 Internet Explorer.

17306: For SSAI streams, playback is supported. Tracking of stitched ad is not supported.

19142: At times rewind causes the video player to remain in buffering state forever.

19218: Ad markers are not available through UI framework.

19219: Ads only playback not works through UI framework.

19222: AES-128 key is requested once for a playlist and subsequent requests are served from the cache. Earlier it was getting requested for each segment.

19597: "Uncaught TypeError: Cannot read property 'log' of undefined" was seen with Chrome canary builds.

19605: adRequestDomain was not available when in Flash Fallback mode.

19608: VMAP ads were not getting inserted for HLS Live streams. SDK now considers the cue markers and does not rely on time offset values in VMAP responses.

19637: Ads only playback leads to script error at end of ad.

19732: CRS playlist requests were failing with 404 error. The 1401 and 1403 requests from Browser TVSDK are now updated to take care of that.

19762: acquireLicense used to be called before setAuthenticationToken because of which a valid license was returned irrespective of the token validity. This is fixed now and acquireLicense is called only after setAuthenticationToken response.

Issues fixed in version 2.4.7

The following issues were fixed in version 2.4.7:

8397: HLS Live streams generated through Adobe Media Server might not play if the segments do not start with a Key frame.

13606: Multiple Seek related issues fixed for HLS stream on Chrome browser.

14807: On Chrome browser, if seek or pause is triggered immediately after play(), playback may stop with error DOMException: The play() request was interrupted by a call...(Chromium issue# 593273).

19085: MediaPlayer Params such as volume, abrControlParameters, and ccStyle are not set to Defaults on Resetting the Player.

Issues fixed in version 2.4.6

The following issue was fixed in version 2.4.6:

 

18093: TimedMetadata for the tag next to the subscribed tag is returned when you use Flash Player version 24 in Flash Fallback mode.

Issues fixed in version 2.4.4

The following issues were fixed in version 2.4.4:

8711: With MSE, 608/708 captions are left justified by default.

13934: ABR settings for ads are not applicable when playing with HLS Live streams.

14079: Longevity for HLS Live streams with low DVR window may fail since the playback may fall behind due to network latency issues. Click on the live point to resume playback.

15037: The samples shipped with the player UI framework does not work on Microsoft Internet Explorer 10 on Windows 7.

15913: For HLS VOD streams, on Chrome, stream will not play if manifest response is 304 not modified. This is fixed since Chrome v55 (Chromium issue 633696).

16103: On Android Chrome, under low bandwidth conditions, playback may stall with the Uncaught TypeError: Cannot read property 'programDateTime' of undefined error.

16265: For HLS VOD and Live streams, seek across discontinuities do not work.

16709: Resuming HLS Live stream with PDT and discontinuity marker may lead to player getting stuck in buffering.

 

Known Issues and Limitations

The limitations and known issues in Browser TVSDK are mentioned below.

Table 16: Core Playback Features

Content type

Feature Flash HTML5 in Firefox, IE, Chrome, Android Chrome HTML5 in Safari, iOS Safari Chromecast (DASH playback only)
VOD + Live General Playback (Play, Pause, Seek)

• Media formats other than HLS are not supported.

8799: Flash fallback does not take care of mixed content and hence it need to be ensured that Content, Ad and other URLs do not lead to mixed content (secure and unsecure content together).

• 19271: Multiview playback via UI framework is not supported in Flash fallback mode.

• Flash fallback does not work on Microsoft Internet Explorer 8 and 9 on Windows 7 since these versions are not supported by the SDK.

• 20262: Flash fallback adds custom parameters to targeting info list. Also priority order of custom parameters is different in case of Flash and MSE.

• 20653:Browser TVSDK Flash fallback does not work on Win10 with Creators Update.

• Flash Fallback works with Flash Player version 23 and later.

• 20087 - Chrome 59 Beta with

Flash 25.0.0.171

Beta(default), HLS playback is not working on Flash Fallback mode. It is working fine on Canary.

• 12563: Dash Streams with audio codec mp4a.40.02 do not playback on Firefox due to unsupported audio codec string in MPD. Audio Codec mp4a.40.2 is supported.

15029: While switching between videos in multiView in UI-Framework, play/pause button does not get updated accordingly.

• 16034:On Windows 8.1 IE, calling reset() leads to Unknown MIME type error. Please reload the media to resume playback.

• 18235: Certain seek issues are observed with DASH vod streams with Ads.

• 18727: Error API is not supported for MSE

18750: Status Change events might be out of order in some cases for both SDK and UI framework and in UI Framework, IDLE and Initializing StatusChange events might be missing for the event Listeners added after resource has been loaded.

• 18889: If MediaPlayer is in ERROR state, the view object is not returned.

• 19039: If AdobePSDK. MediaPlayer. seekToLocal() is used with a value greater than EOF, then playback starts from beginning in case of MSE.

• 19049: No error state reported for Flash Player on Chrome, IE, Firefox when video is blocked during the playback.

• 17205: Video playback stalls on playing unmuxed stream for few hours while audio continues to play (Chromium issue# 664033).

• 12308: DASH streams with composition_ time_offset specified may have timeStampOffset applied to it on Chrome browser leading to negative decode time and hence MEDIA_ERR_ SRC_NOT_ SUPPORTED error (Chromium issue #398141).

• 14126: Playback may stall on Firefox (issue# 1316024) due to internal gap in MSE source buffer. Try seeking in order to resume playback.

• 19115: MS Edge and IE 11 (Win 8.1 and 10) does not set Origin to null on CORS redirect and yet fails because header is not null leading to playback error.

• 19861:Issue with append behavior on source buffer for media already played. Chrome rejects the appended fragment including moov, causing subsequent decode error. (Chromium issue #735335)

19921: Playback stalls for certain HLS content even though its buffered successfully (Chromium issue #713540)

• 20444:Seeking to end of buffered range on IE and Edge may cause playback to stall.

• 20511: Sometimes seek reject can be observed for HLS streams with or without ads.

• 20743: On Windows 10 Chrome, HLS Live stream plays for few seconds before MP4 pre roll playback.

• 21043: Video dimension may not be correct on initial load due to lack of metadata.

• 21115: Android User gesture is required to start playback if pre-roll ad is available for videos in a playlist.

• HLS Live does not support the time stamp rollover.

• AAC-SSR audio is not supported.

Audio codecs AC3 and Enhanced AC3 are not supported.

• For streams with timestamp discontinuity but without discontinuity markers

• Playback might have glitches and incorrect seeking due to jumps.

• Content duration and playback duration might not match.

• Discontinuities across representations and renditions should match other wise may lead to sync and stall issues.

• Captions and WebVTT might not appear close to end of stream.

• Audio codec changes are not supported across timestamp jumps.

• Ad insertion is not supported.

• Fast forward trick mode may lead to playback loop on Win 8.1 IE 11 (MS issue #12446268).

DASH:

• For Live streams - live profile with dynamic type is supported.

• For VoD streams - live profile with static type is supported.

For VoD streams - ondemand profile is not certified for ad workflows.

• DASH Live and DASH Video on Demand streams are not supported.

• PIP(Picture in Picture) video playback is not supported on iOS in full screen mode.

On Safari (Video Tag) extension less manifest without having correct content type header do not work.

• applicationID in sender app need to be the same as generated on registering the URL of Receiver as a Custom Receiver app.

• Reference player is certified for DASH workflows. UI framework is not certified.

For list of supported media codecs, refer here.

FER VOD General Playback (Play, Pause, Seek)   18098: Certain seek issues are observed with HLS LBA FER stream.    
VOD + Live Adaptive Bitrate

• 20079: Buffer re-write on seek within buffered range.

20080: Flash ABR behavior is in-consistent with MSE.

• Audio only fallback variant in an ABR stream is ignored due to buffer related limitations.

• 12289: ABR control params don't apply for audio in case of unmuxed HLS/DASH streams.

   
VOD + Live 608/708 Captions  

• 7810: On Android 4.4.4 Chrome does not seem to have support for basic CSS font families used by the player and hence font style change function not working.

• The CC channels cannot be changed in case of 608 captions.

• Advanced styling features are not supported for 608 captions.

Embedded Captions (608/708), signaled via Accessibility tag are supported.

   
VOD + Live WebVTT  

• 5206: Region tags in WebVTT file are ignored by the player when displaying the captions.

• DASH: Fragmented /Segmented VTT files are not supported.

   
VOD + Live Manifest failover 21056: With Flash Fallback, Failover does not happen for Live stream if the primary stream returns a 404 error during the playback. Manifest failover is applicable only for content and not ads. Missing playlist failover works on Safari only for HTTP error code 404.  
VOD + Live Advanced Failover  

• Segment failover does not support skipping unavailable segments and continuing playback.

20533: Missing segments in a playlist should be treated as a Discontinuity and playback should resume from next available segment.

21267: Stream switching due to fail over may lead to download of older segments..

   
VOD + Live QoS and Player notifications 21129: Frame rate is not available in case of Flash Fallback.

• 11170:

Timed_Event is not available for Browser TVSDK with MSE unlike for Browser TVSDK with Flash Fallback.

21129: Frame rate is not calculated for Live streams.

   
VOD + Live Support for Cookie headers    

withCredentials flag and cookie headers are not supported on Safari.

21051: To allow cookies in Safari, enable "Cookies and website data" setting from Preferences > Privacy.

 
VOD + Live Custom Tags 14763: Custom tags other than starting with # should not be supported. Right now TimedMetadata object is created and reported for such tags during Flash Fallback. Streams with inband custom tags are not certified.    
VOD + Live Late Binding Audio  

• Ad insertion is not supported with HLS Live LBA streams.

• 17273: HLS VOD LBA streams switch to default rendition in case of failover and cannot be switched back to last selected.

• 20251: HLS Live LBA stream may stall on seeking.

• 20497: Player remains in buffering state if HLS LBA unmuxed streams have missing audio or video frames close to end of stream.

   
VOD + Live 302 Redirect  

15787: 302

redirect optimization is not supported on windows Edge and IE browsers as these do not support the responseURL property in the XMLHttpRequest object.

   

Table 17: Advanced Playback Features

Content Type Feature Flash HTML5 in Firefox, IE, Chrome, Android Chrome HTML5 in Safari, iOS Safari Chromecast (DASH playback only)
VOD Playback at offset

Starting playback at particular offset value is not supported MP4 contents.

20492: Mid-roll ads preceding the offset are played before content resumes from the offset value. Playback with offset feature is not supported on iOS.  
VOD Trick Play Smooth Trickplay does not work for streams having No iFrame renditions.

• Trick Play adaptations are not supported on Firefox and Internet Explorer and hence reverse trick mode is not available on these browsers.

• Trickplay is not available when playing content along with ads.

• 10435: During DASH playback, video freezes on forward trick play on Internet Explorer (Win 8.1)

intermittently. This is happening since we are using the video elements playbackRate property without the trick play adaptation.

14182: At times, during rewind on Chrome browser, seek event may not be received and hence trick mode will not work.

• 14942: Playback rates can be set on Chrome for Android even in case of non trick play streams but setting will not be applied and playback will continue at normal rate.

• 17308: Seek does not work in Trickplay mode.

• 17309: On Chrome browser, reverse trick mode cannot be sustained for more than 2 seconds.

19272: Trick play may not recover from buffering on Windows 10 Edge browser in case of DASH streams.

Rewind trick mode is not supported.  
VOD + Live ID3 Parsing 20346: Text encoding byte of ID3 frames should also be returned by SDK.

ID3 tags available in audio data transport streams(ADTS) are ignored by the SDK.

• 12378: ID3 timed metadata is parsed at different times on Flash and browser with MSE support and hence the display behavior on reference player timeline is also different.

• 19247: ID3 parsing is not supported on UI framework.

• 20323: PRIV ID3 tag used to signal timestamp of first sample of aac segment is not parsed by Safari (Safari issue #32422733)

• 20350: On certain devices (including MAC OS X 10.1, iPad10) Safari does not provides cue change event when in trick mode and hence ID3 frames are not received. (Safari issue #32450526)

 
VOD + Live Discontinuity marker support  

• Client side ad insertion is not supported with HLS streams containing discontinuity.

• Audio Codec change is not allowed across discontinuities in HLS stream.

• Audio Track switch is not supported for HLS stream with discontinuity markers

Discontinuity sequence number is a requirement for HLS streams with discontinuity in order to playback on Safari.  

Table 18: Content Protection Features

Content Type Feature Flash HTML5 in Firefox, IE, Chrome, Android Chrome HTML5 in Safari, iOS Safari Chromecast (DASH playback only)
VOD + Live AES-128   Byte range is not supported with AES-128 encrypted content. 12324: HLS AES-128 encrypted streams fails to playback on Safari if IV tag is not specified.  
VOD DRM  

• 12660: HTML5 player throws Internal Server Error for expired PlayReady encrypted dash contents.

• 16720: DASH DRM encrypted content wont work if start attribute in period tag is missing.

• 18589: Playback is not supported for DRM protected Dash VoD Multiperiod streams with Xlink.

• 18653: Playback of Widevine MultiPeriod Content with Multiple Keys, stops at first period and cannot switch to next Period.

• 18656: Playready MultiPeriod Stream, encrypted with different keys, wont playback.

Playready 2.0 for Dash is not certified.

 

 

12602: HLS Fairplay DRM metadata is repeatedly refreshed by HTML5 player on Safari

DASH Widevine DRM content packaged through Bento4 can be played. Content packaged through Offline Packager and Shaka packager do not play. DASH PlayReady DRM is not supported.

Table 19: Core Ad Insertion Features (CSAI)

Content Type Feature Flash HTML5 in Firefox, IE, Chrome, Android Chrome HTML5 in Safari, iOS Safari Chromecast (DASH playback only)
VOD + Live Pre/Mid/Post  

• Preroll ads with HLS live content are played in Dual player mode.

• DASH ads with HLS contents and HLS ads with DASH contents are not supported.

• 19002: In HTML5 Player with MSE adBreak. insertionType does not return correct value to depict correct insertion type i.e. client inserted and or server inserted.

7794: On mobile devices (iOS, Android with Chrome 33 or lower or Native Browser) where the default control bar is visible in full screen mode, seek bar and fast forward buttons are available when Ads Play.

• 11048: Switch from ad to HLS Live content is not smooth in case of Media Source Extensions.

• 16083: On Android 4.4 Chrome v52, At times HLS ad with HLS content may lead to pipeline decode error after stalled playback.

• 16097: Errors encountered during Ad break are not handled, may cause the main stream to stop playback.

• 18095: MP4 ads are not supported with HLS live content.

19120: Multiple seeks on HLS ads with HLS contents may cause the stream to stop playback.

• 19131: Buffering overlay may appear while switching from pre-roll ad break to content.

• 20296: In case of HLS Live streams, seeking back in DVR window followed by seeking over resolved mid rolls may lead to playback stall.

• 20298:HLS Live streams with mid rolls stall the moment first mid roll ad moves out of the DVR window.

• 20317: HLS Live streams may stall when switching to next ad or from ad to content in case ad break contains more than one ad.

  • Ads in the DVR window of HLS Live streams are not resolved.
   
VOD + Live VAST 2.0/3.0   SDK does not honor sequence attribute inside VMAP response for VAST adSource.    
VOD + Live VAST 2.0/3.0   20779: The SDK does not honor the sequence attribute inside the VMAP response for VAST adSource.    
VOD + Live VMAP 1.0   12014: VMAP repeat attribute is not supported.    
VOD + Live Creative Repackaging   21464: Ad response is discarded completely if creative repackaging fails for one of the ads in the ad break.    

Table 20: Advanced Ad Insertion Features (CSAI)

Content Type Feature Flash HTML5 in Firefox, IE, Chrome, Android Chrome HTML5 in Safari, iOS Safari Chromecast (DASH playback only)
VOD Ad only   20056: Player technology property is not relevant since it is based on main content which is empty in case of Ad Only playback    
VOD + Live Custom Ad Policy  

• Ad behaviors are not supported with MP4 ads and MP4 content.

• 13973: Custom ad behaviors - SKIP policy does not throw complete event when used with MSE.

• 14939: Custom ad behavior policies skip and skip ad break are not working for DASH content.

• 17131: First frame of the ad is visible and then content resumes in case of SKIP ad break policy.

   
  Companion ads/ banner ads/ Clickable ads       Banner Ads are not visible when using reference player.
  VPAID 2.0  

• Ad behaviors are not supported for VPAID ads.

• 15032: VPAID ads in combination with MP4 or HLS ads in an ad break are not supported.

• 19001: On Android and iOS when VPAID ad is played with MP4 as main content double audio tracks are audible, one of main content and one of ad.

• 20762: VPAID ads are not supported with Picture in Picture (PIP).

• 21172: Play complete event is not received for HLS VOD content with VPAID ads.

• 21173: onAdBreakCompleteEvent is not received for HLS VOD content and post roll VPAID ads.

Player toggles between normal mode and fullscreen mode while switching between VPAID ad and Main content.  

Table 21: Integrations

Content Type Feature Flash HTML5 in Firefox, IE, Chrome, Android Chrome HTML5 in Safari, iOS Safari Chromecast (DASH playback only)
VOD + Live Adobe Analytics VHL integration   19004: Video Analytics tracking is not available through UI Configurator Tool.    

This work is licensed under a Creative Commons Attribution-Noncommercial-Share Alike 3.0 Unported License  Twitter™ and Facebook posts are not covered under the terms of Creative Commons.

Legal Notices   |   Online Privacy Policy