-
Notifications
You must be signed in to change notification settings - Fork 6k
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
Widevine L1 DRM with GPU processing (Android N 7.1.1) #3373
Comments
Can you try outputting to a secure If playback to a secure Please let us know what you find out! [Internal ref: 67367376] |
Hello again and thanks a lot for your quick response! I tried to replace my SurfaceTexture, which I supply to ExoPlayer, with a secure DummySurface, but it seems I get the same error... Do you think creating my own native subclass of SurfaceTexture where I set the GRALLOC secure bit myself will help? I will be testing with a Pixel 2 starting Monday. Hopefully that will get me past this.
|
I'm not sure! I somewhat doubt it though; I suspect the platform needs to be the one setting the bit. Please let us know what you find out. Including whether your existing code works on Pixel, which would help confirm this as a device specific issue. |
Hello again, I can now confirm that my protected GPU video rendering path does work on a Google Pixel 2 XL, but not on the Samsung Galaxy Note 8. I haven't tested on more Google and Samsung devices, but this leads me to believe that Samsung doesn't fully support the protected GPU path. |
Thanks for the update. I think you're right. We'll disable use of DummySurface for Samsung devices running API level 25 as well. |
Issue: #3373 ------------- Created by MOE: https://github.com/google/moe MOE_MIGRATED_REVID=173381588
This is a device specific issue not under our control, so closing. |
Hello!
I'm having a hard time finding a working solution for this after a lot of searching...
test device: Samsung Galaxy Note 8 (SM-N950U)
Android version: 7.1.1
ExoPlayer version: 2.5.3
I'm trying to run an OpenGL ES 2.0 shader on WV L1 DRM protected video via SurfaceTexture which should be supported according to: https://source.android.com/devices/graphics/arch-st
I've overridden the context and window surface creation factories for the GLSurfaceView:
the extensions above are defined as:
When the above surface is created (from within onSurfaceChanged()) I create SurfaceTexture using an OpenGL texture marked as protected as follows:
I get this error when trying to play Secure path required content:
I suspect the Surface/SurfaceTexture isn't being created with the GRALLOC_USAGE_PROTECTED bit set. I'm not sure if this is needed, or how to have the Surface or GLSurfaceView created that way. What am I doing wrong?
The text was updated successfully, but these errors were encountered: