UNPKG

shaka-player

Version:
1,239 lines (1,058 loc) 77.1 kB
## 2.2.9 (2017-12-22) Bugfixes: - Fix excessive memory usage during storage - https://github.com/google/shaka-player/issues/1167 - Fix offline storage with temporary license - https://github.com/google/shaka-player/issues/1159 - Fix exception while casting - https://github.com/google/shaka-player/issues/1128 - Reduced bandwidth of cast messaging - https://github.com/google/shaka-player/issues/1128 - Fix exception when destroying TextDisplayer - https://github.com/google/shaka-player/issues/1187 - Fix presentationTimeOffset in SegmentTemplate - https://github.com/google/shaka-player/issues/1164 - Fix inconsistencies in text visibility across playbacks - https://github.com/google/shaka-player/issues/1185 - Work around bad header formatting in IE 11 - https://github.com/google/shaka-player/issues/1172 - Fix Chromecast PlayReady playback - https://github.com/google/shaka-player/issues/1070 - Fix subtitle display with VTTRegion enabled in Chrome - https://github.com/google/shaka-player/issues/1188 ## 2.2.8 (2017-12-06) Bugfixes: - Do not allow seeking/startup at duration (bump back by 1s) - https://github.com/google/shaka-player/issues/1014 - Don't wait for sessions to close on DrmEngine.destroy - https://github.com/google/shaka-player/issues/1093 - https://github.com/google/shaka-player/pull/1168 - Do not clear buffers on configuration changes unless required - https://github.com/google/shaka-player/issues/1138 - Ignore unsupported STYLE blocks in WebVTT - https://github.com/google/shaka-player/issues/1104 - Fix a null exception in CastReceiver.destroy Demo app: - Fix "ended" video control state on IE - https://github.com/google/shaka-player/issues/979 - Fix updates to demo app URL hash on Edge & IE 11 - https://github.com/google/shaka-player/issues/1111 - Fix demo app page-load race on IE 11 ## 2.2.7 (2017-11-28) Bugfixes: - Allow playhead to recover from drift - https://github.com/google/shaka-player/issues/1105 - Fix exception and race which prevented cast status updates - https://github.com/google/shaka-player/issues/1128 - Fix live broadcast startup issues - https://github.com/google/shaka-player/issues/1150 - Fix mis-detection of live streams as IPR - https://github.com/google/shaka-player/issues/1148 - Fix buffering of live streams while paused - https://github.com/google/shaka-player/issues/1121 Demo app: - Add multi-DRM assets from VDMS - https://github.com/google/shaka-player/issues/780 - https://github.com/google/shaka-player/pull/781 - Add certificate URI field in the custom asset section - https://github.com/google/shaka-player/issues/1135 - https://github.com/google/shaka-player/pull/1136 - Fix broken HLS asset - https://github.com/google/shaka-player/issues/1137 - Update Widevine proxy URI Docs: - Refactor main README.md - Fix build/README.md typo - https://github.com/google/shaka-player/pull/1139 - Fix typo in config tutorial - https://github.com/google/shaka-player/pull/1124 ## 2.2.6 (2017-11-14) Bugfixes: - Cancel network retries when the Player is destroyed - https://github.com/google/shaka-player/issues/1084 - Do not overwrite media from an earlier period when new period is shifted - https://github.com/google/shaka-player/issues/1098 - Do not assume same timescale in manifest and media - https://github.com/google/shaka-player/issues/1098 - Do not fail assertions when media references are shifted outside the period - https://github.com/google/shaka-player/issues/1098 - Fix custom builds which exclude text parsing plugins - https://github.com/google/shaka-player/issues/1115 Demo app: - Rename demo "Autoplay" in demo UI to "Auto-load on page refresh" - https://github.com/google/shaka-player/issues/1114 ## 2.2.5 (2017-11-02) New features: - Add streaming event to allow reconfiguration before streaming starts - https://github.com/google/shaka-player/issues/1043 - Add method to get the parsed manifest structure - https://github.com/google/shaka-player/issues/1074 - Log about deprecated APIs, even in a compiled build with other logs disabled Bugfixes: - Fix interpretation of DASH presentationTimeOffset in SegmentBase - https://github.com/google/shaka-player/issues/1099 ## 2.2.4 (2017-10-23) Bugfixes: - Don't enforce seek range while paused in live streams (stays paused) - https://github.com/google/shaka-player/issues/982 - Fix start time in live streams - https://github.com/google/shaka-player/issues/1069 - Fix handling & transmission of errors from cast receiver to sender - https://github.com/google/shaka-player/issues/1065 Docs: - Added a tutorial for the offline storage and playback APIs - https://github.com/google/shaka-player/issues/1037 ## 2.2.3 (2017-10-17) New features: - Publish an event when the CDM accepts a license - https://github.com/google/shaka-player/issues/1035 - https://github.com/google/shaka-player/pull/1049 - Added assertions and logging to the debug build - Added a debugging method on Player to get buffered ranges Bugfixes: - Fixed race between gap-jumping and seeking - https://github.com/google/shaka-player/issues/1061 - Fixed startTime == 0 in player.load() - https://github.com/google/shaka-player/issues/1069 - Avoid clearing buffer on configure unless restrictions change - https://github.com/google/shaka-player/issues/1009 - Fixed exceptions in the cast receiver demo - https://github.com/google/shaka-player/issues/1064 - Various fixes for concurrent use of CastProxy and related APIs - https://github.com/google/shaka-player/issues/768 - Polyfilled various MediaSource issues on Safari 11 - https://github.com/google/shaka-player/issues/1048 - Reject TS content on Safari due to MediaSource bugs - https://github.com/google/shaka-player/issues/743 - Fixed stuck progress bar on cast receiver demo - https://github.com/google/shaka-player/issues/1064 Demo app: - Rotating mobile devices triggers fullscreen mode - https://github.com/google/shaka-player/issues/883 - Added robustness suggestions for Widevine - https://github.com/google/shaka-player/pull/1008 Docs: - Fixed docs with regard to shaka.text namespace - https://github.com/google/shaka-player/issues/1046 ## 2.2.2 (2017-09-27) New features: - Support for MP4+TTML text streams with multiple MDAT boxes - https://github.com/google/shaka-player/issues/1028 Bugfixes: - Fixed playback hangs in certain content due to rounding error - https://github.com/google/shaka-player/issues/979 - Fixed exception when TextTrack mode is set to "disabled" - https://github.com/google/shaka-player/issues/990 - Fixed subtitle failures in Safari - https://github.com/google/shaka-player/issues/991 - https://github.com/google/shaka-player/issues/1012 - Fixed renaming issues in compiled builds - Fixed exceptions on Tizen 2016 - https://github.com/google/shaka-player/issues/1022 - https://github.com/google/shaka-player/issues/935 - Fixed TTML region parsing - https://github.com/google/shaka-player/issues/1020 Demo app: - Auto-select offline copy of an asset after storing it offline - https://github.com/google/shaka-player/issues/996 - https://github.com/google/shaka-player/pull/1001 - Removed YouTube-sourced assets, which were very outdated - https://github.com/google/shaka-player/issues/1015 - Added "Shaka Player History" live stream Docs: - Added CORS explanation to the docs - https://github.com/google/shaka-player/issues/1018 ## 2.2.1 (2017-09-01) New features: - Support MP4+TTML in HLS - https://github.com/google/shaka-player/issues/986 Bugfixes: - Fixed display of old text cues after loading new content - https://github.com/google/shaka-player/issues/984 - Fixed text cue alignment in compiled mode - https://github.com/google/shaka-player/issues/987 - Fixed exception triggered when storing offline content - https://github.com/google/shaka-player/issues/988 - Fixed cast state when multiple cast senders exist at once - https://github.com/google/shaka-player/issues/768 - Fixed several Cast UI issues - Fixed (harmless) assertion failures on Cast receivers Demo app: - Demo UI on mobile now shows help text on store/delete button - https://github.com/google/shaka-player/pull/995 Docs: - Document lack of IE support on Windows 7 - https://github.com/google/shaka-player/pull/993 ## 2.2.0 (2017-08-23) New features: - Add support for EVENT type playlists in HLS - https://github.com/google/shaka-player/issues/740 - Add new option for offline protected content without persistent licensing - https://github.com/google/shaka-player/issues/873 - Allow applications to render their own text tracks - https://github.com/google/shaka-player/issues/796 - Allow applications to control streaming retry behavior - https://github.com/google/shaka-player/issues/960 - Add support for additional TTML styles - https://github.com/google/shaka-player/issues/923 - https://github.com/google/shaka-player/issues/927 - Add channel count information for both DASH & HLS - https://github.com/google/shaka-player/issues/424 - https://github.com/google/shaka-player/issues/826 - Add basic xlink support in DASH (actuate=onLoad only) - https://github.com/google/shaka-player/issues/587 - https://github.com/google/shaka-player/issues/788 - Add API to limit playable/seekable range for VOD content. - https://github.com/google/shaka-player/issues/246 - Add new error code for container/codec support issues - https://github.com/google/shaka-player/issues/868 - The default ABR manager is much more configurable - https://github.com/google/shaka-player/issues/744 - Add stream bandwidth info to variant tracks - https://github.com/google/shaka-player/issues/834 - Add player.isAudioOnly() - https://github.com/google/shaka-player/issues/942 - Expose presentation start time through player - https://github.com/google/shaka-player/issues/957 - Add bandwidth info to switch history - Improved Chromecast media queries - Stricter runtime type-checking of EME cert configuration - https://github.com/google/shaka-player/issues/784 Bugfixes: - Fix flakiness in offline-related tests - https://github.com/google/shaka-player/issues/903 Demo app: - Added robustness fields to the UI - https://github.com/google/shaka-player/issues/889 Docs: - Updated upgrade guide for v2.2 - https://github.com/google/shaka-player/issues/930 Broken compatibility: - The text-parsing plugin API has changed. Plugins now return shaka.text.Cue objects instead of VTTCue or TextTrackCue objects. All application-specific text-parsing plugins MUST be updated. - https://github.com/google/shaka-player/issues/796 Deprecated: - The configuration for a custom ABR manager has changed. Applications with custom AbrManager implementations SHOULD now configure abrFactory instead of abr.manager. - https://github.com/google/shaka-player/issues/744 - The old interface will be removed in v2.3. - The config API for AbrManager has changed. setDefaultEstimate() and setRestrictions() have been replaced with configure(). Applications with custom AbrManager implementations SHOULD implement the new configure() method. - https://github.com/google/shaka-player/issues/744 - The old interface will be removed in v2.3. - The choice API for AbrManager has changed. chooseStreams() has been replaced with chooseVariants(), and the switch callback now takes a variant. - https://github.com/google/shaka-player/issues/954 - The old interface will be removed in v2.3. - The getTracks() and selectTrack() methods which were deprecated in v2.1 have now been removed. ## 2.1.8 (2017-08-23) Bugfixes: - Add player.isAudioOnly() to fix flash of audio-only icon when casting - https://github.com/google/shaka-player/issues/969 - Fix cast proxying of isAudioOnly and getMediaElement ## 2.1.7 (2017-08-14) Bugfixes: - Fixed "Invalid argument" exceptions for subtitles in IE & Edge - Fixed buffering at the end of the stream for some content in IE & Edge - https://github.com/google/shaka-player/issues/913 - Fixed seeking with native controls in Edge - https://github.com/google/shaka-player/issues/951 - Fixed role selection to clear audio buffer right away - https://github.com/google/shaka-player/issues/948 Docs: - Fixed a bug in the upgrade guide for selecting tracks and disabling ABR - https://github.com/google/shaka-player/issues/962 ## 2.1.6 (2017-08-09) New features: - Add vp9, opus, and flac mp4 to probeSupport - https://github.com/google/shaka-player/issues/944 Bugfixes: - Never adapt across roles or languages - https://github.com/google/shaka-player/issues/918 - https://github.com/google/shaka-player/issues/947 - Fix parsing byterange attribute in HlsParser - https://github.com/google/shaka-player/issues/925 - Fix incorrect segment position after update in some DASH live streams - https://github.com/google/shaka-player/pull/838 - Fix support for live streams with no seek range - https://github.com/google/shaka-player/issues/916 - Fix display order of cues with identical ranges - https://github.com/google/shaka-player/issues/848 - Fix missing cues in WVTT MP4s using default sample duration - https://github.com/google/shaka-player/issues/919 - Accept non-integer settings in VTT - https://github.com/google/shaka-player/issues/919 - Tolerate bandwidth of 0 or missing bandwidth - https://github.com/google/shaka-player/issues/938 - https://github.com/google/shaka-player/issues/940 - Fix multiple pipeline flushes on some platforms - Make it safe to install polyfills twice - https://github.com/google/shaka-player/issues/941 Demo app: - Fix compiled mode in the demo app. Does not affect the library. Removed defaultConfig_ reference in demo. - https://github.com/google/shaka-player/issues/929 - Update license URI for PlayReady test asset - https://github.com/google/shaka-player/pull/953 - https://github.com/google/shaka-player/issues/945 ## 2.1.5 (2017-07-17) New features: - Add more information to video errors in Chrome Bugfixes: - Fix key status problems on IE11 and Tizen TVs - https://github.com/google/shaka-player/issues/884 - https://github.com/google/shaka-player/issues/890 - Fix period switching when streams are not yet available - https://github.com/google/shaka-player/issues/839 - Filter out audio-only HLS variants that can't be switched to - https://github.com/google/shaka-player/issues/824 - https://github.com/google/shaka-player/issues/861 - Fix parsing of Microsoft-packaged HLS content - Fix rounding issues with multi-Period content - https://github.com/google/shaka-player/issues/882 - https://github.com/google/shaka-player/issues/909 - https://github.com/google/shaka-player/issues/911 - Fix exceptions thrown in some cases when switching text tracks - https://github.com/google/shaka-player/issues/910 - Fix DASH date parsing when timezone is missing - https://github.com/google/shaka-player/issues/901 - Fix persistent storage detection on IE11 and Tizen TVs - Fix test issues on Tizen - https://github.com/google/shaka-player/issues/893 - Fix version detection when compiling from the NPM package - https://github.com/google/shaka-player/issues/871 - Work around lack of key statuses on Tizen - https://github.com/google/shaka-player/issues/891 - https://github.com/google/shaka-player/issues/894 Demo app: - Fix missing fullscreen button on IE11 - https://github.com/google/shaka-player/issues/787 - Added configuration for gap jumping Docs: - Document HTTPS requirement for EME - https://github.com/google/shaka-player/issues/867 - https://github.com/google/shaka-player/issues/928 - Update tutorials - https://github.com/google/shaka-player/issues/862 - Add FAQ entry on EME robustness - https://github.com/google/shaka-player/issues/866 - Update HLS FAQ - Document that we test on Tizen TV now ## 2.1.4 (2017-06-16) New features: - Allow role to be specified in selectAudioLanguage and selectTextLanguage - https://github.com/google/shaka-player/issues/767 Bugfixes: - Fix changing languages close to a period boundary - https://github.com/google/shaka-player/issues/797 - Fix hang in load() when there are pending failures - https://github.com/google/shaka-player/issues/782 - Fix DASH parser ignoring certain text streams - https://github.com/google/shaka-player/issues/875 - Fix exceptions when side-loading text tracks - https://github.com/google/shaka-player/issues/821 - Fix PlayReady support on Chromecast - https://github.com/google/shaka-player/issues/852 - Fix version number issues during publication on NPM - https://github.com/google/shaka-player/issues/869 - Fix pollution from npm on Windows - https://github.com/google/shaka-player/issues/776 - Fix support for npm v5 - https://github.com/google/shaka-player/issues/854 Demo app: - Fix control visibility in fullscreen mode on mobile phones - https://github.com/google/shaka-player/issues/663 Docs: - Updated welcome docs - Updated list of supported platforms - https://github.com/google/shaka-player/issues/863 - Updated FAQ - https://github.com/google/shaka-player/issues/864 - https://github.com/google/shaka-player/issues/865 ## 2.1.3 (2017-06-06) New features: - Limit network retries for VOD, only retry forever on live - https://github.com/google/shaka-player/issues/762 - https://github.com/google/shaka-player/issues/830 - https://github.com/google/shaka-player/pull/842 - Add stream IDs in getStats().switchHistory - https://github.com/google/shaka-player/issues/785 - https://github.com/google/shaka-player/issues/823 - https://github.com/google/shaka-player/pull/846 - Add label attribute to tracks - https://github.com/google/shaka-player/issues/825 - https://github.com/google/shaka-player/pull/811 - https://github.com/google/shaka-player/pull/831 - Expose role attributes on tracks - https://github.com/google/shaka-player/issues/767 - Silence confusing browser-generated errors related to play() - https://github.com/google/shaka-player/issues/836 Bugfixes: - Fix offline storage in compiled mode - Choose lowest-bandwidth codecs when multiple are possible - https://github.com/google/shaka-player/issues/841 - Fix PlayReady on IE and Edge - https://github.com/google/shaka-player/issues/837 - Fix rounding errors on IE11 - https://github.com/google/shaka-player/pull/832 - Clean up demo app loader - Fix PlayReady test failures ## 2.1.2 (2017-05-23) New features: - Make educated guesses about missing HLS info (CODECS no longer required) - https://github.com/google/shaka-player/issues/805 - Add support for PlayReady on Chromecast and Tizen - https://github.com/google/shaka-player/issues/814 - https://github.com/google/shaka-player/pull/815 Bugfixes: - Fix flakiness in RESTRICTIONS\_CANNOT\_BE\_MET errors - Make isBrowserSupported more strict about MediaSource - Fix detection of audio-only assets in the demo - https://github.com/google/shaka-player/issues/794 - Fix exports and generated externs that were broken in v2.1.0 and v2.1.1 - Speed up deletion of offline content - https://github.com/google/shaka-player/issues/756 Docs: - Fix docs on subtitles and captions - https://github.com/google/shaka-player/issues/808 - Add notes on adaptation to upgrade guide ## 2.0.9 (2017-05-10) Backported bugfixes from v2.1.x: - Fix offline download stalls on Android - https://github.com/google/shaka-player/issues/747 - Fix track restriction based on key status - https://github.com/google/shaka-player/issues/761 - Fix exception in fullscreen polyfill on IE 11 - https://github.com/google/shaka-player/pull/777 - Fix exception when reconfiguring serverCertificate - https://github.com/google/shaka-player/issues/784 ## 2.1.1 (2017-05-10) New features: - Separate audio and video codec in Track - https://github.com/google/shaka-player/issues/758 - Make segment request to establish HLS media MIME type - https://github.com/google/shaka-player/issues/769 Bugfixes: - Fix exception in fullscreen polyfill on IE 11 - https://github.com/google/shaka-player/pull/777 - Fix exception when reconfiguring serverCertificate - https://github.com/google/shaka-player/issues/784 - Don't fire 'trackschanged' event twice - https://github.com/google/shaka-player/issues/783 - Fix track restriction based on key status - https://github.com/google/shaka-player/issues/761 - Fix offline download stalls on Android - https://github.com/google/shaka-player/issues/747 - Fix race condition in gap-jumping code - Fix poster visibility in fullscreen mode - https://github.com/google/shaka-player/issues/778 ## 2.1.0 (2017-04-25) New features: - Add basic HLS support - VOD only - Widevine & clear content only - No support for CEA-708 - https://github.com/google/shaka-player/issues/279 - Tolerate gaps in the presentation timeline and jump over them - https://github.com/google/shaka-player/issues/555 - Add an indicator for critical errors - https://github.com/google/shaka-player/issues/564 - Do not retry on HTTP 401/403 errors - https://github.com/google/shaka-player/issues/620 - Expand player stats and track metadata - Add loadLatency stat - Add mimeType to tracks - Track state changes (buffering, playing, paused, ended) - DASH trick mode support - https://github.com/google/shaka-player/issues/538 - Expose license expiration times through Player - https://github.com/google/shaka-player/issues/727 - Add support for EventStream elements in DASH - https://github.com/google/shaka-player/issues/462 - Add support for Chromecast Media Playback messages from generic senders - https://github.com/google/shaka-player/issues/722 - Add config to ignore key system and init data in DASH manifest - https://github.com/google/shaka-player/issues/750 - Add support for asynchronous response filters - https://github.com/google/shaka-player/issues/610 - Filter duplicate initData from manifest by key ID - https://github.com/google/shaka-player/issues/580 - Optionally adjust start time to segment boundary - https://github.com/google/shaka-player/issues/683 - StringUtils and Uint8ArrayUtils are now exported, to make filters easier - https://github.com/google/shaka-player/issues/667 - Add audio adaptation to default AbrManager - Add an API to force the Chromecast to disconnect - https://github.com/google/shaka-player/issues/523 - Add possibility to delay license request until playback is started - https://github.com/google/shaka-player/issues/262 - Add API to get live stream position as Date - https://github.com/google/shaka-player/issues/356 - Don't clear buffer if switching to the same stream - https://github.com/google/shaka-player/issues/693 - Demo app permalink support through URL hash parameters - https://github.com/google/shaka-player/issues/709 - Add a flag so scheme plugins can ask us to ignore cache hits for ABR - Allow passing durations from scheme plugins to compute throughput - https://github.com/google/shaka-player/issues/621 - Make ES6 imports easier - https://github.com/google/shaka-player/issues/466 - Add separate restrictions to AbrManager - https://github.com/google/shaka-player/issues/565 - Allow network plugins to see the request type - https://github.com/google/shaka-player/issues/602 Bugfixes: - Make language selection explicit - https://github.com/google/shaka-player/issues/412 - Make text track visibility explicit - https://github.com/google/shaka-player/issues/626 - Fix firing of 'trackschanged' event for multi-Period content - https://github.com/google/shaka-player/issues/680 - Correct time parsing for MP4 VTT subtitles - https://github.com/google/shaka-player/issues/699 - Fix playback of live when segments do not extend to the end of the Period - https://github.com/google/shaka-player/issues/694 - Allow seeking to 0 in live streams - https://github.com/google/shaka-player/issues/692 - Add explicit timestamps to 'emsg' events - https://github.com/google/shaka-player/issues/698 - Fix playback of YouTube demo assets - https://github.com/google/shaka-player/issues/682 - Allow text parsers to change during playback - https://github.com/google/shaka-player/issues/571 Docs: - Add offline storage to v2 upgrade guide - Add additional docs for AbrManager - https://github.com/google/shaka-player/issues/629 - Add manifest parser plugin tutorial Broken Compatibility: - Track types 'video' and 'audio' have been combined into 'variant'. - Any application looking at track.type will need to be updated. - Removed useRelativeCueTimestamps option - All segmented WebVTT cue timestamps are now segment-relative - https://github.com/google/shaka-player/issues/726 - Plugin interface for text parsers has changed - Both old & new interfaces still supported - Support for old interface will be removed in v2.2 - Plugin interface for ManifestParser.start has changed - Now takes an object with named parameters instead of positional params - Both old & new interfaces still supported - Support for old interface will be removed in v2.2 - Retired the INVALID\_TTML error code - Folded into the INVALID\_XML error code ## 2.0.8 (2017-04-07) Bugfixes: - Suppress controls UI updates when hidden - https://github.com/google/shaka-player/issues/749 - Revert keyboard navigation changes in demo, failing on Firefox ## 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 - https://github.com/google/shaka-player/pull/723 - Improved error reporting for HTTP errors Bugfixes: - Fixed a DASH compliance bug in SegmentList w/ presentationTimeOffset - Fixed compiler renaming in emsg events. - https://github.com/google/shaka-player/issues/717 - Fix period transitions where text streams may be absent - https://github.com/google/shaka-player/issues/715 - 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 - https://github.com/google/shaka-player/issues/739 - Fix contamination between tests ## 2.0.6 (2017-02-24) New Features: - Add Media Session info to demo - https://github.com/google/shaka-player/pull/689 - Add support for xml:space in TTML parser - https://github.com/google/shaka-player/issues/665 - Add fullscreenEnabled property to fullscreen polyfill - https://github.com/google/shaka-player/issues/669 - Allow InbandEventStream elements at Representation level - https://github.com/google/shaka-player/pull/687 - https://github.com/google/shaka-player/issues/686 - Warning for unsupported indexRange attribute - Warning for duplicate Representation IDs Bugfixes: - Fix cast support broken since 2.0.3 - https://github.com/google/shaka-player/issues/675 - Fix timeout errors in cast demo - https://github.com/google/shaka-player/issues/684 - Fix infinite buffering caused by a race - https://github.com/google/shaka-player/issues/600 - Fix race in StreamingEngine for multi-Period content - https://github.com/google/shaka-player/issues/655 - Hide the controls when going fullscreen on phones - https://github.com/google/shaka-player/issues/663 - Improve calculation of $TIME$ in SegmentTemplate - https://github.com/google/shaka-player/issues/690 - https://github.com/google/shaka-player/pull/706 - Fix YouTube asset on demo app - https://github.com/google/shaka-player/issues/682 ## 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 - https://github.com/google/shaka-player/issues/655 - Fix hang in destroy() when EME sessions are in a bad state - https://github.com/google/shaka-player/issues/664 - Fix doubling of time offset for segment-relative cues - https://github.com/google/shaka-player/issues/595 - https://github.com/google/shaka-player/pull/599 ## 2.0.4 (2017-01-24) New features: - Support for 4k on Chromecast Ultra - Support for text tracks on Toshiba dTV - https://github.com/google/shaka-player/issues/635 - https://github.com/google/shaka-player/pull/643 Bugfixes: - Fixed buffering issues at the end of streams in IE/Edge - https://github.com/google/shaka-player/issues/658 - Fixed parsing of empty divs in TTML - https://github.com/google/shaka-player/issues/646 - https://github.com/google/shaka-player/pull/650 - 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 - https://github.com/google/shaka-player/issues/653 ## 2.0.3 (2017-01-09) New features: - Treat HTTP 202 status codes as failures - https://github.com/google/shaka-player/issues/645 Bugfixes: - Fix race condition in StreamingEngine - Fix race in load/unload in Player - https://github.com/google/shaka-player/pull/613 - https://github.com/google/shaka-player/issues/612 - Update workarounds for Edge EME bugs - https://github.com/google/shaka-player/issues/634 - 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. - https://github.com/google/shaka-player/issues/635 - Fix selectTrack() call with no text tracks - https://github.com/google/shaka-player/issues/640 - Fix buffering state for live streams (stop at live edge) - https://github.com/google/shaka-player/issues/636 ## 2.0.2 (2016-12-15) New features: - Add support for Toshiba dTV - https://github.com/google/shaka-player/pull/605 - TTML subtitles: Support for \<br\> inside a paragraph - https://github.com/google/shaka-player/pull/572 - https://github.com/google/shaka-player/pull/584 - Parse TTML textAlign settings into align property of a VTTCue - https://github.com/google/shaka-player/pull/573 - Improved test stability and coverage reports Bugfixes: - Fix DASH content type parsing - https://github.com/google/shaka-player/issues/631 - Tolerate larger gaps at the start - https://github.com/google/shaka-player/issues/579 - Fixes for TTML alignment, positioning and cue externs - https://github.com/google/shaka-player/pull/588 - https://github.com/google/shaka-player/pull/594 - Keep ewma sampling from failing on 0 duration segments - https://github.com/google/shaka-player/issues/582 - https://github.com/google/shaka-player/pull/583 - Allow text parsers to change during playback - https://github.com/google/shaka-player/issues/571 - Fix playback when IE11 modifies the XML DOM - https://github.com/google/shaka-player/issues/608 - https://github.com/google/shaka-player/pull/611 - Update MediaSource polyfills for Safari 10 - https://github.com/google/shaka-player/issues/615 - Throw explicit error on empty manifests - https://github.com/google/shaka-player/issues/618 Docs: - Link to error docs from the demo app ## 2.0.1 (2016-10-26) New features: - Faster ABR decisions - Add config option for using segment relative timestamps for VTT - https://github.com/google/shaka-player/issues/480 - https://github.com/google/shaka-player/pull/542 - Log and ignore non-standard WebVTT settings instead of failing - https://github.com/google/shaka-player/issues/509 - Make key IDs from the manifest available through DrmInfo - https://github.com/google/shaka-player/pull/529 - Provide framerate and codecs information on video tracks - https://github.com/google/shaka-player/issues/516 - https://github.com/google/shaka-player/pull/533 - Dispatch more useful network error when HEAD request fails Bugfixes: - Fix ABR quality issues when switching tracks (stutters, glitches, etc.) - https://github.com/google/shaka-player/issues/520 - Keep user selected text track when switching audio - https://github.com/google/shaka-player/issues/514 - Fix vtt with one digit hour - https://github.com/google/shaka-player/pull/522 - Fix build scripts for Windows - https://github.com/google/shaka-player/issues/526 - Fix buffering event delay - https://github.com/google/shaka-player/issues/511 - Workaround bug in Edge buffered ranges - https://github.com/google/shaka-player/issues/530 - Fix handling of internal-error key status - https://github.com/google/shaka-player/issues/539 - Ignore trick mode tracks - https://github.com/google/shaka-player/issues/538 - Fix AdaptationSetSwitching support - Fix buffering logic when switching periods - https://github.com/google/shaka-player/issues/537 - https://github.com/google/shaka-player/issues/545 - Use data URI content-type for manifest type detection - https://github.com/google/shaka-player/pull/550 - Fix audio language changes on Chromecast - https://github.com/google/shaka-player/issues/544 - Fix Chromecast receiver idle behavior when looping or replaying - https://github.com/google/shaka-player/issues/558 - 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 - https://github.com/google/shaka-player/issues/540 - Update Axinom test assets to v7 - Fix accessibility issues in the demo app - https://github.com/google/shaka-player/issues/552 Docs: - Rewrote the debugging tutorial - Misc docs cleanup - https://github.com/google/shaka-player/pull/536 ## 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) - https://github.com/google/shaka-player/issues/477 - Can be configured to tolerate text stream failures - https://github.com/google/shaka-player/issues/474 - Ignore small gaps in the timeline - https://github.com/google/shaka-player/issues/472 - Added EMSG box support - https://github.com/google/shaka-player/issues/259 - Reduced test flakiness and improved test speed - Improved VTT parsing - https://github.com/google/shaka-player/issues/469 - Improved EME error reporting - https://github.com/google/shaka-player/issues/468 - 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 - https://github.com/google/shaka-player/issues/501 - https://github.com/google/shaka-player/issues/502 - Fixed a few live edge corner cases - https://github.com/google/shaka-player/issues/490 - https://github.com/google/shaka-player/issues/504 - Fixed TTML parsing exceptions - https://github.com/google/shaka-player/issues/473 - https://github.com/google/shaka-player/issues/506 - Fixed text encoding issues with subs - Fixed issues with multi-period eviction - https://github.com/google/shaka-player/pull/483 - Defined order of AdaptationSet preference (prefer high quality, low bw) - https://github.com/google/shaka-player/issues/476 - Fixed support for manifests with multiple text formats - Fixed support for DASH Representations with multiple Roles - https://github.com/google/shaka-player/issues/500 - Fixed CSP compliance for Chrome apps - https://github.com/google/shaka-player/issues/487 Planned features we cut: - Cache-detecting bandwidth estimation - https://github.com/google/shaka-player/issues/324 ## 2.0.0-beta3 (2016-07-29) Restored Features from v1 Missing in v2.0.0-beta2: - Offline storage and playback - https://github.com/google/shaka-player/issues/343 - Clearkey license server support - https://github.com/google/shaka-player/issues/403 New features: - Built-in Chromecast support - https://github.com/google/shaka-player/issues/261 - TTML text support - https://github.com/google/shaka-player/issues/111 - TTML in MP4 - https://github.com/google/shaka-player/issues/278 - VTT in MP4 - https://github.com/google/shaka-player/issues/277 - Handle QuotaExceededError, automatically reduce buffering goals - https://github.com/google/shaka-player/issues/258 - Faster template processing in DASH - https://github.com/google/shaka-player/issues/405 - Bitrate upgrades take effect faster - Add a specific error for missing license server URI - https://github.com/google/shaka-player/issues/371 - Add adaptation events for language changes - Don't treat network errors as fatal in StreamingEngine - https://github.com/google/shaka-player/issues/390 - Provide the application access to DrmInfo structure - https://github.com/google/shaka-player/issues/272 - Restructure test/ folder to mimic lib/ folder structure - https://github.com/google/shaka-player/pull/434 - Upgrade closure compiler - https://github.com/google/shaka-player/pull/421 - New logo! Bugfixes: - Revert ABR changes that caused bandwidth samples to be ignored - https://github.com/google/shaka-player/issues/367 - Fix buffering of multi-period text - https://github.com/google/shaka-player/issues/411 - Fix various ABR issues - https://github.com/google/shaka-player/issues/435 - Fix stuck playback on seek - https://github.com/google/shaka-player/issues/366 - Stop refreshing live manifests when unloaded - https://github.com/google/shaka-player/issues/369 - Don't adapt between incompatible codecs (mp4a & ec-3) - https://github.com/google/shaka-player/issues/391 - Fix race in player WRT external text tracks - https://github.com/google/shaka-player/issues/418 - Fix Edge EME workarounds on IE11 - https://github.com/google/shaka-player/issues/393 - Work around Safari MSE bugs - Fix relative paths in UTCTiming - https://github.com/google/shaka-player/issues/376 - Fix source map paths on windows - https://github.com/google/shaka-player/issues/413 - 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 - https://github.com/google/shaka-player/issues/422 - Fix key status, session expiration, and DRM error dispatch - Fix demo app play controls on Android - https://github.com/google/shaka-player/issues/432 - Fix corner cases when seeking to the live edge Docs: - Add a license-wrapping tutorial - Add track restriction docs - https://github.com/google/shaka-player/issues/387 - Update track and adaptation docs - https://github.com/google/shaka-player/issues/447 Broken Compatibility compared to v2.0.0-beta2: - The asynchronous Player.support() has been replaced with the synchronous Player.isBrowserSupported() call - https://github.com/google/shaka-player/issues/388 - AbrManager implementations must now handle a partial StreamSet map in chooseStreams() - The wrong keys error has been dropped due to false positives ## 2.0.0-beta2 (2016-05-04) Restored Features from v1 Missing in v2.0.0-beta: - Track restrictions API - https://github.com/google/shaka-player/issues/326 - https://github.com/google/shaka-player/issues/327 - Custom controls demo for live - https://github.com/google/shaka-player/issues/322 - Trick play demo - https://github.com/google/shaka-player/issues/328 New features: - Reduced startup latency - Added player.resetConfiguration() - Added response text to HTTP errors - https://github.com/google/shaka-player/issues/319 - Demo controls redesigned with material design icons - Emit an error if the wrong keys are retrieved - https://github.com/google/shaka-player/issues/301 - Human-readable errors shown in demo app - Cache-friendly bandwidth estimation - https://github.com/google/shaka-player/issues/324 - Improved trick play and playbackRate support - https://github.com/google/shaka-player/issues/344 - Allow apps to reset ABR manager estimates - https://github.com/google/shaka-player/issues/355 - Support non-zero start times for VOD - https://github.com/google/shaka-player/issues/341 - https://github.com/google/shaka-player/issues/348 - https://github.com/google/shaka-player/issues/357 Bugfixes: - Fix playback of DASH with unaligned Representations - Fixed race conditions on seek - https://github.com/google/shaka-player/issues/334 - Improved drift handling - https://github.com/google/shaka-player/issues/330 - Fixed stack overflow in StringUtils - https://github.com/google/shaka-player/issues/335 - Improved live support - https://github.com/google/shaka-player/issues/331 - https://github.com/google/shaka-player/issues/339 - https://github.com/google/shaka-player/issues/340 - https://github.com/google/shaka-player/issues/351 - Fixed player.addTextTrack - Handle CDMs which don't support the same types MSE does - https://github.com/google/shaka-player/issues/342 - Fix audio-only encrypted playback - https://github.com/google/shaka-player/issues/360 - Fix renaming of event properties - https://github.com/google/shaka-player/issues/361 - Warn about missing clock sync elements in live manfiests - https://github.com/google/shaka-player/issues/290 - Add option for default clock sync URI - https://github.com/google/shaka-player/issues/290 - Fix crash in TextEngine when subs are turned off Docs: - Shaka v2 upgrade guide - http://shaka-player-demo.appspot.com/docs/api/tutorial-upgrade.html - Added enum values (not just names) to generated docs - https://github.com/google/shaka-player/issues/337 Broken Compatibility compared to v2.0.0-beta: - None! ## 1.6.5 (2016-04-08) Bugfixes: - Always build the same input files to a stable output - https://github.com/google/shaka-player/pull/299 - Properly extern the 'xhr' property of HTTP errors - https://github.com/google/shaka-player/pull/319 ## 2.0.0-beta (2016-04-07) New Features: - DASH support for: - Multi-Period content - https://github.com/google/shaka-player/issues/186 - Location elements - https://github.com/google/shaka-player/issues/298 - UTCTiming elements (for clock synchronization) - https://github.com/google/shaka-player/issues/241 - Better browser compatibility - Testing on Safari 9, IE 11, Edge, Firefox 45+, Opera, Chrome - https://github.com/google/shaka-player/issues/101 - New plugin and build system to extend Shaka - Networking plugins - https://github.com/google/shaka-player/issues/228 - https://github.com/google/shaka-player/issues/198 - Cache-friendly networking - https://github.com/google/shaka-player/issues/76 - https://github.com/google/shaka-player/issues/191 - https://github.com/google/shaka-player/issues/235 - Limit memory usage by clearing old data from buffer - https://github.com/google/shaka-player/issues/247 - Simpler, more mobile-friendly demo app - New test assets - https://github.com/google/shaka-player/issues/224 - Made play()/pause() independent of buffering - https://github.com/google/shaka-player/issues/233 - Numerical error code system - https://github.com/google/shaka-player/issues/201 - Distinguish between subtitle and caption tracks - https://github.com/google/shaka-player/issues/206 - Separate audio & text language preferences - https://github.com/google/shaka-player/issues/207 - Update timeShiftBufferDepth when updating the manifest - https://github.com/google/shaka-player/issues/295 - Simplified clearkey setup using configure() - Initial bandwidth is now configurable: - https://github.com/google/shaka-player/issues/268 Bugfixes: - Stopped using Date headers for clock sync - https://github.com/google/shaka-player/issues/205 - https://github.com/google/shaka-player/issues/241 Docs: - New tutorials! Missing Features from v1 (to be added later): - Custom controls demo for live streams - https://github.com/google/shaka-player/issues/322 - Chromecast demo - Trick play demo - Track restrictions based on key status - Offline support Broken Compatibility: - Almost everything! (v2 upgrade guide coming soon) ## 1.6.4 (2016-03-03) Bugfixes: - Updated Promise polyfill with fixes backported from v2 - Fixed Edge EME compatibility & InvalidStateErrors - https://github.com/google/shaka-player/issues/282 - Fixed HttpVideoSource use with clear content (Thanks, Sanborn!) - https://github.com/google/shaka-player/pull/292 - Fixed uncompiled-mode performance regression introduced in v1.6.3 - https://github.com/google/shaka-player/issues/288 ## 1.6.3 (2016-02-08) Features: - Added opt\_clearBufferOffset for audio (Thanks, Itay) - https://github.com/google/shaka-player/pull/254 - Fetch segments from new location after manifest redirect (Thanks, Rob) - https://github.com/google/shaka-player/pull/266 Bugfixes: - Several IE11 stability issues and race conditions fixed - Fixed incompatibilities when clearing the SourceBuffer - Ignore spurious 'updateend' events - Added stack-based messages to all assertions - Fixed some unit test compatibility issues - Fixed race conditions caused by Promise polyfill - https://github.com/google/shaka-player/issues/251 Docs: - Update browser support docs with regard to IE & Firefox Test app fixes: - Fixed slider controls for IE11 - Turned off seek bar tooltips for IE11 ## 1.6.2 (2015-12-14) Features: - Added a new configure parameter to allow a user to completely disable the cache-buster. This is necessary for certain CDNs, but please note the tradeoffs before using. Bandwidth estimation can be adversely affected, particularly for low-bandwidth users. - https://github.com/google/shaka-player/issues/235 - https://github.com/google/shaka-player/issues/238 - https://github.com/google/shaka-player/issues/76 Bugfixes: - Fixed interpretation of startNumber for SegmentTemplate w/ duration. - https://github.com/google/shaka-player/issues/237 ## 1.6.1 (2015-12-07) Bugfixes: - Fixed handling when all streams are removed in a manifest update. - Fixed annotation mistakes in preparation for a new compiler release. - Fixed Promise polyfill errors in compiled mode. - https://github.com/google/shaka-player/issues/236 ## 1.6.0 (2015-11-17) Features: - Partial IE11 & PlayReady support. (Thanks, Jono!) - https://github.com/google/shaka-player/pull/176 - *live and offline content not working* - *non-zero start times not working* - *IE11 fails to decode some test assets* - https://github.com/google/shaka-player/issues/224 - Added support for setPlaybackStartTime on live streams. - https://github.com/google/shaka-player/pull/231 - Improved support for live streaming corner cases. - https://github.com/google/shaka-player/issues/139 - https://github.com/google/shaka-player/issues/140 - https://github.com/google/shaka-player/issues/141 - https://github.com/google/shaka-player/issues/145 - https://github.com/google/shaka-player/issues/185 - Now builds with three different configs by default. - Full build (all features enabled). - DASH MP4 VOD. (Only DASH w/ SegmentBase, no WebM.) - DASH MP4 live. (Only DASH w/o SegmentBase, no WebM.) - https://github.com/google/shaka-player/issues/116 - Changed startNumber implementation to be more consistent. - https://github.com/google/shaka-player/issues/192 - Added a new Promise polyfill for IE11. - Added support for WebM w/ unknown size in the Segment element. Bugfixes: - Expired sessions (for example, when using key rotation) are now cleaned up. - https://github.com/google/shaka-player/issues/210 - Manifests can now be reprocessed without an update when availabilityStartTime passes. - https://github.com/google/shaka-player/issues/172 Test app features: - Added Chromecast support to the demo app. (No changes to the library for this.)