-
Notifications
You must be signed in to change notification settings - Fork 242
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
[DRM] Revert to single session decryption (when possible) #1165
Conversation
looking at red lines vs green lines - seems this change simplifies the code quite a bit :) Looking at your bento branch, seems the patch would be quite small? |
have tested with kayo device 1) started windows stream - OK once device .3 started - device .1 started getting the DRM errors (but kept playing) So seems Kayo just "kicks off" the oldest device when a new stream starts In summary -works really well!! thank you so much @glennguy :) |
Thanks for testing @matthuisman ! Yes just changing the function signature is all that's needed in Bento4. |
@matthuisman remember to never use |
@matthuisman which 32 bit device did you test on? |
Nvidia shield tube |
@matthuisman still cant wrap my head around what tells the stream to parseandcorrect(from windows log) the url after license fail on all platforms except fire tv haha. and my fire TV log is very bare compared to windows log, far less information, is that normal? ive got all of the same component specific items enabled |
i tried test this with n€tflix VP9.2 but something broken decrypting |
I never checked the preinit code, will have a look today. I notice on the second licence call one of the keys comes back with a bad status code and that's the one that's failing |
@CastagnaIT would it be possible to get a copy of log where it works? |
here https://paste.kodi.tv/mokivovitu.kodi preinit dont have to make license call |
the bento patch to |
70d68bd
to
5c6fb0f
Compare
@CastagnaIT I think this is ready to go if you want to have another look? Working with NF now. It won't be merged until done with your PR - reviewing that now as I type this. I will redo this to suit afterwards. |
thanks |
I suspect the big rework won't be backported? If this PR is updated for the rework, will this still be backported? |
Correct, Kodi Nexus is at release so we're not doing things of that nature in that branch, only bugfixes and feature backports if suitable
Just done :) - #1216 |
oh great :) so i guess you backported the current changes and then update these changes to be compatible with rework PR :) |
note - decrypting multiple subsamples is possible but we transform the data first so the decrypter sees 1 subsample. Decrypting with subsamples > 1 seems to be fully broken now, at least as far as I can tell.
Previously turned off to avoid certain pixelation issues. This should be fixed properly rather than this workaround.
5c6fb0f
to
aa50b63
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
i made a fast test with n€tflix vp9.2 and works
i will try av1 later i have no more time atm
d920b94
to
84b95dd
Compare
@CastagnaIT I think it's ready to look at again when you're ready |
To facilitate CBCS decryption on a single session
Decrypting audio and video can use the same session if both keys are present.
a54870f
to
5818750
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
now looks very good
remember to do bento4 release and fix relative commit before merge the PR
5818750
to
f1ff510
Compare
Description
Many problems are now being observed from changes relating back to the introduction of CBCS decryption. For this change separate sessions were maintained, partly in an effort to avoid having more Bento4 patches. Now we observe the multiple license requests involved appear to inform service providers that there are multiple concurrent streams playing, causing license rejection after some duration of playback.
Another prior change was to force separate audio/video sessions on Android to resolve 'pixelation' issues. This workaround has worked but again as above has side effects. This issue should be investigated separately and a proper solution found.
Motivation and context
In an effort to resolve issues experienced in #1147
How has this been tested?
Runtime tests on CBCS and CENC test streams show no side effects. Artifacts of this PR will be distributed for user testing in particular on Android.
Screenshots (if appropriate):
Types of change
Checklist: