Add Meizu M5C, Lenovo K4 Note, and Sony Xperia E5 to surface workaround.

Also added comments for all existing devices for easier reference.

Issue:#3835
Issue:#3236

-------------
Created by MOE: https://github.com/google/moe
MOE_MIGRATED_REVID=185661900
This commit is contained in:
tonihei 2018-02-14 02:55:37 -08:00 committed by Oliver Woodman
parent 4ca755a344
commit 1d7e8efbdf
2 changed files with 15 additions and 9 deletions

View file

@ -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

View file

@ -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));
}