shaka-player 4.4.3 → 4.5.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/release-please.yaml +2 -27
- package/CHANGELOG.md +64 -45
- package/README.md +16 -10
- package/demo/asset_card.js +18 -21
- package/demo/cast_receiver/index.html +0 -1
- package/demo/close_button.js +0 -3
- package/demo/common/asset.js +22 -5
- package/demo/common/assets.js +132 -49
- package/demo/config.js +192 -253
- package/demo/custom.js +39 -98
- package/demo/front.js +7 -10
- package/demo/index.html +19 -22
- package/demo/input.js +6 -11
- package/demo/input_container.js +8 -9
- package/demo/main.js +51 -123
- package/demo/search.js +22 -34
- package/demo/service_worker.js +0 -3
- package/demo/tooltip.js +3 -5
- package/demo/visualizer.js +3 -5
- package/demo/visualizer_button.js +1 -20
- package/dist/demo.compiled.debug.js +152 -178
- package/dist/demo.compiled.debug.map +4 -4
- package/dist/demo.compiled.js +152 -178
- package/dist/demo.compiled.map +4 -4
- package/dist/deps.js +27 -24
- package/dist/locales.js +31 -31
- package/dist/receiver.compiled.debug.js +22 -43
- package/dist/receiver.compiled.debug.map +4 -4
- package/dist/receiver.compiled.js +22 -43
- package/dist/receiver.compiled.map +4 -4
- package/dist/shaka-player.compiled.d.ts +507 -365
- package/dist/shaka-player.compiled.debug.d.ts +507 -365
- package/dist/shaka-player.compiled.debug.externs.js +205 -51
- package/dist/shaka-player.compiled.debug.js +541 -450
- package/dist/shaka-player.compiled.debug.map +4 -4
- package/dist/shaka-player.compiled.externs.js +205 -51
- package/dist/shaka-player.compiled.js +1120 -1066
- package/dist/shaka-player.compiled.map +4 -4
- package/dist/shaka-player.ui.d.ts +562 -410
- package/dist/shaka-player.ui.debug.d.ts +562 -410
- package/dist/shaka-player.ui.debug.externs.js +226 -51
- package/dist/shaka-player.ui.debug.js +606 -506
- package/dist/shaka-player.ui.debug.map +4 -4
- package/dist/shaka-player.ui.externs.js +226 -51
- package/dist/shaka-player.ui.js +1266 -1207
- package/dist/shaka-player.ui.map +4 -4
- package/docs/design/lcevc-integration.md +14 -14
- package/docs/tutorials/faq.md +27 -55
- package/docs/tutorials/index.json +2 -1
- package/docs/tutorials/lcevc.md +118 -0
- package/docs/tutorials/ui-customization.md +4 -0
- package/externs/css_style_declaration.js +19 -0
- package/externs/lcevc.js +37 -13
- package/externs/media_remote.js +68 -0
- package/externs/mediatailor.js +193 -0
- package/externs/pictureinpicture.js +11 -0
- package/externs/shaka/ads.js +27 -0
- package/externs/shaka/manifest.js +10 -5
- package/externs/shaka/manifest_parser.js +7 -1
- package/externs/shaka/offline.js +4 -0
- package/externs/shaka/player.js +12 -1
- package/karma.conf.js +7 -3
- package/lib/abr/simple_abr_manager.js +43 -3
- package/lib/ads/ad_manager.js +104 -50
- package/lib/ads/media_tailor_ad.js +297 -0
- package/lib/ads/media_tailor_ad_manager.js +828 -0
- package/lib/cea/ts_cea_parser.js +15 -2
- package/lib/config/codec_switching_strategy.js +24 -0
- package/lib/dash/content_protection.js +120 -2
- package/lib/dash/dash_parser.js +75 -12
- package/lib/dash/mpd_utils.js +10 -6
- package/lib/dash/segment_base.js +13 -5
- package/lib/dash/segment_list.js +13 -5
- package/lib/dash/segment_template.js +43 -85
- package/lib/dependencies/all.js +8 -7
- package/lib/hls/hls_parser.js +44 -16
- package/lib/lcevc/lcevc_dec.js +220 -0
- package/lib/media/adaptation_set.js +22 -11
- package/lib/media/adaptation_set_criteria.js +25 -7
- package/lib/media/media_source_engine.js +215 -27
- package/lib/media/segment_index.js +1 -1
- package/lib/media/segment_reference.js +7 -7
- package/lib/media/streaming_engine.js +33 -18
- package/lib/mss/mss_parser.js +1 -0
- package/lib/net/networking_engine.js +1 -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 +3 -0
- package/lib/player.js +142 -72
- package/lib/routing/payload.js +5 -1
- package/lib/text/cue.js +15 -0
- package/lib/text/ttml_text_parser.js +17 -0
- package/lib/text/ui_text_displayer.js +4 -0
- package/lib/text/vtt_text_parser.js +33 -20
- package/lib/transmuxer/h265.js +862 -0
- package/lib/transmuxer/mpeg_ts_transmuxer.js +3 -2
- package/lib/transmuxer/ts_transmuxer.js +160 -15
- package/lib/util/error.js +28 -9
- package/lib/util/exp_golomb.js +30 -2
- package/lib/util/fake_event.js +3 -0
- package/lib/util/mp4_generator.js +4 -4
- package/lib/util/periods.js +2 -0
- package/lib/util/platform.js +40 -0
- package/lib/util/player_configuration.js +8 -0
- package/lib/util/state_history.js +6 -2
- package/lib/util/stream_utils.js +133 -217
- package/lib/util/ts_parser.js +226 -40
- package/maintained-branches.md +3 -2
- package/package.json +4 -6
- package/roadmap.md +15 -5
- package/shaka-player.uncompiled.js +2 -1
- package/support.html +0 -1
- package/test/cast/cast_receiver_integration.js +47 -0
- package/test/codec_switching/codec_switching_integration.js +181 -0
- package/test/dash/dash_parser_content_protection_unit.js +2 -0
- package/test/dash/dash_parser_integration.js +73 -0
- package/test/dash/dash_parser_live_unit.js +2 -0
- package/test/dash/dash_parser_manifest_unit.js +42 -0
- package/test/dash/dash_parser_segment_base_unit.js +2 -0
- package/test/dash/dash_parser_segment_list_unit.js +2 -0
- package/test/dash/dash_parser_segment_template_unit.js +2 -0
- package/test/demo/demo_unit.js +0 -16
- package/test/hls/hls_live_unit.js +2 -0
- package/test/hls/hls_parser_unit.js +8 -6
- package/test/media/adaptation_set_criteria_unit.js +118 -0
- package/test/media/adaptation_set_unit.js +1 -0
- package/test/media/media_source_engine_unit.js +165 -1
- package/test/media/segment_index_unit.js +4 -4
- package/test/media/segment_prefetch_unit.js +1 -1
- package/test/media/streaming_engine_unit.js +17 -17
- package/test/mss/mss_parser_unit.js +2 -0
- package/test/offline/manifest_convert_unit.js +5 -0
- package/test/offline/storage_integration.js +1 -4
- package/test/player_unit.js +102 -131
- package/test/routing/walker_unit.js +1 -0
- package/test/test/assets/dash-aes-128/Fragments(video=0,format=mpd-time-csf) +0 -0
- package/test/test/assets/dash-aes-128/Fragments(video=20000000,format=mpd-time-csf) +0 -0
- package/test/test/assets/dash-aes-128/Fragments(video=40000000,format=mpd-time-csf) +0 -0
- package/test/test/assets/dash-aes-128/Fragments(video=60000000,format=mpd-time-csf) +0 -0
- package/test/test/assets/dash-aes-128/Fragments(video=i,format=mpd-time-csf) +0 -0
- package/test/test/assets/dash-aes-128/dash.mpd +18 -0
- package/test/test/assets/dash-aes-128/license +1 -0
- package/test/test/assets/dash-multi-codec/audio_en_2c_128k_aac.mp4 +0 -0
- package/test/test/assets/dash-multi-codec/audio_es_2c_64k_opus.webm +0 -0
- package/test/test/assets/dash-multi-codec/dash.mpd +32 -0
- package/test/test/assets/dash-multi-codec/video_144p_108k_h264.mp4 +0 -0
- package/test/test/assets/hls-ts-h265/0.ts +0 -0
- package/test/test/assets/hls-ts-h265/hevc.m3u8 +6 -0
- package/test/test/assets/hls-ts-h265/index.m3u8 +7 -0
- package/test/test/assets/hls-ts-muxed-aac-h265/0.ts +0 -0
- package/test/test/assets/hls-ts-muxed-aac-h265/1.ts +0 -0
- package/test/test/assets/hls-ts-muxed-aac-h265/media.m3u8 +9 -0
- package/test/test/assets/hls-ts-muxed-ac3-h264/media.m3u8 +24 -0
- package/test/test/assets/hls-ts-muxed-ac3-h264/s_00000.ts +0 -0
- package/test/test/assets/hls-ts-muxed-ac3-h264/s_00001.ts +0 -0
- package/test/test/assets/hls-ts-muxed-ac3-h264/s_00002.ts +0 -0
- package/test/test/assets/hls-ts-muxed-ac3-h264/s_00003.ts +0 -0
- package/test/test/assets/hls-ts-muxed-ac3-h264/s_00004.ts +0 -0
- package/test/test/assets/hls-ts-muxed-ac3-h264/s_00005.ts +0 -0
- package/test/test/assets/hls-ts-muxed-ec3-h264/ChID_voices_1280x720p_25fps_h264_6ch_256kbps_ddp_sub_0000.ts +0 -0
- package/test/test/assets/hls-ts-muxed-ec3-h264/ChID_voices_1280x720p_25fps_h264_6ch_256kbps_ddp_sub_0001.ts +0 -0
- package/test/test/assets/hls-ts-muxed-ec3-h264/ChID_voices_1280x720p_25fps_h264_6ch_256kbps_ddp_sub_0002.ts +0 -0
- package/test/test/assets/hls-ts-muxed-ec3-h264/ChID_voices_1280x720p_25fps_h264_6ch_256kbps_ddp_sub_0003.ts +0 -0
- package/test/test/assets/hls-ts-muxed-ec3-h264/prog_index.m3u8 +14 -0
- package/test/test/assets/hls-ts-muxed-mp3-h264/index.m3u8 +23 -0
- package/test/test/assets/hls-ts-muxed-mp3-h264/seg-1-v1-a1.ts +0 -0
- package/test/test/assets/hls-ts-muxed-mp3-h264/seg-2-v1-a1.ts +0 -0
- package/test/test/assets/hls-ts-muxed-mp3-h264/seg-3-v1-a1.ts +0 -0
- package/test/test/assets/hls-ts-muxed-mp3-h264/seg-4-v1-a1.ts +0 -0
- package/test/test/assets/hls-ts-muxed-mp3-h264/seg-5-v1-a1.ts +0 -0
- package/test/test/assets/hls-ts-muxed-mp3-h264/seg-6-v1-a1.ts +0 -0
- package/test/test/assets/hls-ts-muxed-mp3-h264/seg-7-v1-a1.ts +0 -0
- package/test/test/assets/hls-ts-muxed-mp3-h264/seg-8-v1-a1.ts +0 -0
- package/test/test/util/dash_parser_util.js +4 -0
- package/test/test/util/fake_ad_manager.js +20 -0
- package/test/test/util/fake_media_source_engine.js +8 -2
- package/test/test/util/manifest_generator.js +7 -3
- package/test/test/util/mss_parser_util.js +4 -0
- package/test/test/util/offline_utils.js +1 -0
- package/test/test/util/streaming_engine_util.js +7 -4
- package/test/text/ttml_text_parser_unit.js +52 -0
- package/test/text/vtt_text_parser_unit.js +103 -31
- package/test/transmuxer/transmuxer_integration.js +117 -0
- package/test/ui/ui_unit.js +3 -10
- package/test/util/stream_utils_unit.js +208 -74
- package/ui/controls.js +125 -0
- package/ui/externs/ui.js +8 -1
- package/ui/pip_button.js +22 -120
- package/ui/remote_button.js +201 -0
- package/ui/ui.js +5 -2
- package/demo/common/message_ids.js +0 -309
- package/demo/locales/en.json +0 -288
- package/demo/locales/source.json +0 -1146
- package/externs/mux.js +0 -69
- package/lib/lcevc/lcevc_dil.js +0 -152
- package/lib/transmuxer/muxjs_transmuxer.js +0 -242
- package/test/transmuxer/muxjs_transmuxer_integration.js +0 -177
|
@@ -60,6 +60,13 @@ shaka.util.IReleasable = class {
|
|
|
60
60
|
*/
|
|
61
61
|
release() {}
|
|
62
62
|
};
|
|
63
|
+
/**
|
|
64
|
+
* @enum {string}
|
|
65
|
+
*/
|
|
66
|
+
shaka.config.CodecSwitchingStrategy = {
|
|
67
|
+
RELOAD: 'reload',
|
|
68
|
+
SMOOTH: 'smooth'
|
|
69
|
+
};
|
|
63
70
|
/**
|
|
64
71
|
* @summary A set of BufferSource utility functions.
|
|
65
72
|
*/
|
|
@@ -321,6 +328,11 @@ shaka.text.Cue.prototype.linePadding;
|
|
|
321
328
|
* @type {number}
|
|
322
329
|
*/
|
|
323
330
|
shaka.text.Cue.prototype.opacity;
|
|
331
|
+
/**
|
|
332
|
+
* Text combine upright as a CSS text-combine-upright value.
|
|
333
|
+
* @type {string}
|
|
334
|
+
*/
|
|
335
|
+
shaka.text.Cue.prototype.textCombineUpright;
|
|
324
336
|
/**
|
|
325
337
|
* Text decoration. A combination of underline, overline
|
|
326
338
|
* and line through. Empty array means no decoration.
|
|
@@ -373,6 +385,12 @@ shaka.text.Cue.prototype.isContainer;
|
|
|
373
385
|
* @type {boolean}
|
|
374
386
|
*/
|
|
375
387
|
shaka.text.Cue.prototype.lineBreak;
|
|
388
|
+
/**
|
|
389
|
+
* Used to indicate the type of ruby tag that should be used when rendering
|
|
390
|
+
* the cue. Valid values: ruby, rp, rt.
|
|
391
|
+
* @type {?string}
|
|
392
|
+
*/
|
|
393
|
+
shaka.text.Cue.prototype.rubyTag;
|
|
376
394
|
/**
|
|
377
395
|
* The number of horizontal and vertical cells into which the Root Container
|
|
378
396
|
* Region area is divided.
|
|
@@ -784,11 +802,13 @@ shaka.util.Error.Code = {
|
|
|
784
802
|
'HLS_MSE_ENCRYPTED_MP2T_NOT_SUPPORTED': 4040,
|
|
785
803
|
'HLS_MSE_ENCRYPTED_LEGACY_APPLE_MEDIA_KEYS_NOT_SUPPORTED': 4041,
|
|
786
804
|
'NO_WEB_CRYPTO_API': 4042,
|
|
787
|
-
'HLS_AES_128_INVALID_IV_LENGTH': 4043,
|
|
788
|
-
'HLS_AES_128_INVALID_KEY_LENGTH': 4044,
|
|
789
805
|
'CANNOT_ADD_EXTERNAL_THUMBNAILS_TO_LIVE_STREAM': 4045,
|
|
790
806
|
'MSS_INVALID_XML': 4046,
|
|
791
807
|
'MSS_LIVE_CONTENT_NOT_SUPPORTED': 4047,
|
|
808
|
+
'AES_128_INVALID_IV_LENGTH': 4048,
|
|
809
|
+
'AES_128_INVALID_KEY_LENGTH': 4049,
|
|
810
|
+
'DASH_CONFLICTING_AES_128': 4050,
|
|
811
|
+
'DASH_UNSUPPORTED_AES_128': 4051,
|
|
792
812
|
'STREAMING_ENGINE_STARTUP_INVALID_STATE': 5006,
|
|
793
813
|
'NO_RECOGNIZED_KEY_SYSTEMS': 6000,
|
|
794
814
|
'REQUESTED_KEY_SYSTEM_CONFIG_UNAVAILABLE': 6001,
|
|
@@ -839,7 +859,8 @@ shaka.util.Error.Code = {
|
|
|
839
859
|
'CS_AD_MANAGER_NOT_INITIALIZED': 10001,
|
|
840
860
|
'SS_IMA_SDK_MISSING': 10002,
|
|
841
861
|
'SS_AD_MANAGER_NOT_INITIALIZED': 10003,
|
|
842
|
-
'CURRENT_DAI_REQUEST_NOT_FINISHED': 10004
|
|
862
|
+
'CURRENT_DAI_REQUEST_NOT_FINISHED': 10004,
|
|
863
|
+
'MT_AD_MANAGER_NOT_INITIALIZED': 10005
|
|
843
864
|
};
|
|
844
865
|
/**
|
|
845
866
|
* @summary A set of utility functions for dealing with MIME types.
|
|
@@ -1461,7 +1482,8 @@ shaka.net.NetworkingEngine.RequestType = {
|
|
|
1461
1482
|
'APP': 3,
|
|
1462
1483
|
'TIMING': 4,
|
|
1463
1484
|
'SERVER_CERTIFICATE': 5,
|
|
1464
|
-
'KEY': 6
|
|
1485
|
+
'KEY': 6,
|
|
1486
|
+
'ADS': 7
|
|
1465
1487
|
};
|
|
1466
1488
|
/**
|
|
1467
1489
|
* A more advanced form of the RequestType structure, meant to describe
|
|
@@ -1893,7 +1915,7 @@ shaka.media.InitSegmentReference = class {
|
|
|
1893
1915
|
* the quality of the media associated with this init segment.
|
|
1894
1916
|
* @param {(null|number)=} timescale
|
|
1895
1917
|
* @param {(null|BufferSource)=} segmentData
|
|
1896
|
-
* @param {?shaka.extern.
|
|
1918
|
+
* @param {?shaka.extern.aes128Key=} aes128Key
|
|
1897
1919
|
* The segment's AES-128-CBC full segment encryption key and iv.
|
|
1898
1920
|
*/
|
|
1899
1921
|
constructor(uris, startByte, endByte, mediaQuality, timescale, segmentData, aes128Key) {}
|
|
@@ -1969,10 +1991,10 @@ shaka.media.SegmentReference = class {
|
|
|
1969
1991
|
* @param {shaka.media.SegmentReference.Status=} status
|
|
1970
1992
|
* The segment status is used to indicate that a segment does not exist or is
|
|
1971
1993
|
* not available.
|
|
1972
|
-
* @param {?shaka.extern.
|
|
1994
|
+
* @param {?shaka.extern.aes128Key=} aes128Key
|
|
1973
1995
|
* The segment's AES-128-CBC full segment encryption key and iv.
|
|
1974
1996
|
*/
|
|
1975
|
-
constructor(startTime, endTime, uris, startByte, endByte, initSegmentReference, timestampOffset, appendWindowStart, appendWindowEnd, partialReferences, tilesLayout, tileDuration, syncTime, status,
|
|
1997
|
+
constructor(startTime, endTime, uris, startByte, endByte, initSegmentReference, timestampOffset, appendWindowStart, appendWindowEnd, partialReferences, tilesLayout, tileDuration, syncTime, status, aes128Key) {}
|
|
1976
1998
|
/**
|
|
1977
1999
|
* Creates and returns the URIs of the resource containing the segment.
|
|
1978
2000
|
* @return {!Array.<string>}
|
|
@@ -2128,8 +2150,9 @@ shaka.util.Id3Utils = class {
|
|
|
2128
2150
|
shaka.util.ExpGolomb = class {
|
|
2129
2151
|
/**
|
|
2130
2152
|
* @param {!Uint8Array} data
|
|
2153
|
+
* @param {boolean=} convertEbsp2rbsp
|
|
2131
2154
|
*/
|
|
2132
|
-
constructor(data) {}
|
|
2155
|
+
constructor(data, convertEbsp2rbsp) {}
|
|
2133
2156
|
};
|
|
2134
2157
|
/**
|
|
2135
2158
|
* @see https://en.wikipedia.org/wiki/MPEG_transport_stream
|
|
@@ -2156,6 +2179,16 @@ shaka.util.TsParser = class {
|
|
|
2156
2179
|
* @return {!Array.<shaka.extern.VideoNalu>}
|
|
2157
2180
|
*/
|
|
2158
2181
|
parseAvcNalus(pes, nextPes) {}
|
|
2182
|
+
/**
|
|
2183
|
+
* Parse AVC and HVC Nalus
|
|
2184
|
+
* The code is based on hls.js
|
|
2185
|
+
* Credit to https://github.com/video-dev/hls.js/blob/master/src/demux/tsdemuxer.ts
|
|
2186
|
+
* @param {shaka.extern.MPEG_PES} pes
|
|
2187
|
+
* @param {?shaka.extern.MPEG_PES=} nextPes
|
|
2188
|
+
* @param {?shaka.extern.VideoNalu=} lastNalu
|
|
2189
|
+
* @return {!Array.<shaka.extern.VideoNalu>}
|
|
2190
|
+
*/
|
|
2191
|
+
parseNalus(pes, nextPes, lastNalu) {}
|
|
2159
2192
|
/**
|
|
2160
2193
|
* Return the ID3 metadata
|
|
2161
2194
|
* @return {!Array.<shaka.extern.ID3Metadata>}
|
|
@@ -2215,23 +2248,23 @@ shaka.util.TsParser = class {
|
|
|
2215
2248
|
shaka.util.TsParser.Timescale;
|
|
2216
2249
|
/**
|
|
2217
2250
|
* @summary
|
|
2218
|
-
*
|
|
2251
|
+
* lcevcDec - (MPEG-5 Part 2 LCEVC - Decoder) provides
|
|
2219
2252
|
* all the operations related to the enhancement and rendering
|
|
2220
2253
|
* of LCEVC enabled streams and on to a canvas.
|
|
2221
2254
|
* @implements {shaka.util.IReleasable}
|
|
2222
2255
|
*/
|
|
2223
|
-
shaka.lcevc.
|
|
2256
|
+
shaka.lcevc.Dec = class {
|
|
2224
2257
|
/**
|
|
2225
2258
|
* @param {HTMLVideoElement} media The video element that will be attached to
|
|
2226
|
-
* LCEVC
|
|
2259
|
+
* LCEVC Decoder for input.
|
|
2227
2260
|
* @param {HTMLCanvasElement} canvas The canvas element that will be attached
|
|
2228
|
-
* to LCEVC
|
|
2229
|
-
* @param {shaka.extern.LcevcConfiguration}
|
|
2230
|
-
*
|
|
2261
|
+
* to LCEVC Decoder to render the enhanced frames.
|
|
2262
|
+
* @param {shaka.extern.LcevcConfiguration} lcevcConfig LCEVC configuration
|
|
2263
|
+
* object to initialize the LCEVC Decoder.
|
|
2231
2264
|
*/
|
|
2232
|
-
constructor(media, canvas,
|
|
2265
|
+
constructor(media, canvas, lcevcConfig) {}
|
|
2233
2266
|
/**
|
|
2234
|
-
* Close LCEVC
|
|
2267
|
+
* Close LCEVC Decoder.
|
|
2235
2268
|
* @override
|
|
2236
2269
|
*/
|
|
2237
2270
|
release() {}
|
|
@@ -2955,9 +2988,10 @@ shaka.Player = class extends shaka.util.FakeEventTarget {
|
|
|
2955
2988
|
* <code>load</code> but cannot interrupt calls to <code>attach</code>,
|
|
2956
2989
|
* <code>detach</code>, or <code>unload</code>.
|
|
2957
2990
|
* @param {boolean=} initializeMediaSource
|
|
2991
|
+
* @param {boolean=} keepAdManager
|
|
2958
2992
|
* @return {!Promise}
|
|
2959
2993
|
*/
|
|
2960
|
-
unload(initializeMediaSource) {}
|
|
2994
|
+
unload(initializeMediaSource, keepAdManager) {}
|
|
2961
2995
|
/**
|
|
2962
2996
|
* Provides a way to update the stream start position during the media loading
|
|
2963
2997
|
* process. Can for example be called from the <code>manifestparsed</code>
|
|
@@ -3560,6 +3594,138 @@ shaka.ads.ClientSideAd = class {
|
|
|
3560
3594
|
*/
|
|
3561
3595
|
release() {}
|
|
3562
3596
|
};
|
|
3597
|
+
/**
|
|
3598
|
+
* @implements {shaka.extern.IAd}
|
|
3599
|
+
*/
|
|
3600
|
+
shaka.ads.MediaTailorAd = class {
|
|
3601
|
+
/**
|
|
3602
|
+
* @param {mediaTailor.Ad} mediaTailorAd
|
|
3603
|
+
* @param {number} adPosition
|
|
3604
|
+
* @param {number} totalAds
|
|
3605
|
+
* @param {HTMLMediaElement} video
|
|
3606
|
+
*/
|
|
3607
|
+
constructor(mediaTailorAd, adPosition, totalAds, isLinear, video) {}
|
|
3608
|
+
/**
|
|
3609
|
+
* @override
|
|
3610
|
+
*/
|
|
3611
|
+
getDuration() {}
|
|
3612
|
+
/**
|
|
3613
|
+
* @override
|
|
3614
|
+
*/
|
|
3615
|
+
getMinSuggestedDuration() {}
|
|
3616
|
+
/**
|
|
3617
|
+
* @override
|
|
3618
|
+
*/
|
|
3619
|
+
getRemainingTime() {}
|
|
3620
|
+
/**
|
|
3621
|
+
* @override
|
|
3622
|
+
*/
|
|
3623
|
+
isPaused() {}
|
|
3624
|
+
/**
|
|
3625
|
+
* @override
|
|
3626
|
+
*/
|
|
3627
|
+
isSkippable() {}
|
|
3628
|
+
/**
|
|
3629
|
+
* @override
|
|
3630
|
+
*/
|
|
3631
|
+
getTimeUntilSkippable() {}
|
|
3632
|
+
/**
|
|
3633
|
+
* @override
|
|
3634
|
+
*/
|
|
3635
|
+
canSkipNow() {}
|
|
3636
|
+
/**
|
|
3637
|
+
* @override
|
|
3638
|
+
*/
|
|
3639
|
+
skip() {}
|
|
3640
|
+
/**
|
|
3641
|
+
* @override
|
|
3642
|
+
*/
|
|
3643
|
+
pause() {}
|
|
3644
|
+
/**
|
|
3645
|
+
* @override
|
|
3646
|
+
*/
|
|
3647
|
+
play() {}
|
|
3648
|
+
/**
|
|
3649
|
+
* @override
|
|
3650
|
+
*/
|
|
3651
|
+
getVolume() {}
|
|
3652
|
+
/**
|
|
3653
|
+
* @override
|
|
3654
|
+
*/
|
|
3655
|
+
setVolume(volume) {}
|
|
3656
|
+
/**
|
|
3657
|
+
* @override
|
|
3658
|
+
*/
|
|
3659
|
+
isMuted() {}
|
|
3660
|
+
/**
|
|
3661
|
+
* @override
|
|
3662
|
+
*/
|
|
3663
|
+
isLinear() {}
|
|
3664
|
+
/**
|
|
3665
|
+
* @override
|
|
3666
|
+
*/
|
|
3667
|
+
resize(width, height) {}
|
|
3668
|
+
/**
|
|
3669
|
+
* @override
|
|
3670
|
+
*/
|
|
3671
|
+
setMuted(muted) {}
|
|
3672
|
+
/**
|
|
3673
|
+
* @override
|
|
3674
|
+
*/
|
|
3675
|
+
getSequenceLength() {}
|
|
3676
|
+
/**
|
|
3677
|
+
* @override
|
|
3678
|
+
*/
|
|
3679
|
+
getPositionInSequence() {}
|
|
3680
|
+
/**
|
|
3681
|
+
* @override
|
|
3682
|
+
*/
|
|
3683
|
+
getTitle() {}
|
|
3684
|
+
/**
|
|
3685
|
+
* @override
|
|
3686
|
+
*/
|
|
3687
|
+
getDescription() {}
|
|
3688
|
+
/**
|
|
3689
|
+
* @override
|
|
3690
|
+
*/
|
|
3691
|
+
getVastMediaBitrate() {}
|
|
3692
|
+
/**
|
|
3693
|
+
* @override
|
|
3694
|
+
*/
|
|
3695
|
+
getVastMediaHeight() {}
|
|
3696
|
+
/**
|
|
3697
|
+
* @override
|
|
3698
|
+
*/
|
|
3699
|
+
getVastMediaWidth() {}
|
|
3700
|
+
/**
|
|
3701
|
+
* @override
|
|
3702
|
+
*/
|
|
3703
|
+
getAdId() {}
|
|
3704
|
+
/**
|
|
3705
|
+
* @override
|
|
3706
|
+
*/
|
|
3707
|
+
getCreativeAdId() {}
|
|
3708
|
+
/**
|
|
3709
|
+
* @override
|
|
3710
|
+
*/
|
|
3711
|
+
getAdvertiserName() {}
|
|
3712
|
+
/**
|
|
3713
|
+
* @override
|
|
3714
|
+
*/
|
|
3715
|
+
getMediaUrl() {}
|
|
3716
|
+
/**
|
|
3717
|
+
* @override
|
|
3718
|
+
*/
|
|
3719
|
+
getTimeOffset() {}
|
|
3720
|
+
/**
|
|
3721
|
+
* @override
|
|
3722
|
+
*/
|
|
3723
|
+
getPodIndex() {}
|
|
3724
|
+
/**
|
|
3725
|
+
* @override
|
|
3726
|
+
*/
|
|
3727
|
+
release() {}
|
|
3728
|
+
};
|
|
3563
3729
|
/**
|
|
3564
3730
|
* @implements {shaka.extern.IAd}
|
|
3565
3731
|
*/
|
|
@@ -3726,6 +3892,18 @@ shaka.ads.AdManager = class extends shaka.util.FakeEventTarget {
|
|
|
3726
3892
|
* @override
|
|
3727
3893
|
*/
|
|
3728
3894
|
updateClientSideAdsRenderingSettings(adsRenderingSettings) {}
|
|
3895
|
+
/**
|
|
3896
|
+
* @override
|
|
3897
|
+
*/
|
|
3898
|
+
initMediaTailor(adContainer, networkingEngine, video) {}
|
|
3899
|
+
/**
|
|
3900
|
+
* @param {string} url
|
|
3901
|
+
* @param {Object} adsParams
|
|
3902
|
+
* @param {string=} backupUrl
|
|
3903
|
+
* @return {!Promise.<string>}
|
|
3904
|
+
* @override
|
|
3905
|
+
*/
|
|
3906
|
+
requestMediaTailorStream(url, adsParams, backupUrl) {}
|
|
3729
3907
|
/**
|
|
3730
3908
|
* @override
|
|
3731
3909
|
*/
|
|
@@ -3746,11 +3924,20 @@ shaka.ads.AdManager = class extends shaka.util.FakeEventTarget {
|
|
|
3746
3924
|
* @override
|
|
3747
3925
|
*/
|
|
3748
3926
|
getServerSideCuePoints() {}
|
|
3927
|
+
/**
|
|
3928
|
+
* @return {!Array.<!shaka.extern.AdCuePoint>}
|
|
3929
|
+
* @override
|
|
3930
|
+
*/
|
|
3931
|
+
getCuePoints() {}
|
|
3749
3932
|
/**
|
|
3750
3933
|
* @return {shaka.extern.AdsStats}
|
|
3751
3934
|
* @override
|
|
3752
3935
|
*/
|
|
3753
3936
|
getStats() {}
|
|
3937
|
+
/**
|
|
3938
|
+
* @override
|
|
3939
|
+
*/
|
|
3940
|
+
onManifestUpdated(isLive) {}
|
|
3754
3941
|
/**
|
|
3755
3942
|
* @override
|
|
3756
3943
|
*/
|
|
@@ -5026,7 +5213,7 @@ shaka.transmuxer.MpegTsTransmuxer = class {
|
|
|
5026
5213
|
/**
|
|
5027
5214
|
* @override
|
|
5028
5215
|
*/
|
|
5029
|
-
transmux(data) {}
|
|
5216
|
+
transmux(data, stream, reference, duration, contentType) {}
|
|
5030
5217
|
};
|
|
5031
5218
|
/**
|
|
5032
5219
|
* @implements {shaka.extern.Transmuxer}
|
|
@@ -5061,39 +5248,6 @@ shaka.transmuxer.MssTransmuxer = class {
|
|
|
5061
5248
|
*/
|
|
5062
5249
|
transmux(data, stream, reference) {}
|
|
5063
5250
|
};
|
|
5064
|
-
/**
|
|
5065
|
-
* @implements {shaka.extern.Transmuxer}
|
|
5066
|
-
*/
|
|
5067
|
-
shaka.transmuxer.MuxjsTransmuxer = class {
|
|
5068
|
-
/**
|
|
5069
|
-
* @param {string} mimeType
|
|
5070
|
-
*/
|
|
5071
|
-
constructor(mimeType) {}
|
|
5072
|
-
/**
|
|
5073
|
-
* @override
|
|
5074
|
-
*/
|
|
5075
|
-
destroy() {}
|
|
5076
|
-
/**
|
|
5077
|
-
* Check if the mime type and the content type is supported.
|
|
5078
|
-
* @param {string} mimeType
|
|
5079
|
-
* @param {string=} contentType
|
|
5080
|
-
* @return {boolean}
|
|
5081
|
-
* @override
|
|
5082
|
-
*/
|
|
5083
|
-
isSupported(mimeType, contentType) {}
|
|
5084
|
-
/**
|
|
5085
|
-
* @override
|
|
5086
|
-
*/
|
|
5087
|
-
convertCodecs(contentType, mimeType) {}
|
|
5088
|
-
/**
|
|
5089
|
-
* @override
|
|
5090
|
-
*/
|
|
5091
|
-
getOrginalMimeType() {}
|
|
5092
|
-
/**
|
|
5093
|
-
* @override
|
|
5094
|
-
*/
|
|
5095
|
-
transmux(data) {}
|
|
5096
|
-
};
|
|
5097
5251
|
/**
|
|
5098
5252
|
* @implements {shaka.extern.Transmuxer}
|
|
5099
5253
|
*/
|