HLS KEY None Decryption Support #4846
Labels
component: HLS
The issue involves Apple's HLS manifest format
priority: P1
Big impact or workaround impractical; resolve before feature release
status: archived
Archived and locked; will not be updated
type: bug
Something isn't working correctly
Milestone
Have you read the FAQ and checked for duplicate open issues?
yes I think its related to this one. #4774 but it might include additional feature.
What version of Shaka Player are you using?
4.3
Can you reproduce the issue with our latest release version?
yes
Can you reproduce the issue with the latest code from
main
?yes
Are you using the demo app or your own custom app?
demo
If custom app, can you reproduce the issue using our demo app?
demo
What browser and OS are you using?
chrome macos 108
For embedded devices (smart TVs, etc.), what model and firmware version are you using?
n.a
What are the manifest and license server URIs?
https://pub-e06bd0d1422649108618e7121f2af8b5.r2.dev/finite.m3u8
What configuration are you using? What is the output of
player.getConfiguration()
?no changes.
What did you do?
when theres a discontinuty with key method none shaka assumes the segmenet is aes 128 and throws a type error
What did you expect to happen?
with a discontinuty it should signal to the player theres a change coming and read the new key type #EXT-X-KEY method tag.
What actually happened?
shaka throws type error. This stream plays in hls.js theoplayer bitmovin etc.
The chromecast MPL player that shaka is replacing kinda played this stream and others with this type of workflow, but it struggled and buffered/stalled around these changes and ad breaks and switches in encryption even with a full buffer, so it would be good to watch out for that when making a solution.
This is what I think that issue earlier #4774 is fundamentally about. This is very common in ssai ad insertion workflows for aes 128 streams, encrypted main content then a discontinuity with key method none then unencrypted segments, then back to encryption and main content. I guess once theres a change in key type the player should assume that key type for all future segments until told otherwise when a new #EXT-X-KEY method comes up in the playlist even through multiple discontinuities with key none still applying until the playlist shows a sample/aes 128 key type.
It can also be common in slating workflows when a stream has technical issues it can show a slate like in the stream above.
https://datatracker.ietf.org/doc/html/draft-pantos-hls-rfc8216bis#section-4.4.4.4
#EXT-X-KEY:
The following attributes are defined:
This was some of the errors in the console.
shaka-player.compiled.debug.js:834 Assertion failed: Should only receive a Shaka error
(anonymous) @ shaka-player.compiled.debug.js:834
$jscomp.generator.Engine_.nextStep_ @ shaka-player.compiled.debug.js:37
$jscomp.generator.Engine_.throw_ @ shaka-player.compiled.debug.js:35
throw @ shaka-player.compiled.debug.js:38
c @ shaka-player.compiled.debug.js:39
Promise.then (async)
f @ shaka-player.compiled.debug.js:39
Promise.then (async)
f @ shaka-player.compiled.debug.js:39
Promise.then (async)
f @ shaka-player.compiled.debug.js:39
(anonymous) @ shaka-player.compiled.debug.js:39
$jscomp.asyncExecutePromiseGenerator @ shaka-player.compiled.debug.js:39
$jscomp.asyncExecutePromiseGeneratorProgram @ shaka-player.compiled.debug.js:39
shaka.media.StreamingEngine.fetchAndAppend_ @ shaka-player.compiled.debug.js:829
shaka.media.StreamingEngine.update_ @ shaka-player.compiled.debug.js:824
(anonymous) @ shaka-player.compiled.debug.js:819
$jscomp.generator.Engine_.nextStep_ @ shaka-player.compiled.debug.js:37
$jscomp.generator.Engine_.next_ @ shaka-player.compiled.debug.js:33
next @ shaka-player.compiled.debug.js:38
(anonymous) @ shaka-player.compiled.debug.js:39
$jscomp.asyncExecutePromiseGenerator @ shaka-player.compiled.debug.js:39
$jscomp.asyncExecutePromiseGeneratorProgram @ shaka-player.compiled.debug.js:39
shaka.media.StreamingEngine.onUpdate_ @ shaka-player.compiled.debug.js:817
(anonymous) @ shaka-player.compiled.debug.js:864
$jscomp.generator.Engine_.nextStep_ @ shaka-player.compiled.debug.js:37
$jscomp.generator.Engine_.next_ @ shaka-player.compiled.debug.js:33
next @ shaka-player.compiled.debug.js:38
(anonymous) @ shaka-player.compiled.debug.js:39
$jscomp.asyncExecutePromiseGenerator @ shaka-player.compiled.debug.js:39
$jscomp.asyncExecutePromiseGeneratorProgram @ shaka-player.compiled.debug.js:39
(anonymous) @ shaka-player.compiled.debug.js:864
(anonymous) @ shaka-player.compiled.debug.js:200
setTimeout (async)
shaka.util.DelayedTick.tickAfter @ shaka-player.compiled.debug.js:200
shaka.media.StreamingEngine.scheduleUpdate_ @ shaka-player.compiled.debug.js:865
(anonymous) @ shaka-player.compiled.debug.js:834
$jscomp.generator.Engine_.nextStep_ @ shaka-player.compiled.debug.js:37
$jscomp.generator.Engine_.next_ @ shaka-player.compiled.debug.js:33
next @ shaka-player.compiled.debug.js:38
b @ shaka-player.compiled.debug.js:39
Promise.then (async)
f @ shaka-player.compiled.debug.js:39
Promise.then (async)
f @ shaka-player.compiled.debug.js:39
Promise.then (async)
f @ shaka-player.compiled.debug.js:39
Promise.then (async)
f @ shaka-player.compiled.debug.js:39
(anonymous) @ shaka-player.compiled.debug.js:39
$jscomp.asyncExecutePromiseGenerator @ shaka-player.compiled.debug.js:39
$jscomp.asyncExecutePromiseGeneratorProgram @ shaka-player.compiled.debug.js:39
shaka.media.StreamingEngine.fetchAndAppend_ @ shaka-player.compiled.debug.js:829
shaka.media.StreamingEngine.update_ @ shaka-player.compiled.debug.js:824
(anonymous) @ shaka-player.compiled.debug.js:819
$jscomp.generator.Engine_.nextStep_ @ shaka-player.compiled.debug.js:37
$jscomp.generator.Engine_.next_ @ shaka-player.compiled.debug.js:33
next @ shaka-player.compiled.debug.js:38
(anonymous) @ shaka-player.compiled.debug.js:39
$jscomp.asyncExecutePromiseGenerator @ shaka-player.compiled.debug.js:39
$jscomp.asyncExecutePromiseGeneratorProgram @ shaka-player.compiled.debug.js:39
shaka.media.StreamingEngine.onUpdate_ @ shaka-player.compiled.debug.js:817
(anonymous) @ shaka-player.compiled.debug.js:864
$jscomp.generator.Engine_.nextStep_ @ shaka-player.compiled.debug.js:37
$jscomp.generator.Engine_.next_ @ shaka-player.compiled.debug.js:33
next @ shaka-player.compiled.debug.js:38
(anonymous) @ shaka-player.compiled.debug.js:39
$jscomp.asyncExecutePromiseGenerator @ shaka-player.compiled.debug.js:39
$jscomp.asyncExecutePromiseGeneratorProgram @ shaka-player.compiled.debug.js:39
(anonymous) @ shaka-player.compiled.debug.js:864
(anonymous) @ shaka-player.compiled.debug.js:200
setTimeout (async)
shaka.util.DelayedTick.tickAfter @ shaka-player.compiled.debug.js:200
shaka.media.StreamingEngine.scheduleUpdate_ @ shaka-player.compiled.debug.js:865
(anonymous) @ shaka-player.compiled.debug.js:834
$jscomp.generator.Engine_.nextStep_ @ shaka-player.compiled.debug.js:37
$jscomp.generator.Engine_.next_ @ shaka-player.compiled.debug.js:33
next @ shaka-player.compiled.debug.js:38
b @ shaka-player.compiled.debug.js:39
Promise.then (async)
f @ shaka-player.compiled.debug.js:39
Promise.then (async)
f @ shaka-player.compiled.debug.js:39
Promise.then (async)
f @ shaka-player.compiled.debug.js:39
Promise.then (async)
f @ shaka-player.compiled.debug.js:39
(anonymous) @ shaka-player.compiled.debug.js:39
$jscomp.asyncExecutePromiseGenerator @ shaka-player.compiled.debug.js:39
$jscomp.asyncExecutePromiseGeneratorProgram @ shaka-player.compiled.debug.js:39
shaka.media.StreamingEngine.fetchAndAppend_ @ shaka-player.compiled.debug.js:829
shaka.media.StreamingEngine.update_ @ shaka-player.compiled.debug.js:824
(anonymous) @ shaka-player.compiled.debug.js:819
$jscomp.generator.Engine_.nextStep_ @ shaka-player.compiled.debug.js:37
$jscomp.generator.Engine_.next_ @ shaka-player.compiled.debug.js:33
next @ shaka-player.compiled.debug.js:38
(anonymous) @ shaka-player.compiled.debug.js:39
$jscomp.asyncExecutePromiseGenerator @ shaka-player.compiled.debug.js:39
$jscomp.asyncExecutePromiseGeneratorProgram @ shaka-player.compiled.debug.js:39
shaka.media.StreamingEngine.onUpdate_ @ shaka-player.compiled.debug.js:817
(anonymous) @ shaka-player.compiled.debug.js:864
$jscomp.generator.Engine_.nextStep_ @ shaka-player.compiled.debug.js:37
$jscomp.generator.Engine_.next_ @ shaka-player.compiled.debug.js:33
next @ shaka-player.compiled.debug.js:38
(anonymous) @ shaka-player.compiled.debug.js:39
$jscomp.asyncExecutePromiseGenerator @ shaka-player.compiled.debug.js:39
$jscomp.asyncExecutePromiseGeneratorProgram @ shaka-player.compiled.debug.js:39
(anonymous) @ shaka-player.compiled.debug.js:864
(anonymous) @ shaka-player.compiled.debug.js:200
setTimeout (async)
shaka.util.DelayedTick.tickAfter @ shaka-player.compiled.debug.js:200
shaka.media.StreamingEngine.scheduleUpdate_ @ shaka-player.compiled.debug.js:865
(anonymous) @ shaka-player.compiled.debug.js:834
$jscomp.generator.Engine_.nextStep_ @ shaka-player.compiled.debug.js:37
$jscomp.generator.Engine_.next_ @ shaka-player.compiled.debug.js:33
next @ shaka-player.compiled.debug.js:38
b @ shaka-player.compiled.debug.js:39
Promise.then (async)
f @ shaka-player.compiled.debug.js:39
Promise.then (async)
f @ shaka-player.compiled.debug.js:39
Promise.then (async)
f @ shaka-player.compiled.debug.js:39
Promise.then (async)
f @ shaka-player.compiled.debug.js:39
(anonymous) @ shaka-player.compiled.debug.js:39
$jscomp.asyncExecutePromiseGenerator @ shaka-player.compiled.debug.js:39
$jscomp.asyncExecutePromiseGeneratorProgram @ shaka-player.compiled.debug.js:39
shaka.media.StreamingEngine.fetchAndAppend_ @ shaka-player.compiled.debug.js:829
shaka.media.StreamingEngine.update_ @ shaka-player.compiled.debug.js:824
(anonymous) @ shaka-player.compiled.debug.js:819
$jscomp.generator.Engine_.nextStep_ @ shaka-player.compiled.debug.js:37
$jscomp.generator.Engine_.next_ @ shaka-player.compiled.debug.js:33
next @ shaka-player.compiled.debug.js:38
(anonymous) @ shaka-player.compiled.debug.js:39
$jscomp.asyncExecutePromiseGenerator @ shaka-player.compiled.debug.js:39
$jscomp.asyncExecutePromiseGeneratorProgram @ shaka-player.compiled.debug.js:39
shaka.media.StreamingEngine.onUpdate_ @ shaka-player.compiled.debug.js:817
(anonymous) @ shaka-player.compiled.debug.js:864
$jscomp.generator.Engine_.nextStep_ @ shaka-player.compiled.debug.js:37
$jscomp.generator.Engine_.next_ @ shaka-player.compiled.debug.js:33
next @ shaka-player.compiled.debug.js:38
(anonymous) @ shaka-player.compiled.debug.js:39
$jscomp.asyncExecutePromiseGenerator @ shaka-player.compiled.debug.js:39
$jscomp.asyncExecutePromiseGeneratorProgram @ shaka-player.compiled.debug.js:39
(anonymous) @ shaka-player.compiled.debug.js:864
(anonymous) @ shaka-player.compiled.debug.js:200
setTimeout (async)
shaka.util.DelayedTick.tickAfter @ shaka-player.compiled.debug.js:200
shaka.media.StreamingEngine.scheduleUpdate_ @ shaka-player.compiled.debug.js:865
(anonymous) @ shaka-player.compiled.debug.js:862
$jscomp.generator.Engine_.nextStep_ @ shaka-player.compiled.debug.js:37
$jscomp.generator.Engine_.next_ @ shaka-player.compiled.debug.js:33
next @ shaka-player.compiled.debug.js:38
b @ shaka-player.compiled.debug.js:39
Promise.then (async)
f @ shaka-player.compiled.debug.js:39
(anonymous) @ shaka-player.compiled.debug.js:39
$jscomp.asyncExecutePromiseGenerator @ shaka-player.compiled.debug.js:39
$jscomp.asyncExecutePromiseGeneratorProgram @ shaka-player.compiled.debug.js:39
shaka.media.StreamingEngine.clearBuffer_ @ shaka-player.compiled.debug.js:861
(anonymous) @ shaka-player.compiled.debug.js:818
$jscomp.generator.Engine_.nextStep_ @ shaka-player.compiled.debug.js:37
$jscomp.generator.Engine_.next_ @ shaka-player.compiled.debug.js:33
next @ shaka-player.compiled.debug.js:38
(anonymous) @ shaka-player.compiled.debug.js:39
$jscomp.asyncExecutePromiseGenerator @ shaka-player.compiled.debug.js:39
$jscomp.asyncExecutePromiseGeneratorProgram @ shaka-player.compiled.debug.js:39
shaka.media.StreamingEngine.onUpdate_ @ shaka-player.compiled.debug.js:817
(anonymous) @ shaka-player.compiled.debug.js:864
$jscomp.generator.Engine_.nextStep_ @ shaka-player.compiled.debug.js:37
$jscomp.generator.Engine_.next_ @ shaka-player.compiled.debug.js:33
next @ shaka-player.compiled.debug.js:38
(anonymous) @ shaka-player.compiled.debug.js:39
$jscomp.asyncExecutePromiseGenerator @ shaka-player.compiled.debug.js:39
$jscomp.asyncExecutePromiseGeneratorProgram @ shaka-player.compiled.debug.js:39
(anonymous) @ shaka-player.compiled.debug.js:864
(anonymous) @ shaka-player.compiled.debug.js:200
setTimeout (async)
shaka.util.DelayedTick.tickAfter @ shaka-player.compiled.debug.js:200
shaka.media.StreamingEngine.scheduleUpdate_ @ shaka-player.compiled.debug.js:865
(anonymous) @ shaka-player.compiled.debug.js:834
$jscomp.generator.Engine_.nextStep_ @ shaka-player.compiled.debug.js:37
$jscomp.generator.Engine_.next_ @ shaka-player.compiled.debug.js:33
next @ shaka-player.compiled.debug.js:38
b @ shaka-player.compiled.debug.js:39
Promise.then (async)
f @ shaka-player.compiled.debug.js:39
shaka-player.compiled.debug.js:835 (video:1) failed fetch and append: code=0
(anonymous) @ shaka-player.compiled.debug.js:835
$jscomp.generator.Engine_.nextStep_ @ shaka-player.compiled.debug.js:37
$jscomp.generator.Engine_.throw_ @ shaka-player.compiled.debug.js:35
throw @ shaka-player.compiled.debug.js:38
c @ shaka-player.compiled.debug.js:39
Promise.then (async)
f @ shaka-player.compiled.debug.js:39
Promise.then (async)
f @ shaka-player.compiled.debug.js:39
Promise.then (async)
f @ shaka-player.compiled.debug.js:39
(anonymous) @ shaka-player.compiled.debug.js:39
$jscomp.asyncExecutePromiseGenerator @ shaka-player.compiled.debug.js:39
$jscomp.asyncExecutePromiseGeneratorProgram @ shaka-player.compiled.debug.js:39
shaka.media.StreamingEngine.fetchAndAppend_ @ shaka-player.compiled.debug.js:829
shaka.media.StreamingEngine.update_ @ shaka-player.compiled.debug.js:824
(anonymous) @ shaka-player.compiled.debug.js:819
$jscomp.generator.Engine_.nextStep_ @ shaka-player.compiled.debug.js:37
$jscomp.generator.Engine_.next_ @ shaka-player.compiled.debug.js:33
next @ shaka-player.compiled.debug.js:38
(anonymous) @ shaka-player.compiled.debug.js:39
$jscomp.asyncExecutePromiseGenerator @ shaka-player.compiled.debug.js:39
$jscomp.asyncExecutePromiseGeneratorProgram @ shaka-player.compiled.debug.js:39
shaka.media.StreamingEngine.onUpdate_ @ shaka-player.compiled.debug.js:817
(anonymous) @ shaka-player.compiled.debug.js:864
$jscomp.generator.Engine_.nextStep_ @ shaka-player.compiled.debug.js:37
$jscomp.generator.Engine_.next_ @ shaka-player.compiled.debug.js:33
next @ shaka-player.compiled.debug.js:38
(anonymous) @ shaka-player.compiled.debug.js:39
$jscomp.asyncExecutePromiseGenerator @ shaka-player.compiled.debug.js:39
$jscomp.asyncExecutePromiseGeneratorProgram @ shaka-player.compiled.debug.js:39
(anonymous) @ shaka-player.compiled.debug.js:864
(anonymous) @ shaka-player.compiled.debug.js:200
setTimeout (async)
shaka.util.DelayedTick.tickAfter @ shaka-player.compiled.debug.js:200
shaka.media.StreamingEngine.scheduleUpdate_ @ shaka-player.compiled.debug.js:865
(anonymous) @ shaka-player.compiled.debug.js:834
$jscomp.generator.Engine_.nextStep_ @ shaka-player.compiled.debug.js:37
$jscomp.generator.Engine_.next_ @ shaka-player.compiled.debug.js:33
next @ shaka-player.compiled.debug.js:38
b @ shaka-player.compiled.debug.js:39
Promise.then (async)
f @ shaka-player.compiled.debug.js:39
Promise.then (async)
f @ shaka-player.compiled.debug.js:39
Promise.then (async)
f @ shaka-player.compiled.debug.js:39
Promise.then (async)
f @ shaka-player.compiled.debug.js:39
(anonymous) @ shaka-player.compiled.debug.js:39
$jscomp.asyncExecutePromiseGenerator @ shaka-player.compiled.debug.js:39
$jscomp.asyncExecutePromiseGeneratorProgram @ shaka-player.compiled.debug.js:39
shaka.media.StreamingEngine.fetchAndAppend_ @ shaka-player.compiled.debug.js:829
shaka.media.StreamingEngine.update_ @ shaka-player.compiled.debug.js:824
(anonymous) @ shaka-player.compiled.debug.js:819
$jscomp.generator.Engine_.nextStep_ @ shaka-player.compiled.debug.js:37
$jscomp.generator.Engine_.next_ @ shaka-player.compiled.debug.js:33
next @ shaka-player.compiled.debug.js:38
(anonymous) @ shaka-player.compiled.debug.js:39
$jscomp.asyncExecutePromiseGenerator @ shaka-player.compiled.debug.js:39
$jscomp.asyncExecutePromiseGeneratorProgram @ shaka-player.compiled.debug.js:39
shaka.media.StreamingEngine.onUpdate_ @ shaka-player.compiled.debug.js:817
(anonymous) @ shaka-player.compiled.debug.js:864
$jscomp.generator.Engine_.nextStep_ @ shaka-player.compiled.debug.js:37
$jscomp.generator.Engine_.next_ @ shaka-player.compiled.debug.js:33
next @ shaka-player.compiled.debug.js:38
(anonymous) @ shaka-player.compiled.debug.js:39
$jscomp.asyncExecutePromiseGenerator @ shaka-player.compiled.debug.js:39
$jscomp.asyncExecutePromiseGeneratorProgram @ shaka-player.compiled.debug.js:39
(anonymous) @ shaka-player.compiled.debug.js:864
(anonymous) @ shaka-player.compiled.debug.js:200
setTimeout (async)
shaka.util.DelayedTick.tickAfter @ shaka-player.compiled.debug.js:200
shaka.media.StreamingEngine.scheduleUpdate_ @ shaka-player.compiled.debug.js:865
(anonymous) @ shaka-player.compiled.debug.js:834
$jscomp.generator.Engine_.nextStep_ @ shaka-player.compiled.debug.js:37
$jscomp.generator.Engine_.next_ @ shaka-player.compiled.debug.js:33
next @ shaka-player.compiled.debug.js:38
b @ shaka-player.compiled.debug.js:39
Promise.then (async)
f @ shaka-player.compiled.debug.js:39
Promise.then (async)
f @ shaka-player.compiled.debug.js:39
Promise.then (async)
f @ shaka-player.compiled.debug.js:39
Promise.then (async)
f @ shaka-player.compiled.debug.js:39
(anonymous) @ shaka-player.compiled.debug.js:39
$jscomp.asyncExecutePromiseGenerator @ shaka-player.compiled.debug.js:39
$jscomp.asyncExecutePromiseGeneratorProgram @ shaka-player.compiled.debug.js:39
shaka.media.StreamingEngine.fetchAndAppend_ @ shaka-player.compiled.debug.js:829
shaka.media.StreamingEngine.update_ @ shaka-player.compiled.debug.js:824
(anonymous) @ shaka-player.compiled.debug.js:819
$jscomp.generator.Engine_.nextStep_ @ shaka-player.compiled.debug.js:37
$jscomp.generator.Engine_.next_ @ shaka-player.compiled.debug.js:33
next @ shaka-player.compiled.debug.js:38
(anonymous) @ shaka-player.compiled.debug.js:39
$jscomp.asyncExecutePromiseGenerator @ shaka-player.compiled.debug.js:39
$jscomp.asyncExecutePromiseGeneratorProgram @ shaka-player.compiled.debug.js:39
shaka.media.StreamingEngine.onUpdate_ @ shaka-player.compiled.debug.js:817
(anonymous) @ shaka-player.compiled.debug.js:864
$jscomp.generator.Engine_.nextStep_ @ shaka-player.compiled.debug.js:37
$jscomp.generator.Engine_.next_ @ shaka-player.compiled.debug.js:33
next @ shaka-player.compiled.debug.js:38
(anonymous) @ shaka-player.compiled.debug.js:39
$jscomp.asyncExecutePromiseGenerator @ shaka-player.compiled.debug.js:39
$jscomp.asyncExecutePromiseGeneratorProgram @ shaka-player.compiled.debug.js:39
(anonymous) @ shaka-player.compiled.debug.js:864
(anonymous) @ shaka-player.compiled.debug.js:200
setTimeout (async)
shaka.util.DelayedTick.tickAfter @ shaka-player.compiled.debug.js:200
shaka.media.StreamingEngine.scheduleUpdate_ @ shaka-player.compiled.debug.js:865
(anonymous) @ shaka-player.compiled.debug.js:834
$jscomp.generator.Engine_.nextStep_ @ shaka-player.compiled.debug.js:37
$jscomp.generator.Engine_.next_ @ shaka-player.compiled.debug.js:33
next @ shaka-player.compiled.debug.js:38
b @ shaka-player.compiled.debug.js:39
Promise.then (async)
f @ shaka-player.compiled.debug.js:39
Promise.then (async)
f @ shaka-player.compiled.debug.js:39
Promise.then (async)
f @ shaka-player.compiled.debug.js:39
Promise.then (async)
f @ shaka-player.compiled.debug.js:39
(anonymous) @ shaka-player.compiled.debug.js:39
$jscomp.asyncExecutePromiseGenerator @ shaka-player.compiled.debug.js:39
$jscomp.asyncExecutePromiseGeneratorProgram @ shaka-player.compiled.debug.js:39
shaka.media.StreamingEngine.fetchAndAppend_ @ shaka-player.compiled.debug.js:829
shaka.media.StreamingEngine.update_ @ shaka-player.compiled.debug.js:824
(anonymous) @ shaka-player.compiled.debug.js:819
$jscomp.generator.Engine_.nextStep_ @ shaka-player.compiled.debug.js:37
$jscomp.generator.Engine_.next_ @ shaka-player.compiled.debug.js:33
next @ shaka-player.compiled.debug.js:38
(anonymous) @ shaka-player.compiled.debug.js:39
$jscomp.asyncExecutePromiseGenerator @ shaka-player.compiled.debug.js:39
$jscomp.asyncExecutePromiseGeneratorProgram @ shaka-player.compiled.debug.js:39
shaka.media.StreamingEngine.onUpdate_ @ shaka-player.compiled.debug.js:817
(anonymous) @ shaka-player.compiled.debug.js:864
$jscomp.generator.Engine_.nextStep_ @ shaka-player.compiled.debug.js:37
$jscomp.generator.Engine_.next_ @ shaka-player.compiled.debug.js:33
next @ shaka-player.compiled.debug.js:38
(anonymous) @ shaka-player.compiled.debug.js:39
$jscomp.asyncExecutePromiseGenerator @ shaka-player.compiled.debug.js:39
$jscomp.asyncExecutePromiseGeneratorProgram @ shaka-player.compiled.debug.js:39
(anonymous) @ shaka-player.compiled.debug.js:864
(anonymous) @ shaka-player.compiled.debug.js:200
setTimeout (async)
shaka.util.DelayedTick.tickAfter @ shaka-player.compiled.debug.js:200
shaka.media.StreamingEngine.scheduleUpdate_ @ shaka-player.compiled.debug.js:865
(anonymous) @ shaka-player.compiled.debug.js:862
$jscomp.generator.Engine_.nextStep_ @ shaka-player.compiled.debug.js:37
$jscomp.generator.Engine_.next_ @ shaka-player.compiled.debug.js:33
next @ shaka-player.compiled.debug.js:38
b @ shaka-player.compiled.debug.js:39
Promise.then (async)
f @ shaka-player.compiled.debug.js:39
(anonymous) @ shaka-player.compiled.debug.js:39
$jscomp.asyncExecutePromiseGenerator @ shaka-player.compiled.debug.js:39
$jscomp.asyncExecutePromiseGeneratorProgram @ shaka-player.compiled.debug.js:39
shaka.media.StreamingEngine.clearBuffer_ @ shaka-player.compiled.debug.js:861
(anonymous) @ shaka-player.compiled.debug.js:818
$jscomp.generator.Engine_.nextStep_ @ shaka-player.compiled.debug.js:37
$jscomp.generator.Engine_.next_ @ shaka-player.compiled.debug.js:33
next @ shaka-player.compiled.debug.js:38
(anonymous) @ shaka-player.compiled.debug.js:39
$jscomp.asyncExecutePromiseGenerator @ shaka-player.compiled.debug.js:39
$jscomp.asyncExecutePromiseGeneratorProgram @ shaka-player.compiled.debug.js:39
shaka.media.StreamingEngine.onUpdate_ @ shaka-player.compiled.debug.js:817
(anonymous) @ shaka-player.compiled.debug.js:864
$jscomp.generator.Engine_.nextStep_ @ shaka-player.compiled.debug.js:37
$jscomp.generator.Engine_.next_ @ shaka-player.compiled.debug.js:33
next @ shaka-player.compiled.debug.js:38
(anonymous) @ shaka-player.compiled.debug.js:39
$jscomp.asyncExecutePromiseGenerator @ shaka-player.compiled.debug.js:39
$jscomp.asyncExecutePromiseGeneratorProgram @ shaka-player.compiled.debug.js:39
(anonymous) @ shaka-player.compiled.debug.js:864
(anonymous) @ shaka-player.compiled.debug.js:200
setTimeout (async)
shaka.util.DelayedTick.tickAfter @ shaka-player.compiled.debug.js:200
shaka.media.StreamingEngine.scheduleUpdate_ @ shaka-player.compiled.debug.js:865
(anonymous) @ shaka-player.compiled.debug.js:834
$jscomp.generator.Engine_.nextStep_ @ shaka-player.compiled.debug.js:37
$jscomp.generator.Engine_.next_ @ shaka-player.compiled.debug.js:33
next @ shaka-player.compiled.debug.js:38
b @ shaka-player.compiled.debug.js:39
Promise.then (async)
f @ shaka-player.compiled.debug.js:39
shaka-player.compiled.debug.js:1143 Assertion failed: Wrong error type!
shaka.Player.onError_ @ shaka-player.compiled.debug.js:1143
onError @ shaka-player.compiled.debug.js:1041
(anonymous) @ shaka-player.compiled.debug.js:867
$jscomp.generator.Engine_.nextStep_ @ shaka-player.compiled.debug.js:37
$jscomp.generator.Engine_.next_ @ shaka-player.compiled.debug.js:33
next @ shaka-player.compiled.debug.js:38
b @ shaka-player.compiled.debug.js:39
Promise.then (async)
f @ shaka-player.compiled.debug.js:39
(anonymous) @ shaka-player.compiled.debug.js:39
$jscomp.asyncExecutePromiseGenerator @ shaka-player.compiled.debug.js:39
$jscomp.asyncExecutePromiseGeneratorProgram @ shaka-player.compiled.debug.js:39
shaka.media.StreamingEngine.handleStreamingError_ @ shaka-player.compiled.debug.js:867
(anonymous) @ shaka-player.compiled.debug.js:836
$jscomp.generator.Engine_.nextStep_ @ shaka-player.compiled.debug.js:37
$jscomp.generator.Engine_.throw_ @ shaka-player.compiled.debug.js:35
throw @ shaka-player.compiled.debug.js:38
c @ shaka-player.compiled.debug.js:39
Promise.then (async)
f @ shaka-player.compiled.debug.js:39
Promise.then (async)
f @ shaka-player.compiled.debug.js:39
Promise.then (async)
f @ shaka-player.compiled.debug.js:39
(anonymous) @ shaka-player.compiled.debug.js:39
$jscomp.asyncExecutePromiseGenerator @ shaka-player.compiled.debug.js:39
$jscomp.asyncExecutePromiseGeneratorProgram @ shaka-player.compiled.debug.js:39
shaka.media.StreamingEngine.fetchAndAppend_ @ shaka-player.compiled.debug.js:829
shaka.media.StreamingEngine.update_ @ shaka-player.compiled.debug.js:824
(anonymous) @ shaka-player.compiled.debug.js:819
$jscomp.generator.Engine_.nextStep_ @ shaka-player.compiled.debug.js:37
$jscomp.generator.Engine_.next_ @ shaka-player.compiled.debug.js:33
next @ shaka-player.compiled.debug.js:38
(anonymous) @ shaka-player.compiled.debug.js:39
$jscomp.asyncExecutePromiseGenerator @ shaka-player.compiled.debug.js:39
$jscomp.asyncExecutePromiseGeneratorProgram @ shaka-player.compiled.debug.js:39
shaka.media.StreamingEngine.onUpdate_ @ shaka-player.compiled.debug.js:817
(anonymous) @ shaka-player.compiled.debug.js:864
$jscomp.generator.Engine_.nextStep_ @ shaka-player.compiled.debug.js:37
$jscomp.generator.Engine_.next_ @ shaka-player.compiled.debug.js:33
next @ shaka-player.compiled.debug.js:38
(anonymous) @ shaka-player.compiled.debug.js:39
$jscomp.asyncExecutePromiseGenerator @ shaka-player.compiled.debug.js:39
$jscomp.asyncExecutePromiseGeneratorProgram @ shaka-player.compiled.debug.js:39
(anonymous) @ shaka-player.compiled.debug.js:864
(anonymous) @ shaka-player.compiled.debug.js:200
setTimeout (async)
shaka.util.DelayedTick.tickAfter @ shaka-player.compiled.debug.js:200
shaka.media.StreamingEngine.scheduleUpdate_ @ shaka-player.compiled.debug.js:865
(anonymous) @ shaka-player.compiled.debug.js:834
$jscomp.generator.Engine_.nextStep_ @ shaka-player.compiled.debug.js:37
$jscomp.generator.Engine_.next_ @ shaka-player.compiled.debug.js:33
next @ shaka-player.compiled.debug.js:38
b @ shaka-player.compiled.debug.js:39
Promise.then (async)
f @ shaka-player.compiled.debug.js:39
Promise.then (async)
f @ shaka-player.compiled.debug.js:39
Promise.then (async)
f @ shaka-player.compiled.debug.js:39
Promise.then (async)
f @ shaka-player.compiled.debug.js:39
(anonymous) @ shaka-player.compiled.debug.js:39
$jscomp.asyncExecutePromiseGenerator @ shaka-player.compiled.debug.js:39
$jscomp.asyncExecutePromiseGeneratorProgram @ shaka-player.compiled.debug.js:39
shaka.media.StreamingEngine.fetchAndAppend_ @ shaka-player.compiled.debug.js:829
shaka.media.StreamingEngine.update_ @ shaka-player.compiled.debug.js:824
(anonymous) @ shaka-player.compiled.debug.js:819
$jscomp.generator.Engine_.nextStep_ @ shaka-player.compiled.debug.js:37
$jscomp.generator.Engine_.next_ @ shaka-player.compiled.debug.js:33
next @ shaka-player.compiled.debug.js:38
(anonymous) @ shaka-player.compiled.debug.js:39
$jscomp.asyncExecutePromiseGenerator @ shaka-player.compiled.debug.js:39
$jscomp.asyncExecutePromiseGeneratorProgram @ shaka-player.compiled.debug.js:39
shaka.media.StreamingEngine.onUpdate_ @ shaka-player.compiled.debug.js:817
(anonymous) @ shaka-player.compiled.debug.js:864
$jscomp.generator.Engine_.nextStep_ @ shaka-player.compiled.debug.js:37
$jscomp.generator.Engine_.next_ @ shaka-player.compiled.debug.js:33
next @ shaka-player.compiled.debug.js:38
(anonymous) @ shaka-player.compiled.debug.js:39
$jscomp.asyncExecutePromiseGenerator @ shaka-player.compiled.debug.js:39
$jscomp.asyncExecutePromiseGeneratorProgram @ shaka-player.compiled.debug.js:39
(anonymous) @ shaka-player.compiled.debug.js:864
(anonymous) @ shaka-player.compiled.debug.js:200
setTimeout (async)
shaka.util.DelayedTick.tickAfter @ shaka-player.compiled.debug.js:200
shaka.media.StreamingEngine.scheduleUpdate_ @ shaka-player.compiled.debug.js:865
(anonymous) @ shaka-player.compiled.debug.js:834
$jscomp.generator.Engine_.nextStep_ @ shaka-player.compiled.debug.js:37
$jscomp.generator.Engine_.next_ @ shaka-player.compiled.debug.js:33
next @ shaka-player.compiled.debug.js:38
b @ shaka-player.compiled.debug.js:39
Promise.then (async)
f @ shaka-player.compiled.debug.js:39
Promise.then (async)
f @ shaka-player.compiled.debug.js:39
Promise.then (async)
f @ shaka-player.compiled.debug.js:39
Promise.then (async)
f @ shaka-player.compiled.debug.js:39
(anonymous) @ shaka-player.compiled.debug.js:39
$jscomp.asyncExecutePromiseGenerator @ shaka-player.compiled.debug.js:39
$jscomp.asyncExecutePromiseGeneratorProgram @ shaka-player.compiled.debug.js:39
shaka.media.StreamingEngine.fetchAndAppend_ @ shaka-player.compiled.debug.js:829
shaka.media.StreamingEngine.update_ @ shaka-player.compiled.debug.js:824
(anonymous) @ shaka-player.compiled.debug.js:819
$jscomp.generator.Engine_.nextStep_ @ shaka-player.compiled.debug.js:37
$jscomp.generator.Engine_.next_ @ shaka-player.compiled.debug.js:33
next @ shaka-player.compiled.debug.js:38
(anonymous) @ shaka-player.compiled.debug.js:39
$jscomp.asyncExecutePromiseGenerator @ shaka-player.compiled.debug.js:39
$jscomp.asyncExecutePromiseGeneratorProgram @ shaka-player.compiled.debug.js:39
shaka.media.StreamingEngine.onUpdate_ @ shaka-player.compiled.debug.js:817
(anonymous) @ shaka-player.compiled.debug.js:864
$jscomp.generator.Engine_.nextStep_ @ shaka-player.compiled.debug.js:37
$jscomp.generator.Engine_.next_ @ shaka-player.compiled.debug.js:33
next @ shaka-player.compiled.debug.js:38
(anonymous) @ shaka-player.compiled.debug.js:39
$jscomp.asyncExecutePromiseGenerator @ shaka-player.compiled.debug.js:39
$jscomp.asyncExecutePromiseGeneratorProgram @ shaka-player.compiled.debug.js:39
(anonymous) @ shaka-player.compiled.debug.js:864
(anonymous) @ shaka-player.compiled.debug.js:200
setTimeout (async)
shaka.util.DelayedTick.tickAfter @ shaka-player.compiled.debug.js:200
shaka.media.StreamingEngine.scheduleUpdate_ @ shaka-player.compiled.debug.js:865
(anonymous) @ shaka-player.compiled.debug.js:834
$jscomp.generator.Engine_.nextStep_ @ shaka-player.compiled.debug.js:37
$jscomp.generator.Engine_.next_ @ shaka-player.compiled.debug.js:33
next @ shaka-player.compiled.debug.js:38
b @ shaka-player.compiled.debug.js:39
Promise.then (async)
f @ shaka-player.compiled.debug.js:39
Promise.then (async)
f @ shaka-player.compiled.debug.js:39
Promise.then (async)
f @ shaka-player.compiled.debug.js:39
Promise.then (async)
f @ shaka-player.compiled.debug.js:39
(anonymous) @ shaka-player.compiled.debug.js:39
$jscomp.asyncExecutePromiseGenerator @ shaka-player.compiled.debug.js:39
$jscomp.asyncExecutePromiseGeneratorProgram @ shaka-player.compiled.debug.js:39
shaka.media.StreamingEngine.fetchAndAppend_ @ shaka-player.compiled.debug.js:829
shaka.media.StreamingEngine.update_ @ shaka-player.compiled.debug.js:824
(anonymous) @ shaka-player.compiled.debug.js:819
$jscomp.generator.Engine_.nextStep_ @ shaka-player.compiled.debug.js:37
$jscomp.generator.Engine_.next_ @ shaka-player.compiled.debug.js:33
next @ shaka-player.compiled.debug.js:38
(anonymous) @ shaka-player.compiled.debug.js:39
$jscomp.asyncExecutePromiseGenerator @ shaka-player.compiled.debug.js:39
$jscomp.asyncExecutePromiseGeneratorProgram @ shaka-player.compiled.debug.js:39
shaka.media.StreamingEngine.onUpdate_ @ shaka-player.compiled.debug.js:817
(anonymous) @ shaka-player.compiled.debug.js:864
$jscomp.generator.Engine_.nextStep_ @ shaka-player.compiled.debug.js:37
$jscomp.generator.Engine_.next_ @ shaka-player.compiled.debug.js:33
next @ shaka-player.compiled.debug.js:38
(anonymous) @ shaka-player.compiled.debug.js:39
$jscomp.asyncExecutePromiseGenerator @ shaka-player.compiled.debug.js:39
$jscomp.asyncExecutePromiseGeneratorProgram @ shaka-player.compiled.debug.js:39
(anonymous) @ shaka-player.compiled.debug.js:864
(anonymous) @ shaka-player.compiled.debug.js:200
setTimeout (async)
shaka.util.DelayedTick.tickAfter @ shaka-player.compiled.debug.js:200
shaka.media.StreamingEngine.scheduleUpdate_ @ shaka-player.compiled.debug.js:865
(anonymous) @ shaka-player.compiled.debug.js:862
$jscomp.generator.Engine_.nextStep_ @ shaka-player.compiled.debug.js:37
$jscomp.generator.Engine_.next_ @ shaka-player.compiled.debug.js:33
next @ shaka-player.compiled.debug.js:38
b @ shaka-player.compiled.debug.js:39
Promise.then (async)
f @ shaka-player.compiled.debug.js:39
(anonymous) @ shaka-player.compiled.debug.js:39
$jscomp.asyncExecutePromiseGenerator @ shaka-player.compiled.debug.js:39
$jscomp.asyncExecutePromiseGeneratorProgram @ shaka-player.compiled.debug.js:39
shaka.media.StreamingEngine.clearBuffer_ @ shaka-player.compiled.debug.js:861
(anonymous) @ shaka-player.compiled.debug.js:818
$jscomp.generator.Engine_.nextStep_ @ shaka-player.compiled.debug.js:37
$jscomp.generator.Engine_.next_ @ shaka-player.compiled.debug.js:33
next @ shaka-player.compiled.debug.js:38
(anonymous) @ shaka-player.compiled.debug.js:39
$jscomp.asyncExecutePromiseGenerator @ shaka-player.compiled.debug.js:39
$jscomp.asyncExecutePromiseGeneratorProgram @ shaka-player.compiled.debug.js:39
shaka.media.StreamingEngine.onUpdate_ @ shaka-player.compiled.debug.js:817
(anonymous) @ shaka-player.compiled.debug.js:864
$jscomp.generator.Engine_.nextStep_ @ shaka-player.compiled.debug.js:37
$jscomp.generator.Engine_.next_ @ shaka-player.compiled.debug.js:33
next @ shaka-player.compiled.debug.js:38
(anonymous) @ shaka-player.compiled.debug.js:39
$jscomp.asyncExecutePromiseGenerator @ shaka-player.compiled.debug.js:39
$jscomp.asyncExecutePromiseGeneratorProgram @ shaka-player.compiled.debug.js:39
(anonymous) @ shaka-player.compiled.debug.js:864
(anonymous) @ shaka-player.compiled.debug.js:200
setTimeout (async)
shaka.util.DelayedTick.tickAfter @ shaka-player.compiled.debug.js:200
shaka.media.StreamingEngine.scheduleUpdate_ @ shaka-player.compiled.debug.js:865
(anonymous) @ shaka-player.compiled.debug.js:834
$jscomp.generator.Engine_.nextStep_ @ shaka-player.compiled.debug.js:37
$jscomp.generator.Engine_.next_ @ shaka-player.compiled.debug.js:33
next @ shaka-player.compiled.debug.js:38
b @ shaka-player.compiled.debug.js:39
Promise.then (async)
f @ shaka-player.compiled.debug.js:39
shakaapp.js:80 Error code 0 object Error
The text was updated successfully, but these errors were encountered: