-
Notifications
You must be signed in to change notification settings - Fork 1.7k
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
Support seamless period switch from non DRM periods to DRM periods #4137
Comments
I still see this problem in Chrome Version 111.0.5563.64 on MacOSx.
We need to reset the MSE for the first transition between non encrypted to encrypted content. One possible workaround would be to append the encrypted init segment of an upcoming encrypted period before starting the playback of the non-encrypted period. For now, I don't think a settings flag to disable Which platform are you testing on? |
I mainly checked this on Chrome based platform, from my Mac Chrome 110.0.5481.177 to old version of Chromes from TV, e.g. Chrome/88.0.4324.182 from a Hisense TV. |
This does work in shaka so it should at the very least be possible. |
@bwallberg Do you know how they implemented it? Are they appending an encrypted init segment before playback of mixed content (DRM and non DRM)? |
@dsilhavy unfortunately not. Not yet anyway. |
Related issue #4396 |
Closing this issue as we have a more detailed description in #4396 |
Is your feature request related to a problem? Please describe.
I noticed that seamless period switch from non DRM periods to DRM periods was disabled due to buffer errors that is mentioned in the original PR #3413.
However, seamless period switch is still possible in this case from my recent testing. I'm not sure that something changed or not in the past two years.
Maybe just because we implemented a
ProtectionController
by ourselves, we usesMediaPlayer.attachProtectionController
.Describe the solution you'd like
dash.js/src/streaming/controllers/StreamController.js
Lines 620 to 629 in a1cc5b2
Is it possible/proper to add a new setting to bypass
previousStream.isProtectionCompatible(nextStream)
?I did see that there was still a playback issue when replace
previousStream.isProtectionCompatible(nextStream)
totrue
in DASH-IF sample, but not sure if it's just buffer errors that mentioned before.Additional context
We're using dash.js@4.3.0, I'm sure no changes about this in latest dash.js.
The text was updated successfully, but these errors were encountered: