## 1.71.0
Released: 2023-07-10
### Fixed
Incorrect Y value of thumbnails returned by `
getThumbnail
`
## 1.70.0
Released: 2023-04-14
### Added
Firing ad error if ad manifest requests fail or time out
### Fixed
Playback sometimes starting with main content instead of pre-roll in case of VMAP ads
`
getThumbnail
` only returns thumbnails discovered in the last segment
## 1.69.0
Released: 2022-03-15
### Fixed
Default UI elements being shown even though `
ui
` is set to `false
` in player configuration
## 1.68.0
Released: 2022-02-23
### Added
Support for IMA DAI
## 1.67.0
Released: 2022-01-13
### Added
Tweak to `
enableThumbnailTilesDuringLive
`
## 1.66.1
Released: 2022-10-18
### Fixed
`
BMP_scheduledTime
` calculation for `emsg
` metadata
## 1.66.0
Released: 2022-10-12
### Fixed
Execution timeout when playing streams with server side ad insertion
### Deprecated
`
useTimedMetadata2
` tweak as `timedMetaData2
` is now the default
## 1.65.0
Released: 2022-08-31
### Fixed
Value provided by `
getMaxTimeShift
` API not updating for live streams with changing DVR window length
## 1.64.0
Released: 2022-07-19
### Fixed
Crash when using `
useTimedMetadata2
` tweak and encountering `EXT-X-DATERANGE
` HLS tags containing commas in tag attribute valuesNumeric attribute values of `
EXT-X-DATERANGE
` HLS tags wrongfully exposed as stringMetadata events for `
EXT-X-DATERANGE
` HLS tags being fired for date ranges that lie earlier than the starting playback time on live streams
## 1.63.1
Released: 2022-06-28
### Fixed
Multiple VMAP ad breaks not being played
## 1.63.0
Released: 2022-06-21
### Added
Option to automatically detect live or vod content by setting `
source.assetType
` to `AUTO
` (HLS streams only)
### Fixed
`
enableInPodStitching
` wouldn't function after code obfuscationAll EXT-X-DATERANGE events being fired as soon as they are parsed instead of their approriate times in case of VoD
## 1.62.1
Released: 2022-05-25
### Fixed
`
source.adaptation
` as well as `adaptiveMinStartBitrate
` and `adaptiveMaxStartBitrate
` not being optional
## 1.62.0
Released: 2022-05-24
### Added
`
adaptiveMinStartBitrate
` and `adaptiveMaxStartBitrate
` to the `source.adaptation
` configuration to specify the minimum and maximum startup bitrate respectively
### Fixed
EXT-X-DATERANGE events are not being fired again after seeking behind and crossing over the timestamp
EXT-X-DATERANGE events are being surfaced at the wrong time
## 1.61.0
Released: 2022-04-26
### Added
`
enableInPodStitching
` to advertising config to enable stitching together of multiple ads within an ad break
## 1.60.0
Released: 2022-03-15
### Fixed
Crash when trying to schedule ads with an invalid ad url
## 1.59.0
Released: 2022-03-01
### Changed
Updated Demand API to follow specification version `
7.8
`
### Fixed
Crash when calling `
timeshift
` before player state was set to `playing
`
## 1.58.0
Released: 2022-02-02
### Added
Demand API `
demandApiFetchAds
` API call to retrieve and parse the list of ads to be rendered. To access and use the Demand API check Roku's [documentation](🔗) about it since one needs to get into contact and work with the Roku Partner Program.`
demandApiFetchAdsResult
` to receive the result of the `demandApiFetchAds
` API call
## 1.57.0
Released: 2022-01-17
### Added
`
useTimedMetadata2
` tweak to enable the surfacing of additional metadataSupport for Demand API. To access and use the Demand API check Rokus [documentation](🔗) about it since one needs to get into contact and work with the Roku Partner Program.
### Fixed
Crash when receiving SCTE-35 metadata
## 1.56.0
Released: 2021-12-21
### Added
More detailed descriptions of events
## 1.55.0
Released: 2021-12-07
### Added
Additional troubleshooting information to error codes
### Fixed
`
adError
` event not properly being fired
## 1.54.0
Released: 2021-11-23
### Added
Timestamps to all events
## 1.53.0
Released: 2021-11-09
### Added
`
SubtitleAdded
` event`
SubtitleChanged
` event
## 1.52.0
Released: 2021-10-27
### Fixed
Crash when using `
getSubtitle
`
### Added
Rokus native error fields to the players error events `
data
` field.Timestamp to `
error
` event
## 1.51.0
Released: 2021-09-28
### Added
Documentation details for `
metadata
` supportAdd additional documentation about `
metadata
`Support for `
Ext-X-Daterange
` metadata; Needs to be explicitly enabled via `nativeHlsParsingEnabled
` flag"Using the API" guide
### Fixed
The use of wrong property name for `
advertising
` configuration in documentationCrash when `
autoplay
` is not present in the player `config
`
## 1.50.0
Released: 2021-08-31
### Added
`
enableAdvertisingDebugOutput
` to advertising config within the player config to enable RAF debug output
## 1.49.0
Released: 2021-07-20
### Fixed
Impression sent prior to preroll `
adBreak
` start in case when `autoplay
` is set to false
## 1.48.0
Released: 2021-07-08
### Fixed
Calling `
load
` from `error
` event callback does not result in player loading the new `source
`Postroll ads playing as preroll ads in case when `
load
` is called after `error
` eventWrong event ordering when `
load
` is called after `error
` event`
ad_getActiveAdBreak
` API always returns `invalid
`
## 1.47.0
Released: 2021-06-08
### Fixed
Live streams do not start at the live edge when no `
startOffset
` was set
## 1.46.0
Released: 2021-05-11
### Added
Documentation for customization of `
progressBarBackground
` and `progressBarIndicator
` layers of `adBufferingScreen
`
### Changed
Stop emitting unintentionally triggered `
playerState
` event with `stopped
` value right before an Ad
## 1.45.0
Released: 2021-04-27
### Added
Support for customization of `
title
`, `description
` and `posterImage
` of `adBufferingScreen
` using `source.title
`, `source.description
` and `source.poster
` properties
## 1.44.0
Released: 2021-04-13
### Added
Support for customization of `
description
` of `adBufferingScreen
`Support for customization of `
background
` of `adBufferingScreen
`
### Fixed
Crash when ad tag url is `
invalid
` or unreachableCrash when `
CUE
` tag of `SCTE35
` event contains `ID
` character set
## 1.43.0
Released: 2021-03-30
### Added
`
disableImageMediaPlaylistParsing
` tweak to disable `ImageMediaPlaylist
` parsingSupport for customization of `
bufferingMessage
` and `progressBarMessage
` of `adBufferingScreen
`
### Fixed
Pre-roll ads would start playing immediately even though `
autoplay
` is set to `false
`Support for customization of `
posterImage
` and `title
` of `adBufferingScreen
`
### Fixed
Crash when `
ImageMediaPlaylist
` is used with single thumbnail images
## 1.42.0
Released: 2021-03-16
### Added
Support for general audience measurements using `
metadata
` property of `source
` config
## 1.41.2
Released: 2021-02-26
### Fixed
SCTE-35 metadata events not being surfaced if parameters are present in playlist variant url
## 1.41.1
Released: 2021-02-24
### Fixed
Crash if `
nativeHlsParsingEnabled
` is set to `true
` and relative url is used for segment url in playlist variant
## 1.41.0
Released: 2021-02-16
### Added
`
isAd
` API call to detect if an ad is currently playingFire `
TimeChanged
` events during ad playback
## 1.40.0
Released: 2021-02-02
### Added
`
timeChanged
` event`
getCurrentTime
` API call
### Fixed
`
adQuartile
` event not being fired
### Deprecated
`
currentTime
` event
## 1.39.1
Released: 2021-01-26
### Fixed
Crash when calling `
setHttpHeaders
` on the player
## 1.39.0
Released: 2021-01-19
### Added
Mapping of ROKU `
Pause
` ad event to `playerState
` fieldMapping of ROKU `
Resume
` ad event to `playerState
` fieldSupport for `
nativeHlsParsingEnabled
` flag as part of `tweaks
` configuration which is now available in player configuration`
EXT-X-SCTE35
` Tags Support. Need to be explicitly enabled via `nativeHlsParsingEnabled
` flag
## 1.38.0
Released: 2020-12-8
### Fixed
Start time of pre-roll ads being negatively impacted by the number of ads scheduled.
## 1.37.0
Released: 2020-11-24
### Added
`
impression
` event which is emitted when the impression call was sent successfully`
licenseValidated
` which is fired when a licensing call succeededSupport for `
image-media-playlist
` through our `getThumbnail
` API. This requires ROKU OS version `9.4
` or later.
## 1.36.1
Released: 2020-10-28
### Fixed
Crash on startup due to misconfigured `
BMPCaptionService
`
## 1.36.0
Released: 2020-10-27
### Fixed
Calling `
play
` after `preload
` does not result in video being played
## 1.35.0
Released: 2020-10-13
### Fixed
Calling `
play
` while already playing caused the stream to restart
## 1.34.0
Released: 2020-09-29
### Added
Support for `
Set-Cookie
` headers
### Fixed
Player crashing on a license error in case the `
destroy
` method was overriddenadBreaks not cleared after source has been unloaded
## 1.33.0
Released: 2020-09-15
### Fixed
Impression only sent for first item in the `
playlist
`
## 1.32.0
Released: 2020-09-01
### Added
Possibility to add HTTP headers to DRM requests via `
source.drm.headers
`
## 1.31.0
Released: 2020-08-17
### Added
Missing documentation for `
adConfig
` objectMissing documentation for `
assetType
`
## 1.30.0
Released: 2020-07-21
### Fixed
Missing Bitmovin Player ROKU SDK version in documentation
## 1.29.1
Released: 2020-07-07
### Fixed
Crash during playback caused by incorrect data for native video player `
position
` field
## 1.29.0
Released: 2020-06-23
Internal improvements
## 1.28.0
Released: 2020-06-09
### Fixed
Crash after unexpected error code is received by `
BitmovinPlayer
`
## 1.27.1
Released: 2020-05-26
### Fixed
Wrong types in documentation for `
options
` and `startOffset
`
## 1.27.0
Released: 2020-05-12
Internal improvements
## 1.26.1
Released: 2020-05-07
### Fixed
Player license verification failing even though a valid license key is used
## 1.26.0
Released: 2020-04-28
### Fixed
No ads due to ad handler being set up before task was run
### Added
`
audioDownloadQualityChanged
` event which is fired once quality of downloaded audio segment is changed`
videoDownloadQualityChanged
` event which is fired once quality of downloaded video segment is changed
## 1.25.0
Released: 2020-04-14
### Added
`
setCaptionMode
` API call`
destroy
` API call as well as `destroy
` event that signals that the player is destroyed
### Deprecated
`
captionMode
` API call
### Fixed
`
getThumbnail
` API call returning outdated thumbnails when loading a new sourceWarning for setting a value to non-existent field
## 1.24.0
Released: 2020-03-30
### Added
Support for Roku Advertising Framework
### Interal
Replaced `
onFocusedChanged
` workaround by using `activeAdBreak
` and `adBreakFinished
` eventsAdded `
adQuartile
` eventAdded `
adSkipped
` eventAdded `
adStarted
` eventAdded `
adFinished
` eventAdded `
adError
` eventAdded `
ad_getActiveAdBreak
` API callAdded `
adInteraction
` eventAdded `
adBreakFinished
` and `adBreakStarted
` eventsAdded `
ad_discardAdBreak
` API callAdded `
ad_list
` API callAdded support for vmap ads
Support for vast ads in form of an advertising config as part of the source config
Internal RAF integration in preparation to implement ad support
Fixed `
BitmovinPlayerTask
` not ready on `init
`Added `
ad_schedule
` API callRefactor enums to comply with [naming convention](🔗)
## 1.23.0
Released: 2020-03-16
### Changed
Internal improvements
## 1.22.0
Released: 2020-03-02
### Fixed
Incomplete thumbnail URL returned by `
getThumbnail
``
getThumbnail
` adds base URL to returned image URL even when absolute URLs are present in the VTT file
## 1.21.0
Released: 2020-02-17
### Added
`
GET_VERSION
` to BitmovinFunctions to expose the player versionAllow setting Bitmovin Player license key in the player configuration as `
config.key
`. If no key is present in the player configuration, the key is read from the channel manifest
## 1.20.0
Released: 2020-02-03
### Added
`
Errors
` section to documentation
### Fixed
Documentation can now differentiate between methods and properties with the same name
## 1.19.0
Released: 2020-01-20
### Added
Support for all progressive streaming formats supported by Roku devices
### Fixed
`
seek
` no longer works in case of a live stream.
## 1.18.0
Released: 2019-12-19
### Added
`
startOffset
` and `startOffsetTimelineReference
` options in the source config to allow setting the playback start position for the stream
## 1.17.0
Released: 2019-12-09
### Changed
Internal changes and perfromance improvements
## 1.16.2
Released: 2019-10-28
### Fixed
Video playback with source containing `
ThumbnailTrack
` in WebVTT format crashes player after second playback
## 1.16.1
Released: 2019-10-14
### Fixed
Error introduced with code obfuscation
## 1.16.0
Released: 2019-10-14
### Fixed
Error view is not removed when an error occurred and a new source is loaded
## 1.15.0
Released: 2019-09-30
### Added
`
instantReplay
` API call to allow instant replay of the last couple of seconds of content`
audioChanged
` field which is set when the currently selected audio track has changedSupport for `
resume
` when player state is paused and `play
` API is called`
muted
` and `unmuted
` events`
downloadFinished
` event
## 1.14.0
Released: 2019-09-16
### Added
`
getThumbnail
` API method to get the `Thumbnail
` object for a specific playback time
## 1.13.0
Released: 2019-08-19
### Fixed
Added default params to all public method signatures
## 1.12.1
Released: 2019-08-07
### Fixed
Error in obfuscation crashes player
## 1.12.0
Released: 2019-08-05
### Added
Support for playlists
## 1.11.0
Released: 2019-07-22
### Added
Support for `
ContentNode
`s as an alternative to the player source configuration. `ContentNode
`s can now be set as the `source
` in a player configuration and can be passed to the `load
` API call
### Fixed
Player resolution is now based on display screen instead of always being full hd
Changing subtitle tracks no longer cause the player to stall and buffer
## 1.10.0
Released: 2019-07-08
### Added
API functions `
setSubtitleStyles
` and `getSubtitleStyles
` to allow styling of subtitles
### Fixed
Player no longer always claims the focus
Errors in an obfuscated player would cause a crash
## 1.9.0
Released: 2019-06-25
### Changed
Displaying of errors. Error messages are shown along with the error code and name
## 1.8.0
Released: 2019-06-11
### Fixed
`
error
` event is now fired before `unload
` eventClosed Caption mode can now be changed before playback has started
## 1.7.0
Released: 2019-05-27
### Added
Custom HTTP header support
## 1.6.0
Released: 2019-05-13
### Added
`
getDuration
` API method to get the duration from the video node
## 1.5.0
Released: 2019-04-30
### Added
BIF thumbnail track support
### Fixed
`
timeShifted
` event is now fired after playback resumes instead of when the timeshift operation beginsUsing the remote control in a live stream now fires `
timeShift
` events instead of `seek
` events
## 1.4.0
Released: 2019-04-17
### Added
`
getConfig
` API call which returns the current config of the player`
metadata
` field which contains the most recent received metadata from the video streamSupport for timed EMSG metadata
### Fixed
Remote control cannot start initial playback
## 1.3.0
Released: 2019-04-03
### Added
Observable fields `
timeShift
` and `timeShifted
` in addition to API functions `timeShift
`, `getTimeShift
`, `getMaxTimeShift
` to manipulate playback in live content.Field `
assetType
` in the source config to signal whether the content is live`
sourceLoaded
` and `sourceUnloaded
` events`
play
` event which notifies about the intention to start/resume playback.`
isLive
` API call
## 1.2.0
Released: 2019-03-21
### Added
Field `
currentTime
` to get the current playback position of the player in secondsAllow the default UI to be disabled by adding 'ui: false' to the config file
Fire `
seek
` and `seeked
` events when fast forward or rewind is done using the remote control
## 1.1.0
Released: 2019-02-05
### Added
Allow to set custom data in the DRM config for PlayReady license requests
API functions `
getAudio
` and `setAudio
` to get/set the currently selected audio track <https://github.com/bitmovin/bitdash-roku-sdk/issues/118>Field `
availableAudio
` to get a list of available audio tracks <https://github.com/bitmovin/bitdash-roku-sdk/issues/119>API functions `
getSubtitle
` and `setSubtitle
` to get/set the currently selected subtitle track <https://github.com/bitmovin/bitdash-roku-sdk/issues/117>
### Changed
Renamed property `
url
` of subtitle track object to `id
` <https://github.com/bitmovin/bitdash-roku-sdk/issues/120>
## 1.0.0
Released: 2018-10-10
### Added
Initial Changelog
## 1.0.0-b.2
Released: 2018-09-07
### Added
Introduced new error codes <https://github.com/bitmovin/bitdash-roku-sdk/issues/99>
### Fixed
Stability fixes and improvements
## 1.0.0-b.1
Released: 2018-08-09
### Added
Supported Streaming formats: MPEG-DASH, HLS, Smooth Streaming, Progressive
Supported Content protection schemes: MPEG-DASH/PlayReady, Smooth Streaming/PlayReady, HLS/AES-128
Player API calls: `
setup
`, `load
`, `unload
`, `preload
`, `play
`, `pause
`, `seek
`, `mute
`, `unmute
`, `captionMode
`, `isMuted
`, `isPlaying
`, `isPaused
`, `isStalled
`, `availableSubtitles
`Observable fields: `
playerState
`, `error
`, `warning
`, `seek
`, `seeked
`Player states (`
playerState
` field): `setup
`, `ready
`, `playing
`, `paused
`, `finished
`, `stalling
`, `error
`Player licensing integration