You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
We updated ExoPlayer from 2.4.2 to 2.7.3 and had a lot of trouble on several devices since the ExoPlayer crashed when trying to start a DRM-protected MPEG-Dash stream.
The issue is related to changing the player's SurfaceView visibility - you might recall another issue we had related to that: #3724
We are aware that it is not a great idea to set the visibility of a SurfaceView to GONE, but so far we haven't been able to get rid of it (but we'll look into it some more). Maybe you can help us anyway since the streams were running fine on older versions of ExoPlayer (see details below).
Reproduction steps
The order is reproducible in a slightly modified version of the ExoPlayer demo app: release-v2...jschamburger:release-v2-surfaceView-gone
The changed behavior is similar to the one we implemented in our app: initially, the SurfaceView is GONE, it is set to VISIBLE as soon as the player is ready.
Without this change, the streams run just fine on the devices mentioned below.
Steps to reproduce:
Start the modified ExoPlayer demo on the device.
Select a DASH Widevine DRM protected stream - the entry Windevine DASH: MP4, H264 - WV: Secure HD (cenc, MP4, H264) is very close to our stream settings and shows the described behavior at least on the WIKO Lenny4 Plus.
WIKO Lenny4 Plus Android 7.0
Sony Xperia XA Android 6.0
We were able to reproduce the issue on the devices above. Judging by our bug tracking, the issue happens on most WIKO and CUBOT devices as well as on several ZTE and Sony devices. In case that helps, I'll gladly compile a more complete list. The two devices we have used to reproduce the issue both support only Level 3 Widevine DRM, which might be an indicator although not all devices supporting only Level 3 are impacted (e.g. we could not reproduce it on a Sony Xperia M5).
A full bug report captured from the device
The exception is DecoderInitializationException: Decoder init failed: OMX.MTK.VIDEO.DECODER.AVC, Format(1, null, video/avc, 7206998, null, [1280, 570, 24.0], [-1, -1])
Apologies that this didn't ever receive attention. We do respond to the vast majority of issues filed, but occasionally one slips through the cracks.
I took a quick (retrospective) look at whether we received a full bug report, and if we did I can't find one, so I don't think there's anything actionable for us to do here. It's also possible that this was a device specific issue, in which case my hope would be that the volume you're seeing for this issue has declined significantly since 2018 as users have migrated to newer devices.
Given the age of this issue, I'll go ahead and close it. If it's still a problem with the latest version of ExoPlayer, it's probably best to file a fresh issue at this point. Apologies again that this issue did not receive attention.
Hi,
that's ok. I actually sent a bug report at the time (more than three years ago). :)
Don't worry about it though! I'm not working on the affected app anymore, but most likely the numbers decreased - otherwise someone would have revived the thread.
Thanks for the update and keep up the good work!
Issue description
We updated ExoPlayer from 2.4.2 to 2.7.3 and had a lot of trouble on several devices since the ExoPlayer crashed when trying to start a DRM-protected MPEG-Dash stream.
The issue is related to changing the player's SurfaceView visibility - you might recall another issue we had related to that: #3724
We are aware that it is not a great idea to set the visibility of a SurfaceView to GONE, but so far we haven't been able to get rid of it (but we'll look into it some more). Maybe you can help us anyway since the streams were running fine on older versions of ExoPlayer (see details below).
Reproduction steps
The order is reproducible in a slightly modified version of the ExoPlayer demo app: release-v2...jschamburger:release-v2-surfaceView-gone
The changed behavior is similar to the one we implemented in our app: initially, the SurfaceView is GONE, it is set to VISIBLE as soon as the player is ready.
Without this change, the streams run just fine on the devices mentioned below.
Steps to reproduce:
Result: The player can't decode the content.
Link to test content
ExoPlayer demo: Windevine DASH: MP4, H264 - WV: Secure HD (cenc, MP4, H264)
Version of ExoPlayer being used
I narrowed down the change to version 2.5.0.
Versions I tried:
2.7.3
2.7.0
2.6.0
2.5.0
2.4.2
2.4.4
Device(s) and version(s) of Android being used
WIKO Lenny4 Plus Android 7.0
Sony Xperia XA Android 6.0
We were able to reproduce the issue on the devices above. Judging by our bug tracking, the issue happens on most WIKO and CUBOT devices as well as on several ZTE and Sony devices. In case that helps, I'll gladly compile a more complete list. The two devices we have used to reproduce the issue both support only Level 3 Widevine DRM, which might be an indicator although not all devices supporting only Level 3 are impacted (e.g. we could not reproduce it on a Sony Xperia M5).
A full bug report captured from the device
The exception is
DecoderInitializationException: Decoder init failed: OMX.MTK.VIDEO.DECODER.AVC, Format(1, null, video/avc, 7206998, null, [1280, 570, 24.0], [-1, -1])
I will send a full adb bug report to dev.exoplayer@gmail.com.
Thanks in advance and kind regards
Johannes
The text was updated successfully, but these errors were encountered: