Skip to content

Releases: shaka-project/shaka-player

v2.0.7

29 Mar 18:35
Compare
Choose a tag to compare

2.0.7 (2017-03-29)

New Features:

  • Improved keyboard navigation in demo page for accessibility
  • Play through small gaps at the start of the timeline
  • Add a method for accessing the HTMLMediaElement from the Player
  • Improved error reporting for HTTP errors

Bugfixes:

  • Fixed a DASH compliance bug in SegmentList w/ presentationTimeOffset
  • Fixed compiler renaming in emsg events.
  • Fix period transitions where text streams may be absent
  • Fix Firefox DRM detection
  • Fix cleanup of expired EME sessions for offline
  • Fix demo app error thrown when offline is not supported
  • Fix infinite loop in offline storage of SegmentTemplate-based DASH
  • Fix contamination between tests

v2.0.6

24 Feb 23:21
Compare
Choose a tag to compare

New Features:

  • Add Media Session info to demo
  • Add support for xml:space in TTML parser
  • Add fullscreenEnabled property to fullscreen polyfill
  • Allow InbandEventStream elements at Representation level
  • Warning for unsupported indexRange attribute
  • Warning for duplicate Representation IDs

Bugfixes:

  • Fix cast support broken since 2.0.3
  • Fix timeout errors in cast demo
  • Fix infinite buffering caused by a race
  • Fix race in StreamingEngine for multi-Period content
  • Hide the controls when going fullscreen on phones
  • Improve calculation of $TIME$ in SegmentTemplate
  • Fix YouTube asset on demo app

v2.0.5

30 Jan 21:54
Compare
Choose a tag to compare

2.0.5 (2017-01-30)

Bugfixes:

  • Fix several bugs with multi-Period content
    • Possible hang when seeking
    • Fix race between buffering and Period transition
    • Fix race between rapid Period transitions
    • #655
  • Fix hang in destroy() when EME sessions are in a bad state
  • Fix doubling of time offset for segment-relative cues

v2.0.4

24 Jan 18:35
Compare
Choose a tag to compare

2.0.4 (2017-01-24)

New features:

  • Support for 4k on Chromecast Ultra
  • Support for text tracks on Toshiba dTV

Bugfixes:

  • Fixed buffering issues at the end of streams in IE/Edge
  • Fixed parsing of empty divs in TTML
  • Fixed subtle bug in Promise.resolve polyfill on IE
  • Fixed test failures on Chromecast

Docs:

  • Added additional docs for offline storage
  • Updated and clarified debugging tutorial

v2.0.3

09 Jan 18:13
Compare
Choose a tag to compare

2.0.3 (2017-01-09)

New features:

  • Treat HTTP 202 status codes as failures

Bugfixes:

  • Fix race condition in StreamingEngine
  • Fix race in load/unload in Player
  • Update workarounds for Edge EME bugs
  • Add missing events and methods to cast proxy
  • Fix exclusion of standard features in custom builds
  • Be more permissive of text failures
    • Permit text parsing errors as well as streaming errors with the
      ignoreTextStreamFailures config option.
    • Do not fail StreamingEngine startup because of text streams,
      regardless of config.
    • #635
  • Fix selectTrack() call with no text tracks
  • Fix buffering state for live streams (stop at live edge)

v2.0.2

16 Dec 00:11
Compare
Choose a tag to compare

New features:

  • Add support for Toshiba dTV
  • TTML subtitles: Support for
    inside a paragraph
  • Parse TTML textAlign settings into align property of a VTTCue
  • Improved test stability and coverage reports

Bugfixes:

  • Fix DASH content type parsing
  • Tolerate larger gaps at the start
  • Fixes for TTML alignment, positioning and cue externs
  • Keep ewma sampling from failing on 0 duration segments
  • Allow text parsers to change during playback
  • Fix playback when IE11 modifies the XML DOM
  • Update MediaSource polyfills for Safari 10
  • Throw explicit error on empty manifests

Docs:

  • Link to error docs from the demo app

v2.0.1

26 Oct 20:38
Compare
Choose a tag to compare

2.0.1 (2016-10-26)

New features:

  • Faster ABR decisions
  • Add config option for using segment relative timestamps for VTT
  • Log and ignore non-standard WebVTT settings instead of failing
  • Make key IDs from the manifest available through DrmInfo
  • Provide framerate and codecs information on video tracks
  • Dispatch more useful network error when HEAD request fails

Bugfixes:

  • Fix ABR quality issues when switching tracks (stutters, glitches, etc.)
  • Keep user selected text track when switching audio
  • Fix vtt with one digit hour
  • Fix build scripts for Windows
  • Fix buffering event delay
  • Workaround bug in Edge buffered ranges
  • Fix handling of internal-error key status
  • Ignore trick mode tracks
  • Fix AdaptationSetSwitching support
  • Fix buffering logic when switching periods
  • Use data URI content-type for manifest type detection
  • Fix audio language changes on Chromecast
  • Fix Chromecast receiver idle behavior when looping or replaying
  • Fix exception-causing race when TextEngine is destroyed

Demo app improvements:

  • Hide volume & mute buttons on mobile-sized screens
  • Probe both MP4 and WebM support in DrmEngine
  • Update Axinom test assets to v7
  • Fix accessibility issues in the demo app

Docs:

  • Rewrote the debugging tutorial
  • Misc docs cleanup

v2.0.0

07 Sep 18:13
Compare
Choose a tag to compare

2.0.0 (2016-09-07)

The first full release of v2!

New features:

  • Improved Chromecast support
    • Cast from the built-in Chrome dialog as well as the video controls
    • Use the built-in Chrome dialog to disconnect
  • Support for in-progress recordings (IPR)
  • Can be configured to tolerate text stream failures
  • Ignore small gaps in the timeline
  • Added EMSG box support
  • Reduced test flakiness and improved test speed
  • Improved VTT parsing
  • Improved EME error reporting
  • Improved demo app UI for touch screens
  • Smaller demo app UI (video element above the fold on Nexus 5X)

Bugfixes:

  • Fixed text-related issues in IE11
  • Fixed a few live edge corner cases
  • Fixed TTML parsing exceptions
  • Fixed text encoding issues with subs
  • Fixed issues with multi-period eviction
  • Defined order of AdaptationSet preference (prefer high quality, low bw)
  • Fixed support for manifests with multiple text formats
  • Fixed support for DASH Representations with multiple Roles
  • Fixed CSP compliance for Chrome apps

Planned features we cut:

  • Cache-detecting bandwidth estimation

v2.0.0-beta3

29 Jul 19:00
Compare
Choose a tag to compare
v2.0.0-beta3 Pre-release
Pre-release

2.0.0-beta3 (2016-07-29)

Restored Features from v1 Missing in v2.0.0-beta2:

  • Offline storage and playback
  • Clearkey license server support

New features:

  • Built-in Chromecast support
  • TTML text support
  • TTML in MP4
  • VTT in MP4
  • Handle QuotaExceededError, automatically reduce buffering goals
  • Faster template processing in DASH
  • Bitrate upgrades take effect faster
  • Add a specific error for missing license server URI
  • Add adaptation events for language changes
  • Don't treat network errors as fatal in StreamingEngine
  • Provide the application access to DrmInfo structure
  • Restructure test/ folder to mimic lib/ folder structure
  • Upgrade closure compiler
  • New logo!

Bugfixes:

  • Revert ABR changes that caused bandwidth samples to be ignored
  • Fix buffering of multi-period text
  • Fix various ABR issues
  • Fix stuck playback on seek
  • Stop refreshing live manifests when unloaded
  • Don't adapt between incompatible codecs (mp4a & ec-3)
  • Fix race in player WRT external text tracks
  • Fix Edge EME workarounds on IE11
  • Work around Safari MSE bugs
  • Fix relative paths in UTCTiming
  • Fix source map paths on windows
  • Improve demo app CSS on mobile
  • Fix buffering state on unload
  • Fix load/unload/destroy race conditions
  • Reduce test flake (async tests still flakey on Safari)
  • Fix context menu display in demo app
  • Fix key status, session expiration, and DRM error dispatch
  • Fix demo app play controls on Android
  • Fix corner cases when seeking to the live edge

Docs:

  • Add a license-wrapping tutorial
  • Add track restriction docs
  • Update track and adaptation docs

Broken Compatibility compared to v2.0.0-beta2:

  • The asynchronous Player.support() has been replaced with the synchronous
    Player.isBrowserSupported() call
  • AbrManager implementations must now handle a partial StreamSet map in
    chooseStreams()
  • The wrong keys error has been dropped due to false positives

v2.0.0-beta2

04 May 17:02
Compare
Choose a tag to compare
v2.0.0-beta2 Pre-release
Pre-release

2.0.0-beta2 (2016-05-04)

Restored Features from v1 Missing in v2.0.0-beta:

  • Track restrictions API
  • Custom controls demo for live
  • Trick play demo

New features:

  • Reduced startup latency
  • Added player.resetConfiguration()
  • Added response text to HTTP errors
  • Demo controls redesigned with material design icons
  • Emit an error if the wrong keys are retrieved
  • Human-readable errors shown in demo app
  • Cache-friendly bandwidth estimation
  • Improved trick play and playbackRate support
  • Allow apps to reset ABR manager estimates
  • Support non-zero start times for VOD

Bugfixes:

  • Fix playback of DASH with unaligned Representations
  • Fixed race conditions on seek
  • Improved drift handling
  • Fixed stack overflow in StringUtils
  • Improved live support
  • Fixed player.addTextTrack
  • Handle CDMs which don't support the same types MSE does
  • Fix audio-only encrypted playback
  • Fix renaming of event properties
  • Warn about missing clock sync elements in live manfiests
  • Add option for default clock sync URI
  • Fix crash in TextEngine when subs are turned off

Docs:

Broken Compatibility compared to v2.0.0-beta:

  • None!