diff --git a/RELEASENOTES.md b/RELEASENOTES.md index 1003314ada..b4005269c4 100644 --- a/RELEASENOTES.md +++ b/RELEASENOTES.md @@ -93,7 +93,8 @@ * Propagate ad media preparation errors to IMA so that the ads can be skipped. * `EventLogger` moved from the demo app into the core library. -* Fix ANR issue on the Huawei P8 Lite, Huawei Y6II and Moto C+ +* Fix ANR issue on the Huawei P8 Lite, Huawei Y6II, Moto C+, Meizu M5C, + Lenovo K4 Note and Sony Xperia E5. ([#3724](https://github.com/google/ExoPlayer/issues/3724), [#3835](https://github.com/google/ExoPlayer/issues/3835)). * Fix potential NPE when removing media sources from a diff --git a/library/core/src/main/java/com/google/android/exoplayer2/video/MediaCodecVideoRenderer.java b/library/core/src/main/java/com/google/android/exoplayer2/video/MediaCodecVideoRenderer.java index a897f3194c..9e6b0c0f3e 100644 --- a/library/core/src/main/java/com/google/android/exoplayer2/video/MediaCodecVideoRenderer.java +++ b/library/core/src/main/java/com/google/android/exoplayer2/video/MediaCodecVideoRenderer.java @@ -1085,16 +1085,21 @@ public class MediaCodecVideoRenderer extends MediaCodecRenderer { private static boolean codecNeedsSetOutputSurfaceWorkaround(String name) { // Work around https://github.com/google/ExoPlayer/issues/3236, // https://github.com/google/ExoPlayer/issues/3355, - // https://github.com/google/ExoPlayer/issues/3439 and - // https://github.com/google/ExoPlayer/issues/3724. - return (("deb".equals(Util.DEVICE) || "flo".equals(Util.DEVICE)) + // https://github.com/google/ExoPlayer/issues/3439, + // https://github.com/google/ExoPlayer/issues/3724 and + // https://github.com/google/ExoPlayer/issues/3835. + return (("deb".equals(Util.DEVICE) || "flo".equals(Util.DEVICE)) // Nexus 7 (2013) && "OMX.qcom.video.decoder.avc".equals(name)) - || (("tcl_eu".equals(Util.DEVICE) - || "SVP-DTV15".equals(Util.DEVICE) - || "BRAVIA_ATV2".equals(Util.DEVICE) - || "panell_s".equals(Util.DEVICE)) + || (("tcl_eu".equals(Util.DEVICE) // TCL Percee TV + || "SVP-DTV15".equals(Util.DEVICE) // Sony Bravia 4K 2015 + || "BRAVIA_ATV2".equals(Util.DEVICE) // Sony Bravia 4K GB + || "panell_s".equals(Util.DEVICE) // Motorola Moto C Plus + || "F3311".equals(Util.DEVICE) // Sony Xperia E5 + || "M5c".equals(Util.DEVICE) // Meizu M5C + || "A7010a48".equals(Util.DEVICE)) // Lenovo K4 Note && "OMX.MTK.VIDEO.DECODER.AVC".equals(name)) - || (("ALE-L21".equals(Util.MODEL) || "CAM-L21".equals(Util.MODEL)) + || (("ALE-L21".equals(Util.MODEL) // Huawei P8 Lite + || "CAM-L21".equals(Util.MODEL)) // Huawei Y6II && "OMX.k3.video.decoder.avc".equals(name)); }