New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Encrypted HLS failing to play with "no demux matching with content found" error. #2441
Comments
the same issue |
This issue has been automatically marked as stale because it has not had recent activity. It will be closed if no further activity occurs. Thank you for your contributions. |
We see what seems to be the same issue when audio is AES-128 encrypted. I believe there's a race condition during initialization where an audio decryption error sometimes occurs, depending on the order of the following events:
I have not pinpointed the cause, but here is the order of HTTP requests in one case where I observed the error:
Note that the audio key is not received until several requests for the first audio segment have been received. Log snippet (full log here):
The errors from the log:
A side note: I don't get why the player switches variants so fast in the beginning. Shouldn't it pick one and wait for some measurements first? |
For those of you who have participated in this issue, would you please test against https://hls-js-dev.netlify.app/demo/ and let me know if the issue persists? If so, please provide a test stream or, at the very least complete instructions / configuration for your MediaConvert encrypted stream (TS or CMAF, audio tracks, etc...). Note that including a hosted sample stream that can be used to reproduce will help prioritize issues over those that do not. Issues without samples may not be triaged because of the level of effort required. Recently, #3782 fixed #3772 an issue with AES-128 and AAC segments so maybe this did the trick? |
Closing until a test stream is provided to confirm this is still reproducible. |
What do you want to do with Hls.js?
I am trying to play an encrypted HLS stream that is transcoded via AWS Elemental MediaConvert. The stream plays fine with encryption disabled but when enabled I get the following error.
{ type: "mediaError", details: "fragParsingError", fatal: true, reason: "no demux matching with content found" }
What have you tried so far?
I re-transcoded the file with no encryption and it plays perfectly. This leads me to believe it's not actually a demux issue and is a decryption issue. The fragment looks like it decrypts successfully as the
FRAG_DECRYPTED
event is fired and it looks like valid frag data, but I'm unsure. I've found some other issues about theno demux matching with content found
error but those all seem to be related to an invalid container format, but that doesn't seem to explain my issue as the container works fine when decryption is disabled.Here are the encryption settings from MediaConvert
Here is the output with debug enabled. I logged out the fragment when the decryption event fires.
And here is the full error data with fragment data included. This is a test encryption key.
The text was updated successfully, but these errors were encountered: