shaka-player 4.4.2 → 4.4.3
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/CHANGELOG.md +23 -0
- package/demo/common/asset.js +5 -0
- package/demo/common/assets.js +20 -5
- package/demo/common/message_ids.js +1 -1
- package/demo/locales/en.json +2 -1
- package/demo/locales/source.json +5 -1
- package/demo/main.js +1 -1
- package/demo/search.js +3 -3
- package/dist/demo.compiled.debug.js +72 -70
- package/dist/demo.compiled.debug.map +3 -3
- package/dist/demo.compiled.js +72 -70
- package/dist/demo.compiled.map +3 -3
- package/dist/locales.js +30 -30
- package/dist/receiver.compiled.debug.js +38 -36
- package/dist/receiver.compiled.debug.map +3 -3
- package/dist/receiver.compiled.js +38 -36
- package/dist/receiver.compiled.map +3 -3
- package/dist/shaka-player.compiled.d.ts +222 -1
- package/dist/shaka-player.compiled.debug.d.ts +222 -1
- package/dist/shaka-player.compiled.debug.externs.js +271 -1
- package/dist/shaka-player.compiled.debug.js +233 -228
- package/dist/shaka-player.compiled.debug.map +3 -3
- package/dist/shaka-player.compiled.externs.js +271 -1
- package/dist/shaka-player.compiled.js +1035 -1028
- package/dist/shaka-player.compiled.map +3 -3
- package/dist/shaka-player.ui.d.ts +222 -1
- package/dist/shaka-player.ui.debug.d.ts +222 -1
- package/dist/shaka-player.ui.debug.externs.js +271 -1
- package/dist/shaka-player.ui.debug.js +256 -251
- package/dist/shaka-player.ui.debug.map +3 -3
- package/dist/shaka-player.ui.externs.js +271 -1
- package/dist/shaka-player.ui.js +1162 -1155
- package/dist/shaka-player.ui.map +3 -3
- package/docs/tutorials/offline.md +1 -1
- package/lib/dash/dash_parser.js +4 -1
- package/lib/hls/hls_parser.js +60 -24
- package/lib/media/segment_index.js +4 -4
- package/lib/media/segment_reference.js +6 -1
- package/lib/media/streaming_engine.js +14 -24
- package/lib/player.js +1 -1
- package/lib/text/cue.js +47 -47
- package/lib/text/vtt_text_parser.js +2 -2
- package/lib/util/cmcd_manager.js +6 -1
- package/lib/util/manifest_parser_utils.js +10 -4
- package/lib/util/platform.js +14 -0
- package/lib/util/ts_parser.js +3 -3
- package/package.json +1 -1
- package/test/dash/dash_parser_manifest_unit.js +5 -0
- package/test/dash/dash_parser_segment_base_unit.js +5 -0
- package/test/dash/dash_parser_segment_list_unit.js +21 -17
- package/test/dash/dash_parser_segment_template_unit.js +47 -0
- package/test/hls/hls_live_unit.js +33 -0
- package/test/hls/hls_parser_unit.js +2 -57
- package/test/test/util/dash_parser_util.js +16 -7
- package/test/text/vtt_text_parser_unit.js +2 -17
- package/test/transmuxer/transmuxer_integration.js +4 -4
- package/test/util/ts_parser_unit.js +1 -1
package/dist/demo.compiled.js
CHANGED
|
@@ -66,15 +66,15 @@ goog.bootstrap=function(a,b){goog.debugLoader_.bootstrap(a,b)});if(!COMPILED){va
|
|
|
66
66
|
SPDX-License-Identifier: Apache-2.0
|
|
67
67
|
*/
|
|
68
68
|
goog.asserts=class{static assert(a,b){}};goog.asserts.ENABLE_ASSERTS=goog.DEBUG;goog.asserts.ENABLE_ASSERTS&&console.assert&&console.assert.bind&&(goog.asserts.assert=console.assert.bind(console));var shakaDemo={MessageIds:{ADS:"DEMO_ADS",AUDIO_ONLY:"DEMO_AUDIO_ONLY",CAPTIONS:"DEMO_CAPTIONS",CONTAINERLESS:"DEMO_CONTAINERLESS",DASH:"DEMO_DASH",HIGH_DEFINITION:"DEMO_HIGH_DEFINITION",HLS:"DEMO_HLS",LCEVC:"DEMO_LCEVC",LIVE:"DEMO_LIVE",MP2TS:"DEMO_MP2TS",MP4:"DEMO_MP4",MSS:"DEMO_MSS",MULTIPLE_LANGUAGES:"DEMO_MULTIPLE_LANGUAGES",OFFLINE:"DEMO_OFFLINE",STORED:"DEMO_STORED",SUBTITLES:"DEMO_SUBTITLES",SURROUND:"DEMO_SURROUND",THUMBNAILS:"DEMO_THUMBNAILS",TRICK_MODE:"DEMO_TRICK_MODE",ULTRA_HIGH_DEFINITION:"DEMO_ULTRA_HIGH_DEFINITION",
|
|
69
|
-
VOD:"DEMO_VOD",WEBM:"DEMO_WEBM",XLINK:"DEMO_XLINK",
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
69
|
+
VOD:"DEMO_VOD",WEBM:"DEMO_WEBM",XLINK:"DEMO_XLINK",AES128:"DEMO_AES128",CLEAR:"DEMO_CLEAR",CLEAR_KEY:"DEMO_CLEAR_KEY",FAIRPLAY:"DEMO_FAIRPLAY",PLAYREADY:"DEMO_PLAYREADY",WIDEVINE:"DEMO_WIDEVINE",APPLE:"DEMO_APPLE",AXINOM:"DEMO_AXINOM",AZURE_MEDIA_SERVICES:"DEMO_AZURE_MEDIA_SERVICES",BITCODIN:"DEMO_BITCODIN",CUSTOM:"DEMO_CUSTOM",DASH_IF:"DEMO_DASH_IF",GPAC:"DEMO_GPAC",IRT:"DEMO_IRT",METACDN:"DEMO_METACDN",MICROSOFT:"DEMO_MICROSOFT",NIMBLE_STREAMER:"DEMO_NIMBLE_STREAMER",SHAKA:"DEMO_SHAKA",UNIFIED_STREAMING:"DEMO_UNIFIED_STREAMING",
|
|
70
|
+
UPLYNK:"DEMO_UPLYNK",ALL_CONTENT:"DEMO_ALL_CONTENT",CDN_HEADER:"DEMO_CDN_HEADER",COMPILED_DEBUG:"DEMO_COMPILED_DEBUG",COMPILED_RELEASE:"DEMO_COMPILED_RELEASE",CONFIG:"DEMO_CONFIG",CUSTOM_CONTENT:"DEMO_CUSTOM_CONTENT",DEMO_MODE_HEADER:"DEMO_DEMO_MODE_HEADER",DOCUMENTATION:"DEMO_DOCUMENTATION",HOME:"DEMO_HOME",JSDELIVR:"DEMO_JSDELIVR",LIBRARIES:"DEMO_LIBRARIES",LICENSE:"DEMO_LICENSE",NPM:"DEMO_NPM",PROJECT_LINKS_HEADER:"DEMO_PROJECT_LINKS_HEADER",REPORT_BUG:"DEMO_REPORT_BUG",SOURCE:"DEMO_SOURCE",SUPPORT:"DEMO_SUPPORT",
|
|
71
|
+
UNCOMPILED:"DEMO_UNCOMPILED",FAILURE_MISC:"DEMO_FAILURE_MISC",FAILURE_NO_BROWSER_SUPPORT:"DEMO_FAILURE_NO_BROWSER_SUPPORT",PLAY:"DEMO_PLAY",PROMPT_NO:"DEMO_PROMPT_NO",PROMPT_YES:"DEMO_PROMPT_YES",UNSUPPORTED_DISABLED:"DEMO_UNSUPPORTED_DISABLED",UNSUPPORTED_NO_DASH_SUPPORT:"DEMO_UNSUPPORTED_NO_DASH_SUPPORT",UNSUPPORTED_NO_DOWNLOAD:"DEMO_UNSUPPORTED_NO_DOWNLOAD",UNSUPPORTED_NO_FORMAT_SUPPORT:"DEMO_UNSUPPORTED_NO_FORMAT_SUPPORT",UNSUPPORTED_NO_HLS_SUPPORT:"DEMO_UNSUPPORTED_NO_HLS_SUPPORT",UNSUPPORTED_NO_OFFLINE:"DEMO_UNSUPPORTED_NO_OFFLINE",
|
|
72
|
+
UNSUPPORTED_NO_KEY_SUPPORT:"DEMO_UNSUPPORTED_NO_KEY_SUPPORT",UNSUPPORTED_NO_LICENSE_SUPPORT:"DEMO_UNSUPPORTED_NO_LICENSE_SUPPORT",UNSUPPORTED_NO_MSS_SUPPORT:"DEMO_UNSUPPORTED_NO_MSS_SUPPORT",VISUALIZER_AUTO_SCREENSHOT_TOGGLE:"DEMO_VISUALIZER_AUTO_SCREENSHOT_TOGGLE",VISUALIZER_BUTTON:"DEMO_VISUALIZER_BUTTON",VISUALIZER_SCREENSHOT_BUTTON:"DEMO_VISUALIZER_SCREENSHOT_BUTTON",DELETE_STORED_PROMPT:"DEMO_DELETE_STORED_PROMPT",UNSUPPORTED:"DEMO_UNSUPPORTED",FRONT_INTRO_DISMISS:"DEMO_FRONT_INTRO_DISMISS",
|
|
73
|
+
FRONT_INTRO_ONE:"DEMO_FRONT_INTRO_ONE",FRONT_INTRO_TWO:"DEMO_FRONT_INTRO_TWO",AD_TAG_URL:"DEMO_AD_TAG_URL",ADS_TAB:"DEMO_ADS_TAB",IMA_ASSET_KEY:"DEMO_IMA_ASSET_KEY",IMA_CONTENT_SRC_ID:"DEMO_IMA_CONTENT_SRC_ID",IMA_MANIFEST_TYPE:"DEMO_IMA_MANIFEST_TYPE",IMA_VIDEO_ID:"DEMO_IMA_VIDEO_ID",CANCEL_BUTTON:"DEMO_CANCEL_BUTTON",CUSTOM_INTRO_ONE:"DEMO_CUSTOM_INTRO_ONE",CUSTOM_INTRO_TWO:"DEMO_CUSTOM_INTRO_TWO",CUSTOM_INTRO_THREE:"DEMO_CUSTOM_INTRO_THREE",DELETE_CUSTOM:"DEMO_DELETE_CUSTOM",DELETE_CUSTOM_PROMPT:"DEMO_DELETE_CUSTOM_PROMPT",
|
|
74
|
+
DRM_SYSTEM:"DEMO_DRM_SYSTEM",DRM_TAB:"DEMO_DRM_TAB",EDIT_CUSTOM:"DEMO_EDIT_CUSTOM",HLS_FULL_MIME_TYPE:"DEMO_HLS_FULL_MIME_TYPE",HLS_TAB:"DEMO_HLS_TAB",HEADERS_TAB:"DEMO_HEADERS_TAB",ICON_URL:"DEMO_ICON_URL",LICENSE_CERTIFICATE_URL:"DEMO_LICENSE_CERTIFICATE_URL",LICENSE_HEADER_NAME:"DEMO_LICENSE_HEADER_NAME",LICENSE_HEADER_TITLE:"DEMO_LICENSE_HEADER_TITLE",LICENSE_HEADER_VALUE:"DEMO_LICENSE_HEADER_VALUE",LICENSE_SERVER_URL:"DEMO_LICENSE_SERVER_URL",MAIN_TAB:"DEMO_MAIN_TAB",MANIFEST_URL:"DEMO_MANIFEST_URL",
|
|
75
|
+
MANIFEST_URL_ERROR:"DEMO_MANIFEST_URL_ERROR",NAME:"DEMO_NAME",NAME_ERROR:"DEMO_NAME_ERROR",EXTRA_SHAKA_PLAYER_CONFIG:"DEMO_EXTRA_SHAKA_PLAYER_CONFIG",EXTRA_TAB:"DEMO_EXTRA_TAB",INVALID_JSON_CONFIG_ERROR:"DEMO_INVALID_JSON_CONFIG_ERROR",MIME_TYPE:"DEMO_MIME_TYPE",SAVE_BUTTON:"DEMO_SAVE_BUTTON",AD_SEARCH:"DEMO_AD_SEARCH",AUDIO_ONLY_SEARCH:"DEMO_AUDIO_ONLY_SEARCH",CONTAINER_SEARCH:"DEMO_CONTAINER_SEARCH",DRM_SEARCH:"DEMO_DRM_SEARCH",HIGH_DEFINITION_SEARCH:"DEMO_HIGH_DEFINITION_SEARCH",LIVE_SEARCH:"DEMO_LIVE_SEARCH",
|
|
76
|
+
MANIFEST_SEARCH:"DEMO_MANIFEST_SEARCH",OFFLINE_SEARCH:"DEMO_OFFLINE_SEARCH",STORED_SEARCH:"DEMO_STORED_SEARCH",SUBTITLES_SEARCH:"DEMO_SUBTITLES_SEARCH",SURROUND_SEARCH:"DEMO_SURROUND_SEARCH",SOURCE_SEARCH:"DEMO_SOURCE_SEARCH",TRICK_MODE_SEARCH:"DEMO_TRICK_MODE_SEARCH",XLINK_SEARCH:"DEMO_XLINK_SEARCH",ADAPTATION_RESTRICTIONS_SECTION_HEADER:"DEMO_ADAPTATION_RESTRICTIONS_SECTION_HEADER",ADAPTATION_SECTION_HEADER:"DEMO_ADAPTATION_SECTION_HEADER",ADS_SECTION_HEADER:"DEMO_ADS_SECTION_HEADER",ALWAYS_STREAM_TEXT:"DEMO_ALWAYS_STREAM_TEXT",
|
|
77
|
+
ALWAYS_STREAM_TEXT_WARNING:"DEMO_ALWAYS_STREAM_TEXT_WARNING",AUDIO_CHANNEL_COUNT:"DEMO_AUDIO_CHANNEL_COUNT",AUDIO_LANGUAGE:"DEMO_AUDIO_LANGUAGE",AUDIO_LABEL:"DEMO_AUDIO_LABEL",AUDIO_ROBUSTNESS:"DEMO_AUDIO_ROBUSTNESS",AUTO_CORRECT_DASH_DRIFT:"DEMO_AUTO_CORRECT_DASH_DRIFT",AUTO_LOW_LATENCY:"DEMO_AUTO_LOW_LATENCY",AUTO_SHOW_TEXT:"DEMO_AUTO_SHOW_TEXT",AUTO_SHOW_TEXT_NEVER:"DEMO_AUTO_SHOW_TEXT_NEVER",AUTO_SHOW_TEXT_ALWAYS:"DEMO_AUTO_SHOW_TEXT_ALWAYS",AUTO_SHOW_TEXT_IF_PREFERRED_TEXT_LANGUAGE:"DEMO_AUTO_SHOW_TEXT_IF_PREFERRED_TEXT_LANGUAGE",
|
|
78
78
|
AUTO_SHOW_TEXT_IF_SUBTITLES_MAY_BE_NEEDED:"DEMO_AUTO_SHOW_TEXT_IF_SUBTITLES_MAY_BE_NEEDED",AVAILABILITY_WINDOW_OVERRIDE:"DEMO_AVAILABILITY_WINDOW_OVERRIDE",BACKOFF_FACTOR:"DEMO_BACKOFF_FACTOR",BASE_DELAY:"DEMO_BASE_DELAY",BANDWIDTH_DOWNGRADE:"DEMO_BANDWIDTH_DOWNGRADE",BANDWIDTH_ESTIMATE:"DEMO_BANDWIDTH_ESTIMATE",BANDWIDTH_UPGRADE:"DEMO_BANDWIDTH_UPGRADE",BUFFER_BEHIND:"DEMO_BUFFER_BEHIND",BUFFERING_GOAL:"DEMO_BUFFERING_GOAL",CLEAR_BUFFER_SWITCH:"DEMO_CLEAR_BUFFER_SWITCH",CLOCK_SYNC_URI:"DEMO_CLOCK_SYNC_URI",
|
|
79
79
|
CMCD_SECTION_HEADER:"DEMO_CMCD_SECTION_HEADER",CONNECTION_TIMEOUT:"DEMO_CONNECTION_TIMEOUT",CONTENT_ID:"DEMO_CONTENT_ID",CUSTOM_PLAYHEAD_TRACKER:"DEMO_CUSTOM_PLAYHEAD_TRACKER",DASH_SEQUENCE_MODE:"DEMO_DASH_SEQUENCE_MODE",DEFAULT_AUDIO_CODEC:"DEMO_DEFAULT_AUDIO_CODEC",DEFAULT_PRESENTATION_DELAY:"DEMO_DEFAULT_PRESENTATION_DELAY",DEFAULT_VIDEO_CODEC:"DEMO_DEFAULT_VIDEO_CODEC",DELAY_LICENSE:"DEMO_DELAY_LICENSE",DISABLE_AUDIO:"DEMO_DISABLE_AUDIO",DISABLE_TEXT:"DEMO_DISABLE_TEXT",DISABLE_THUMBNAILS:"DEMO_DISABLE_THUMBNAILS",
|
|
80
80
|
DISABLE_VIDEO:"DEMO_DISABLE_VIDEO",DISABLE_XLINK_PROCESSING:"DEMO_DISABLE_XLINK_PROCESSING",DISPATCH_ALL_EMSG_BOXES:"DEMO_DISPATCH_ALL_EMSG_BOXES",OBSERVE_QUALITY_CHANGES:"DEMO_OBSERVE_QUALITY_CHANGES",DRM_RETRY_SECTION_HEADER:"DEMO_DRM_RETRY_SECTION_HEADER",DRM_SECTION_HEADER:"DEMO_DRM_SECTION_HEADER",DRM_SESSION_TYPE:"DEMO_DRM_SESSION_TYPE",DURATION_BACKOFF:"DEMO_DURATION_BACKOFF",ENABLED:"DEMO_ENABLED",FAST_HALF_LIFE:"DEMO_FAST_HALF_LIFE",FORCE_HTTPS:"DEMO_FORCE_HTTPS",FORCE_TRANSMUX:"DEMO_FORCE_TRANSMUX",
|
|
@@ -89,20 +89,20 @@ SHAKA_CONTROLS:"DEMO_SHAKA_CONTROLS",SLOW_HALF_LIFE:"DEMO_SLOW_HALF_LIFE",SOURCE
|
|
|
89
89
|
TEXT_ROLE:"DEMO_TEXT_ROLE",TIMEOUT:"DEMO_TIMEOUT",TRICK_PLAY_CONTROLS:"DEMO_TRICK_PLAY_CONTROLS",TRICK_PLAY_CONTROLS_WARNING:"DEMO_TRICK_PLAY_CONTROLS_WARNING",UI_LOCALE:"DEMO_UI_LOCALE",UPDATE_EXPIRATION_TIME:"DEMO_UPDATE_EXPIRATION_TIME",UPDATE_INTERVAL_SECONDS:"DEMO_UPDATE_INTERVAL_SECONDS",USE_HEADERS:"DEMO_USE_HEADERS",USE_NATIVE_HLS_SAFARI:"DEMO_USE_NATIVE_HLS_SAFARI",USE_PERSISTENT_LICENSES:"DEMO_USE_PERSISTENT_LICENSES",USE_SAFARI_BEHAVIOR_FOR_LIVE:"DEMO_USE_SAFARI_BEHAVIOR_FOR_LIVE",VIDEO_ROBUSTNESS:"DEMO_VIDEO_ROBUSTNESS",
|
|
90
90
|
VNOVA:"DEMO_VNOVA",XLINK_FAIL_GRACEFULLY:"DEMO_XLINK_FAIL_GRACEFULLY",SEGMENT_PREFETCH_LIMIT:"DEMO_SEGMENT_PREFETCH_LIMIT"}};const ShakaDemoAssetInfo=class{constructor(a,b,c,d){this.name=a;this.shortName="";this.iconUri=b;this.manifestUri=c;this.source=d;this.disabled=this.focus=!1;this.extraText=[];this.extraThumbnail=[];this.description=this.certificateUri=null;this.isFeatured=!1;this.drm=[shakaAssets.KeySystem.CLEAR];this.features=[shakaAssets.Feature.VOD];this.licenseServers=new Map;this.licenseRequestHeaders=new Map;this.responseFilter=this.requestFilter=null;this.clearKeys=new Map;this.mediaPlaylistFullMimeType=this.mimeType=
|
|
91
91
|
this.imaManifestType=this.imaContentSrcId=this.imaAssetKey=this.imaVideoId=this.adTagUri=this.extraConfig=null;this.storedProgress=1}addDescription(a){this.description=a;return this}addCertificateUri(a){this.certificateUri=a;return this}static caseLessAlphaComparator_(a,b){return a.toLowerCase()<b.toLowerCase()?-1:a.toLowerCase()>b.toLowerCase()?1:0}addFeature(a){const b=shakaAssets.Feature;a==b.LIVE&&(this.features=this.features.filter(c=>c!=b.VOD));this.features.push(a);this.features.sort(ShakaDemoAssetInfo.caseLessAlphaComparator_);
|
|
92
|
-
return this}addKeySystem(a){this.isClear()&&(this.drm=[]);this.drm.push(a);this.drm.sort(ShakaDemoAssetInfo.caseLessAlphaComparator_);return this}isClear(){return 1==this.drm.length&&this.drm[0]==shakaAssets.KeySystem.CLEAR}setMediaPlaylistFullMimeType(a){this.mediaPlaylistFullMimeType=a;return this}setExtraConfig(a){this.extraConfig=a;return this}setMimeType(a){this.mimeType=a;return this}setRequestFilter(a){this.requestFilter=
|
|
93
|
-
b){this.licenseServers.set(a,b);return this}setAdTagUri(a){this.adTagUri=a;this.addFeature(shakaAssets.Feature.ADS);return this}setIMAContentSourceId(a){this.imaContentSrcId=a;this.features.includes(shakaAssets.Feature.ADS)||this.addFeature(shakaAssets.Feature.ADS);return this}setIMAVideoId(a){this.imaVideoId=a;this.features.includes(shakaAssets.Feature.ADS)||this.addFeature(shakaAssets.Feature.ADS);return this}setIMAAssetKey(a){this.imaAssetKey=
|
|
94
|
-
this.addFeature(shakaAssets.Feature.ADS);return this}setIMAManifestType(a){this.imaManifestType=a;this.features.includes(shakaAssets.Feature.ADS)||this.addFeature(shakaAssets.Feature.ADS);return this}addLicenseRequestHeader(a,b){this.licenseRequestHeaders.set(a,b);return this}addExtraText(a){this.extraText.push(a);return this}addExtraThumbnail(a){this.extraThumbnail.push(a);return this}markAsFocused(){this.focus=!0;return this}markAsFeatured(a){this.isFeatured
|
|
95
|
-
return this}markAsDisabled(){this.disabled=!0;return this}toJSON(){const a={};for(const b in this){const c=this[b];if(c instanceof Map){const d={__type__:"map"};for(const e of c.entries())d[e[0]]=e[1];a[b]=d}else a[b]=c}return a}applyFilters(a){a.clearAllRequestFilters();a.clearAllResponseFilters();this.licenseRequestHeaders.size&&a.registerRequestFilter((b,c,d)=>this.addLicenseRequestHeaders_(this.licenseRequestHeaders,b,c));this.requestFilter&&a.registerRequestFilter(this.requestFilter);
|
|
96
|
-
a.registerResponseFilter(this.responseFilter)}getConfiguration(){const a={drm:{advanced:{}},manifest:{dash:{},hls:{}}};if(this.extraConfig)for(const b in this.extraConfig)a[b]=this.extraConfig[b];this.mediaPlaylistFullMimeType&&(a.manifest.hls.mediaPlaylistFullMimeType=this.mediaPlaylistFullMimeType);this.licenseServers.size&&(a.drm.servers=a.drm.servers||{},this.licenseServers.forEach((b,c)=>{a.drm.servers[c]=b}));this.clearKeys.size&&(a.drm.clearKeys=a.drm.clearKeys||{},this.clearKeys.forEach((b,
|
|
92
|
+
return this}addKeySystem(a){this.isClear()&&(this.drm=[]);this.drm.push(a);this.drm.sort(ShakaDemoAssetInfo.caseLessAlphaComparator_);return this}isClear(){return 1==this.drm.length&&this.drm[0]==shakaAssets.KeySystem.CLEAR}isAes128(){return 1==this.drm.length&&this.drm[0]==shakaAssets.KeySystem.AES128}setMediaPlaylistFullMimeType(a){this.mediaPlaylistFullMimeType=a;return this}setExtraConfig(a){this.extraConfig=a;return this}setMimeType(a){this.mimeType=a;return this}setRequestFilter(a){this.requestFilter=
|
|
93
|
+
a;return this}setResponseFilter(a){this.responseFilter=a;return this}addLicenseServer(a,b){this.licenseServers.set(a,b);return this}setAdTagUri(a){this.adTagUri=a;this.addFeature(shakaAssets.Feature.ADS);return this}setIMAContentSourceId(a){this.imaContentSrcId=a;this.features.includes(shakaAssets.Feature.ADS)||this.addFeature(shakaAssets.Feature.ADS);return this}setIMAVideoId(a){this.imaVideoId=a;this.features.includes(shakaAssets.Feature.ADS)||this.addFeature(shakaAssets.Feature.ADS);return this}setIMAAssetKey(a){this.imaAssetKey=
|
|
94
|
+
a;this.features.includes(shakaAssets.Feature.ADS)||this.addFeature(shakaAssets.Feature.ADS);return this}setIMAManifestType(a){this.imaManifestType=a;this.features.includes(shakaAssets.Feature.ADS)||this.addFeature(shakaAssets.Feature.ADS);return this}addLicenseRequestHeader(a,b){this.licenseRequestHeaders.set(a,b);return this}addExtraText(a){this.extraText.push(a);return this}addExtraThumbnail(a){this.extraThumbnail.push(a);return this}markAsFocused(){this.focus=!0;return this}markAsFeatured(a){this.isFeatured=
|
|
95
|
+
!0;this.shortName=a||this.shortName;return this}markAsDisabled(){this.disabled=!0;return this}toJSON(){const a={};for(const b in this){const c=this[b];if(c instanceof Map){const d={__type__:"map"};for(const e of c.entries())d[e[0]]=e[1];a[b]=d}else a[b]=c}return a}applyFilters(a){a.clearAllRequestFilters();a.clearAllResponseFilters();this.licenseRequestHeaders.size&&a.registerRequestFilter((b,c,d)=>this.addLicenseRequestHeaders_(this.licenseRequestHeaders,b,c));this.requestFilter&&a.registerRequestFilter(this.requestFilter);
|
|
96
|
+
this.responseFilter&&a.registerResponseFilter(this.responseFilter)}getConfiguration(){const a={drm:{advanced:{}},manifest:{dash:{},hls:{}}};if(this.extraConfig)for(const b in this.extraConfig)a[b]=this.extraConfig[b];this.mediaPlaylistFullMimeType&&(a.manifest.hls.mediaPlaylistFullMimeType=this.mediaPlaylistFullMimeType);this.licenseServers.size&&(a.drm.servers=a.drm.servers||{},this.licenseServers.forEach((b,c)=>{a.drm.servers[c]=b}));this.clearKeys.size&&(a.drm.clearKeys=a.drm.clearKeys||{},this.clearKeys.forEach((b,
|
|
97
97
|
c)=>{a.drm.clearKeys[c]=b}));return a}addLicenseRequestHeaders_(a,b,c){b==shaka.net.NetworkingEngine.RequestType.LICENSE&&a.forEach((d,e)=>{c.headers[e]=d})}isStored(){return null!=this.storedContent}static makeBlankAsset(){return new ShakaDemoAssetInfo("","","",shakaAssets.Source.CUSTOM)}static fromJSON(a){const b={};for(const c in a){const d=a[c];if(d&&"object"==typeof d&&"map"==d.__type__){const e=new Map;for(const f in d)"__type__"!=f&&e.set(f,d[f]);b[c]=e}else b[c]=d}a=ShakaDemoAssetInfo.makeBlankAsset();
|
|
98
98
|
Object.assign(a,b);return a}};const shakaAssets={};
|
|
99
99
|
shakaAssets.Source={CUSTOM:shakaDemo.MessageIds.CUSTOM,SHAKA:shakaDemo.MessageIds.SHAKA,AXINOM:shakaDemo.MessageIds.AXINOM,UNIFIED_STREAMING:shakaDemo.MessageIds.UNIFIED_STREAMING,DASH_IF:shakaDemo.MessageIds.DASH_IF,BITCODIN:shakaDemo.MessageIds.BITCODIN,METACDN:shakaDemo.MessageIds.METACDN,NIMBLE_STREAMER:shakaDemo.MessageIds.NIMBLE_STREAMER,AZURE_MEDIA_SERVICES:shakaDemo.MessageIds.AZURE_MEDIA_SERVICES,GPAC:shakaDemo.MessageIds.GPAC,UPLYNK:shakaDemo.MessageIds.UPLYNK,APPLE:shakaDemo.MessageIds.APPLE,IRT:shakaDemo.MessageIds.IRT,
|
|
100
|
-
MICROSOFT:shakaDemo.MessageIds.MICROSOFT,VNOVA:shakaDemo.MessageIds.VNOVA};shakaAssets.KeySystem={CLEAR_KEY:shakaDemo.MessageIds.CLEAR_KEY,FAIRPLAY:shakaDemo.MessageIds.FAIRPLAY,PLAYREADY:shakaDemo.MessageIds.PLAYREADY,WIDEVINE:shakaDemo.MessageIds.WIDEVINE,CLEAR:shakaDemo.MessageIds.CLEAR};
|
|
100
|
+
MICROSOFT:shakaDemo.MessageIds.MICROSOFT,VNOVA:shakaDemo.MessageIds.VNOVA};shakaAssets.KeySystem={CLEAR_KEY:shakaDemo.MessageIds.CLEAR_KEY,FAIRPLAY:shakaDemo.MessageIds.FAIRPLAY,PLAYREADY:shakaDemo.MessageIds.PLAYREADY,WIDEVINE:shakaDemo.MessageIds.WIDEVINE,AES128:shakaDemo.MessageIds.AES128,CLEAR:shakaDemo.MessageIds.CLEAR};
|
|
101
101
|
shakaAssets.AdTag={SINGLE_LINEAR_AD:"https://pubads.g.doubleclick.net/gampad/ads?sz=640x480&iu=/124319096/external/single_ad_samples&ciu_szs=300x250&impl=s&gdfp_req=1&env=vp&output=vast&unviewed_position_start=1&cust_params=deployment%3Ddevsite%26sample_ct%3Dlinear&correlator=",SINGLE_NON_LINEAR_AD:"https://pubads.g.doubleclick.net/gampad/ads?sz=480x70&iu=/124319096/external/single_ad_samples&ciu_szs=300x250 &impl=s&gdfp_req=1&env=vp&output=vast&unviewed_position_start=1&cust_params=deployment%3Ddevsite%26sample_ct%3Dnonlinear&correlator=",
|
|
102
102
|
SINGLE_SKIPPABLE_AD:"https://pubads.g.doubleclick.net/gampad/ads?sz=640x480&iu=/124319096/external/single_ad_samples&ciu_szs=300x250&impl=s&gdfp_req=1&env=vp&output=vast&unviewed_position_start=1&cust_params=deployment%3Ddevsite%26sample_ct%3Dskippablelinear&correlator=",AD_POD_PREROLL_MIDROLL_POSTROLL:"https://pubads.g.doubleclick.net/gampad/ads?sz=640x480&iu=/124319096/external/ad_rule_samples&ciu_szs=300x250&ad_rule=1&impl=s&gdfp_req=1&env=vp&output=vmap&unviewed_position_start=1&cust_params=deployment%3Ddevsite%26sample_ar%3Dpremidpostpod&cmsid=496&vid=short_onecue&correlator="};
|
|
103
|
-
shakaAssets.identifierForKeySystem=a=>{const b=shakaAssets.KeySystem;switch(a){case b.CLEAR_KEY:return"org.w3.clearkey";case b.FAIRPLAY:return"com.apple.fps";case b.PLAYREADY:return"com.microsoft.playready";case b.WIDEVINE:return"com.widevine.alpha";default:return"no drm protection"}};
|
|
103
|
+
shakaAssets.identifierForKeySystem=a=>{const b=shakaAssets.KeySystem;switch(a){case b.CLEAR_KEY:return"org.w3.clearkey";case b.FAIRPLAY:return"com.apple.fps";case b.PLAYREADY:return"com.microsoft.playready";case b.WIDEVINE:return"com.widevine.alpha";case b.AES128:return"aes128";default:return"no drm protection"}};
|
|
104
104
|
shakaAssets.Feature={TRICK_MODE:shakaDemo.MessageIds.TRICK_MODE,XLINK:shakaDemo.MessageIds.XLINK,SUBTITLES:shakaDemo.MessageIds.SUBTITLES,CAPTIONS:shakaDemo.MessageIds.CAPTIONS,MULTIPLE_LANGUAGES:shakaDemo.MessageIds.MULTIPLE_LANGUAGES,AUDIO_ONLY:shakaDemo.MessageIds.AUDIO_ONLY,OFFLINE:shakaDemo.MessageIds.OFFLINE,STORED:shakaDemo.MessageIds.STORED,ADS:shakaDemo.MessageIds.ADS,LIVE:shakaDemo.MessageIds.LIVE,VOD:shakaDemo.MessageIds.VOD,WEBM:shakaDemo.MessageIds.WEBM,MP4:shakaDemo.MessageIds.MP4,MP2TS:shakaDemo.MessageIds.MP2TS,
|
|
105
|
-
CONTAINERLESS:shakaDemo.MessageIds.CONTAINERLESS,HIGH_DEFINITION:shakaDemo.MessageIds.HIGH_DEFINITION,ULTRA_HIGH_DEFINITION:shakaDemo.MessageIds.ULTRA_HIGH_DEFINITION,SURROUND:shakaDemo.MessageIds.SURROUND,DASH:shakaDemo.MessageIds.DASH,HLS:shakaDemo.MessageIds.HLS,MSS:shakaDemo.MessageIds.MSS,THUMBNAILS:shakaDemo.MessageIds.THUMBNAILS,LCEVC:shakaDemo.MessageIds.LCEVC,
|
|
105
|
+
CONTAINERLESS:shakaDemo.MessageIds.CONTAINERLESS,HIGH_DEFINITION:shakaDemo.MessageIds.HIGH_DEFINITION,ULTRA_HIGH_DEFINITION:shakaDemo.MessageIds.ULTRA_HIGH_DEFINITION,SURROUND:shakaDemo.MessageIds.SURROUND,DASH:shakaDemo.MessageIds.DASH,HLS:shakaDemo.MessageIds.HLS,MSS:shakaDemo.MessageIds.MSS,THUMBNAILS:shakaDemo.MessageIds.THUMBNAILS,LCEVC:shakaDemo.MessageIds.LCEVC,LOW_LATENCY:shakaDemo.MessageIds.LOW_LATENCY};shakaAssets.lastUplynkPrefix="";
|
|
106
106
|
shakaAssets.UplynkResponseFilter=(a,b)=>{a==shaka.net.NetworkingEngine.RequestType.MANIFEST&&(shakaAssets.lastUplynkPrefix=b.headers["x-uplynk-prefix"]?b.headers["x-uplynk-prefix"]:"")};
|
|
107
107
|
shakaAssets.UplynkRequestFilter=(a,b)=>{a==shaka.net.NetworkingEngine.RequestType.LICENSE&&(b.uris[0].includes("wv")&&shakaAssets.lastUplynkPrefix?b.uris[0]=shakaAssets.lastUplynkPrefix.concat("/wv"):b.uris[0].includes("ck")&&shakaAssets.lastUplynkPrefix?b.uris[0]=shakaAssets.lastUplynkPrefix.concat("/ck"):b.uris[0].includes("pr")&&shakaAssets.lastUplynkPrefix&&(b.uris[0]=shakaAssets.lastUplynkPrefix.concat("/pr")))};
|
|
108
108
|
shakaAssets.testAssets=[(new ShakaDemoAssetInfo("Big Buck Bunny: the Dark Truths of a Video Dev Cartoon (DASH)","https://storage.googleapis.com/shaka-asset-icons/dark_truth.png","https://storage.googleapis.com/shaka-demo-assets/bbb-dark-truths/dash.mpd",shakaAssets.Source.SHAKA)).addFeature(shakaAssets.Feature.DASH).addFeature(shakaAssets.Feature.HIGH_DEFINITION).addFeature(shakaAssets.Feature.MP4).addFeature(shakaAssets.Feature.WEBM).addFeature(shakaAssets.Feature.OFFLINE),(new ShakaDemoAssetInfo("Big Buck Bunny: the Dark Truths of a Video Dev Cartoon (HLS)",
|
|
@@ -115,12 +115,13 @@ shakaAssets.testAssets=[(new ShakaDemoAssetInfo("Big Buck Bunny: the Dark Truths
|
|
|
115
115
|
"https://storage.googleapis.com/shaka-asset-icons/angel_one.png","https://storage.googleapis.com/shaka-demo-assets/angel-one-widevine-hls/hls.m3u8",shakaAssets.Source.SHAKA)).addKeySystem(shakaAssets.KeySystem.WIDEVINE).addFeature(shakaAssets.Feature.HLS).addFeature(shakaAssets.Feature.MP4).addFeature(shakaAssets.Feature.MULTIPLE_LANGUAGES).addFeature(shakaAssets.Feature.SUBTITLES).addFeature(shakaAssets.Feature.SURROUND).addFeature(shakaAssets.Feature.OFFLINE).addLicenseServer("com.widevine.alpha",
|
|
116
116
|
"https://cwip-shaka-proxy.appspot.com/no_auth"),(new ShakaDemoAssetInfo("Angel One (HLS, MP4, multilingual, Widevine, single linear ad)","https://storage.googleapis.com/shaka-asset-icons/angel_one.png","https://storage.googleapis.com/shaka-demo-assets/angel-one-widevine-hls/hls.m3u8",shakaAssets.Source.SHAKA)).addKeySystem(shakaAssets.KeySystem.WIDEVINE).setAdTagUri(shakaAssets.AdTag.SINGLE_LINEAR_AD).addFeature(shakaAssets.Feature.HLS).addFeature(shakaAssets.Feature.MP4).addFeature(shakaAssets.Feature.MULTIPLE_LANGUAGES).addFeature(shakaAssets.Feature.SUBTITLES).addFeature(shakaAssets.Feature.SURROUND).addFeature(shakaAssets.Feature.OFFLINE).addLicenseServer("com.widevine.alpha",
|
|
117
117
|
"https://cwip-shaka-proxy.appspot.com/no_auth"),(new ShakaDemoAssetInfo("Angel One (HLS, MP4, multilingual, Widevine, single non-linear ad)","https://storage.googleapis.com/shaka-asset-icons/angel_one.png","https://storage.googleapis.com/shaka-demo-assets/angel-one-widevine-hls/hls.m3u8",shakaAssets.Source.SHAKA)).addKeySystem(shakaAssets.KeySystem.WIDEVINE).setAdTagUri(shakaAssets.AdTag.SINGLE_NON_LINEAR_AD).addFeature(shakaAssets.Feature.HLS).addFeature(shakaAssets.Feature.MP4).addFeature(shakaAssets.Feature.MULTIPLE_LANGUAGES).addFeature(shakaAssets.Feature.SUBTITLES).addFeature(shakaAssets.Feature.SURROUND).addFeature(shakaAssets.Feature.OFFLINE).addLicenseServer("com.widevine.alpha",
|
|
118
|
-
"https://cwip-shaka-proxy.appspot.com/no_auth"),(new ShakaDemoAssetInfo("Sintel (HLS, TS, AES-128 key rotation)","https://storage.googleapis.com/shaka-asset-icons/sintel.png","https://storage.googleapis.com/shaka-demo-assets/sintel-ts-aes-key-rotation/master.m3u8",shakaAssets.Source.SHAKA)).addFeature(shakaAssets.Feature.HLS).addFeature(shakaAssets.Feature.MP2TS).addFeature(shakaAssets.Feature.OFFLINE),(new ShakaDemoAssetInfo("Sintel (HLS, FMP4, AES-128)",
|
|
119
|
-
"https://storage.googleapis.com/shaka-demo-assets/sintel-fmp4-aes/master.m3u8",shakaAssets.Source.SHAKA)).addFeature(shakaAssets.Feature.HLS).addFeature(shakaAssets.Feature.MP4).addFeature(shakaAssets.Feature.OFFLINE),(new ShakaDemoAssetInfo("Sintel 4k (multicodec)","https://storage.googleapis.com/shaka-asset-icons/sintel.png","https://storage.googleapis.com/shaka-demo-assets/sintel/dash.mpd",
|
|
120
|
-
(new ShakaDemoAssetInfo("Sintel w/ trick mode (MP4 only, 720p)","https://storage.googleapis.com/shaka-asset-icons/sintel.png","https://storage.googleapis.com/shaka-demo-assets/sintel-trickplay/dash.mpd",shakaAssets.Source.SHAKA)).addFeature(shakaAssets.Feature.DASH).addFeature(shakaAssets.Feature.MP4).addFeature(shakaAssets.Feature.SUBTITLES).addFeature(shakaAssets.Feature.TRICK_MODE).addFeature(shakaAssets.Feature.OFFLINE),
|
|
121
|
-
"https://storage.googleapis.com/shaka-demo-assets/sintel-webm-only/dash.mpd",shakaAssets.Source.SHAKA)).addFeature(shakaAssets.Feature.DASH).addFeature(shakaAssets.Feature.HIGH_DEFINITION).addFeature(shakaAssets.Feature.SUBTITLES).addFeature(shakaAssets.Feature.WEBM).addFeature(shakaAssets.Feature.OFFLINE),(new ShakaDemoAssetInfo("Sintel 4k (MP4 only)","https://storage.googleapis.com/shaka-asset-icons/sintel.png",
|
|
122
|
-
|
|
123
|
-
|
|
118
|
+
"https://cwip-shaka-proxy.appspot.com/no_auth"),(new ShakaDemoAssetInfo("Sintel (HLS, TS, AES-128 key rotation)","https://storage.googleapis.com/shaka-asset-icons/sintel.png","https://storage.googleapis.com/shaka-demo-assets/sintel-ts-aes-key-rotation/master.m3u8",shakaAssets.Source.SHAKA)).addKeySystem(shakaAssets.KeySystem.AES128).addFeature(shakaAssets.Feature.HLS).addFeature(shakaAssets.Feature.MP2TS).addFeature(shakaAssets.Feature.OFFLINE),(new ShakaDemoAssetInfo("Sintel (HLS, FMP4, AES-128)",
|
|
119
|
+
"https://storage.googleapis.com/shaka-asset-icons/sintel.png","https://storage.googleapis.com/shaka-demo-assets/sintel-fmp4-aes/master.m3u8",shakaAssets.Source.SHAKA)).addKeySystem(shakaAssets.KeySystem.AES128).addFeature(shakaAssets.Feature.HLS).addFeature(shakaAssets.Feature.MP4).addFeature(shakaAssets.Feature.OFFLINE),(new ShakaDemoAssetInfo("Sintel 4k (multicodec)","https://storage.googleapis.com/shaka-asset-icons/sintel.png","https://storage.googleapis.com/shaka-demo-assets/sintel/dash.mpd",
|
|
120
|
+
shakaAssets.Source.SHAKA)).addFeature(shakaAssets.Feature.DASH).addFeature(shakaAssets.Feature.HIGH_DEFINITION).addFeature(shakaAssets.Feature.MP4).addFeature(shakaAssets.Feature.SUBTITLES).addFeature(shakaAssets.Feature.WEBM).addFeature(shakaAssets.Feature.OFFLINE),(new ShakaDemoAssetInfo("Sintel w/ trick mode (MP4 only, 720p)","https://storage.googleapis.com/shaka-asset-icons/sintel.png","https://storage.googleapis.com/shaka-demo-assets/sintel-trickplay/dash.mpd",shakaAssets.Source.SHAKA)).addFeature(shakaAssets.Feature.DASH).addFeature(shakaAssets.Feature.MP4).addFeature(shakaAssets.Feature.SUBTITLES).addFeature(shakaAssets.Feature.TRICK_MODE).addFeature(shakaAssets.Feature.OFFLINE),
|
|
121
|
+
(new ShakaDemoAssetInfo("Sintel 4k (WebM only)","https://storage.googleapis.com/shaka-asset-icons/sintel.png","https://storage.googleapis.com/shaka-demo-assets/sintel-webm-only/dash.mpd",shakaAssets.Source.SHAKA)).addFeature(shakaAssets.Feature.DASH).addFeature(shakaAssets.Feature.HIGH_DEFINITION).addFeature(shakaAssets.Feature.SUBTITLES).addFeature(shakaAssets.Feature.WEBM).addFeature(shakaAssets.Feature.OFFLINE),(new ShakaDemoAssetInfo("Sintel 4k (MP4 only)","https://storage.googleapis.com/shaka-asset-icons/sintel.png",
|
|
122
|
+
"https://storage.googleapis.com/shaka-demo-assets/sintel-mp4-only/dash.mpd",shakaAssets.Source.SHAKA)).addFeature(shakaAssets.Feature.DASH).addFeature(shakaAssets.Feature.HIGH_DEFINITION).addFeature(shakaAssets.Feature.MP4).addFeature(shakaAssets.Feature.SUBTITLES).addFeature(shakaAssets.Feature.OFFLINE),(new ShakaDemoAssetInfo("Sintel 4k (multicodec, Widevine)","https://storage.googleapis.com/shaka-asset-icons/sintel.png","https://storage.googleapis.com/shaka-demo-assets/sintel-widevine/dash.mpd",
|
|
123
|
+
shakaAssets.Source.SHAKA)).addKeySystem(shakaAssets.KeySystem.WIDEVINE).addFeature(shakaAssets.Feature.DASH).addFeature(shakaAssets.Feature.HIGH_DEFINITION).addFeature(shakaAssets.Feature.MP4).addFeature(shakaAssets.Feature.SUBTITLES).addFeature(shakaAssets.Feature.WEBM).addFeature(shakaAssets.Feature.OFFLINE).addLicenseServer("com.widevine.alpha","https://cwip-shaka-proxy.appspot.com/no_auth").setExtraConfig({drm:{advanced:{"com.widevine.alpha":{serverCertificateUri:"https://cwip-shaka-proxy.appspot.com/service-cert"}}}}),
|
|
124
|
+
(new ShakaDemoAssetInfo("Sintel 4k (multicodec, Widevine, ads)","https://storage.googleapis.com/shaka-asset-icons/sintel.png","https://storage.googleapis.com/shaka-demo-assets/sintel-widevine/dash.mpd",shakaAssets.Source.SHAKA)).addDescription("A Blender Foundation short film, protected by Widevine encryption with pre-roll, mid-roll, and post-roll ads.").markAsFeatured("Sintel").setAdTagUri(shakaAssets.AdTag.AD_POD_PREROLL_MIDROLL_POSTROLL).addKeySystem(shakaAssets.KeySystem.WIDEVINE).addFeature(shakaAssets.Feature.DASH).addFeature(shakaAssets.Feature.HIGH_DEFINITION).addFeature(shakaAssets.Feature.MP4).addFeature(shakaAssets.Feature.SUBTITLES).addFeature(shakaAssets.Feature.WEBM).addFeature(shakaAssets.Feature.OFFLINE).addLicenseServer("com.widevine.alpha",
|
|
124
125
|
"https://cwip-shaka-proxy.appspot.com/no_auth"),(new ShakaDemoAssetInfo("Sintel 4k (MP4, VTT in MP4)","https://storage.googleapis.com/shaka-asset-icons/sintel.png","https://storage.googleapis.com/shaka-demo-assets/sintel-mp4-wvtt/dash.mpd",shakaAssets.Source.SHAKA)).addFeature(shakaAssets.Feature.DASH).addFeature(shakaAssets.Feature.HIGH_DEFINITION).addFeature(shakaAssets.Feature.MP4).addFeature(shakaAssets.Feature.SUBTITLES).addFeature(shakaAssets.Feature.OFFLINE),(new ShakaDemoAssetInfo("Sintel w/ 44 subtitle languages",
|
|
125
126
|
"https://storage.googleapis.com/shaka-asset-icons/sintel.png","https://storage.googleapis.com/shaka-demo-assets/sintel-many-subs/dash.mpd",shakaAssets.Source.SHAKA)).addFeature(shakaAssets.Feature.DASH).addFeature(shakaAssets.Feature.MP4).addFeature(shakaAssets.Feature.SUBTITLES).addFeature(shakaAssets.Feature.SURROUND).addFeature(shakaAssets.Feature.OFFLINE),(new ShakaDemoAssetInfo("Heliocentrism (multicodec, multiperiod)","https://storage.googleapis.com/shaka-asset-icons/heliocentricism.png","https://storage.googleapis.com/shaka-demo-assets/heliocentrism/heliocentrism.mpd",
|
|
126
127
|
shakaAssets.Source.SHAKA)).addFeature(shakaAssets.Feature.DASH).addFeature(shakaAssets.Feature.MP4).addFeature(shakaAssets.Feature.WEBM).addFeature(shakaAssets.Feature.OFFLINE),(new ShakaDemoAssetInfo("Heliocentrism (multicodec, multiperiod, xlink)","https://storage.googleapis.com/shaka-asset-icons/heliocentricism.png","https://storage.googleapis.com/shaka-demo-assets/heliocentrism-xlink/heliocentrism.mpd",shakaAssets.Source.SHAKA)).addFeature(shakaAssets.Feature.DASH).addFeature(shakaAssets.Feature.MP4).addFeature(shakaAssets.Feature.WEBM).addFeature(shakaAssets.Feature.XLINK).addFeature(shakaAssets.Feature.OFFLINE),
|
|
@@ -152,15 +153,15 @@ shakaAssets.Source.DASH_IF)).addFeature(shakaAssets.Feature.DASH).addFeature(sha
|
|
|
152
153
|
(new ShakaDemoAssetInfo("Live sim SegmentTimeline StartOver [-20s, +20s] (2s segments)","https://storage.googleapis.com/shaka-asset-icons/dash_if_test_pattern.png","https://livesim2.dashif.org/livesim2/segtimeline_1/startrel_-20/stoprel_20/timeoffset_0/testpic_2s/Manifest.mpd",shakaAssets.Source.DASH_IF)).addFeature(shakaAssets.Feature.DASH).addFeature(shakaAssets.Feature.MP4),(new ShakaDemoAssetInfo("Live sim StartOver SegTmpl Duration [-20s, +20s] (2s segments)","https://storage.googleapis.com/shaka-asset-icons/dash_if_test_pattern.png",
|
|
153
154
|
"https://livesim2.dashif.org/livesim2/startrel_-20/stoprel_20/timeoffset_0/testpic_2s/Manifest.mpd",shakaAssets.Source.DASH_IF)).addFeature(shakaAssets.Feature.DASH).addFeature(shakaAssets.Feature.MP4),(new ShakaDemoAssetInfo("Live sim SegTmpl Duration (multi-period 60s)","https://storage.googleapis.com/shaka-asset-icons/dash_if_test_pattern.png","https://livesim2.dashif.org/livesim2/utc_head/periods_60/testpic_2s/Manifest.mpd",shakaAssets.Source.DASH_IF)).addFeature(shakaAssets.Feature.DASH).addFeature(shakaAssets.Feature.LIVE).addFeature(shakaAssets.Feature.MP4),
|
|
154
155
|
(new ShakaDemoAssetInfo("Live sim TTML Image Subtitles embedded (VoD)","https://storage.googleapis.com/shaka-asset-icons/dash_if_test_pattern.png","https://livesim2.dashif.org/dash/testpic_2s/img_subs.mpd",shakaAssets.Source.DASH_IF)).addFeature(shakaAssets.Feature.DASH).addFeature(shakaAssets.Feature.SUBTITLES).addFeature(shakaAssets.Feature.MP4),(new ShakaDemoAssetInfo("Low Latency DASH Live","https://storage.googleapis.com/shaka-asset-icons/dash_if_test_pattern.png","https://livesim2.dashif.org/livesim2/chunkdur_1/ato_7/testpic4_8s/Manifest300.mpd",
|
|
155
|
-
shakaAssets.Source.DASH_IF)).addFeature(shakaAssets.Feature.DASH).addFeature(shakaAssets.Feature.LIVE).addFeature(shakaAssets.Feature.MP4).addFeature(shakaAssets.Feature.
|
|
156
|
+
shakaAssets.Source.DASH_IF)).addFeature(shakaAssets.Feature.DASH).addFeature(shakaAssets.Feature.LIVE).addFeature(shakaAssets.Feature.MP4).addFeature(shakaAssets.Feature.LOW_LATENCY).setExtraConfig({streaming:{lowLatencyMode:!0}}),(new ShakaDemoAssetInfo("DASH-IF CEA-608 VOD","https://storage.googleapis.com/shaka-asset-icons/dash_if_test_pattern.png","https://livesim2.dashif.org/dash/testpic_2s/cea608.mpd",shakaAssets.Source.DASH_IF)).addFeature(shakaAssets.Feature.DASH).addFeature(shakaAssets.Feature.SUBTITLES).addFeature(shakaAssets.Feature.MP4),
|
|
156
157
|
(new ShakaDemoAssetInfo("DASH-IF CEA-608 Live","https://storage.googleapis.com/shaka-asset-icons/dash_if_test_pattern.png","https://livesim2.dashif.org/livesim2/testpic_2s/cea608.mpd",shakaAssets.Source.DASH_IF)).addFeature(shakaAssets.Feature.DASH).addFeature(shakaAssets.Feature.LIVE).addFeature(shakaAssets.Feature.SUBTITLES).addFeature(shakaAssets.Feature.MP4),(new ShakaDemoAssetInfo("Akamai Low Latency DASH Live","https://storage.googleapis.com/shaka-asset-icons/dash_if_test_pattern.png","https://akamaibroadcasteruseast.akamaized.net/cmaf/live/657078/akasource/out.mpd",
|
|
157
|
-
shakaAssets.Source.DASH_IF)).addFeature(shakaAssets.Feature.DASH).addFeature(shakaAssets.Feature.LIVE).addFeature(shakaAssets.Feature.MP4).addFeature(shakaAssets.Feature.
|
|
158
|
+
shakaAssets.Source.DASH_IF)).addFeature(shakaAssets.Feature.DASH).addFeature(shakaAssets.Feature.LIVE).addFeature(shakaAssets.Feature.MP4).addFeature(shakaAssets.Feature.LOW_LATENCY).setExtraConfig({streaming:{lowLatencyMode:!0}}),(new ShakaDemoAssetInfo("DASH-IF THUMBNAILS - Single adaptation set, 7 tiles at 10x1, each thumb 320x180","https://storage.googleapis.com/shaka-asset-icons/dash_if_test_pattern.png","https://dash.akamaized.net/akamai/bbb_30fps/bbb_with_tiled_thumbnails.mpd",shakaAssets.Source.DASH_IF)).addFeature(shakaAssets.Feature.DASH).addFeature(shakaAssets.Feature.ULTRA_HIGH_DEFINITION).addFeature(shakaAssets.Feature.MP4).addFeature(shakaAssets.Feature.OFFLINE).addFeature(shakaAssets.Feature.THUMBNAILS),
|
|
158
159
|
(new ShakaDemoAssetInfo("DASH-IF THUMBNAILS - Single adaptation set, 4 tiles at 10x1, each thumb 205x115","https://storage.googleapis.com/shaka-asset-icons/dash_if_test_pattern.png","https://dash.akamaized.net/akamai/bbb_30fps/bbb_with_4_tiles_thumbnails.mpd",shakaAssets.Source.DASH_IF)).addFeature(shakaAssets.Feature.DASH).addFeature(shakaAssets.Feature.ULTRA_HIGH_DEFINITION).addFeature(shakaAssets.Feature.MP4).addFeature(shakaAssets.Feature.OFFLINE).addFeature(shakaAssets.Feature.THUMBNAILS),(new ShakaDemoAssetInfo("DASH-IF THUMBNAILS - Single adaptation set, 1 tile at 10x20, each thumb 102x58",
|
|
159
160
|
"https://storage.googleapis.com/shaka-asset-icons/dash_if_test_pattern.png","https://dash.akamaized.net/akamai/bbb_30fps/bbb_with_tiled_thumbnails_2.mpd",shakaAssets.Source.DASH_IF)).addFeature(shakaAssets.Feature.DASH).addFeature(shakaAssets.Feature.ULTRA_HIGH_DEFINITION).addFeature(shakaAssets.Feature.MP4).addFeature(shakaAssets.Feature.OFFLINE).addFeature(shakaAssets.Feature.THUMBNAILS),(new ShakaDemoAssetInfo("DASH-IF THUMBNAILS - Two adaptation sets with different thumb resolutions","https://storage.googleapis.com/shaka-asset-icons/dash_if_test_pattern.png",
|
|
160
161
|
"https://dash.akamaized.net/akamai/bbb_30fps/bbb_with_multiple_tiled_thumbnails.mpd",shakaAssets.Source.DASH_IF)).addFeature(shakaAssets.Feature.DASH).addFeature(shakaAssets.Feature.ULTRA_HIGH_DEFINITION).addFeature(shakaAssets.Feature.MP4).addFeature(shakaAssets.Feature.OFFLINE).addFeature(shakaAssets.Feature.THUMBNAILS),(new ShakaDemoAssetInfo("DASH-IF THUMBNAILS - Live stream, Single adaptation set, 1x1 tiles (livesim)","https://storage.googleapis.com/shaka-asset-icons/dash_if_test_pattern.png",
|
|
161
162
|
"https://livesim2.dashif.org/livesim2/testpic_2s/Manifest_thumbs.mpd",shakaAssets.Source.DASH_IF)).addFeature(shakaAssets.Feature.DASH).addFeature(shakaAssets.Feature.ULTRA_HIGH_DEFINITION).addFeature(shakaAssets.Feature.MP4).addFeature(shakaAssets.Feature.LIVE).addFeature(shakaAssets.Feature.THUMBNAILS),(new ShakaDemoAssetInfo("Art of Motion (DASH)","https://storage.googleapis.com/shaka-asset-icons/art_of_motion.png","https://bitdash-a.akamaihd.net/content/MI201109210084_1/mpds/f08e80da-bf1d-4e3d-8899-f0f6155f6efa.mpd",
|
|
162
163
|
shakaAssets.Source.BITCODIN)).addFeature(shakaAssets.Feature.DASH).addFeature(shakaAssets.Feature.HIGH_DEFINITION).addFeature(shakaAssets.Feature.MP4).addFeature(shakaAssets.Feature.OFFLINE),(new ShakaDemoAssetInfo("Art of Motion (HLS, TS)","https://storage.googleapis.com/shaka-asset-icons/art_of_motion.png","https://bitdash-a.akamaihd.net/content/MI201109210084_1/m3u8s/f08e80da-bf1d-4e3d-8899-f0f6155f6efa.m3u8",shakaAssets.Source.BITCODIN)).addFeature(shakaAssets.Feature.HIGH_DEFINITION).addFeature(shakaAssets.Feature.HLS).addFeature(shakaAssets.Feature.MP2TS).addFeature(shakaAssets.Feature.OFFLINE),
|
|
163
|
-
(new ShakaDemoAssetInfo("Art of Motion (HLS, TS, AES-128)","https://storage.googleapis.com/shaka-asset-icons/art_of_motion.png","https://bitmovin-a.akamaihd.net/content/art-of-motion_drm/m3u8s/11331.m3u8",shakaAssets.Source.BITCODIN)).addFeature(shakaAssets.Feature.HIGH_DEFINITION).addFeature(shakaAssets.Feature.HLS).addFeature(shakaAssets.Feature.MP2TS).addFeature(shakaAssets.Feature.OFFLINE),(new ShakaDemoAssetInfo("Sintel (HLS, TS, 4k)","https://storage.googleapis.com/shaka-asset-icons/sintel.png",
|
|
164
|
+
(new ShakaDemoAssetInfo("Art of Motion (HLS, TS, AES-128)","https://storage.googleapis.com/shaka-asset-icons/art_of_motion.png","https://bitmovin-a.akamaihd.net/content/art-of-motion_drm/m3u8s/11331.m3u8",shakaAssets.Source.BITCODIN)).addKeySystem(shakaAssets.KeySystem.AES128).addFeature(shakaAssets.Feature.HIGH_DEFINITION).addFeature(shakaAssets.Feature.HLS).addFeature(shakaAssets.Feature.MP2TS).addFeature(shakaAssets.Feature.OFFLINE),(new ShakaDemoAssetInfo("Sintel (HLS, TS, 4k)","https://storage.googleapis.com/shaka-asset-icons/sintel.png",
|
|
164
165
|
"https://bitdash-a.akamaihd.net/content/sintel/hls/playlist.m3u8",shakaAssets.Source.BITCODIN)).markAsDisabled().addFeature(shakaAssets.Feature.HIGH_DEFINITION).addFeature(shakaAssets.Feature.HLS).addFeature(shakaAssets.Feature.MP2TS).addFeature(shakaAssets.Feature.OFFLINE),(new ShakaDemoAssetInfo("Art of Motion (DASH) (external thumbnails)","https://storage.googleapis.com/shaka-asset-icons/art_of_motion.png","https://cdn.bitmovin.com/content/assets/art-of-motion-dash-hls-progressive/mpds/f08e80da-bf1d-4e3d-8899-f0f6155f6efa.mpd",
|
|
165
166
|
shakaAssets.Source.BITCODIN)).addFeature(shakaAssets.Feature.DASH).addFeature(shakaAssets.Feature.HIGH_DEFINITION).addFeature(shakaAssets.Feature.MP4).addFeature(shakaAssets.Feature.THUMBNAILS).addExtraThumbnail("https://cdn.bitmovin.com/content/assets/art-of-motion-dash-hls-progressive/thumbnails/f08e80da-bf1d-4e3d-8899-f0f6155f6efa.vtt"),(new ShakaDemoAssetInfo("Car Ride (DASH, VOD, 180 Degrees)","https://lab.streamshark.io:10433/streams/balmain_360/.png?scale=300:210","https://lab.streamshark.io:10433/streams/balmain_360/Feature.DASH/.mpd",
|
|
166
167
|
shakaAssets.Source.METACDN)).addFeature(shakaAssets.Feature.DASH).addFeature(shakaAssets.Feature.HIGH_DEFINITION).addFeature(shakaAssets.Feature.MP4).addFeature(shakaAssets.Feature.VOD),(new ShakaDemoAssetInfo("Car Ride (HLS, VOD, 180 Degrees)","https://lab.streamshark.io:10433/streams/balmain_360/.png?scale=300:210","https://lab.streamshark.io:10433/streams/balmain_360/Feature.HLS/.m3u8",shakaAssets.Source.METACDN)).addFeature(shakaAssets.Feature.HIGH_DEFINITION).addFeature(shakaAssets.Feature.HLS).addFeature(shakaAssets.Feature.MP2TS).addFeature(shakaAssets.Feature.VOD),
|
|
@@ -170,7 +171,8 @@ shakaAssets.Source.METACDN)).addFeature(shakaAssets.Feature.DASH).addFeature(sha
|
|
|
170
171
|
"https://amssamples.streaming.mediaservices.windows.net/91492735-c523-432b-ba01-faba6c2206a2/AzureMediaServicesPromo.ism/manifest(format=mpd-time-csf)",shakaAssets.Source.AZURE_MEDIA_SERVICES)).addFeature(shakaAssets.Feature.DASH).addFeature(shakaAssets.Feature.MP4).addFeature(shakaAssets.Feature.HIGH_DEFINITION).addFeature(shakaAssets.Feature.OFFLINE),(new ShakaDemoAssetInfo("Big Buck Bunny (Azure)","https://storage.googleapis.com/shaka-asset-icons/big_buck_bunny.png","https://amssamples.streaming.mediaservices.windows.net/622b189f-ec39-43f2-93a2-201ac4e31ce1/BigBuckBunny.ism/manifest(format=mpd-time-csf)",
|
|
171
172
|
shakaAssets.Source.AZURE_MEDIA_SERVICES)).addKeySystem(shakaAssets.KeySystem.PLAYREADY).addKeySystem(shakaAssets.KeySystem.WIDEVINE).addFeature(shakaAssets.Feature.DASH).addFeature(shakaAssets.Feature.HIGH_DEFINITION).addFeature(shakaAssets.Feature.MP4).addFeature(shakaAssets.Feature.OFFLINE).addLicenseServer("com.widevine.alpha","https://amssamples.keydelivery.mediaservices.windows.net/Widevine/?KID=1ab45440-532c-4399-94dc-5c5ad9584bac").addLicenseServer("com.microsoft.playready","https://amssamples.keydelivery.mediaservices.windows.net/PlayReady/"),
|
|
172
173
|
(new ShakaDemoAssetInfo("Tears of Steel (external text)","https://storage.googleapis.com/shaka-asset-icons/tears_of_steel.png","https://ams-samplescdn.streaming.mediaservices.windows.net/11196e3d-2f40-4835-9a4d-fc52751b0323/TearsOfSteel_WAMEH264SmoothStreaming720p.ism/manifest(format=mpd-time-csf)",shakaAssets.Source.AZURE_MEDIA_SERVICES)).addFeature(shakaAssets.Feature.DASH).addFeature(shakaAssets.Feature.MP4).addFeature(shakaAssets.Feature.SUBTITLES).addFeature(shakaAssets.Feature.OFFLINE).addExtraText({uri:"https://ams-samplescdn.streaming.mediaservices.windows.net/11196e3d-2f40-4835-9a4d-fc52751b0323/TOS-en.vtt",
|
|
173
|
-
language:"en",kind:"subtitle",mime:"text/vtt"}).addExtraText({uri:"https://ams-samplescdn.streaming.mediaservices.windows.net/11196e3d-2f40-4835-9a4d-fc52751b0323/TOS-es.vtt",language:"es",kind:"subtitle",mime:"text/vtt"}).addExtraText({uri:"https://ams-samplescdn.streaming.mediaservices.windows.net/11196e3d-2f40-4835-9a4d-fc52751b0323/TOS-fr.vtt",language:"fr",kind:"subtitle",mime:"text/vtt"}),(new ShakaDemoAssetInfo("
|
|
174
|
+
language:"en",kind:"subtitle",mime:"text/vtt"}).addExtraText({uri:"https://ams-samplescdn.streaming.mediaservices.windows.net/11196e3d-2f40-4835-9a4d-fc52751b0323/TOS-es.vtt",language:"es",kind:"subtitle",mime:"text/vtt"}).addExtraText({uri:"https://ams-samplescdn.streaming.mediaservices.windows.net/11196e3d-2f40-4835-9a4d-fc52751b0323/TOS-fr.vtt",language:"fr",kind:"subtitle",mime:"text/vtt"}),(new ShakaDemoAssetInfo("Sintel (DASH, AES-128)","https://storage.googleapis.com/shaka-asset-icons/sintel.png",
|
|
175
|
+
"https://amssamples.streaming.mediaservices.windows.net/49b57c87-f5f3-48b3-ba22-c55cfdffa9cb/Sintel.ism/manifest(format=mpd-time-csf)",shakaAssets.Source.AZURE_MEDIA_SERVICES)).addKeySystem(shakaAssets.KeySystem.AES128).addFeature(shakaAssets.Feature.DASH).addFeature(shakaAssets.Feature.MP4).addFeature(shakaAssets.Feature.HIGH_DEFINITION).addFeature(shakaAssets.Feature.OFFLINE),(new ShakaDemoAssetInfo("live profile","https://storage.googleapis.com/shaka-asset-icons/sintel.png","https://download.tsi.telecom-paristech.fr/gpac/DASH_CONFORMANCE/TelecomParisTech/mp4-live/mp4-live-mpd-AV-BS.mpd",
|
|
174
176
|
shakaAssets.Source.GPAC)).markAsDisabled().addFeature(shakaAssets.Feature.DASH).addFeature(shakaAssets.Feature.MP4),(new ShakaDemoAssetInfo("live profile with five periods","https://storage.googleapis.com/shaka-asset-icons/gpac_test_pattern.png","https://download.tsi.telecom-paristech.fr/gpac/DASH_CONFORMANCE/TelecomParisTech/mp4-live-periods/mp4-live-periods-mpd.mpd",shakaAssets.Source.GPAC)).addFeature(shakaAssets.Feature.DASH).addFeature(shakaAssets.Feature.MP4).addFeature(shakaAssets.Feature.HIGH_DEFINITION).addFeature(shakaAssets.Feature.OFFLINE),
|
|
175
177
|
(new ShakaDemoAssetInfo("main profile, single file","https://storage.googleapis.com/shaka-asset-icons/gpac_test_pattern.png","https://download.tsi.telecom-paristech.fr/gpac/DASH_CONFORMANCE/TelecomParisTech/mp4-main-single/mp4-main-single-mpd-AV-NBS.mpd",shakaAssets.Source.GPAC)).addFeature(shakaAssets.Feature.DASH).addFeature(shakaAssets.Feature.MP4).addFeature(shakaAssets.Feature.HIGH_DEFINITION).addFeature(shakaAssets.Feature.OFFLINE),(new ShakaDemoAssetInfo("main profile, multiple files","https://storage.googleapis.com/shaka-asset-icons/gpac_test_pattern.png",
|
|
176
178
|
"https://download.tsi.telecom-paristech.fr/gpac/DASH_CONFORMANCE/TelecomParisTech/mp4-main-multi/mp4-main-multi-mpd-AV-BS.mpd",shakaAssets.Source.GPAC)).markAsDisabled().addFeature(shakaAssets.Feature.DASH).addFeature(shakaAssets.Feature.MP4),(new ShakaDemoAssetInfo("onDemand profile","https://storage.googleapis.com/shaka-asset-icons/gpac_test_pattern.png","https://download.tsi.telecom-paristech.fr/gpac/DASH_CONFORMANCE/TelecomParisTech/mp4-onDemand/mp4-onDemand-mpd-AV.mpd",shakaAssets.Source.GPAC)).addFeature(shakaAssets.Feature.DASH).addFeature(shakaAssets.Feature.MP4).addFeature(shakaAssets.Feature.HIGH_DEFINITION).addFeature(shakaAssets.Feature.OFFLINE),
|
|
@@ -181,15 +183,15 @@ shakaAssets.Source.GPAC)).markAsDisabled().addFeature(shakaAssets.Feature.DASH).
|
|
|
181
183
|
"https://content.uplynk.com/wv").setRequestFilter(shakaAssets.UplynkRequestFilter).setResponseFilter(shakaAssets.UplynkResponseFilter),(new ShakaDemoAssetInfo("Widevine - 16 Byte IV - (mix of encrypted and unencrypted periods)","https://storage.googleapis.com/shaka-asset-icons/sintel.png","https://content.uplynk.com/1eb40d8e64234f5c9879db7045c3d48c.mpd?ad=cleardash&rays=cdefg",shakaAssets.Source.UPLYNK)).addKeySystem(shakaAssets.KeySystem.WIDEVINE).addFeature(shakaAssets.Feature.DASH).addFeature(shakaAssets.Feature.MP4).addFeature(shakaAssets.Feature.MULTIPLE_LANGUAGES).addFeature(shakaAssets.Feature.HIGH_DEFINITION).addLicenseServer("com.widevine.alpha",
|
|
182
184
|
"https://content.uplynk.com/wv").setRequestFilter(shakaAssets.UplynkRequestFilter).setResponseFilter(shakaAssets.UplynkResponseFilter),(new ShakaDemoAssetInfo("Apple Advanced HLS Stream (fMP4)","https://storage.googleapis.com/shaka-asset-icons/apple_test_pattern.png","https://storage.googleapis.com/shaka-demo-assets/apple-advanced-stream-fmp4/master.m3u8",shakaAssets.Source.APPLE)).addFeature(shakaAssets.Feature.HLS).addFeature(shakaAssets.Feature.MP4).addFeature(shakaAssets.Feature.CAPTIONS).addFeature(shakaAssets.Feature.OFFLINE),
|
|
183
185
|
(new ShakaDemoAssetInfo("Apple Advanced HLS Stream (TS)","https://storage.googleapis.com/shaka-asset-icons/apple_test_pattern.png","https://storage.googleapis.com/shaka-demo-assets/apple-advanced-stream-ts/master.m3u8",shakaAssets.Source.APPLE)).addFeature(shakaAssets.Feature.HLS).addFeature(shakaAssets.Feature.MP2TS).addFeature(shakaAssets.Feature.CAPTIONS).addFeature(shakaAssets.Feature.OFFLINE),(new ShakaDemoAssetInfo("Low Latency HLS Live","https://storage.googleapis.com/shaka-asset-icons/apple_test_pattern.png",
|
|
184
|
-
"https://ll-hls-test.apple.com/
|
|
185
|
-
(new ShakaDemoAssetInfo("Apple Advanced HLS Stream (TS) with raw AAC","https://storage.googleapis.com/shaka-asset-icons/apple_test_pattern.png","https://devstreaming-cdn.apple.com/videos/streaming/examples/img_bipbop_adv_example_ts/master.m3u8",shakaAssets.Source.APPLE)).addFeature(shakaAssets.Feature.HLS).addFeature(shakaAssets.Feature.MP2TS).addFeature(shakaAssets.Feature.CONTAINERLESS).addFeature(shakaAssets.Feature.HIGH_DEFINITION).addFeature(shakaAssets.Feature.OFFLINE),
|
|
186
|
-
"https://storage.googleapis.com/shaka-asset-icons/bayerischer_rundfunk.png","https://irtdashreference-i.akamaihd.net/dash/live/901161/keepixo1/manifestBR2.mpd",shakaAssets.Source.IRT)).addFeature(shakaAssets.Feature.DASH).addFeature(shakaAssets.Feature.MP4).addFeature(shakaAssets.Feature.HIGH_DEFINITION).addFeature(shakaAssets.Feature.LIVE),(new ShakaDemoAssetInfo("Bayerischer Rundfunk Recorded Loop (HLS)","https://storage.googleapis.com/shaka-asset-icons/bayerischer_rundfunk.png",
|
|
187
|
-
shakaAssets.Source.IRT)).addFeature(shakaAssets.Feature.HLS).addFeature(shakaAssets.Feature.MP4).addFeature(shakaAssets.Feature.HIGH_DEFINITION).addFeature(shakaAssets.Feature.LIVE),(new ShakaDemoAssetInfo("Big Buck Bunny: the Dark Truths of a Video Dev Cartoon (HLS - PlayReady)","https://storage.googleapis.com/shaka-asset-icons/dark_truth.png","https://test.playready.microsoft.com/media/dash/APPLEENC_CBCS_BBB_1080p/1080p_alternate.m3u8",
|
|
188
|
-
"http://test.playready.microsoft.com/service/rightsmanager.asmx?cfg=(persist:false,ck:W31bfVt9W31bfVt9W31bfQ==,ckt:aescbc)"),(new ShakaDemoAssetInfo("Super Speedway Trailer (MSS - Clear)","https://reference.dashif.org/dash.js/latest/samples/lib/img/mss-1.jpg","https://playready.directtaps.net/smoothstreaming/SSWSS720H264/SuperSpeedway_720.ism/Manifest",
|
|
189
|
-
(new ShakaDemoAssetInfo("Super Speedway Trailer (MSS - PlayReady)","https://reference.dashif.org/dash.js/latest/samples/lib/img/mss-1.jpg","https://test.playready.microsoft.com/smoothstreaming/SSWSS720H264PR/SuperSpeedway_720.ism/Manifest",shakaAssets.Source.MICROSOFT)).addFeature(shakaAssets.Feature.MSS).addFeature(shakaAssets.Feature.HIGH_DEFINITION).addFeature(shakaAssets.Feature.MP4).addLicenseServer("com.microsoft.playready",
|
|
190
|
-
(new ShakaDemoAssetInfo("Big Buck Bunny LCEVC H264 (DASH, MP4)","https://storage.googleapis.com/shaka-asset-icons/big_buck_bunny.png","https://d3mfda3gpj3dw1.cloudfront.net/vn9s0p86SVbJorX6/master.mpd",shakaAssets.Source.VNOVA)).addFeature(shakaAssets.Feature.DASH).addFeature(shakaAssets.Feature.HIGH_DEFINITION).addFeature(shakaAssets.Feature.MP4).addFeature(shakaAssets.Feature.OFFLINE).addFeature(shakaAssets.Feature.LCEVC).setExtraConfig({lcevc:{enabled:!0,
|
|
191
|
-
drawLogo:!1}}),(new ShakaDemoAssetInfo("eSports LCEVC H264 (HLS, TS)","https://storage.googleapis.com/shaka-asset-icons/shaka.png","https://d3mfda3gpj3dw1.cloudfront.net/vnmITf0oAwlErGf9/master.m3u8",shakaAssets.Source.VNOVA)).addFeature(shakaAssets.Feature.HLS).addFeature(shakaAssets.Feature.HIGH_DEFINITION).addFeature(shakaAssets.Feature.MP2TS).addFeature(shakaAssets.Feature.OFFLINE).addFeature(shakaAssets.Feature.LCEVC).setExtraConfig({streaming:{useNativeHlsOnSafari:!1},
|
|
192
|
-
lcevc:{enabled:!0,dynamicPerformanceScaling:!0,logLevel:0,drawLogo:!1}}),(new ShakaDemoAssetInfo("Tears of Steel LCEVC H264 (HLS, MP4)","https://storage.googleapis.com/shaka-asset-icons/tears_of_steel.png","https://d3mfda3gpj3dw1.cloudfront.net/vn2LvEps745ShGtQ/master.m3u8",shakaAssets.Source.VNOVA)).addFeature(shakaAssets.Feature.HLS).addFeature(shakaAssets.Feature.HIGH_DEFINITION).addFeature(shakaAssets.Feature.MP4).addFeature(shakaAssets.Feature.OFFLINE).addFeature(shakaAssets.Feature.LCEVC).setExtraConfig({streaming:{useNativeHlsOnSafari:!1},
|
|
186
|
+
"https://ll-hls-test.cdn-apple.com/llhls4/ll-hls-test-04/multi.m3u8",shakaAssets.Source.APPLE)).addFeature(shakaAssets.Feature.HLS).addFeature(shakaAssets.Feature.LIVE).addFeature(shakaAssets.Feature.MP4).addFeature(shakaAssets.Feature.LOW_LATENCY).setExtraConfig({streaming:{lowLatencyMode:!0}}),(new ShakaDemoAssetInfo("Audio only HLS with raw AAC","https://storage.googleapis.com/shaka-asset-icons/apple_test_pattern.png","https://storage.googleapis.com/shaka-demo-assets/raw-hls-audio-only/manifest.m3u8",
|
|
187
|
+
shakaAssets.Source.APPLE)).addFeature(shakaAssets.Feature.HLS).addFeature(shakaAssets.Feature.CONTAINERLESS).addFeature(shakaAssets.Feature.AUDIO_ONLY),(new ShakaDemoAssetInfo("Apple Advanced HLS Stream (TS) with raw AAC","https://storage.googleapis.com/shaka-asset-icons/apple_test_pattern.png","https://devstreaming-cdn.apple.com/videos/streaming/examples/img_bipbop_adv_example_ts/master.m3u8",shakaAssets.Source.APPLE)).addFeature(shakaAssets.Feature.HLS).addFeature(shakaAssets.Feature.MP2TS).addFeature(shakaAssets.Feature.CONTAINERLESS).addFeature(shakaAssets.Feature.HIGH_DEFINITION).addFeature(shakaAssets.Feature.OFFLINE),
|
|
188
|
+
(new ShakaDemoAssetInfo("Bayerischer Rundfunk Recorded Loop (DASH)","https://storage.googleapis.com/shaka-asset-icons/bayerischer_rundfunk.png","https://irtdashreference-i.akamaihd.net/dash/live/901161/keepixo1/manifestBR2.mpd",shakaAssets.Source.IRT)).addFeature(shakaAssets.Feature.DASH).addFeature(shakaAssets.Feature.MP4).addFeature(shakaAssets.Feature.HIGH_DEFINITION).addFeature(shakaAssets.Feature.LIVE),(new ShakaDemoAssetInfo("Bayerischer Rundfunk Recorded Loop (HLS)","https://storage.googleapis.com/shaka-asset-icons/bayerischer_rundfunk.png",
|
|
189
|
+
"https://irtdashreference-i.akamaihd.net/dash/live/901161/keepixo1/playlistBR2.m3u8",shakaAssets.Source.IRT)).addFeature(shakaAssets.Feature.HLS).addFeature(shakaAssets.Feature.MP4).addFeature(shakaAssets.Feature.HIGH_DEFINITION).addFeature(shakaAssets.Feature.LIVE),(new ShakaDemoAssetInfo("Big Buck Bunny: the Dark Truths of a Video Dev Cartoon (HLS - PlayReady)","https://storage.googleapis.com/shaka-asset-icons/dark_truth.png","https://test.playready.microsoft.com/media/dash/APPLEENC_CBCS_BBB_1080p/1080p_alternate.m3u8",
|
|
190
|
+
shakaAssets.Source.MICROSOFT)).addKeySystem(shakaAssets.KeySystem.PLAYREADY).addFeature(shakaAssets.Feature.HLS).addFeature(shakaAssets.Feature.MP4).addFeature(shakaAssets.Feature.HIGH_DEFINITION).addLicenseServer("com.microsoft.playready","http://test.playready.microsoft.com/service/rightsmanager.asmx?cfg=(persist:false,ck:W31bfVt9W31bfVt9W31bfQ==,ckt:aescbc)"),(new ShakaDemoAssetInfo("Super Speedway Trailer (MSS - Clear)","https://reference.dashif.org/dash.js/latest/samples/lib/img/mss-1.jpg","https://playready.directtaps.net/smoothstreaming/SSWSS720H264/SuperSpeedway_720.ism/Manifest",
|
|
191
|
+
shakaAssets.Source.MICROSOFT)).addFeature(shakaAssets.Feature.MSS).addFeature(shakaAssets.Feature.HIGH_DEFINITION).addFeature(shakaAssets.Feature.MP4),(new ShakaDemoAssetInfo("Super Speedway Trailer (MSS - PlayReady)","https://reference.dashif.org/dash.js/latest/samples/lib/img/mss-1.jpg","https://test.playready.microsoft.com/smoothstreaming/SSWSS720H264PR/SuperSpeedway_720.ism/Manifest",shakaAssets.Source.MICROSOFT)).addFeature(shakaAssets.Feature.MSS).addFeature(shakaAssets.Feature.HIGH_DEFINITION).addFeature(shakaAssets.Feature.MP4).addLicenseServer("com.microsoft.playready",
|
|
192
|
+
"https://test.playready.microsoft.com/service/rightsmanager.asmx?cfg=(persist:false,sl:150)"),(new ShakaDemoAssetInfo("Big Buck Bunny LCEVC H264 (DASH, MP4)","https://storage.googleapis.com/shaka-asset-icons/big_buck_bunny.png","https://d3mfda3gpj3dw1.cloudfront.net/vn9s0p86SVbJorX6/master.mpd",shakaAssets.Source.VNOVA)).addFeature(shakaAssets.Feature.DASH).addFeature(shakaAssets.Feature.HIGH_DEFINITION).addFeature(shakaAssets.Feature.MP4).addFeature(shakaAssets.Feature.OFFLINE).addFeature(shakaAssets.Feature.LCEVC).setExtraConfig({lcevc:{enabled:!0,
|
|
193
|
+
dynamicPerformanceScaling:!0,logLevel:0,drawLogo:!1}}),(new ShakaDemoAssetInfo("eSports LCEVC H264 (HLS, TS)","https://storage.googleapis.com/shaka-asset-icons/shaka.png","https://d3mfda3gpj3dw1.cloudfront.net/vnmITf0oAwlErGf9/master.m3u8",shakaAssets.Source.VNOVA)).addFeature(shakaAssets.Feature.HLS).addFeature(shakaAssets.Feature.HIGH_DEFINITION).addFeature(shakaAssets.Feature.MP2TS).addFeature(shakaAssets.Feature.OFFLINE).addFeature(shakaAssets.Feature.LCEVC).setExtraConfig({streaming:{useNativeHlsOnSafari:!1},
|
|
194
|
+
mediaSource:{forceTransmux:!0},lcevc:{enabled:!0,dynamicPerformanceScaling:!0,logLevel:0,drawLogo:!1}}),(new ShakaDemoAssetInfo("Tears of Steel LCEVC H264 (HLS, MP4)","https://storage.googleapis.com/shaka-asset-icons/tears_of_steel.png","https://d3mfda3gpj3dw1.cloudfront.net/vn2LvEps745ShGtQ/master.m3u8",shakaAssets.Source.VNOVA)).addFeature(shakaAssets.Feature.HLS).addFeature(shakaAssets.Feature.HIGH_DEFINITION).addFeature(shakaAssets.Feature.MP4).addFeature(shakaAssets.Feature.OFFLINE).addFeature(shakaAssets.Feature.LCEVC).setExtraConfig({streaming:{useNativeHlsOnSafari:!1},
|
|
193
195
|
mediaSource:{forceTransmux:!0},lcevc:{enabled:!0,dynamicPerformanceScaling:!0,logLevel:0,drawLogo:!1}}),(new ShakaDemoAssetInfo(" eSports LCEVC HEVC (DASH, MP4)","https://storage.googleapis.com/shaka-asset-icons/shaka.png","https://d3mfda3gpj3dw1.cloudfront.net/vnCTVqNpUs9400xP/master.mpd",shakaAssets.Source.VNOVA)).addFeature(shakaAssets.Feature.HLS).addFeature(shakaAssets.Feature.HIGH_DEFINITION).addFeature(shakaAssets.Feature.MP4).addFeature(shakaAssets.Feature.OFFLINE).addFeature(shakaAssets.Feature.LCEVC).setExtraConfig({lcevc:{enabled:!0,
|
|
194
196
|
dynamicPerformanceScaling:!0,logLevel:0,drawLogo:!1}})];shakaDemo.Tooltips=class{static make(a,b){tippy(a,{content:shakaDemoMain.getLocalizedString(b),placement:"bottom",arrow:!0,animation:"scale",size:"large"})}};shakaDemo.AssetCard=class{constructor(a,b,c,d){this.card_=document.createElement("div");this.asset_=b;this.actions_=document.createElement("div");this.featureIconsContainer_=document.createElement("div");this.progressCircle_=document.createElement("div");this.progressCircleSvg_=document.createElementNS("http://www.w3.org/2000/svg","svg");this.progressCircleBack_=document.createElementNS("http://www.w3.org/2000/svg","circle");this.progressCircleBar_=document.createElementNS("http://www.w3.org/2000/svg",
|
|
195
197
|
"circle");this.remakeButtonsFn_=d;this.card_.classList.add("mdl-card-wide");this.card_.classList.add("mdl-card");this.card_.classList.add("mdl-shadow--2dp");this.card_.classList.add("asset-card");d=document.createElement("div");d.classList.add("mdl-card__title");this.card_.appendChild(d);var e=document.createElement("h2");e.classList.add("mdl-card__title-text");e.textContent=c?b.shortName||b.name:b.name;d.appendChild(e);if(b.iconUri){d=document.createElement("picture");e=document.createElement("source");
|
|
@@ -307,37 +309,37 @@ c=>{for(const d of c.locales)this.loadUILocale_(d).then(()=>{d==this.uiLocale_&&
|
|
|
307
309
|
a.configure("offline.progressCallback",(c,d)=>{if(c=b(c.appMetadata.identifier))c.storedProgress=d,this.dispatchEventWithName_("shaka-main-offline-progress")});return a}setupOfflineSupport(a){if(this.initialStoredList_){a.storedContent=null;for(const b of this.initialStoredList_){const c=b.appMetadata.identifier;this.getIdentifierFromAsset_(a)==c&&(a.storedContent=b)}a.storeCallback=async()=>{const b=this.makeStorageInstance_();if(b){try{await this.drmConfiguration_(a,b);const c={identifier:this.getIdentifierFromAsset_(a),
|
|
308
310
|
downloaded:new Date};a.storedProgress=0;this.dispatchEventWithName_("shaka-main-offline-progress");const d=Date.now(),e=await b.store(a.manifestUri,c).promise,f=Date.now();console.log("Download time:",f-d);a.storedContent=e}catch(c){this.onError_(c),a.storedContent=null}b.destroy();a.storedProgress=1;this.dispatchEventWithName_("shaka-main-offline-progress")}};a.unstoreCallback=async()=>{a==this.selectedAsset&&this.unload();if(a.storedContent&&a.storedContent.offlineUri){const b=this.makeStorageInstance_();
|
|
309
311
|
if(b){try{a.storedProgress=0,this.dispatchEventWithName_("shaka-main-offline-progress"),await b.remove(a.storedContent.offlineUri),a.storedContent=null}catch(c){this.onError_(c)}b.destroy();a.storedProgress=1;this.dispatchEventWithName_("shaka-main-offline-progress")}}}}}async setupStorage_(){const a=this.makeStorageInstance_();if(a){try{this.initialStoredList_=await a.list()}catch(b){console.error(b),this.initialStoredList_=null}finally{a.destroy()}for(const b of shakaAssets.testAssets)this.getAssetUnsupportedReason(b,
|
|
310
|
-
!0)||this.setupOfflineSupport(b)}}hashChanged_(){this.readHash_();this.dispatchEventWithName_("shaka-main-config-change")}getAssetUnsupportedReason(a,b){if(b&&(!shaka.offline.Storage.support()||!this.initialStoredList_))return shakaDemo.MessageIds.UNSUPPORTED_NO_OFFLINE;if(a.source==shakaAssets.Source.CUSTOM)return null;if(a.disabled)return shakaDemo.MessageIds.UNSUPPORTED_DISABLED;if(b&&!a.features.includes(shakaAssets.Feature.OFFLINE))return shakaDemo.MessageIds.UNSUPPORTED_NO_DOWNLOAD;if(!a.isClear()
|
|
311
|
-
this.support_.drm[shakaAssets.identifierForKeySystem(c)]))return shakaDemo.MessageIds.UNSUPPORTED_NO_KEY_SUPPORT;if(b&&!a.drm.some(c=>{c=shakaAssets.identifierForKeySystem(c);return this.support_.drm[c]&&this.support_.drm[c].persistentState}))return shakaDemo.MessageIds.UNSUPPORTED_NO_LICENSE_SUPPORT}if(a.features.includes(shakaAssets.Feature.DASH)&&!this.support_.manifest.mpd)return shakaDemo.MessageIds.UNSUPPORTED_NO_DASH_SUPPORT;if(a.features.includes(shakaAssets.Feature.HLS)
|
|
312
|
-
if(a.features.includes(shakaAssets.Feature.MSS)&&!this.support_.manifest.ism)return shakaDemo.MessageIds.UNSUPPORTED_NO_MSS_SUPPORT;b=[];a.features.includes(shakaAssets.Feature.WEBM)&&b.push("video/webm");a.features.includes(shakaAssets.Feature.MP4)&&b.push("video/mp4");a.features.includes(shakaAssets.Feature.MP2TS)&&b.push("video/mp2t");a.features.includes(shakaAssets.Feature.CONTAINERLESS)&&b.push("audio/aac");return b.some(c=>
|
|
313
|
-
a;this.configureUI_();this.remakeHash()}getTrickPlayControlsEnabled(){return this.trickPlayControlsEnabled_}setNativeControlsEnabled(a){this.nativeControlsEnabled_=a;this.remakeHash()}getNativeControlsEnabled(){return this.nativeControlsEnabled_}localizeHTMLElements_(){for(const b of document.querySelectorAll("[localized-string]")){var a=b.getAttribute("localized-string");
|
|
314
|
-
async c=>{c=c+"/locales/"+a+".json";try{const d=await this.loadText_(c),e=JSON.parse(d),f=new Map(Object.entries(e));this.localization_.insert(a,f)}catch(d){console.warn("Unable to load locale",a,"for url",c)}};await Promise.all([b("../ui"),b("../demo")])}}setUILocale(a){this.uiLocale_=a;a=[a].concat(navigator.languages);this.localization_.changeLocale(a)}getUILocale(){return this.uiLocale_}getLastAssetFromHash_(){const a=
|
|
315
|
-
b&&d.adTagUri==c)return d;for(const d of shakaDemoCustom.assets())if(d.manifestUri==b)return d;b=new ShakaDemoAssetInfo("loaded asset","",b,shakaAssets.Source.CUSTOM);if("license"in a){c=shakaDemo.Main.commonDrmSystems;"drmSystem"in a&&(c=[a.drmSystem]);for(const d of c)b.addLicenseServer(d,a.license)}"certificate"in a&&b.addCertificateUri(a.certificate);return b}return null}readHash_(){const a=
|
|
316
|
-
e)=>{if(d in a){const f=this.getCurrentConfigValue(e);d=a[d];"boolean"==typeof f?d="true"==d:"number"==typeof f&&(d=parseFloat(d));this.configure(e,d)}},b);if(b=this.getCurrentConfigValue("drm.advanced"))for(var c of shakaDemo.Main.commonDrmSystems)b[c]||(b[c]=shakaDemo.Main.defaultAdvancedDrmConfig()),"videoRobustness"in a&&(b[c].videoRobustness=a.videoRobustness),"audioRobustness"in a&&
|
|
317
|
-
c),this.setUILocale(c));"uilang"in a&&this.setUILocale(a.uilang);"noadaptation"in a&&this.configure("abr.enabled",!1);this.makeVersionLinks_();this.nativeControlsEnabled_="nativecontrols"in a;"trickplay"in a&&(this.trickPlayControlsEnabled_=!0,this.configureUI_());shakaDemo.Utils.browserSupportsUncompiledMode()||(c=document.getElementById("uncompiled-link"),
|
|
318
|
-
shaka.log&&("vv"in a?shaka.log.setLevel(shaka.log.Level.V2):"v"in a?shaka.log.setLevel(shaka.log.Level.V1):"debug"in a?shaka.log.setLevel(shaka.log.Level.DEBUG):"info"in a&&shaka.log.setLevel(shaka.log.Level.INFO))}makeVersionLinks_(){var a=this.getParams_();let b="uncompiled";"build"in a?b=a.build:"compiled"in a&&(b="compiled");for(const c of["compiled",
|
|
319
|
-
b==c?(a.setAttribute("disabled",""),a.removeAttribute("href"),a.title="currently selected"):(a.removeAttribute("disabled"),a.addEventListener("click",()=>{const d=location.hash.substr(1).split(";").filter(e=>"compiled"!=e&&"build"!=e.split("=")[0]);d.push("build="+c);this.setNewHashSilent_(d.join(";"));location.reload();return!1}))}getParams_(){var a=
|
|
320
|
-
b.slice(1).join("=");return a}getValueFromGivenConfig_(a,b){for(;a;){const c=a.split(/\.(.+)/);if(3==c.length)a=c[1],b=b[c[0]];else return b[c[0]]}}getCurrentConfigValue(a){return this.getValueFromGivenConfig_(a,this.desiredConfig_)}resetConfiguration(a){this.configure(a,void 0)}configure(a,b){2==arguments.length&&"string"==typeof a&&(a=shaka.util.ConfigUtils.convertToConfigObject(a,
|
|
321
|
-
b)}getConfiguration(){return this.desiredConfig_}async requestCertificate_(a,b){return(await b.request(shaka.net.NetworkingEngine.RequestType.APP,{uris:[a]}).promise).data}getIsVisualizerActive(){return this.visualizer_?this.visualizer_.active:!1}setIsVisualizerActive(a){if(this.visualizer_){const b=this.visualizer_.active;this.visualizer_.active=a;b!=a&&(a?this.visualizer_.start():
|
|
322
|
-
this.hideElement_(a);this.video_.poster=shakaDemo.Main.mainPoster_;document.fullscreenElement&&document.exitFullscreen();this.video_.webkitDisplayingFullscreen&&this.video_.webkitExitFullscreen();document.pictureInPictureElement&&document.exitPictureInPicture();window.documentPictureInPicture&&window.documentPictureInPicture.window&&window.documentPictureInPicture.window.close();
|
|
323
|
-
null);this.remakeHash()}async drmConfiguration_(a,b){var c=b?b.getNetworkingEngine():this.player_.getNetworkingEngine();goog.asserts.assert(c,"There should be a net engine.");a.applyFilters(c);var d=a.getConfiguration();b?b.configure(d):(this.player_.resetConfiguration(),this.readHash_(),this.player_.configure(d));d=b?b.getConfiguration():this.player_.getConfiguration();
|
|
324
|
-
d.drm.advanced[e]||{},d.drm.advanced[e].serverCertificate=c}else for(const e of a.licenseServers.keys())d.drm.advanced[e]&&delete d.drm.advanced[e].serverCertificate;b?b.configure(d):this.player_.configure("drm.advanced",d.drm.advanced);this.remakeHash()}showPlayer_(){const a=document.getElementById("video-bar");this.showElement_(a);
|
|
325
|
-
this.dispatchEventWithName_("shaka-main-selected-asset-changed");this.nativeControlsEnabled_?(this.controls_.setEnabledShakaControls(!1),this.controls_.setEnabledNativeControls(!0),this.player_.setVideoContainer(null)):(this.controls_.setEnabledShakaControls(!0),this.controls_.setEnabledNativeControls(!1),this.player_.setVideoContainer(this.container_));
|
|
326
|
-
(b=a.storedContent.offlineUri);if(a.imaAssetKey||a.imaContentSrcId&&a.imaVideoId)b=await this.getManifestUriFromAdManager_(a);await this.player_.load(b,null,a.mimeType||void 0);this.player_.isAudioOnly()&&(this.video_.poster=shakaDemo.Main.audioOnlyPoster_);for(const d of a.extraText)this.player_.addTextTrackAsync(d.uri,d.language,d.kind,d.mime,d.codecs);
|
|
327
|
-
this.video_,"this.video should exist!");c.initClientSide(this.controls_.getClientSideAdContainer(),this.video_,null);const d=new google.ima.AdsRequest;d.adTagUrl=a.adTagUri;c.requestClientSideAds(d)}catch(d){console.log(d),console.warn("Ads code has been prevented from running. Proceeding without ads.")}if(navigator.mediaSession){const d={title:a.name,
|
|
328
|
-
shaka.util.Error.Code.LOAD_INTERRUPTED)console.debug("load() interrupted");else this.onError_(b)}this.remakeHash()}remakeHash(){if(this.fullyLoaded_){var a=[];if(this.player_){var b=this.player_.getConfiguration();shakaDemo.Utils.runThroughHashParams((f,g)=>{const h=this.getCurrentConfigValue(g);g=this.getValueFromGivenConfig_(g,
|
|
329
|
-
b[c];if(f){f.videoRobustness&&a.push("videoRobustness="+f.videoRobustness);f.audioRobustness&&a.push("audioRobustness="+f.audioRobustness);break}}}this.getCurrentConfigValue("abr.enabled")||a.push("noadaptation");a.push("uilang="+this.getUILocale());if(this.selectedAsset){c=shakaAssets.testAssets.includes(this.selectedAsset);
|
|
330
|
-
this.selectedAsset.licenseServers.values().next().value;a.push("license="+b);for(var d of this.selectedAsset.licenseServers.keys())if(!shakaDemo.Main.commonDrmSystems.includes(d)){a.push("drmSystem="+d);break}}!c&&this.selectedAsset.certificateUri&&a.push("certificate="+this.selectedAsset.certificateUri)}d=document.getElementById("nav-button-container");
|
|
331
|
-
e.getAttribute("tab-identifier"));(e=e.getAttribute("tab-hash"))&&a.push("panelData="+e);break}for(const f of["compiled","debug_compiled","uncompiled"])document.getElementById(f.split("_").join("-")+"-link").hasAttribute("disabled")&&a.push("build="+f);this.noInput_&&a.push("noinput");this.nativeControlsEnabled_&&
|
|
332
|
-
break;case shaka.log.Level.DEBUG:a.push("debug");break;case shaka.log.Level.V2:a.push("vv");break;case shaka.log.Level.V1:a.push("v")}this.setNewHashSilent_(a.join(";"))}}setNewHashSilent_(a){history.replaceState(null,"",document.location.pathname+"#"+a)}getHamburgerMenu(){return document.getElementById("hamburger-menu-contents")}hideElement_(a){a.classList.add("hidden")}showElement_(a){a.classList.remove("hidden")}async getManifestUriFromAdManager_(a){const b=
|
|
333
|
-
try{goog.asserts.assert(null!=this.video_,"Video should not be null!");b.initServerSide(c,this.video_);let d;null!=a.imaAssetKey?(d=new google.ima.dai.api.LiveStreamRequest,d.assetKey=a.imaAssetKey):(goog.asserts.assert(null!=a.imaContentSrcId&&null!=a.imaVideoId,"Asset should have ima ids!"),d=new google.ima.dai.api.VODStreamRequest,d.contentSourceId=a.imaContentSrcId,d.videoId=a.imaVideoId);switch(a.imaManifestType){case "DASH":case "dash":case "MPD":case "mpd":d.format=
|
|
334
|
-
break;case "HLS":case "hls":case "M3U8":case "m3u8":d.format=google.ima.dai.api.StreamRequest.StreamFormat.HLS}return await b.requestServerSideStream(d,a.manifestUri)}catch(d){return console.log(d),console.warn("Ads code has been prevented from running or returned an error. Proceeding without ads."),a.manifestUri}}addNavButton(a){const b=document.getElementById("nav-button-container"),c=document.getElementById("contents"),d=document.getElementById("nav-button-"+
|
|
335
|
-
encodeURI(d.getAttribute("tab-identifier")))?(e=e.panelData)&&d.setAttribute("tab-hash",e):e.panel||(a=null!=d.getAttribute("defaultselected"));const f=document.createElement("div");this.hideElement_(f);c.appendChild(f);e=()=>{for(const g of b.childNodes)g.nodeType==Node.ELEMENT_NODE&&(goog.asserts.assert(g instanceof Element,"Wrong node type!"),g.classList.remove("mdl-button--accent"));for(const g of c.childNodes)g.nodeType==Node.ELEMENT_NODE&&(goog.asserts.assert(g instanceof
|
|
336
|
-
this.hideElement_(g));d.classList.add("mdl-button--accent");this.showElement_(f);this.remakeHash();this.dispatchEventWithName_("shaka-main-page-changed");f.scrollIntoView({behavior:"smooth",block:"start"})};d.addEventListener("click",e);a&&Promise.resolve().then(e);return{container:f,button:d}}dispatchEventWithName_(a){const b=document.createEvent("CustomEvent");b.initCustomEvent(a,!1,!1,null);document.dispatchEvent(b)}setUpVersionStrings_(){let a=shaka.Player.version.split("-");
|
|
337
|
-
"uncompiled"])a.includes(d)&&(b.push(d),a=a.filter(e=>e!=d));const c=document.getElementsByClassName("version-string");for(const d of c)d.textContent=a.join("-"),0<b.length&&(d.textContent+=" ("+b.join(", ")+")")}closeError_(){document.getElementById("error-display").classList.add("hidden");this.errorDisplayLink_.href="";this.errorDisplayLink_.textContent="";this.currentErrorSeverity_=null}onErrorEvent_(a){this.onError_(a.detail)}onError_(a){let b=a.severity;if(null==
|
|
338
|
-
const c=a.message||"Error code "+a.code;let d="";a.code&&(d="../docs/api/shaka.util.Error.html#value:"+a.code);console.error(a);this.handleError_(b,c,d)}handleError_(a,b,c){if(null==this.currentErrorSeverity_||a>this.currentErrorSeverity_)this.errorDisplayLink_.href=c,void 0===this.errorDisplayLink_.textContent?this.errorDisplayLink_.innerText=b:this.errorDisplayLink_.textContent=b,this.currentErrorSeverity_=a,this.errorDisplayLink_.href?
|
|
339
|
-
document.getElementById("error-display").classList.remove("hidden")}onCastStatusChange_(a){a&&!this.selectedAsset&&(this.selectedAsset=ShakaDemoAssetInfo.makeBlankAsset(),this.showPlayer_())}static defaultAdvancedDrmConfig(){return{distinctiveIdentifierRequired:!1,persistentStateRequired:!1,videoRobustness:"",audioRobustness:"",sessionType:"",serverCertificate:new Uint8Array(0),serverCertificateUri:"",
|
|
340
|
-
shakaDemo.Main.commonDrmSystems=["com.widevine.alpha","com.microsoft.playready","com.apple.fps","com.adobe.primetime","org.w3.clearkey"];const shakaDemoMain=new shakaDemo.Main;shakaDemo.Main.mainPoster_="https://shaka-player-demo.appspot.com/assets/poster.jpg";shakaDemo.Main.audioOnlyPoster_="https://shaka-player-demo.appspot.com/assets/audioOnly.gif";shakaDemo.Main.initWrapper=async a=>{try{await a()}catch(b){shakaDemoMain.onError_(b),console.error(b)}};
|
|
312
|
+
!0)||this.setupOfflineSupport(b)}}hashChanged_(){this.readHash_();this.dispatchEventWithName_("shaka-main-config-change")}getAssetUnsupportedReason(a,b){if(b&&(!shaka.offline.Storage.support()||!this.initialStoredList_))return shakaDemo.MessageIds.UNSUPPORTED_NO_OFFLINE;if(a.source==shakaAssets.Source.CUSTOM)return null;if(a.disabled)return shakaDemo.MessageIds.UNSUPPORTED_DISABLED;if(b&&!a.features.includes(shakaAssets.Feature.OFFLINE))return shakaDemo.MessageIds.UNSUPPORTED_NO_DOWNLOAD;if(!a.isClear()&&
|
|
313
|
+
!a.isAes128()){if(!a.drm.some(c=>this.support_.drm[shakaAssets.identifierForKeySystem(c)]))return shakaDemo.MessageIds.UNSUPPORTED_NO_KEY_SUPPORT;if(b&&!a.drm.some(c=>{c=shakaAssets.identifierForKeySystem(c);return this.support_.drm[c]&&this.support_.drm[c].persistentState}))return shakaDemo.MessageIds.UNSUPPORTED_NO_LICENSE_SUPPORT}if(a.features.includes(shakaAssets.Feature.DASH)&&!this.support_.manifest.mpd)return shakaDemo.MessageIds.UNSUPPORTED_NO_DASH_SUPPORT;if(a.features.includes(shakaAssets.Feature.HLS)&&
|
|
314
|
+
!this.support_.manifest.m3u8)return shakaDemo.MessageIds.UNSUPPORTED_NO_HLS_SUPPORT;if(a.features.includes(shakaAssets.Feature.MSS)&&!this.support_.manifest.ism)return shakaDemo.MessageIds.UNSUPPORTED_NO_MSS_SUPPORT;b=[];a.features.includes(shakaAssets.Feature.WEBM)&&b.push("video/webm");a.features.includes(shakaAssets.Feature.MP4)&&b.push("video/mp4");a.features.includes(shakaAssets.Feature.MP2TS)&&b.push("video/mp2t");a.features.includes(shakaAssets.Feature.CONTAINERLESS)&&b.push("audio/aac");return b.some(c=>
|
|
315
|
+
this.support_.media[c])?null:shakaDemo.MessageIds.UNSUPPORTED_NO_FORMAT_SUPPORT}setTrickPlayControlsEnabled(a){this.trickPlayControlsEnabled_=a;this.configureUI_();this.remakeHash()}getTrickPlayControlsEnabled(){return this.trickPlayControlsEnabled_}setNativeControlsEnabled(a){this.nativeControlsEnabled_=a;this.remakeHash()}getNativeControlsEnabled(){return this.nativeControlsEnabled_}localizeHTMLElements_(){for(const b of document.querySelectorAll("[localized-string]")){var a=b.getAttribute("localized-string");
|
|
316
|
+
if(a=shakaDemo.MessageIds[a])b.textContent=this.getLocalizedString(a)}}getLocalizedString(a){return this.localization_.resolve(a)}async loadUILocale_(a){if(a){var b=async c=>{c=c+"/locales/"+a+".json";try{const d=await this.loadText_(c),e=JSON.parse(d),f=new Map(Object.entries(e));this.localization_.insert(a,f)}catch(d){console.warn("Unable to load locale",a,"for url",c)}};await Promise.all([b("../ui"),b("../demo")])}}setUILocale(a){this.uiLocale_=a;a=[a].concat(navigator.languages);this.localization_.changeLocale(a)}getUILocale(){return this.uiLocale_}getLastAssetFromHash_(){const a=
|
|
317
|
+
this.getParams_();var b=a.asset,c=a.adTagUri;if(b){for(const d of shakaAssets.testAssets)if(d.manifestUri==b&&d.adTagUri==c)return d;for(const d of shakaDemoCustom.assets())if(d.manifestUri==b)return d;b=new ShakaDemoAssetInfo("loaded asset","",b,shakaAssets.Source.CUSTOM);if("license"in a){c=shakaDemo.Main.commonDrmSystems;"drmSystem"in a&&(c=[a.drmSystem]);for(const d of c)b.addLicenseServer(d,a.license)}"certificate"in a&&b.addCertificateUri(a.certificate);return b}return null}readHash_(){const a=
|
|
318
|
+
this.getParams_();if(this.player_){var b=this.player_.getConfiguration();shakaDemo.Utils.runThroughHashParams((d,e)=>{if(d in a){const f=this.getCurrentConfigValue(e);d=a[d];"boolean"==typeof f?d="true"==d:"number"==typeof f&&(d=parseFloat(d));this.configure(e,d)}},b);if(b=this.getCurrentConfigValue("drm.advanced"))for(var c of shakaDemo.Main.commonDrmSystems)b[c]||(b[c]=shakaDemo.Main.defaultAdvancedDrmConfig()),"videoRobustness"in a&&(b[c].videoRobustness=a.videoRobustness),"audioRobustness"in a&&
|
|
319
|
+
(b[c].audioRobustness=a.audioRobustness)}"lang"in a&&(c=a.lang,this.configure("preferredAudioLanguage",c),this.configure("preferredTextLanguage",c),this.setUILocale(c));"uilang"in a&&this.setUILocale(a.uilang);"noadaptation"in a&&this.configure("abr.enabled",!1);this.makeVersionLinks_();this.nativeControlsEnabled_="nativecontrols"in a;"trickplay"in a&&(this.trickPlayControlsEnabled_=!0,this.configureUI_());shakaDemo.Utils.browserSupportsUncompiledMode()||(c=document.getElementById("uncompiled-link"),
|
|
320
|
+
goog.asserts.assert(c instanceof HTMLAnchorElement,"Wrong element type!"),c.setAttribute("disabled",""),c.removeAttribute("href"),c.title="requires a newer browser");shaka.log&&("vv"in a?shaka.log.setLevel(shaka.log.Level.V2):"v"in a?shaka.log.setLevel(shaka.log.Level.V1):"debug"in a?shaka.log.setLevel(shaka.log.Level.DEBUG):"info"in a&&shaka.log.setLevel(shaka.log.Level.INFO))}makeVersionLinks_(){var a=this.getParams_();let b="uncompiled";"build"in a?b=a.build:"compiled"in a&&(b="compiled");for(const c of["compiled",
|
|
321
|
+
"debug_compiled","uncompiled"])a=document.getElementById(c.split("_").join("-")+"-link"),goog.asserts.assert(a instanceof HTMLAnchorElement,"Wrong element type!"),b==c?(a.setAttribute("disabled",""),a.removeAttribute("href"),a.title="currently selected"):(a.removeAttribute("disabled"),a.addEventListener("click",()=>{const d=location.hash.substr(1).split(";").filter(e=>"compiled"!=e&&"build"!=e.split("=")[0]);d.push("build="+c);this.setNewHashSilent_(d.join(";"));location.reload();return!1}))}getParams_(){var a=
|
|
322
|
+
location.search.substr(1);a=a?a.split(";"):[];var b=location.hash.substr(1);b=b?b.split(";"):[];b=a.concat(b);a={};for(const c of b)b=c.split("="),a[b[0]]=b.slice(1).join("=");return a}getValueFromGivenConfig_(a,b){for(;a;){const c=a.split(/\.(.+)/);if(3==c.length)a=c[1],b=b[c[0]];else return b[c[0]]}}getCurrentConfigValue(a){return this.getValueFromGivenConfig_(a,this.desiredConfig_)}resetConfiguration(a){this.configure(a,void 0)}configure(a,b){2==arguments.length&&"string"==typeof a&&(a=shaka.util.ConfigUtils.convertToConfigObject(a,
|
|
323
|
+
b));shaka.util.PlayerConfiguration.mergeConfigObjects(this.desiredConfig_,a,this.defaultConfig_);this.player_.configure(a,b)}getConfiguration(){return this.desiredConfig_}async requestCertificate_(a,b){return(await b.request(shaka.net.NetworkingEngine.RequestType.APP,{uris:[a]}).promise).data}getIsVisualizerActive(){return this.visualizer_?this.visualizer_.active:!1}setIsVisualizerActive(a){if(this.visualizer_){const b=this.visualizer_.active;this.visualizer_.active=a;b!=a&&(a?this.visualizer_.start():
|
|
324
|
+
this.visualizer_.stop())}}unload(){this.visualizer_&&this.visualizer_.stop();this.selectedAsset=null;const a=document.getElementById("video-bar");this.hideElement_(a);this.video_.poster=shakaDemo.Main.mainPoster_;document.fullscreenElement&&document.exitFullscreen();this.video_.webkitDisplayingFullscreen&&this.video_.webkitExitFullscreen();document.pictureInPictureElement&&document.exitPictureInPicture();window.documentPictureInPicture&&window.documentPictureInPicture.window&&window.documentPictureInPicture.window.close();
|
|
325
|
+
this.player_.unload();this.dispatchEventWithName_("shaka-main-selected-asset-changed");navigator.mediaSession&&(navigator.mediaSession.metadata=null);this.remakeHash()}async drmConfiguration_(a,b){var c=b?b.getNetworkingEngine():this.player_.getNetworkingEngine();goog.asserts.assert(c,"There should be a net engine.");a.applyFilters(c);var d=a.getConfiguration();b?b.configure(d):(this.player_.resetConfiguration(),this.readHash_(),this.player_.configure(d));d=b?b.getConfiguration():this.player_.getConfiguration();
|
|
326
|
+
if(a.certificateUri){c=await this.requestCertificate_(a.certificateUri,c);c=shaka.util.BufferUtils.toUint8(c);for(const e of a.licenseServers.keys())d.drm.advanced[e]=d.drm.advanced[e]||{},d.drm.advanced[e].serverCertificate=c}else for(const e of a.licenseServers.keys())d.drm.advanced[e]&&delete d.drm.advanced[e].serverCertificate;b?b.configure(d):this.player_.configure("drm.advanced",d.drm.advanced);this.remakeHash()}showPlayer_(){const a=document.getElementById("video-bar");this.showElement_(a);
|
|
327
|
+
this.closeError_();this.video_.poster=shakaDemo.Main.mainPoster_;a.scrollIntoView({behavior:"smooth",block:"start"})}async loadAsset(a){try{this.selectedAsset=a;this.showPlayer_();this.dispatchEventWithName_("shaka-main-selected-asset-changed");this.nativeControlsEnabled_?(this.controls_.setEnabledShakaControls(!1),this.controls_.setEnabledNativeControls(!0),this.player_.setVideoContainer(null)):(this.controls_.setEnabledShakaControls(!0),this.controls_.setEnabledNativeControls(!1),this.player_.setVideoContainer(this.container_));
|
|
328
|
+
await this.drmConfiguration_(a);this.controls_.getCastProxy().setAppData({asset:a});let b=a.manifestUri;a.storedContent&&a.storedContent.offlineUri&&(b=a.storedContent.offlineUri);if(a.imaAssetKey||a.imaContentSrcId&&a.imaVideoId)b=await this.getManifestUriFromAdManager_(a);await this.player_.load(b,null,a.mimeType||void 0);this.player_.isAudioOnly()&&(this.video_.poster=shakaDemo.Main.audioOnlyPoster_);for(const d of a.extraText)this.player_.addTextTrackAsync(d.uri,d.language,d.kind,d.mime,d.codecs);
|
|
329
|
+
for(const d of a.extraThumbnail)this.player_.addThumbnailsTrack(d);const c=this.player_.getAdManager();if(c&&a.adTagUri)try{goog.asserts.assert(null!=this.video_,"this.video should exist!");c.initClientSide(this.controls_.getClientSideAdContainer(),this.video_,null);const d=new google.ima.AdsRequest;d.adTagUrl=a.adTagUri;c.requestClientSideAds(d)}catch(d){console.log(d),console.warn("Ads code has been prevented from running. Proceeding without ads.")}if(navigator.mediaSession){const d={title:a.name,
|
|
330
|
+
artwork:[{src:a.iconUri}]};d.artist=a.source;navigator.mediaSession.metadata=new MediaMetadata(d)}this.visualizer_&&this.visualizer_.active&&this.visualizer_.start()}catch(b){if(b.code==shaka.util.Error.Code.LOAD_INTERRUPTED)console.debug("load() interrupted");else this.onError_(b)}this.remakeHash()}remakeHash(){if(this.fullyLoaded_){var a=[];if(this.player_){var b=this.player_.getConfiguration();shakaDemo.Utils.runThroughHashParams((f,g)=>{const h=this.getCurrentConfigValue(g);g=this.getValueFromGivenConfig_(g,
|
|
331
|
+
this.defaultConfig_);const k=isNaN(h)&&isNaN(g);h==g||k&&("string"!=typeof h||"string"!=typeof g)||a.push(f+"="+h)},b);if(b=this.getCurrentConfigValue("drm.advanced"))for(var c of shakaDemo.Main.commonDrmSystems){const f=b[c];if(f){f.videoRobustness&&a.push("videoRobustness="+f.videoRobustness);f.audioRobustness&&a.push("audioRobustness="+f.audioRobustness);break}}}this.getCurrentConfigValue("abr.enabled")||a.push("noadaptation");a.push("uilang="+this.getUILocale());if(this.selectedAsset){c=shakaAssets.testAssets.includes(this.selectedAsset);
|
|
332
|
+
a.push("asset="+this.selectedAsset.manifestUri);this.selectedAsset.adTagUri&&a.push("adTagUri="+this.selectedAsset.adTagUri);if(!c&&this.selectedAsset.licenseServers.size){b=this.selectedAsset.licenseServers.values().next().value;a.push("license="+b);for(var d of this.selectedAsset.licenseServers.keys())if(!shakaDemo.Main.commonDrmSystems.includes(d)){a.push("drmSystem="+d);break}}!c&&this.selectedAsset.certificateUri&&a.push("certificate="+this.selectedAsset.certificateUri)}d=document.getElementById("nav-button-container");
|
|
333
|
+
for(var e of d.childNodes)if(e.nodeType==Node.ELEMENT_NODE&&(goog.asserts.assert(e instanceof HTMLElement,"Wrong node type!"),e.classList.contains("mdl-button--accent"))){a.push("panel="+e.getAttribute("tab-identifier"));(e=e.getAttribute("tab-hash"))&&a.push("panelData="+e);break}for(const f of["compiled","debug_compiled","uncompiled"])document.getElementById(f.split("_").join("-")+"-link").hasAttribute("disabled")&&a.push("build="+f);this.noInput_&&a.push("noinput");this.nativeControlsEnabled_&&
|
|
334
|
+
a.push("nativecontrols");this.trickPlayControlsEnabled_&&a.push("trickplay");if(shaka.log&&shaka.log.currentLevel!=shaka.log.MAX_LOG_LEVEL)switch(shaka.log.currentLevel){case shaka.log.Level.INFO:a.push("info");break;case shaka.log.Level.DEBUG:a.push("debug");break;case shaka.log.Level.V2:a.push("vv");break;case shaka.log.Level.V1:a.push("v")}this.setNewHashSilent_(a.join(";"))}}setNewHashSilent_(a){history.replaceState(null,"",document.location.pathname+"#"+a)}getHamburgerMenu(){return document.getElementById("hamburger-menu-contents")}hideElement_(a){a.classList.add("hidden")}showElement_(a){a.classList.remove("hidden")}async getManifestUriFromAdManager_(a){const b=
|
|
335
|
+
this.player_.getAdManager(),c=this.controls_.getServerSideAdContainer();try{goog.asserts.assert(null!=this.video_,"Video should not be null!");b.initServerSide(c,this.video_);let d;null!=a.imaAssetKey?(d=new google.ima.dai.api.LiveStreamRequest,d.assetKey=a.imaAssetKey):(goog.asserts.assert(null!=a.imaContentSrcId&&null!=a.imaVideoId,"Asset should have ima ids!"),d=new google.ima.dai.api.VODStreamRequest,d.contentSourceId=a.imaContentSrcId,d.videoId=a.imaVideoId);switch(a.imaManifestType){case "DASH":case "dash":case "MPD":case "mpd":d.format=
|
|
336
|
+
google.ima.dai.api.StreamRequest.StreamFormat.DASH;break;case "HLS":case "hls":case "M3U8":case "m3u8":d.format=google.ima.dai.api.StreamRequest.StreamFormat.HLS}return await b.requestServerSideStream(d,a.manifestUri)}catch(d){return console.log(d),console.warn("Ads code has been prevented from running or returned an error. Proceeding without ads."),a.manifestUri}}addNavButton(a){const b=document.getElementById("nav-button-container"),c=document.getElementById("contents"),d=document.getElementById("nav-button-"+
|
|
337
|
+
a);var e=this.getParams_();(a=e.panel==encodeURI(d.getAttribute("tab-identifier")))?(e=e.panelData)&&d.setAttribute("tab-hash",e):e.panel||(a=null!=d.getAttribute("defaultselected"));const f=document.createElement("div");this.hideElement_(f);c.appendChild(f);e=()=>{for(const g of b.childNodes)g.nodeType==Node.ELEMENT_NODE&&(goog.asserts.assert(g instanceof Element,"Wrong node type!"),g.classList.remove("mdl-button--accent"));for(const g of c.childNodes)g.nodeType==Node.ELEMENT_NODE&&(goog.asserts.assert(g instanceof
|
|
338
|
+
Element,"Wrong node type!"),this.hideElement_(g));d.classList.add("mdl-button--accent");this.showElement_(f);this.remakeHash();this.dispatchEventWithName_("shaka-main-page-changed");f.scrollIntoView({behavior:"smooth",block:"start"})};d.addEventListener("click",e);a&&Promise.resolve().then(e);return{container:f,button:d}}dispatchEventWithName_(a){const b=document.createEvent("CustomEvent");b.initCustomEvent(a,!1,!1,null);document.dispatchEvent(b)}setUpVersionStrings_(){let a=shaka.Player.version.split("-");
|
|
339
|
+
const b=[];for(const d of["debug","uncompiled"])a.includes(d)&&(b.push(d),a=a.filter(e=>e!=d));const c=document.getElementsByClassName("version-string");for(const d of c)d.textContent=a.join("-"),0<b.length&&(d.textContent+=" ("+b.join(", ")+")")}closeError_(){document.getElementById("error-display").classList.add("hidden");this.errorDisplayLink_.href="";this.errorDisplayLink_.textContent="";this.currentErrorSeverity_=null}onErrorEvent_(a){this.onError_(a.detail)}onError_(a){let b=a.severity;if(null==
|
|
340
|
+
b||void 0==a.severity)b=shaka.util.Error.Severity.CRITICAL;const c=a.message||"Error code "+a.code;let d="";a.code&&(d="../docs/api/shaka.util.Error.html#value:"+a.code);console.error(a);this.handleError_(b,c,d)}handleError_(a,b,c){if(null==this.currentErrorSeverity_||a>this.currentErrorSeverity_)this.errorDisplayLink_.href=c,void 0===this.errorDisplayLink_.textContent?this.errorDisplayLink_.innerText=b:this.errorDisplayLink_.textContent=b,this.currentErrorSeverity_=a,this.errorDisplayLink_.href?
|
|
341
|
+
this.errorDisplayLink_.classList.remove("input-disabled"):this.errorDisplayLink_.classList.add("input-disabled"),document.getElementById("error-display").classList.remove("hidden")}onCastStatusChange_(a){a&&!this.selectedAsset&&(this.selectedAsset=ShakaDemoAssetInfo.makeBlankAsset(),this.showPlayer_())}static defaultAdvancedDrmConfig(){return{distinctiveIdentifierRequired:!1,persistentStateRequired:!1,videoRobustness:"",audioRobustness:"",sessionType:"",serverCertificate:new Uint8Array(0),serverCertificateUri:"",
|
|
342
|
+
individualizationServer:""}}};shakaDemo.Main.commonDrmSystems=["com.widevine.alpha","com.microsoft.playready","com.apple.fps","com.adobe.primetime","org.w3.clearkey"];const shakaDemoMain=new shakaDemo.Main;shakaDemo.Main.mainPoster_="https://shaka-player-demo.appspot.com/assets/poster.jpg";shakaDemo.Main.audioOnlyPoster_="https://shaka-player-demo.appspot.com/assets/audioOnly.gif";shakaDemo.Main.initWrapper=async a=>{try{await a()}catch(b){shakaDemoMain.onError_(b),console.error(b)}};
|
|
341
343
|
document.addEventListener("shaka-ui-loaded",()=>{shakaDemo.Main.initWrapper(()=>shakaDemoMain.init())});document.addEventListener("shaka-ui-load-failed",a=>{shakaDemo.Main.initWrapper(()=>{shakaDemoMain.initFailed(a.detail.reasonCode)})});let shakaDemoSearch;
|
|
342
344
|
shakaDemo.Search=class{static init(){const a=shakaDemoMain.addNavButton("search");shakaDemoSearch=new shakaDemo.Search(a.container,a.button)}constructor(a,b){this.desiredFeatures_=[];this.button_=b;this.resultsDiv_=document.createElement("div");this.assetCards_=[];document.addEventListener("shaka-main-selected-asset-changed",()=>{this.updateSelected_()});document.addEventListener("shaka-main-offline-progress",()=>{this.updateOfflineProgress_()});document.addEventListener("shaka-main-locale-changed",()=>
|
|
343
345
|
{this.remakeSearchDiv_(a);this.remakeResultsDiv_();componentHandler.upgradeDom()});document.addEventListener("shaka-main-page-changed",()=>{this.resultsDiv_.childNodes.length||a.classList.contains("hidden")||this.remakeResultsDiv_()});this.readHashParameters_();this.updateHashParameters_();this.remakeSearchDiv_(a)}readHashParameters_(){var a=this.button_.getAttribute("tab-hash");if(a)for(const b of a.split(","))if(b.startsWith("drm:")){if(a=b.split("drm:")[1],a=shakaAssets.KeySystem[a])this.desiredDRM_=
|
|
@@ -347,8 +349,8 @@ this.assetCards_=this.searchResults_().map(a=>this.createAssetCardFor_(a));this.
|
|
|
347
349
|
a;break;case shakaDemo.Search.TermType.FEATURE:for(const d of c)b=this.desiredFeatures_.indexOf(d),-1!=b&&this.desiredFeatures_.splice(b,1);this.desiredFeatures_.push(a)}}removeDesiredTerm_(a,b){switch(b){case shakaDemo.Search.TermType.DRM:this.desiredDRM_=null;break;case shakaDemo.Search.TermType.SOURCE:this.desiredSource_=null;break;case shakaDemo.Search.TermType.FEATURE:a=this.desiredFeatures_.indexOf(a),-1!=a&&this.desiredFeatures_.splice(a,1)}}makeBooleanInput_(a,b,c,d){a.addRow(b,d,"significant-right-padding");
|
|
348
350
|
(new shakaDemo.BoolInput(a,b,e=>{e.checked?this.addDesiredTerm_(b,c,[b]):this.removeDesiredTerm_(b,c);this.remakeResultsDiv_();componentHandler.upgradeDom();this.updateHashParameters_()})).input().checked=this.checkDesiredTerm_(b,c)}makeSelectInput_(a,b,c,d){a.addRow(null,null);const e={};for(const g of c)e[g]=shakaDemoMain.getLocalizedString(g);let f=e["---"]="---";a=new shakaDemo.SelectInput(a,b,g=>{"---"!=g.value?this.addDesiredTerm_(g.value,d,c):this.removeDesiredTerm_(f,d);f=g.value;this.remakeResultsDiv_();
|
|
349
351
|
componentHandler.upgradeDom();this.updateHashParameters_()},e);a.input().value="---";for(const g of c)if(this.checkDesiredTerm_(g,d)){f=a.input().value=g;break}}remakeSearchDiv_(a){shaka.util.Dom.removeAllChildren(a);const b=shakaAssets.Feature,c=shakaDemo.Search.TermType.FEATURE;var d=shakaDemo.Search.TermType.DRM;const e=shakaDemo.Search.TermType.SOURCE,f=new shakaDemo.InputContainer(a,null,shakaDemo.InputContainer.Style.FLEX,null);this.makeSelectInput_(f,shakaDemo.MessageIds.MANIFEST_SEARCH,[b.DASH,
|
|
350
|
-
b.HLS,b.MSS],c);this.makeSelectInput_(f,shakaDemo.MessageIds.CONTAINER_SEARCH,[b.MP4,b.MP2TS,b.WEBM,b.CONTAINERLESS],c);this.makeSelectInput_(f,shakaDemo.MessageIds.DRM_SEARCH,Object.values(shakaAssets.KeySystem),d);this.makeSelectInput_(f,shakaDemo.MessageIds.SOURCE_SEARCH,Object.values(shakaAssets.Source).filter(g=>g!=shakaAssets.Source.CUSTOM),e);this.makeSelectInput_(f,shakaDemo.MessageIds.LIVE_SEARCH,[b.LIVE,b.VOD],c);d=new shakaDemo.InputContainer(a,null,shakaDemo.InputContainer.Style.FLEX,
|
|
352
|
+
b.HLS,b.MSS],c);this.makeSelectInput_(f,shakaDemo.MessageIds.CONTAINER_SEARCH,[b.MP4,b.MP2TS,b.WEBM,b.CONTAINERLESS],c);this.makeSelectInput_(f,shakaDemo.MessageIds.DRM_SEARCH,Object.values(shakaAssets.KeySystem),d);this.makeSelectInput_(f,shakaDemo.MessageIds.SOURCE_SEARCH,Object.values(shakaAssets.Source).filter(g=>g!=shakaAssets.Source.CUSTOM),e);this.makeSelectInput_(f,shakaDemo.MessageIds.LIVE_SEARCH,[b.LOW_LATENCY,b.LIVE,b.VOD],c);d=new shakaDemo.InputContainer(a,null,shakaDemo.InputContainer.Style.FLEX,
|
|
351
353
|
null);this.makeBooleanInput_(d,b.HIGH_DEFINITION,c,shakaDemo.MessageIds.HIGH_DEFINITION_SEARCH);this.makeBooleanInput_(d,b.XLINK,c,shakaDemo.MessageIds.XLINK_SEARCH);this.makeBooleanInput_(d,b.SUBTITLES,c,shakaDemo.MessageIds.SUBTITLES_SEARCH);this.makeBooleanInput_(d,b.TRICK_MODE,c,shakaDemo.MessageIds.TRICK_MODE_SEARCH);this.makeBooleanInput_(d,b.SURROUND,c,shakaDemo.MessageIds.SURROUND_SEARCH);this.makeBooleanInput_(d,b.OFFLINE,c,shakaDemo.MessageIds.OFFLINE_SEARCH);this.makeBooleanInput_(d,b.STORED,
|
|
352
|
-
c,shakaDemo.MessageIds.STORED_SEARCH);this.makeBooleanInput_(d,b.ADS,c,shakaDemo.MessageIds.AD_SEARCH);this.makeBooleanInput_(d,b.AUDIO_ONLY,c,shakaDemo.MessageIds.AUDIO_ONLY_SEARCH);this.makeBooleanInput_(d,b.THUMBNAILS,c,shakaDemo.MessageIds.THUMBNAILS);this.makeBooleanInput_(d,b.LCEVC,c,shakaDemo.MessageIds.LCEVC);this.makeBooleanInput_(d,b.
|
|
353
|
-
|
|
354
|
+
c,shakaDemo.MessageIds.STORED_SEARCH);this.makeBooleanInput_(d,b.ADS,c,shakaDemo.MessageIds.AD_SEARCH);this.makeBooleanInput_(d,b.AUDIO_ONLY,c,shakaDemo.MessageIds.AUDIO_ONLY_SEARCH);this.makeBooleanInput_(d,b.THUMBNAILS,c,shakaDemo.MessageIds.THUMBNAILS);this.makeBooleanInput_(d,b.LCEVC,c,shakaDemo.MessageIds.LCEVC);this.makeBooleanInput_(d,b.LOW_LATENCY,c,shakaDemo.MessageIds.LOW_LATENCY);a.appendChild(this.resultsDiv_)}searchResults_(){return shakaAssets.testAssets.filter(a=>{if(a.disabled||this.desiredDRM_&&
|
|
355
|
+
!a.drm.includes(this.desiredDRM_)||this.desiredSource_&&a.source!=this.desiredSource_)return!1;for(const b of this.desiredFeatures_)if(b==shakaAssets.Feature.STORED){if(!a.isStored())return!1}else if(!a.features.includes(b))return!1;return!0})}};shakaDemo.Search.TermType={FEATURE:"Feature",DRM:"DRM",SOURCE:"Source"};document.addEventListener("shaka-main-loaded",shakaDemo.Search.init);document.addEventListener("shaka-main-cleanup",()=>{shakaDemoSearch=null});
|
|
354
356
|
//# sourceMappingURL=demo.compiled.map
|