Long EMEController. destroy
block the next time setMediaKeys
#6806
Labels
Feature proposal
Needs Triage
If there is a suspected stream issue, apply this label to triage if it is something we should fix.
Is your feature request related to a problem? Please describe.
We recently used a class public static property(
CDMCleanupPromise
) to track the EME destroy promise.https://github.com/video-dev/hls.js/blob/master/src/controller/eme-controller.ts#L1261
There is a hidden issue like this:
If our destroying promise cannot be resolved or rejected, the next time we will fail to
setMediaKeys
: https://github.com/video-dev/hls.js/blob/master/src/controller/eme-controller.ts#L693-L710Describe the solution you'd like
I plan to add
maxEMEDetroyTimeout
config. We will force to clear theCDMCleanupPromise
value if we reach the max timeout value.Additional context
It worked well on most platforms. However, it failed on some low-performance OTT devices from Comcast. I didn't find any error report when destroying the instance. And I remove the
CDMCleanupPromise
setter when destroying. It could work for me.The text was updated successfully, but these errors were encountered: