shaka-player 3.3.4 → 4.0.0
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/.github/workflows/build-and-test.yaml +0 -1
- package/.github/workflows/demo-version-index.yaml +8 -0
- package/.github/workflows/release-please.yaml +23 -2
- package/.github/workflows/selenium-lab-tests.yaml +0 -1
- package/.github/workflows/sync-labels.yaml +33 -0
- package/.github/workflows/update-issues.yaml +29 -0
- package/.github/workflows/validate-pr-title.yaml +35 -0
- package/AUTHORS +1 -0
- package/CHANGELOG.md +198 -32
- package/CONTRIBUTORS +1 -0
- package/README.md +10 -7
- package/app-engine/demo-version-index/README.md +3 -3
- package/app-engine/demo-version-index/app.yaml +27 -1
- package/app-engine/demo-version-index/generate.py +164 -0
- package/app-engine/demo-version-index/main.py +4 -155
- package/app-engine/demo-version-index/requirements.txt +0 -1
- package/build/README.md +2 -2
- package/build/compiler.py +1 -1
- package/build/generateTsDefs.py +0 -2
- package/build/shaka-lab.yaml +0 -2
- package/build/test.py +7 -1
- package/build/types/core +0 -1
- package/build/types/polyfill +0 -3
- package/demo/common/asset.js +17 -1
- package/demo/common/assets.js +29 -0
- package/demo/common/message_ids.js +6 -3
- package/demo/config.js +10 -11
- package/demo/custom.js +39 -0
- package/demo/demo_utils.js +0 -1
- package/demo/locales/en.json +6 -3
- package/demo/locales/source.json +22 -10
- package/demo/main.js +9 -6
- package/demo/search.js +2 -1
- package/dist/controls.css +1 -1
- package/dist/demo.compiled.debug.js +71 -64
- package/dist/demo.compiled.debug.map +3 -3
- package/dist/demo.compiled.js +71 -64
- package/dist/demo.compiled.map +3 -3
- package/dist/demo.css +1 -1
- package/dist/demo.css.map +1 -1
- package/dist/deps.js +16 -20
- package/dist/locales.js +31 -29
- package/dist/receiver.compiled.debug.js +32 -28
- package/dist/receiver.compiled.debug.map +3 -3
- package/dist/receiver.compiled.js +32 -28
- package/dist/receiver.compiled.map +3 -3
- package/dist/shaka-player.compiled.d.ts +78 -83
- package/dist/shaka-player.compiled.debug.d.ts +78 -83
- package/dist/shaka-player.compiled.debug.externs.js +126 -126
- package/dist/shaka-player.compiled.debug.js +426 -483
- package/dist/shaka-player.compiled.debug.map +4 -4
- package/dist/shaka-player.compiled.externs.js +126 -126
- package/dist/shaka-player.compiled.js +838 -856
- package/dist/shaka-player.compiled.map +4 -4
- package/dist/shaka-player.ui.d.ts +80 -83
- package/dist/shaka-player.ui.debug.d.ts +80 -83
- package/dist/shaka-player.ui.debug.externs.js +134 -126
- package/dist/shaka-player.ui.debug.js +488 -543
- package/dist/shaka-player.ui.debug.map +4 -4
- package/dist/shaka-player.ui.externs.js +134 -126
- package/dist/shaka-player.ui.js +980 -994
- package/dist/shaka-player.ui.map +4 -4
- package/docs/tutorials/config.md +0 -2
- package/docs/tutorials/drm-config.md +5 -0
- package/docs/tutorials/fairplay.md +7 -22
- package/docs/tutorials/faq.md +0 -11
- package/docs/tutorials/index.json +2 -8
- package/docs/tutorials/plugins.md +1 -3
- package/docs/tutorials/upgrade.md +83 -11
- package/externs/polyfill.js +15 -0
- package/externs/shaka/manifest.js +5 -1
- package/externs/shaka/net.js +12 -0
- package/externs/shaka/offline.js +5 -1
- package/externs/shaka/player.js +39 -32
- package/externs/shaka/text.js +12 -12
- package/externs/sourcebuffer.js +15 -0
- package/lib/ads/client_side_ad.js +13 -2
- package/lib/ads/client_side_ad_manager.js +22 -4
- package/lib/cast/cast_utils.js +0 -1
- package/lib/dash/content_protection.js +85 -5
- package/lib/dash/dash_parser.js +1 -1
- package/lib/hls/hls_parser.js +378 -743
- package/lib/hls/manifest_text_parser.js +2 -3
- package/lib/media/drm_engine.js +102 -53
- package/lib/media/gap_jumping_controller.js +10 -45
- package/lib/media/media_source_engine.js +87 -15
- package/lib/media/playhead.js +2 -5
- package/lib/media/presentation_timeline.js +1 -2
- package/lib/media/segment_index.js +13 -46
- package/lib/media/segment_reference.js +47 -1
- package/lib/media/streaming_engine.js +29 -11
- package/lib/media/time_ranges_utils.js +4 -9
- package/lib/net/networking_engine.js +3 -0
- package/lib/offline/indexeddb/v1_storage_cell.js +1 -0
- package/lib/offline/indexeddb/v2_storage_cell.js +1 -0
- package/lib/offline/manifest_converter.js +1 -0
- package/lib/offline/storage.js +100 -132
- package/lib/player.js +17 -201
- package/lib/polyfill/media_capabilities.js +12 -6
- package/lib/polyfill/mediasource.js +0 -28
- package/lib/polyfill/patchedmediakeys_nop.js +2 -0
- package/lib/polyfill/patchedmediakeys_webkit.js +2 -0
- package/lib/text/cue.js +0 -6
- package/lib/text/lrc_text_parser.js +8 -0
- package/lib/text/mp4_ttml_parser.js +8 -0
- package/lib/text/mp4_vtt_parser.js +8 -0
- package/lib/text/sbv_text_parser.js +8 -0
- package/lib/text/simple_text_displayer.js +1 -7
- package/lib/text/srt_text_parser.js +8 -0
- package/lib/text/ssa_text_parser.js +8 -0
- package/lib/text/text_engine.js +19 -3
- package/lib/text/ttml_text_parser.js +8 -0
- package/lib/text/ui_text_displayer.js +1 -7
- package/lib/text/vtt_text_parser.js +24 -2
- package/lib/text/web_vtt_generator.js +1 -7
- package/lib/util/error.js +9 -13
- package/lib/util/fairplay_utils.js +109 -0
- package/lib/util/functional.js +0 -42
- package/lib/util/mime_utils.js +2 -0
- package/lib/util/platform.js +45 -0
- package/lib/util/player_configuration.js +12 -6
- package/lib/util/pssh.js +23 -4
- package/lib/util/stream_utils.js +92 -22
- package/lib/util/uint8array_utils.js +0 -16
- package/lib/util/xml_utils.js +1 -1
- package/package.json +1 -1
- package/roadmap.md +19 -19
- package/shaka-player.uncompiled.js +0 -3
- package/test/cast/cast_utils_unit.js +1 -0
- package/test/dash/dash_parser_content_protection_unit.js +44 -0
- package/test/dash/dash_parser_manifest_unit.js +0 -24
- package/test/dash/dash_parser_segment_template_unit.js +3 -4
- package/test/demo/demo_unit.js +2 -1
- package/test/hls/hls_live_unit.js +99 -220
- package/test/hls/hls_parser_unit.js +515 -432
- package/test/media/drm_engine_unit.js +86 -120
- package/test/media/media_source_engine_integration.js +26 -3
- package/test/media/media_source_engine_unit.js +7 -6
- package/test/media/playhead_unit.js +27 -191
- package/test/media/segment_index_unit.js +15 -25
- package/test/media/streaming_engine_integration.js +4 -39
- package/test/media/streaming_engine_unit.js +3 -2
- package/test/media/time_ranges_utils_unit.js +0 -5
- package/test/offline/manifest_convert_unit.js +34 -4
- package/test/offline/offline_manifest_parser_unit.js +1 -0
- package/test/offline/storage_integration.js +5 -4
- package/test/player_external.js +0 -6
- package/test/player_integration.js +16 -0
- package/test/player_unit.js +26 -0
- package/test/test/util/fake_media_source_engine.js +11 -4
- package/test/test/util/manifest_generator.js +3 -1
- package/test/test/util/manifest_parser_util.js +4 -1
- package/test/test/util/offline_utils.js +1 -0
- package/test/test/util/streaming_engine_util.js +1 -0
- package/test/test/util/test_scheme.js +24 -1
- package/test/test/util/util.js +4 -4
- package/test/text/cue_integration.js +2 -2
- package/test/text/lrc_text_parser_unit.js +6 -7
- package/test/text/mp4_ttml_parser_unit.js +6 -4
- package/test/text/mp4_vtt_parser_unit.js +6 -5
- package/test/text/sbv_text_parser_unit.js +5 -6
- package/test/text/srt_text_parser_unit.js +5 -6
- package/test/text/ssa_text_parser_unit.js +17 -29
- package/test/text/text_engine_unit.js +45 -5
- package/test/text/ttml_text_parser_unit.js +77 -77
- package/test/text/vtt_text_parser_unit.js +55 -57
- package/test/ui/ui_integration.js +0 -16
- package/test/ui/ui_unit.js +27 -0
- package/test/util/cmcd_manager_unit.js +3 -0
- package/test/util/stream_utils_unit.js +23 -7
- package/ui/controls.js +65 -40
- package/ui/fullscreen_button.js +26 -6
- package/ui/less/containers.less +3 -3
- package/ui/locales/en.json +1 -0
- package/ui/locales/source.json +5 -0
- package/ui/resolution_selection.js +31 -33
- package/ui/ui.js +0 -17
- package/docs/tutorials/upgrade-v2-5.md +0 -441
- package/docs/tutorials/upgrade-v3.md +0 -38
- package/lib/polyfill/mathround.js +0 -49
- package/lib/polyfill/patchedmediakeys_apple.js +0 -744
- package/lib/polyfill/patchedmediakeys_ms.js +0 -698
- package/lib/util/mutex.js +0 -52
- package/test/util/functional_unit.js +0 -82
|
@@ -186,10 +186,6 @@ shaka.text.Cue.prototype.isContainer;
|
|
|
186
186
|
* @override
|
|
187
187
|
*/
|
|
188
188
|
shaka.text.Cue.prototype.lineBreak;
|
|
189
|
-
/**
|
|
190
|
-
* @override
|
|
191
|
-
*/
|
|
192
|
-
shaka.text.Cue.prototype.spacer;
|
|
193
189
|
/**
|
|
194
190
|
* @override
|
|
195
191
|
*/
|
|
@@ -587,14 +583,12 @@ shaka.util.Error.Code = {
|
|
|
587
583
|
'HLS_INVALID_PLAYLIST_HIERARCHY': 4017,
|
|
588
584
|
'DASH_DUPLICATE_REPRESENTATION_ID': 4018,
|
|
589
585
|
'HLS_MULTIPLE_MEDIA_INIT_SECTIONS_FOUND': 4020,
|
|
590
|
-
'HLS_MASTER_PLAYLIST_NOT_PROVIDED': 4022,
|
|
591
586
|
'HLS_REQUIRED_ATTRIBUTE_MISSING': 4023,
|
|
592
587
|
'HLS_REQUIRED_TAG_MISSING': 4024,
|
|
593
588
|
'HLS_COULD_NOT_GUESS_CODECS': 4025,
|
|
594
589
|
'HLS_KEYFORMATS_NOT_SUPPORTED': 4026,
|
|
595
590
|
'DASH_UNSUPPORTED_XLINK_ACTUATE': 4027,
|
|
596
591
|
'DASH_XLINK_DEPTH_LIMIT': 4028,
|
|
597
|
-
'HLS_COULD_NOT_PARSE_SEGMENT_START_TIME': 4030,
|
|
598
592
|
'CONTENT_UNSUPPORTED_BY_BROWSER': 4032,
|
|
599
593
|
'CANNOT_ADD_EXTERNAL_TEXT_TO_LIVE_STREAM': 4033,
|
|
600
594
|
'HLS_AES_128_ENCRYPTION_NOT_SUPPORTED': 4034,
|
|
@@ -603,6 +597,7 @@ shaka.util.Error.Code = {
|
|
|
603
597
|
'PERIOD_FLATTENING_FAILED': 4037,
|
|
604
598
|
'INCONSISTENT_DRM_ACROSS_PERIODS': 4038,
|
|
605
599
|
'HLS_VARIABLE_NOT_FOUND': 4039,
|
|
600
|
+
'HLS_MSE_ENCRYPTED_MP2T_NOT_SUPPORTED': 4040,
|
|
606
601
|
'STREAMING_ENGINE_STARTUP_INVALID_STATE': 5006,
|
|
607
602
|
'NO_RECOGNIZED_KEY_SYSTEMS': 6000,
|
|
608
603
|
'REQUESTED_KEY_SYSTEM_CONFIG_UNAVAILABLE': 6001,
|
|
@@ -704,14 +699,6 @@ shaka.util.StringUtils = class {
|
|
|
704
699
|
* @summary A set of Uint8Array utility functions.
|
|
705
700
|
*/
|
|
706
701
|
shaka.util.Uint8ArrayUtils = class {
|
|
707
|
-
/**
|
|
708
|
-
* Compare two Uint8Arrays for equality.
|
|
709
|
-
* @param {Uint8Array} arr1
|
|
710
|
-
* @param {Uint8Array} arr2
|
|
711
|
-
* @return {boolean}
|
|
712
|
-
* @deprecated
|
|
713
|
-
*/
|
|
714
|
-
static equal(arr1, arr2) {}
|
|
715
702
|
/**
|
|
716
703
|
* Convert a buffer to a base64 string. The output will be standard
|
|
717
704
|
* alphabet as opposed to base64url safe alphabet.
|
|
@@ -754,6 +741,19 @@ shaka.util.Uint8ArrayUtils = class {
|
|
|
754
741
|
*/
|
|
755
742
|
static concat(...varArgs) {}
|
|
756
743
|
};
|
|
744
|
+
/**
|
|
745
|
+
* @summary A set of utility functions for dealing with MIME types.
|
|
746
|
+
*/
|
|
747
|
+
shaka.util.MimeUtils = class {
|
|
748
|
+
/**
|
|
749
|
+
* Takes a MIME type and optional codecs string and produces the full MIME
|
|
750
|
+
* type.
|
|
751
|
+
* @param {string} mimeType
|
|
752
|
+
* @param {string=} codecs
|
|
753
|
+
* @return {string}
|
|
754
|
+
*/
|
|
755
|
+
static getFullType(mimeType, codecs) {}
|
|
756
|
+
};
|
|
757
757
|
/**
|
|
758
758
|
* @summary Manages text parsers and cues.
|
|
759
759
|
* @implements {shaka.util.IDestroyable}
|
|
@@ -1414,35 +1414,6 @@ shaka.util.EventManager = class {
|
|
|
1414
1414
|
* @typedef {function(!Event)}
|
|
1415
1415
|
*/
|
|
1416
1416
|
shaka.util.EventManager.ListenerType;
|
|
1417
|
-
/**
|
|
1418
|
-
* @summary A set of FairPlay utility functions.
|
|
1419
|
-
*/
|
|
1420
|
-
shaka.util.FairPlayUtils = class {
|
|
1421
|
-
/**
|
|
1422
|
-
* Using the default method, extract a content ID from the init data. This is
|
|
1423
|
-
* based on the FairPlay example documentation.
|
|
1424
|
-
* @param {!BufferSource} initData
|
|
1425
|
-
* @return {string}
|
|
1426
|
-
*/
|
|
1427
|
-
static defaultGetContentId(initData) {}
|
|
1428
|
-
/**
|
|
1429
|
-
* Transforms the init data buffer using the given data. The format is:
|
|
1430
|
-
* <pre>
|
|
1431
|
-
* [4 bytes] initDataSize
|
|
1432
|
-
* [initDataSize bytes] initData
|
|
1433
|
-
* [4 bytes] contentIdSize
|
|
1434
|
-
* [contentIdSize bytes] contentId
|
|
1435
|
-
* [4 bytes] certSize
|
|
1436
|
-
* [certSize bytes] cert
|
|
1437
|
-
* </pre>
|
|
1438
|
-
* @param {!BufferSource} initData
|
|
1439
|
-
* @param {!BufferSource|string} contentId
|
|
1440
|
-
* @param {?BufferSource} cert The server certificate; this will throw if not
|
|
1441
|
-
* provided.
|
|
1442
|
-
* @return {!Uint8Array}
|
|
1443
|
-
*/
|
|
1444
|
-
static initDataTransform(initData, contentId, cert) {}
|
|
1445
|
-
};
|
|
1446
1417
|
/**
|
|
1447
1418
|
* @summary An interface to register manifest parsers.
|
|
1448
1419
|
*/
|
|
@@ -1718,8 +1689,14 @@ shaka.media.SegmentReference = class {
|
|
|
1718
1689
|
* The explicit duration of an individual tile within the tiles grid.
|
|
1719
1690
|
* If not provided, the duration should be automatically calculated based on
|
|
1720
1691
|
* the duration of the reference.
|
|
1692
|
+
* @param {?number=} syncTime
|
|
1693
|
+
* A time value, expressed in the same scale as the start and end time, which
|
|
1694
|
+
* is used to synchronize between streams.
|
|
1695
|
+
* @param {shaka.media.SegmentReference.Status=} status
|
|
1696
|
+
* The segment status is used to indicate that a segment does not exist or is
|
|
1697
|
+
* not available.
|
|
1721
1698
|
*/
|
|
1722
|
-
constructor(startTime, endTime, uris, startByte, endByte, initSegmentReference, timestampOffset, appendWindowStart, appendWindowEnd, partialReferences, tilesLayout, tileDuration) {}
|
|
1699
|
+
constructor(startTime, endTime, uris, startByte, endByte, initSegmentReference, timestampOffset, appendWindowStart, appendWindowEnd, partialReferences, tilesLayout, tileDuration, syncTime, status) {}
|
|
1723
1700
|
/**
|
|
1724
1701
|
* Creates and returns the URIs of the resource containing the segment.
|
|
1725
1702
|
* @return {!Array.<string>}
|
|
@@ -1759,6 +1736,25 @@ shaka.media.SegmentReference = class {
|
|
|
1759
1736
|
* @return {?number}
|
|
1760
1737
|
*/
|
|
1761
1738
|
getTileDuration() {}
|
|
1739
|
+
/**
|
|
1740
|
+
* Returns the segment's status.
|
|
1741
|
+
* @return {shaka.media.SegmentReference.Status}
|
|
1742
|
+
*/
|
|
1743
|
+
getStatus() {}
|
|
1744
|
+
/**
|
|
1745
|
+
* Mark the reference as unavailable.
|
|
1746
|
+
*/
|
|
1747
|
+
markAsUnavailable() {}
|
|
1748
|
+
};
|
|
1749
|
+
/**
|
|
1750
|
+
* Rather than using booleans to communicate what the state of the reference,
|
|
1751
|
+
* we have this enum.
|
|
1752
|
+
* @enum {number}
|
|
1753
|
+
*/
|
|
1754
|
+
shaka.media.SegmentReference.Status = {
|
|
1755
|
+
AVAILABLE: 0,
|
|
1756
|
+
UNAVAILABLE: 1,
|
|
1757
|
+
MISSING: 2
|
|
1762
1758
|
};
|
|
1763
1759
|
/**
|
|
1764
1760
|
* PresentationTimeline.
|
|
@@ -1934,13 +1930,6 @@ shaka.media.SegmentIndex = class {
|
|
|
1934
1930
|
* (ascending) and second by their end times (ascending).
|
|
1935
1931
|
*/
|
|
1936
1932
|
constructor(references) {}
|
|
1937
|
-
/**
|
|
1938
|
-
* SegmentIndex used to be an IDestroyable. Now it is an IReleasable.
|
|
1939
|
-
* This method is provided for backward compatibility.
|
|
1940
|
-
* @deprecated
|
|
1941
|
-
* @return {!Promise}
|
|
1942
|
-
*/
|
|
1943
|
-
destroy() {}
|
|
1944
1933
|
/**
|
|
1945
1934
|
* @override
|
|
1946
1935
|
*/
|
|
@@ -1975,20 +1964,6 @@ shaka.media.SegmentIndex = class {
|
|
|
1975
1964
|
* times.
|
|
1976
1965
|
*/
|
|
1977
1966
|
offset(offset) {}
|
|
1978
|
-
/**
|
|
1979
|
-
* Merges the given SegmentReferences. Supports extending the original
|
|
1980
|
-
* references only. Will replace old references with equivalent new ones, and
|
|
1981
|
-
* keep any unique old ones.
|
|
1982
|
-
* Used, for example, by the DASH and HLS parser, where manifests may not list
|
|
1983
|
-
* all available references, so we must keep available references in memory to
|
|
1984
|
-
* fill the availability window.
|
|
1985
|
-
* @param {!Array.<!shaka.media.SegmentReference>} references The list of
|
|
1986
|
-
* SegmentReferences, which must be sorted first by their start times
|
|
1987
|
-
* (ascending) and second by their end times (ascending).
|
|
1988
|
-
* @deprecated Not used directly by our own parsers, so will become private in
|
|
1989
|
-
* v4. Use mergeAndEvict() instead.
|
|
1990
|
-
*/
|
|
1991
|
-
merge(references) {}
|
|
1992
1967
|
/**
|
|
1993
1968
|
* Merges the given SegmentReferences and evicts the ones that end before the
|
|
1994
1969
|
* given time. Supports extending the original references only.
|
|
@@ -2057,13 +2032,6 @@ shaka.media.SegmentIterator = class {
|
|
|
2057
2032
|
* @param {number} partialSegmentIndex
|
|
2058
2033
|
*/
|
|
2059
2034
|
constructor(segmentIndex, index, partialSegmentIndex) {}
|
|
2060
|
-
/**
|
|
2061
|
-
* Move the iterator to a given timestamp in the underlying SegmentIndex.
|
|
2062
|
-
* @param {number} time
|
|
2063
|
-
* @return {shaka.media.SegmentReference}
|
|
2064
|
-
* @deprecated Use SegmentIndex.getIteratorForTime instead
|
|
2065
|
-
*/
|
|
2066
|
-
seek(time) {}
|
|
2067
2035
|
/**
|
|
2068
2036
|
* @return {shaka.media.SegmentReference}
|
|
2069
2037
|
*/
|
|
@@ -2263,6 +2231,10 @@ shaka.util.ConfigUtils = class {
|
|
|
2263
2231
|
* @final
|
|
2264
2232
|
*/
|
|
2265
2233
|
shaka.util.PlayerConfiguration = class {
|
|
2234
|
+
/**
|
|
2235
|
+
* @return {shaka.extern.PlayerConfiguration}
|
|
2236
|
+
*/
|
|
2237
|
+
static createDefault() {}
|
|
2266
2238
|
/**
|
|
2267
2239
|
* Merges the given configuration changes into the given destination. This
|
|
2268
2240
|
* uses the default Player configurations as the template.
|
|
@@ -2725,21 +2697,6 @@ shaka.Player = class extends shaka.util.FakeEventTarget {
|
|
|
2725
2697
|
* @return {shaka.extern.Stats}
|
|
2726
2698
|
*/
|
|
2727
2699
|
getStats() {}
|
|
2728
|
-
/**
|
|
2729
|
-
* Adds the given text track to the loaded manifest. <code>load()</code> must
|
|
2730
|
-
* resolve before calling. The presentation must have a duration.
|
|
2731
|
-
* This returns the created track, which can immediately be selected by the
|
|
2732
|
-
* application. The track will not be automatically selected.
|
|
2733
|
-
* @param {string} uri
|
|
2734
|
-
* @param {string} language
|
|
2735
|
-
* @param {string} kind
|
|
2736
|
-
* @param {string=} mimeType
|
|
2737
|
-
* @param {string=} codec
|
|
2738
|
-
* @param {string=} label
|
|
2739
|
-
* @param {boolean=} forced
|
|
2740
|
-
* @return {shaka.extern.Track}
|
|
2741
|
-
*/
|
|
2742
|
-
addTextTrack(uri, language, kind, mimeType, codec, label, forced) {}
|
|
2743
2700
|
/**
|
|
2744
2701
|
* Adds the given text track to the loaded manifest. <code>load()</code> must
|
|
2745
2702
|
* resolve before calling. The presentation must have a duration.
|
|
@@ -2837,8 +2794,9 @@ shaka.ads.ClientSideAd = class {
|
|
|
2837
2794
|
/**
|
|
2838
2795
|
* @param {!google.ima.Ad} imaAd
|
|
2839
2796
|
* @param {!google.ima.AdsManager} imaAdManager
|
|
2797
|
+
* @param {HTMLMediaElement} video
|
|
2840
2798
|
*/
|
|
2841
|
-
constructor(imaAd, imaAdManager) {}
|
|
2799
|
+
constructor(imaAd, imaAdManager, video) {}
|
|
2842
2800
|
/**
|
|
2843
2801
|
* @override
|
|
2844
2802
|
*/
|
|
@@ -3615,12 +3573,6 @@ shaka.offline.Storage = class {
|
|
|
3615
3573
|
* AbortableOperation.
|
|
3616
3574
|
*/
|
|
3617
3575
|
store(uri, appMetadata, mimeType) {}
|
|
3618
|
-
/**
|
|
3619
|
-
* Returns true if an asset is currently downloading.
|
|
3620
|
-
* @return {boolean}
|
|
3621
|
-
* @deprecated
|
|
3622
|
-
*/
|
|
3623
|
-
getStoreInProgress() {}
|
|
3624
3576
|
/**
|
|
3625
3577
|
* Removes the given stored content. This will also attempt to release the
|
|
3626
3578
|
* licenses, if any.
|
|
@@ -3708,16 +3660,6 @@ shaka.polyfill.Fullscreen = class {
|
|
|
3708
3660
|
*/
|
|
3709
3661
|
static install() {}
|
|
3710
3662
|
};
|
|
3711
|
-
/**
|
|
3712
|
-
* @summary A polyfill to patch math round bug on some browsers.
|
|
3713
|
-
* @see https://stackoverflow.com/q/12830742
|
|
3714
|
-
*/
|
|
3715
|
-
shaka.polyfill.MathRound = class {
|
|
3716
|
-
/**
|
|
3717
|
-
* Install the polyfill if needed.
|
|
3718
|
-
*/
|
|
3719
|
-
static install() {}
|
|
3720
|
-
};
|
|
3721
3663
|
/**
|
|
3722
3664
|
* @summary A polyfill to provide navigator.mediaCapabilities on all browsers.
|
|
3723
3665
|
* This is necessary for Tizen 3, Xbox One and possibly others we have yet to
|
|
@@ -3757,28 +3699,6 @@ shaka.polyfill.Orientation = class {
|
|
|
3757
3699
|
*/
|
|
3758
3700
|
static install() {}
|
|
3759
3701
|
};
|
|
3760
|
-
/**
|
|
3761
|
-
* @summary A polyfill to implement modern, standardized EME on top of Apple's
|
|
3762
|
-
* prefixed EME in Safari.
|
|
3763
|
-
*/
|
|
3764
|
-
shaka.polyfill.PatchedMediaKeysApple = class {
|
|
3765
|
-
/**
|
|
3766
|
-
* Installs the polyfill if needed.
|
|
3767
|
-
*/
|
|
3768
|
-
static install() {}
|
|
3769
|
-
};
|
|
3770
|
-
/**
|
|
3771
|
-
* @summary A polyfill to implement
|
|
3772
|
-
* {@link https://bit.ly/EmeMar15 EME draft 12 March 2015}
|
|
3773
|
-
* on top of ms-prefixed
|
|
3774
|
-
* {@link https://www.w3.org/TR/2014/WD-encrypted-media-20140218/ EME v20140218}
|
|
3775
|
-
*/
|
|
3776
|
-
shaka.polyfill.PatchedMediaKeysMs = class {
|
|
3777
|
-
/**
|
|
3778
|
-
* Installs the polyfill if needed.
|
|
3779
|
-
*/
|
|
3780
|
-
static install() {}
|
|
3781
|
-
};
|
|
3782
3702
|
/**
|
|
3783
3703
|
* @summary A polyfill to stub out
|
|
3784
3704
|
* {@link https://bit.ly/EmeMar15 EME draft 12 March 2015} on browsers without
|
|
@@ -3880,6 +3800,10 @@ shaka.text.LrcTextParser = class {
|
|
|
3880
3800
|
* @override
|
|
3881
3801
|
*/
|
|
3882
3802
|
parseInit(data) {}
|
|
3803
|
+
/**
|
|
3804
|
+
* @override
|
|
3805
|
+
*/
|
|
3806
|
+
setSequenceMode(sequenceMode) {}
|
|
3883
3807
|
/**
|
|
3884
3808
|
* @override
|
|
3885
3809
|
*/
|
|
@@ -3893,6 +3817,10 @@ shaka.text.TtmlTextParser = class {
|
|
|
3893
3817
|
* @override
|
|
3894
3818
|
*/
|
|
3895
3819
|
parseInit(data) {}
|
|
3820
|
+
/**
|
|
3821
|
+
* @override
|
|
3822
|
+
*/
|
|
3823
|
+
setSequenceMode(sequenceMode) {}
|
|
3896
3824
|
/**
|
|
3897
3825
|
* @override
|
|
3898
3826
|
*/
|
|
@@ -3908,6 +3836,10 @@ shaka.text.Mp4TtmlParser = class {
|
|
|
3908
3836
|
* @override
|
|
3909
3837
|
*/
|
|
3910
3838
|
parseInit(data) {}
|
|
3839
|
+
/**
|
|
3840
|
+
* @override
|
|
3841
|
+
*/
|
|
3842
|
+
setSequenceMode(sequenceMode) {}
|
|
3911
3843
|
/**
|
|
3912
3844
|
* @override
|
|
3913
3845
|
*/
|
|
@@ -3917,10 +3849,16 @@ shaka.text.Mp4TtmlParser = class {
|
|
|
3917
3849
|
* @implements {shaka.extern.TextParser}
|
|
3918
3850
|
*/
|
|
3919
3851
|
shaka.text.VttTextParser = class {
|
|
3852
|
+
/** Constructs a VTT parser. */
|
|
3853
|
+
constructor() {}
|
|
3920
3854
|
/**
|
|
3921
3855
|
* @override
|
|
3922
3856
|
*/
|
|
3923
3857
|
parseInit(data) {}
|
|
3858
|
+
/**
|
|
3859
|
+
* @override
|
|
3860
|
+
*/
|
|
3861
|
+
setSequenceMode(sequenceMode) {}
|
|
3924
3862
|
/**
|
|
3925
3863
|
* @override
|
|
3926
3864
|
*/
|
|
@@ -3936,6 +3874,10 @@ shaka.text.Mp4VttParser = class {
|
|
|
3936
3874
|
* @override
|
|
3937
3875
|
*/
|
|
3938
3876
|
parseInit(data) {}
|
|
3877
|
+
/**
|
|
3878
|
+
* @override
|
|
3879
|
+
*/
|
|
3880
|
+
setSequenceMode(sequenceMode) {}
|
|
3939
3881
|
/**
|
|
3940
3882
|
* @override
|
|
3941
3883
|
*/
|
|
@@ -3949,6 +3891,10 @@ shaka.text.SbvTextParser = class {
|
|
|
3949
3891
|
* @override
|
|
3950
3892
|
*/
|
|
3951
3893
|
parseInit(data) {}
|
|
3894
|
+
/**
|
|
3895
|
+
* @override
|
|
3896
|
+
*/
|
|
3897
|
+
setSequenceMode(sequenceMode) {}
|
|
3952
3898
|
/**
|
|
3953
3899
|
* @override
|
|
3954
3900
|
*/
|
|
@@ -3964,6 +3910,10 @@ shaka.text.SrtTextParser = class {
|
|
|
3964
3910
|
* @override
|
|
3965
3911
|
*/
|
|
3966
3912
|
parseInit(data) {}
|
|
3913
|
+
/**
|
|
3914
|
+
* @override
|
|
3915
|
+
*/
|
|
3916
|
+
setSequenceMode(sequenceMode) {}
|
|
3967
3917
|
/**
|
|
3968
3918
|
* @override
|
|
3969
3919
|
*/
|
|
@@ -3985,8 +3935,58 @@ shaka.text.SsaTextParser = class {
|
|
|
3985
3935
|
* @override
|
|
3986
3936
|
*/
|
|
3987
3937
|
parseInit(data) {}
|
|
3938
|
+
/**
|
|
3939
|
+
* @override
|
|
3940
|
+
*/
|
|
3941
|
+
setSequenceMode(sequenceMode) {}
|
|
3988
3942
|
/**
|
|
3989
3943
|
* @override
|
|
3990
3944
|
*/
|
|
3991
3945
|
parseMedia(data, time) {}
|
|
3992
3946
|
};
|
|
3947
|
+
/**
|
|
3948
|
+
* @summary A set of FairPlay utility functions.
|
|
3949
|
+
*/
|
|
3950
|
+
shaka.util.FairPlayUtils = class {
|
|
3951
|
+
/**
|
|
3952
|
+
* Check if FairPlay is supported.
|
|
3953
|
+
* @return {!Promise.<boolean>}
|
|
3954
|
+
*/
|
|
3955
|
+
static isFairPlaySupported() {}
|
|
3956
|
+
/**
|
|
3957
|
+
* Using the default method, extract a content ID from the init data. This is
|
|
3958
|
+
* based on the FairPlay example documentation.
|
|
3959
|
+
* @param {!BufferSource} initData
|
|
3960
|
+
* @return {string}
|
|
3961
|
+
*/
|
|
3962
|
+
static defaultGetContentId(initData) {}
|
|
3963
|
+
/**
|
|
3964
|
+
* Transforms the init data buffer using the given data. The format is:
|
|
3965
|
+
* <pre>
|
|
3966
|
+
* [4 bytes] initDataSize
|
|
3967
|
+
* [initDataSize bytes] initData
|
|
3968
|
+
* [4 bytes] contentIdSize
|
|
3969
|
+
* [contentIdSize bytes] contentId
|
|
3970
|
+
* [4 bytes] certSize
|
|
3971
|
+
* [certSize bytes] cert
|
|
3972
|
+
* </pre>
|
|
3973
|
+
* @param {!BufferSource} initData
|
|
3974
|
+
* @param {!BufferSource|string} contentId
|
|
3975
|
+
* @param {?BufferSource} cert The server certificate; this will throw if not
|
|
3976
|
+
* provided.
|
|
3977
|
+
* @return {!Uint8Array}
|
|
3978
|
+
*/
|
|
3979
|
+
static initDataTransform(initData, contentId, cert) {}
|
|
3980
|
+
/**
|
|
3981
|
+
* SPC FairPlay request.
|
|
3982
|
+
* @param {shaka.net.NetworkingEngine.RequestType} type
|
|
3983
|
+
* @param {shaka.extern.Request} request
|
|
3984
|
+
*/
|
|
3985
|
+
static spcFairPlayRequest(type, request) {}
|
|
3986
|
+
/**
|
|
3987
|
+
* Common FairPlay response transform for some DRMs providers.
|
|
3988
|
+
* @param {shaka.net.NetworkingEngine.RequestType} type
|
|
3989
|
+
* @param {shaka.extern.Response} response
|
|
3990
|
+
*/
|
|
3991
|
+
static commonFairPlayResponse(type, response) {}
|
|
3992
|
+
};
|