shaka-player 4.1.6 → 4.1.7
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/AUTHORS +1 -0
- package/CHANGELOG.md +15 -0
- package/CONTRIBUTORS +1 -0
- package/dist/deps.js +2 -2
- package/dist/locales.js +29 -29
- package/dist/shaka-player.compiled.d.ts +5 -1
- package/dist/shaka-player.compiled.debug.d.ts +5 -1
- package/dist/shaka-player.compiled.debug.externs.js +2 -1
- package/dist/shaka-player.compiled.debug.js +82 -81
- package/dist/shaka-player.compiled.debug.map +3 -3
- package/dist/shaka-player.compiled.externs.js +2 -1
- package/dist/shaka-player.compiled.js +516 -513
- package/dist/shaka-player.compiled.map +3 -3
- package/dist/shaka-player.ui.d.ts +5 -1
- package/dist/shaka-player.ui.debug.d.ts +5 -1
- package/dist/shaka-player.ui.debug.externs.js +2 -1
- package/dist/shaka-player.ui.debug.js +98 -97
- package/dist/shaka-player.ui.debug.map +3 -3
- package/dist/shaka-player.ui.externs.js +2 -1
- package/dist/shaka-player.ui.js +656 -653
- package/dist/shaka-player.ui.map +3 -3
- package/externs/mux.js +3 -0
- package/lib/cast/cast_proxy.js +2 -1
- package/lib/cast/cast_receiver.js +19 -5
- package/lib/cast/cast_sender.js +2 -1
- package/lib/cast/cast_utils.js +16 -6
- package/lib/hls/hls_parser.js +9 -2
- package/lib/media/media_source_engine.js +6 -0
- package/lib/media/playhead.js +23 -1
- package/lib/media/streaming_engine.js +3 -12
- package/lib/media/transmuxer.js +6 -0
- package/lib/player.js +24 -11
- package/lib/util/manifest_parser_utils.js +4 -0
- package/package.json +1 -1
- package/roadmap.md +24 -6
- package/test/cast/cast_receiver_integration.js +97 -16
- package/test/cast/cast_receiver_unit.js +17 -12
- package/test/cast/cast_utils_unit.js +1 -0
- package/test/media/media_source_engine_integration.js +31 -0
- package/test/media/playhead_unit.js +41 -0
- package/test/media/streaming_engine_integration.js +13 -0
- package/test/media/streaming_engine_unit.js +36 -23
- package/test/player_unit.js +87 -0
- package/test/test/util/simple_fakes.js +3 -0
- package/ui/controls.js +4 -1
- package/ui/settings_menu.js +11 -2
package/AUTHORS
CHANGED
|
@@ -32,6 +32,7 @@ Edgeware AB <*@edgeware.tv>
|
|
|
32
32
|
Enson Choy <enson.choy@harmonicinc.com>
|
|
33
33
|
Esteban Dosztal <edosztal@gmail.com>
|
|
34
34
|
Fadomire <fadomire@gmail.com>
|
|
35
|
+
Gerardo Meola <meola.gerardo@gmail.com>
|
|
35
36
|
Gil Gonen <gil.gonen@gmail.com>
|
|
36
37
|
Giorgio Gamberoni <giorgio.gamberoni@gmail.com>
|
|
37
38
|
Giuseppe Samela <giuseppe.samela@gmail.com>
|
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,20 @@
|
|
|
1
1
|
# Changelog
|
|
2
2
|
|
|
3
|
+
## [4.1.7](https://github.com/shaka-project/shaka-player/compare/v4.1.6...v4.1.7) (2022-11-09)
|
|
4
|
+
|
|
5
|
+
|
|
6
|
+
### Bug Fixes
|
|
7
|
+
|
|
8
|
+
* Allow overriding special handling of 404s ([#4635](https://github.com/shaka-project/shaka-player/issues/4635)) ([ad2bffc](https://github.com/shaka-project/shaka-player/commit/ad2bffc798946f4ebe97154a53e74582a71bc886)), closes [#4548](https://github.com/shaka-project/shaka-player/issues/4548)
|
|
9
|
+
* **cast:** Reduce size of Cast update messages ([#4644](https://github.com/shaka-project/shaka-player/issues/4644)) ([687f92c](https://github.com/shaka-project/shaka-player/commit/687f92c50c4cd913d3fc556ec1468a15b27ec257))
|
|
10
|
+
* Content reload starttime with HLS on iOS ([#4575](https://github.com/shaka-project/shaka-player/issues/4575)) ([fe28e26](https://github.com/shaka-project/shaka-player/commit/fe28e26e7cca7cf53d8159e3a82cab344471968d)), closes [#4244](https://github.com/shaka-project/shaka-player/issues/4244)
|
|
11
|
+
* embed cc not shown when seeking back ([#4643](https://github.com/shaka-project/shaka-player/issues/4643)) ([c514d15](https://github.com/shaka-project/shaka-player/commit/c514d15ddfe4892443b99491b3f932ba94c6609d)), closes [#4641](https://github.com/shaka-project/shaka-player/issues/4641)
|
|
12
|
+
* Fix detection of ac4, dts, and dolby h265 ([#4657](https://github.com/shaka-project/shaka-player/issues/4657)) ([4018805](https://github.com/shaka-project/shaka-player/commit/40188056c9b45d41aec7ce3ac7aee82d207cc76e))
|
|
13
|
+
* focus on first element when back to the settings menu ([#4653](https://github.com/shaka-project/shaka-player/issues/4653)) ([fa920d8](https://github.com/shaka-project/shaka-player/commit/fa920d8154cf1254a67989d473d4ff4cc9cc006c)), closes [#4652](https://github.com/shaka-project/shaka-player/issues/4652)
|
|
14
|
+
* **HLS:** Fix detection of WebVTT subtitles in HLS by extension ([#4663](https://github.com/shaka-project/shaka-player/issues/4663)) ([2b02e23](https://github.com/shaka-project/shaka-player/commit/2b02e231390f90325bb7ffce88c499512b3bc541))
|
|
15
|
+
* **HLS:** Infer missing codecs from config ([#4656](https://github.com/shaka-project/shaka-player/issues/4656)) ([1104d80](https://github.com/shaka-project/shaka-player/commit/1104d80100bb243e1a47bd093a5cf78dd8a3aadd))
|
|
16
|
+
* **ui:** Fix exception on screen rotation if fullscreen is not supported ([#4669](https://github.com/shaka-project/shaka-player/issues/4669)) ([d803363](https://github.com/shaka-project/shaka-player/commit/d803363e0f949c90c8fe1b3258723847c1ddb22d))
|
|
17
|
+
|
|
3
18
|
## [4.1.6](https://github.com/shaka-project/shaka-player/compare/v4.1.5...v4.1.6) (2022-10-29)
|
|
4
19
|
|
|
5
20
|
|
package/CONTRIBUTORS
CHANGED
|
@@ -50,6 +50,7 @@ Enson Choy <enson.choy@harmonicinc.com>
|
|
|
50
50
|
Esteban Dosztal <edosztal@gmail.com>
|
|
51
51
|
Fadomire <fadomire@gmail.com>
|
|
52
52
|
François Beaufort <fbeaufort@google.com>
|
|
53
|
+
Gerardo Meola <meola.gerardo@gmail.com>
|
|
53
54
|
Gil Gonen <gil.gonen@gmail.com>
|
|
54
55
|
Giorgio Gamberoni <giorgio.gamberoni@gmail.com>
|
|
55
56
|
Giuseppe Samela <giuseppe.samela@gmail.com>
|
package/dist/deps.js
CHANGED
|
@@ -68,7 +68,7 @@ goog.addDependency('../../../../lib/media/manifest_parser.js', ['shaka.media.Man
|
|
|
68
68
|
goog.addDependency('../../../../lib/media/media_source_engine.js', ['shaka.media.MediaSourceEngine'], ['goog.asserts', 'shaka.log', 'shaka.media.ContentWorkarounds', 'shaka.media.IClosedCaptionParser', 'shaka.media.SegmentReference', 'shaka.media.TimeRangesUtils', 'shaka.media.Transmuxer', 'shaka.text.TextEngine', 'shaka.util.Destroyer', 'shaka.util.Error', 'shaka.util.EventManager', 'shaka.util.Functional', 'shaka.util.IDestroyable', 'shaka.util.ManifestParserUtils', 'shaka.util.MimeUtils', 'shaka.util.Platform', 'shaka.util.PublicPromise'], {'lang': 'es8'});
|
|
69
69
|
goog.addDependency('../../../../lib/media/mp4_segment_index_parser.js', ['shaka.media.Mp4SegmentIndexParser'], ['goog.asserts', 'shaka.log', 'shaka.media.InitSegmentReference', 'shaka.media.SegmentReference', 'shaka.util.Error', 'shaka.util.Mp4Parser'], {'lang': 'es6'});
|
|
70
70
|
goog.addDependency('../../../../lib/media/play_rate_controller.js', ['shaka.media.PlayRateController'], ['goog.asserts', 'shaka.log', 'shaka.util.IReleasable', 'shaka.util.Timer'], {'lang': 'es6'});
|
|
71
|
-
goog.addDependency('../../../../lib/media/playhead.js', ['shaka.media.MediaSourcePlayhead', 'shaka.media.Playhead', 'shaka.media.SrcEqualsPlayhead'], ['goog.asserts', 'shaka.log', 'shaka.media.GapJumpingController', 'shaka.media.StallDetector', 'shaka.media.StallDetector.MediaElementImplementation', 'shaka.media.TimeRangesUtils', 'shaka.media.VideoWrapper', 'shaka.util.EventManager', 'shaka.util.IReleasable', 'shaka.util.MediaReadyState', 'shaka.util.Timer'], {'lang': '
|
|
71
|
+
goog.addDependency('../../../../lib/media/playhead.js', ['shaka.media.MediaSourcePlayhead', 'shaka.media.Playhead', 'shaka.media.SrcEqualsPlayhead'], ['goog.asserts', 'shaka.log', 'shaka.media.GapJumpingController', 'shaka.media.StallDetector', 'shaka.media.StallDetector.MediaElementImplementation', 'shaka.media.TimeRangesUtils', 'shaka.media.VideoWrapper', 'shaka.util.EventManager', 'shaka.util.IReleasable', 'shaka.util.MediaReadyState', 'shaka.util.Timer'], {'lang': 'es8'});
|
|
72
72
|
goog.addDependency('../../../../lib/media/playhead_observer.js', ['shaka.media.IPlayheadObserver', 'shaka.media.PlayheadObserverManager'], ['shaka.util.IReleasable', 'shaka.util.Timer'], {'lang': 'es6'});
|
|
73
73
|
goog.addDependency('../../../../lib/media/presentation_timeline.js', ['shaka.media.PresentationTimeline'], ['goog.asserts', 'shaka.log', 'shaka.media.SegmentReference'], {'lang': 'es6'});
|
|
74
74
|
goog.addDependency('../../../../lib/media/quality_observer.js', ['shaka.media.QualityObserver'], ['shaka.log', 'shaka.media.IPlayheadObserver', 'shaka.util.FakeEvent', 'shaka.util.FakeEventTarget'], {'lang': 'es6'});
|
|
@@ -216,7 +216,7 @@ goog.addDependency('../../../../ui/range_element.js', ['shaka.ui.RangeElement'],
|
|
|
216
216
|
goog.addDependency('../../../../ui/resolution_selection.js', ['shaka.ui.ResolutionSelection'], ['goog.asserts', 'shaka.ui.Controls', 'shaka.ui.Enums', 'shaka.ui.Locales', 'shaka.ui.Localization', 'shaka.ui.OverflowMenu', 'shaka.ui.SettingsMenu', 'shaka.ui.Utils', 'shaka.util.Dom', 'shaka.util.FakeEvent'], {'lang': 'es6'});
|
|
217
217
|
goog.addDependency('../../../../ui/rewind_button.js', ['shaka.ui.RewindButton'], ['shaka.ui.Controls', 'shaka.ui.Element', 'shaka.ui.Enums', 'shaka.ui.Locales', 'shaka.ui.Localization', 'shaka.util.Dom'], {'lang': 'es6'});
|
|
218
218
|
goog.addDependency('../../../../ui/seek_bar.js', ['shaka.ui.SeekBar'], ['shaka.ads.AdManager', 'shaka.ui.Constants', 'shaka.ui.Locales', 'shaka.ui.Localization', 'shaka.ui.RangeElement', 'shaka.ui.Utils', 'shaka.util.Dom', 'shaka.util.Timer'], {'lang': 'es6'});
|
|
219
|
-
goog.addDependency('../../../../ui/settings_menu.js', ['shaka.ui.SettingsMenu'], ['shaka.ui.Element', 'shaka.ui.Enums', 'shaka.ui.Utils', 'shaka.util.Dom', 'shaka.util.FakeEvent'], {'lang': 'es6'});
|
|
219
|
+
goog.addDependency('../../../../ui/settings_menu.js', ['shaka.ui.SettingsMenu'], ['shaka.ui.Element', 'shaka.ui.Enums', 'shaka.ui.Utils', 'shaka.util.Dom', 'shaka.util.FakeEvent', 'shaka.util.Iterables'], {'lang': 'es6'});
|
|
220
220
|
goog.addDependency('../../../../ui/skip_ad_button.js', ['shaka.ui.SkipAdButton'], ['goog.asserts', 'shaka.ads.AdManager', 'shaka.ui.Element', 'shaka.ui.Locales', 'shaka.ui.Localization', 'shaka.ui.Utils', 'shaka.util.Dom', 'shaka.util.Timer'], {'lang': 'es6'});
|
|
221
221
|
goog.addDependency('../../../../ui/small_play_button.js', ['shaka.ui.SmallPlayButton'], ['shaka.ui.Controls', 'shaka.ui.Enums', 'shaka.ui.Locales', 'shaka.ui.PlayButton'], {'lang': 'es6'});
|
|
222
222
|
goog.addDependency('../../../../ui/spacer.js', ['shaka.ui.Spacer'], ['shaka.ui.Controls', 'shaka.ui.Element', 'shaka.util.Dom'], {'lang': 'es6'});
|
package/dist/locales.js
CHANGED
|
@@ -721,45 +721,45 @@ shaka.ui.Locales.addTo = function(localization) {
|
|
|
721
721
|
* @const
|
|
722
722
|
*/
|
|
723
723
|
shaka.ui.Locales.Ids = {
|
|
724
|
-
|
|
725
|
-
EXIT_FULL_SCREEN: 'EXIT_FULL_SCREEN',
|
|
726
|
-
PAUSE: 'PAUSE',
|
|
727
|
-
ENTER_PICTURE_IN_PICTURE: 'ENTER_PICTURE_IN_PICTURE',
|
|
724
|
+
ENTER_LOOP_MODE: 'ENTER_LOOP_MODE',
|
|
728
725
|
LANGUAGE: 'LANGUAGE',
|
|
726
|
+
LIVE: 'LIVE',
|
|
729
727
|
NOT_APPLICABLE: 'NOT_APPLICABLE',
|
|
730
|
-
AD_DURATION: 'AD_DURATION',
|
|
731
|
-
BACK: 'BACK',
|
|
732
728
|
AD_PROGRESS: 'AD_PROGRESS',
|
|
733
|
-
|
|
734
|
-
|
|
735
|
-
STATISTICS: 'STATISTICS',
|
|
736
|
-
OFF: 'OFF',
|
|
737
|
-
PICTURE_IN_PICTURE: 'PICTURE_IN_PICTURE',
|
|
738
|
-
VOLUME: 'VOLUME',
|
|
729
|
+
UNMUTE: 'UNMUTE',
|
|
730
|
+
CAST: 'CAST',
|
|
739
731
|
PLAYBACK_RATE: 'PLAYBACK_RATE',
|
|
732
|
+
UNRECOGNIZED_LANGUAGE: 'UNRECOGNIZED_LANGUAGE',
|
|
740
733
|
SUBTITLE_FORCED: 'SUBTITLE_FORCED',
|
|
741
|
-
|
|
742
|
-
|
|
743
|
-
SKIP_TO_LIVE: 'SKIP_TO_LIVE',
|
|
744
|
-
AIRPLAY: 'AIRPLAY',
|
|
745
|
-
AD_TIME: 'AD_TIME',
|
|
746
|
-
REPLAY: 'REPLAY',
|
|
734
|
+
OFF: 'OFF',
|
|
735
|
+
EXIT_LOOP_MODE: 'EXIT_LOOP_MODE',
|
|
747
736
|
CAPTIONS: 'CAPTIONS',
|
|
748
|
-
|
|
737
|
+
SKIP_TO_LIVE: 'SKIP_TO_LIVE',
|
|
738
|
+
FULL_SCREEN: 'FULL_SCREEN',
|
|
749
739
|
QUALITY: 'QUALITY',
|
|
750
|
-
|
|
751
|
-
|
|
740
|
+
AIRPLAY: 'AIRPLAY',
|
|
741
|
+
BACK: 'BACK',
|
|
742
|
+
MULTIPLE_LANGUAGES: 'MULTIPLE_LANGUAGES',
|
|
743
|
+
PICTURE_IN_PICTURE: 'PICTURE_IN_PICTURE',
|
|
752
744
|
LOOP: 'LOOP',
|
|
753
|
-
|
|
745
|
+
ON: 'ON',
|
|
746
|
+
SKIP_AD: 'SKIP_AD',
|
|
747
|
+
MUTE: 'MUTE',
|
|
754
748
|
PLAY: 'PLAY',
|
|
755
|
-
|
|
749
|
+
AD_DURATION: 'AD_DURATION',
|
|
750
|
+
PAUSE: 'PAUSE',
|
|
751
|
+
AUTO_QUALITY: 'AUTO_QUALITY',
|
|
756
752
|
UNDETERMINED_LANGUAGE: 'UNDETERMINED_LANGUAGE',
|
|
753
|
+
STATISTICS: 'STATISTICS',
|
|
754
|
+
FAST_FORWARD: 'FAST_FORWARD',
|
|
755
|
+
EXIT_PICTURE_IN_PICTURE: 'EXIT_PICTURE_IN_PICTURE',
|
|
756
|
+
REPLAY: 'REPLAY',
|
|
757
|
+
VOLUME: 'VOLUME',
|
|
757
758
|
MORE_SETTINGS: 'MORE_SETTINGS',
|
|
758
|
-
|
|
759
|
+
SEEK: 'SEEK',
|
|
760
|
+
AD_TIME: 'AD_TIME',
|
|
761
|
+
RESOLUTION: 'RESOLUTION',
|
|
762
|
+
EXIT_FULL_SCREEN: 'EXIT_FULL_SCREEN',
|
|
763
|
+
ENTER_PICTURE_IN_PICTURE: 'ENTER_PICTURE_IN_PICTURE',
|
|
759
764
|
REWIND: 'REWIND',
|
|
760
|
-
ENTER_LOOP_MODE: 'ENTER_LOOP_MODE',
|
|
761
|
-
MUTE: 'MUTE',
|
|
762
|
-
AUTO_QUALITY: 'AUTO_QUALITY',
|
|
763
|
-
LIVE: 'LIVE',
|
|
764
|
-
FULL_SCREEN: 'FULL_SCREEN',
|
|
765
765
|
};
|
|
@@ -294,7 +294,7 @@ declare namespace shaka {
|
|
|
294
294
|
* If the player has loaded content, and streaming seen an error, but the
|
|
295
295
|
* could not resume streaming, this will return <code>false</code>.
|
|
296
296
|
*/
|
|
297
|
-
retryStreaming ( ) : boolean ;
|
|
297
|
+
retryStreaming (retryDelaySeconds ? : number ) : boolean ;
|
|
298
298
|
/**
|
|
299
299
|
* Get the range of time (in seconds) that seeking is allowed. If the player
|
|
300
300
|
* has not loaded content, this will return a range from 0 to 0.
|
|
@@ -3183,6 +3183,10 @@ declare namespace muxjs.mp4 {
|
|
|
3183
3183
|
*/
|
|
3184
3184
|
on (type : string , listener : Function | null ) : any ;
|
|
3185
3185
|
push (data : Uint8Array ) : any ;
|
|
3186
|
+
/**
|
|
3187
|
+
* Reset captions.
|
|
3188
|
+
*/
|
|
3189
|
+
resetCaptions ( ) : any ;
|
|
3186
3190
|
setBaseMediaDecodeTime (time : number ) : any ;
|
|
3187
3191
|
}
|
|
3188
3192
|
}
|
|
@@ -294,7 +294,7 @@ declare namespace shaka {
|
|
|
294
294
|
* If the player has loaded content, and streaming seen an error, but the
|
|
295
295
|
* could not resume streaming, this will return <code>false</code>.
|
|
296
296
|
*/
|
|
297
|
-
retryStreaming ( ) : boolean ;
|
|
297
|
+
retryStreaming (retryDelaySeconds ? : number ) : boolean ;
|
|
298
298
|
/**
|
|
299
299
|
* Get the range of time (in seconds) that seeking is allowed. If the player
|
|
300
300
|
* has not loaded content, this will return a range from 0 to 0.
|
|
@@ -3183,6 +3183,10 @@ declare namespace muxjs.mp4 {
|
|
|
3183
3183
|
*/
|
|
3184
3184
|
on (type : string , listener : Function | null ) : any ;
|
|
3185
3185
|
push (data : Uint8Array ) : any ;
|
|
3186
|
+
/**
|
|
3187
|
+
* Reset captions.
|
|
3188
|
+
*/
|
|
3189
|
+
resetCaptions ( ) : any ;
|
|
3186
3190
|
setBaseMediaDecodeTime (time : number ) : any ;
|
|
3187
3191
|
}
|
|
3188
3192
|
}
|
|
@@ -2759,9 +2759,10 @@ shaka.Player = class extends shaka.util.FakeEventTarget {
|
|
|
2759
2759
|
* <p>
|
|
2760
2760
|
* If the player has loaded content, and streaming seen an error, but the
|
|
2761
2761
|
* could not resume streaming, this will return <code>false</code>.
|
|
2762
|
+
* @param {number=} retryDelaySeconds
|
|
2762
2763
|
* @return {boolean}
|
|
2763
2764
|
*/
|
|
2764
|
-
retryStreaming() {}
|
|
2765
|
+
retryStreaming(retryDelaySeconds) {}
|
|
2765
2766
|
/**
|
|
2766
2767
|
* Get the manifest that the player has loaded. If the player has not loaded
|
|
2767
2768
|
* any content, this will return <code>null</code>.
|