shaka-player 4.3.11 → 4.3.13
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.github/workflows/deflake.yaml +8 -5
- package/.github/workflows/release-please.yaml +47 -7
- package/.github/workflows/shaka-bot-commands/command-test.sh +1 -1
- package/CHANGELOG.md +34 -0
- package/CONTRIBUTORS +1 -0
- package/demo/common/asset.js +5 -0
- package/demo/common/assets.js +16 -1
- package/demo/common/message_ids.js +1 -0
- package/demo/custom.js +5 -5
- package/demo/locales/en.json +1 -0
- package/demo/locales/source.json +4 -0
- package/demo/main.js +1 -1
- package/dist/demo.compiled.debug.js +58 -56
- package/dist/demo.compiled.debug.map +3 -3
- package/dist/demo.compiled.js +58 -56
- package/dist/demo.compiled.map +3 -3
- package/dist/locales.js +30 -30
- package/dist/receiver.compiled.debug.js +24 -22
- package/dist/receiver.compiled.debug.map +3 -3
- package/dist/receiver.compiled.js +24 -22
- package/dist/receiver.compiled.map +3 -3
- package/dist/shaka-player.compiled.d.ts +258 -258
- package/dist/shaka-player.compiled.debug.d.ts +258 -258
- package/dist/shaka-player.compiled.debug.externs.js +6 -4
- package/dist/shaka-player.compiled.debug.js +58 -59
- package/dist/shaka-player.compiled.debug.map +3 -3
- package/dist/shaka-player.compiled.externs.js +6 -4
- package/dist/shaka-player.compiled.js +700 -699
- package/dist/shaka-player.compiled.map +3 -3
- package/dist/shaka-player.ui.d.ts +302 -302
- package/dist/shaka-player.ui.debug.d.ts +302 -302
- package/dist/shaka-player.ui.debug.externs.js +6 -4
- package/dist/shaka-player.ui.debug.js +205 -206
- package/dist/shaka-player.ui.debug.map +3 -3
- package/dist/shaka-player.ui.externs.js +6 -4
- package/dist/shaka-player.ui.js +867 -866
- package/dist/shaka-player.ui.map +3 -3
- package/docs/tutorials/faq.md +1 -1
- 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_reference.js +11 -5
- package/lib/media/streaming_engine.js +15 -25
- package/lib/player.js +8 -57
- package/lib/text/ttml_text_parser.js +2 -1
- package/lib/text/ui_text_displayer.js +49 -3
- package/lib/util/cmcd_manager.js +6 -1
- package/lib/util/manifest_parser_utils.js +10 -4
- package/lib/util/player_configuration.js +2 -2
- package/lib/util/stream_utils.js +13 -11
- package/lib/util/ts_parser.js +3 -3
- package/package.json +2 -2
- 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 +5 -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/ttml_text_parser_unit.js +3 -4
- package/test/text/web_vtt_layout_integration.js +0 -1
- package/test/util/ts_parser_unit.js +1 -1
|
@@ -1,16 +1,19 @@
|
|
|
1
1
|
name: Deflake Tests
|
|
2
2
|
|
|
3
|
-
# Runs when the Selenum
|
|
4
|
-
# full privileges, even if the other workflow doesn't. That allows us to
|
|
5
|
-
# trigger re-runs if we think the results might be flaky.
|
|
3
|
+
# Runs when the Selenum lab test or PR test workflows complete. This will run
|
|
4
|
+
# with full privileges, even if the other workflow doesn't. That allows us to
|
|
5
|
+
# trigger re-runs if we think the results might be flaky. A test run will be
|
|
6
|
+
# given up to 3 runs to succeed.
|
|
6
7
|
on:
|
|
7
8
|
workflow_run:
|
|
8
|
-
workflows:
|
|
9
|
+
workflows:
|
|
10
|
+
- Selenium Lab Tests
|
|
11
|
+
- Build and Test PR
|
|
9
12
|
types: [completed]
|
|
10
13
|
|
|
11
14
|
jobs:
|
|
12
15
|
deflake:
|
|
13
|
-
if: ${{ github.event.workflow_run.
|
|
16
|
+
if: ${{ github.event.workflow_run.conclusion == 'failure' }}
|
|
14
17
|
runs-on: ubuntu-latest
|
|
15
18
|
|
|
16
19
|
steps:
|
|
@@ -29,8 +29,6 @@ jobs:
|
|
|
29
29
|
- uses: actions/checkout@v3
|
|
30
30
|
if: steps.release.outputs.release_created == false
|
|
31
31
|
with:
|
|
32
|
-
# Checkout the fork, where the PR is generated from.
|
|
33
|
-
repository: shaka-bot/${{ github.event.repository.name }}
|
|
34
32
|
# Use a special shaka-bot access token for releases.
|
|
35
33
|
token: ${{ secrets.RELEASE_PLEASE_TOKEN }}
|
|
36
34
|
- name: Custom update Player version
|
|
@@ -63,8 +61,7 @@ jobs:
|
|
|
63
61
|
steps:
|
|
64
62
|
- uses: actions/checkout@v3
|
|
65
63
|
with:
|
|
66
|
-
# Check out the origin repo,
|
|
67
|
-
# PR branch.
|
|
64
|
+
# Check out the origin repo, and do it at main, not the PR branch.
|
|
68
65
|
ref: main
|
|
69
66
|
# Use a special shaka-bot access token for releases.
|
|
70
67
|
token: ${{ secrets.RELEASE_PLEASE_TOKEN }}
|
|
@@ -93,10 +90,52 @@ jobs:
|
|
|
93
90
|
node-version: 16
|
|
94
91
|
registry-url: 'https://registry.npmjs.org'
|
|
95
92
|
|
|
93
|
+
- name: Compute NPM tags
|
|
94
|
+
run: |
|
|
95
|
+
# NPM publish always sets a tag. If you don't provide an explicit
|
|
96
|
+
# tag, you get the "latest" tag by default, but we want "latest" to
|
|
97
|
+
# always point to the highest version number. So we set an explicit
|
|
98
|
+
# tag on every "publish" command, then follow up with a command to
|
|
99
|
+
# set "latest" only if this release was the highest version yet.
|
|
100
|
+
|
|
101
|
+
# The explicit tag is based on the branch. If the git tag is v4.4.1,
|
|
102
|
+
# the branch was v4.4.x, and the explicit NPM tag should be
|
|
103
|
+
# v4.4-latest.
|
|
104
|
+
GIT_TAG_NAME=${{ needs.release.outputs.tag_name }}
|
|
105
|
+
NPM_TAG=$(echo "$GIT_TAG_NAME" | cut -f 1-2 -d .)-latest
|
|
106
|
+
echo "NPM_TAG=$NPM_TAG" >> $GITHUB_ENV
|
|
107
|
+
|
|
108
|
+
# We only tag the NPM package as "latest" if this release is the
|
|
109
|
+
# highest version to date.
|
|
110
|
+
RELEASE_TAGS=$(git tag | grep ^v[0-9] | grep -Ev -- '-(master|main)')
|
|
111
|
+
LATEST_RELEASE=$(echo "$RELEASE_TAGS" | sort --version-sort | tail -1)
|
|
112
|
+
|
|
113
|
+
if [[ "$GIT_TAG_NAME" == "$LATEST_RELEASE" ]]; then
|
|
114
|
+
NPM_LATEST=true
|
|
115
|
+
else
|
|
116
|
+
NPM_LATEST=false
|
|
117
|
+
fi
|
|
118
|
+
echo NPM_LATEST=$NPM_LATEST >> $GITHUB_ENV
|
|
119
|
+
|
|
120
|
+
# Debug the decisions made here.
|
|
121
|
+
echo "Latest release: $LATEST_RELEASE"
|
|
122
|
+
echo "This release: $GIT_TAG_NAME"
|
|
123
|
+
echo "NPM tag: $NPM_TAG"
|
|
124
|
+
echo "NPM latest: $NPM_LATEST"
|
|
125
|
+
|
|
96
126
|
- run: npm ci
|
|
97
|
-
-
|
|
127
|
+
- name: Publish
|
|
98
128
|
env:
|
|
99
129
|
NODE_AUTH_TOKEN: ${{secrets.NPM_TOKEN}}
|
|
130
|
+
run: |
|
|
131
|
+
# Publish with an explicit tag.
|
|
132
|
+
npm publish --tag "$NPM_TAG"
|
|
133
|
+
|
|
134
|
+
# Add the "latest" tag if needed.
|
|
135
|
+
if [[ "$NPM_LATEST" == "true" ]]; then
|
|
136
|
+
NPM_VERSION=$(npm version --json | jq -r '."shaka-player"')
|
|
137
|
+
npm dist-tag add "shaka-player@$NPM_VERSION" latest
|
|
138
|
+
fi
|
|
100
139
|
|
|
101
140
|
- run: npm pack
|
|
102
141
|
- uses: svenstaro/upload-release-action@483c1e56f95e88835747b1c7c60581215016cbf2
|
|
@@ -137,10 +176,11 @@ jobs:
|
|
|
137
176
|
TAG_NAME=${{ needs.release.outputs.tag_name }}
|
|
138
177
|
|
|
139
178
|
if [[ "$TAG_NAME" == "$LATEST_RELEASE" ]]; then
|
|
140
|
-
|
|
179
|
+
APPSPOT_PROMOTE=true
|
|
141
180
|
else
|
|
142
|
-
|
|
181
|
+
APPSPOT_PROMOTE=false
|
|
143
182
|
fi
|
|
183
|
+
APPSPOT_PROMOTE=$APPSPOT_PROMOTE >> $GITHUB_ENV
|
|
144
184
|
|
|
145
185
|
# Debug the decisions made here.
|
|
146
186
|
echo "Subdomain: $APPSPOT_SUBDOMAIN"
|
|
@@ -25,7 +25,7 @@ WORKFLOW_ARGS=( "pr=$PR_NUMBER" )
|
|
|
25
25
|
|
|
26
26
|
case "${SHAKA_BOT_ARGUMENTS[0]}" in
|
|
27
27
|
# CE devices only.
|
|
28
|
-
ce) WORKFLOW_ARGS+=( "browser_filter=Tizen
|
|
28
|
+
ce) WORKFLOW_ARGS+=( "browser_filter=Tizen ChromecastUltra ChromecastGTV ChromeAndroid" ) ;;
|
|
29
29
|
|
|
30
30
|
# No command argument, no extra workflow arguments.
|
|
31
31
|
"") ;;
|
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,39 @@
|
|
|
1
1
|
# Changelog
|
|
2
2
|
|
|
3
|
+
## [4.3.13](https://github.com/shaka-project/shaka-player/compare/v4.3.12...v4.3.13) (2023-10-04)
|
|
4
|
+
|
|
5
|
+
|
|
6
|
+
### Bug Fixes
|
|
7
|
+
|
|
8
|
+
* Allow PID change in TsParser ([#5681](https://github.com/shaka-project/shaka-player/issues/5681)) ([2fcc812](https://github.com/shaka-project/shaka-player/commit/2fcc8129db517ac41745785c70af3406a725c0b4))
|
|
9
|
+
* **CMCD:** Fix CMCD for some mimetypes in src= ([#5699](https://github.com/shaka-project/shaka-player/issues/5699)) ([28bb5d1](https://github.com/shaka-project/shaka-player/commit/28bb5d139d2bbcfe5bb58b7691d9543868cce0be))
|
|
10
|
+
* **Demo:** Fix url of "Low Latency HLS Live" asset ([#5708](https://github.com/shaka-project/shaka-player/issues/5708)) ([728cbfc](https://github.com/shaka-project/shaka-player/commit/728cbfc7b3b028cd5f9ba958e959c9a40234091b))
|
|
11
|
+
* Fix creation of new Stream object for each manifest request in DASH Live when using CEA ([#5674](https://github.com/shaka-project/shaka-player/issues/5674)) ([d9223ee](https://github.com/shaka-project/shaka-player/commit/d9223eef8255e8ac698f23cd7115ef6a388e613c))
|
|
12
|
+
* **HLS:** Fix audio and video out of sync ([#5658](https://github.com/shaka-project/shaka-player/issues/5658)) ([cb9789e](https://github.com/shaka-project/shaka-player/commit/cb9789e6ab084dd7ba77a232bb90f0fdb1c9bc53))
|
|
13
|
+
* **HLS:** Fix display CEA-708 in HLS ([#5694](https://github.com/shaka-project/shaka-player/issues/5694)) ([b639b55](https://github.com/shaka-project/shaka-player/commit/b639b550b692e466c8513f2801d5a7c36b125643))
|
|
14
|
+
* **HLS:** Fix presentation delay for small live playlists (eg: 3-4 segments) ([#5687](https://github.com/shaka-project/shaka-player/issues/5687)) ([ef827a0](https://github.com/shaka-project/shaka-player/commit/ef827a07abe5c0b6514a89d121294fc562d8c17f))
|
|
15
|
+
* **HLS:** Skip segments without duration and without partial segments ([#5705](https://github.com/shaka-project/shaka-player/issues/5705)) ([96dfcc6](https://github.com/shaka-project/shaka-player/commit/96dfcc609ae40b64d79c27a4f75b34c212fc714d))
|
|
16
|
+
* **HLS:** Support AES-128 in init segment according the RFC ([#5677](https://github.com/shaka-project/shaka-player/issues/5677)) ([d30c571](https://github.com/shaka-project/shaka-player/commit/d30c5719ba3e8ee5d53e02100178fdb8ab34df10))
|
|
17
|
+
* **WebVTT:** Fix text displayed out of picture and with overlapping lines ([#5662](https://github.com/shaka-project/shaka-player/issues/5662)) ([ee898e9](https://github.com/shaka-project/shaka-player/commit/ee898e9eceb5fe6bbc27e72d11318962f7a574eb)), closes [#5661](https://github.com/shaka-project/shaka-player/issues/5661)
|
|
18
|
+
|
|
19
|
+
|
|
20
|
+
### Performance Improvements
|
|
21
|
+
|
|
22
|
+
* Optimization to resolve uris ([#5657](https://github.com/shaka-project/shaka-player/issues/5657)) ([0ad925b](https://github.com/shaka-project/shaka-player/commit/0ad925b9eadfe844ce65b341cab5403889786309))
|
|
23
|
+
|
|
24
|
+
## [4.3.12](https://github.com/shaka-project/shaka-player/compare/v4.3.11...v4.3.12) (2023-09-13)
|
|
25
|
+
|
|
26
|
+
|
|
27
|
+
### Bug Fixes
|
|
28
|
+
|
|
29
|
+
* com.apple.fps should work with the default initDataTransform when using legacy Apple Media Keys ([#5603](https://github.com/shaka-project/shaka-player/issues/5603)) ([8017636](https://github.com/shaka-project/shaka-player/commit/8017636821c030822cf426bb8d494246c372cb93))
|
|
30
|
+
* Compute correctly the positionAlign in UITextDisplayer ([#5630](https://github.com/shaka-project/shaka-player/issues/5630)) ([154131a](https://github.com/shaka-project/shaka-player/commit/154131a81c57d8866499676c7c68683f807dfac5))
|
|
31
|
+
* **Demo:** Allow com.apple.fps.1_0 in the custom DRM System field ([#5600](https://github.com/shaka-project/shaka-player/issues/5600)) ([4853af8](https://github.com/shaka-project/shaka-player/commit/4853af8f39a92a57c3e2f5f899a01e76e130c4df))
|
|
32
|
+
* fix preferred track selection on Safari ([#5601](https://github.com/shaka-project/shaka-player/issues/5601)) ([a85174a](https://github.com/shaka-project/shaka-player/commit/a85174a667ee20451742e1acd8d9e89262a4c51e))
|
|
33
|
+
* **TTML:** Fix wrong writing-mode in nested cues ([#5646](https://github.com/shaka-project/shaka-player/issues/5646)) ([e125e53](https://github.com/shaka-project/shaka-player/commit/e125e539cda726cd9c2674211246673008d3fda0))
|
|
34
|
+
* **WebVTT:** Fix support for line:0 vertical alignment ([#5632](https://github.com/shaka-project/shaka-player/issues/5632)) ([5074de7](https://github.com/shaka-project/shaka-player/commit/5074de721f2669c70054a970526cffea295567c5))
|
|
35
|
+
* **WebVTT:** Fix wrong writing-mode in nested cues ([#5641](https://github.com/shaka-project/shaka-player/issues/5641)) ([ba9a852](https://github.com/shaka-project/shaka-player/commit/ba9a852fc68adf0081e5c9d921bd374404113e34))
|
|
36
|
+
|
|
3
37
|
## [4.3.11](https://github.com/shaka-project/shaka-player/compare/v4.3.10...v4.3.11) (2023-09-02)
|
|
4
38
|
|
|
5
39
|
|
package/CONTRIBUTORS
CHANGED
|
@@ -74,6 +74,7 @@ Julian Domingo <juliandomingo@google.com>
|
|
|
74
74
|
Jun Hong Chong <chongjunhong@gmail.com>
|
|
75
75
|
Jürgen Kartnaller <kartnaller@lovelysystems.com>
|
|
76
76
|
Leandro Ribeiro Moreira <leandro.ribeiro.moreira@gmail.com>
|
|
77
|
+
Loïc Raux <loicraux@gmail.com>
|
|
77
78
|
Lucas Gabriel Sánchez <unkiwii@gmail.com>
|
|
78
79
|
Martin Stark <martin.stark@eyevinn.se>
|
|
79
80
|
Matias Russitto <russitto@gmail.com>
|
package/demo/common/asset.js
CHANGED
|
@@ -165,6 +165,11 @@ const ShakaDemoAssetInfo = class {
|
|
|
165
165
|
return this.drm.length == 1 && this.drm[0] == shakaAssets.KeySystem.CLEAR;
|
|
166
166
|
}
|
|
167
167
|
|
|
168
|
+
/** @return {boolean} */
|
|
169
|
+
isAes128() {
|
|
170
|
+
return this.drm.length == 1 && this.drm[0] == shakaAssets.KeySystem.AES128;
|
|
171
|
+
}
|
|
172
|
+
|
|
168
173
|
/**
|
|
169
174
|
* @param {string} mediaPlaylistFullMimeType
|
|
170
175
|
* @return {!ShakaDemoAssetInfo}
|
package/demo/common/assets.js
CHANGED
|
@@ -50,6 +50,7 @@ shakaAssets.KeySystem = {
|
|
|
50
50
|
FAIRPLAY: shakaDemo.MessageIds.FAIRPLAY,
|
|
51
51
|
PLAYREADY: shakaDemo.MessageIds.PLAYREADY,
|
|
52
52
|
WIDEVINE: shakaDemo.MessageIds.WIDEVINE,
|
|
53
|
+
AES128: shakaDemo.MessageIds.AES128,
|
|
53
54
|
CLEAR: shakaDemo.MessageIds.CLEAR,
|
|
54
55
|
};
|
|
55
56
|
|
|
@@ -88,6 +89,7 @@ shakaAssets.identifierForKeySystem = (keySystem) => {
|
|
|
88
89
|
case KeySystem.FAIRPLAY: return 'com.apple.fps';
|
|
89
90
|
case KeySystem.PLAYREADY: return 'com.microsoft.playready';
|
|
90
91
|
case KeySystem.WIDEVINE: return 'com.widevine.alpha';
|
|
92
|
+
case KeySystem.AES128: return 'aes128';
|
|
91
93
|
default: return 'no drm protection';
|
|
92
94
|
}
|
|
93
95
|
};
|
|
@@ -355,6 +357,7 @@ shakaAssets.testAssets = [
|
|
|
355
357
|
/* iconUri= */ 'https://storage.googleapis.com/shaka-asset-icons/sintel.png',
|
|
356
358
|
/* manifestUri= */ 'https://storage.googleapis.com/shaka-demo-assets/sintel-ts-aes-key-rotation/master.m3u8',
|
|
357
359
|
/* source= */ shakaAssets.Source.SHAKA)
|
|
360
|
+
.addKeySystem(shakaAssets.KeySystem.AES128)
|
|
358
361
|
.addFeature(shakaAssets.Feature.HLS)
|
|
359
362
|
.addFeature(shakaAssets.Feature.MP2TS)
|
|
360
363
|
.addFeature(shakaAssets.Feature.OFFLINE),
|
|
@@ -363,6 +366,7 @@ shakaAssets.testAssets = [
|
|
|
363
366
|
/* iconUri= */ 'https://storage.googleapis.com/shaka-asset-icons/sintel.png',
|
|
364
367
|
/* manifestUri= */ 'https://storage.googleapis.com/shaka-demo-assets/sintel-fmp4-aes/master.m3u8',
|
|
365
368
|
/* source= */ shakaAssets.Source.SHAKA)
|
|
369
|
+
.addKeySystem(shakaAssets.KeySystem.AES128)
|
|
366
370
|
.addFeature(shakaAssets.Feature.HLS)
|
|
367
371
|
.addFeature(shakaAssets.Feature.MP4)
|
|
368
372
|
.addFeature(shakaAssets.Feature.OFFLINE),
|
|
@@ -931,6 +935,7 @@ shakaAssets.testAssets = [
|
|
|
931
935
|
/* iconUri= */ 'https://storage.googleapis.com/shaka-asset-icons/art_of_motion.png',
|
|
932
936
|
/* manifestUri= */ 'https://bitmovin-a.akamaihd.net/content/art-of-motion_drm/m3u8s/11331.m3u8',
|
|
933
937
|
/* source= */ shakaAssets.Source.BITCODIN)
|
|
938
|
+
.addKeySystem(shakaAssets.KeySystem.AES128)
|
|
934
939
|
.addFeature(shakaAssets.Feature.HIGH_DEFINITION)
|
|
935
940
|
.addFeature(shakaAssets.Feature.HLS)
|
|
936
941
|
.addFeature(shakaAssets.Feature.MP2TS)
|
|
@@ -1060,6 +1065,16 @@ shakaAssets.testAssets = [
|
|
|
1060
1065
|
kind: 'subtitle',
|
|
1061
1066
|
mime: 'text/vtt',
|
|
1062
1067
|
}),
|
|
1068
|
+
new ShakaDemoAssetInfo(
|
|
1069
|
+
/* name= */ 'Sintel (DASH, AES-128)',
|
|
1070
|
+
/* iconUri= */ 'https://storage.googleapis.com/shaka-asset-icons/sintel.png',
|
|
1071
|
+
/* manifestUri= */ 'https://amssamples.streaming.mediaservices.windows.net/49b57c87-f5f3-48b3-ba22-c55cfdffa9cb/Sintel.ism/manifest(format=mpd-time-csf)',
|
|
1072
|
+
/* source= */ shakaAssets.Source.AZURE_MEDIA_SERVICES)
|
|
1073
|
+
.addKeySystem(shakaAssets.KeySystem.AES128)
|
|
1074
|
+
.addFeature(shakaAssets.Feature.DASH)
|
|
1075
|
+
.addFeature(shakaAssets.Feature.MP4)
|
|
1076
|
+
.addFeature(shakaAssets.Feature.HIGH_DEFINITION)
|
|
1077
|
+
.addFeature(shakaAssets.Feature.OFFLINE),
|
|
1063
1078
|
// End Azure Media Services assets }}}
|
|
1064
1079
|
|
|
1065
1080
|
// GPAC assets {{{
|
|
@@ -1227,7 +1242,7 @@ shakaAssets.testAssets = [
|
|
|
1227
1242
|
new ShakaDemoAssetInfo(
|
|
1228
1243
|
/* name= */ 'Low Latency HLS Live',
|
|
1229
1244
|
/* iconUri= */ 'https://storage.googleapis.com/shaka-asset-icons/apple_test_pattern.png',
|
|
1230
|
-
/* manifestUri= */ 'https://ll-hls-test.apple.com/
|
|
1245
|
+
/* manifestUri= */ 'https://ll-hls-test.cdn-apple.com/llhls4/ll-hls-test-04/multi.m3u8',
|
|
1231
1246
|
/* source= */ shakaAssets.Source.APPLE)
|
|
1232
1247
|
.addFeature(shakaAssets.Feature.HLS)
|
|
1233
1248
|
.addFeature(shakaAssets.Feature.LIVE)
|
package/demo/custom.js
CHANGED
|
@@ -407,14 +407,14 @@ shakaDemo.Custom = class {
|
|
|
407
407
|
const licenseServerURL = licenseServerUrlInput.value;
|
|
408
408
|
const customDRMSystem = customDrmSystemInput.value;
|
|
409
409
|
if (licenseServerURL) {
|
|
410
|
-
// Make a license server entry for every common DRM plugin.
|
|
411
410
|
assetInProgress.licenseServers.clear();
|
|
412
|
-
for (const drmSystem of shakaDemo.Main.commonDrmSystems) {
|
|
413
|
-
assetInProgress.licenseServers.set(drmSystem, licenseServerURL);
|
|
414
|
-
}
|
|
415
411
|
if (customDRMSystem) {
|
|
416
|
-
// Make a custom entry too.
|
|
417
412
|
assetInProgress.licenseServers.set(customDRMSystem, licenseServerURL);
|
|
413
|
+
} else {
|
|
414
|
+
// Make a license server entry for every common DRM plugin.
|
|
415
|
+
for (const drmSystem of shakaDemo.Main.commonDrmSystems) {
|
|
416
|
+
assetInProgress.licenseServers.set(drmSystem, licenseServerURL);
|
|
417
|
+
}
|
|
418
418
|
}
|
|
419
419
|
} else {
|
|
420
420
|
assetInProgress.licenseServers.clear();
|
package/demo/locales/en.json
CHANGED
|
@@ -5,6 +5,7 @@
|
|
|
5
5
|
"DEMO_AD_SEARCH": "Filters for assets that have advertisements.",
|
|
6
6
|
"DEMO_AD_TAG_URL": "Ad Tag URL",
|
|
7
7
|
"DEMO_ADS_TAB": "Ads",
|
|
8
|
+
"DEMO_AES128": "AES-128 protection",
|
|
8
9
|
"DEMO_ALL_CONTENT": "ALL CONTENT",
|
|
9
10
|
"DEMO_ALWAYS_STREAM_TEXT": "Always Stream Text",
|
|
10
11
|
"DEMO_ALWAYS_STREAM_TEXT_WARNING": "Text must always be streamed while native controls are enabled, for captions to work.",
|
package/demo/locales/source.json
CHANGED
|
@@ -23,6 +23,10 @@
|
|
|
23
23
|
"description": "The label on a field that allows users to provide a Ad Tag URL for a custom asset.",
|
|
24
24
|
"message": "Ad Tag URL"
|
|
25
25
|
},
|
|
26
|
+
"DEMO_AES128": {
|
|
27
|
+
"description": "Text that describes an asset that is not protected with any Digital Rights Management system but it is protected with AES-128.",
|
|
28
|
+
"message": "[JARGON:AES-128] protection"
|
|
29
|
+
},
|
|
26
30
|
"DEMO_ALL_CONTENT": {
|
|
27
31
|
"description": "A link in the header, that switches to a page for browsing or searching through the entire content library.",
|
|
28
32
|
"message": "ALL CONTENT"
|
package/demo/main.js
CHANGED
|
@@ -715,7 +715,7 @@ shakaDemo.Main = class {
|
|
|
715
715
|
return shakaDemo.MessageIds.UNSUPPORTED_NO_DOWNLOAD;
|
|
716
716
|
}
|
|
717
717
|
|
|
718
|
-
if (!asset.isClear()) {
|
|
718
|
+
if (!asset.isClear() && !asset.isAes128()) {
|
|
719
719
|
const hasSupportedDRM = asset.drm.some((drm) => {
|
|
720
720
|
return this.support_.drm[shakaAssets.identifierForKeySystem(drm)];
|
|
721
721
|
});
|