From f4d470ac4cb406d13aced134f467e6ca501f188b Mon Sep 17 00:00:00 2001 From: samrobinson Date: Wed, 22 Feb 2023 13:35:27 +0000 Subject: [PATCH] Only log list of removed encoders if not empty. Logcat had the following lines, with no other information. ``` DefaultEncoderFactory: Encoders removed for resolution: DefaultEncoderFactory: Encoders removed for bitrate: DefaultEncoderFactory: Encoders removed for bitrate mode: ``` PiperOrigin-RevId: 511470231 --- .../transformer/DefaultEncoderFactory.java | 23 ++++++++++++------- 1 file changed, 15 insertions(+), 8 deletions(-) diff --git a/libraries/transformer/src/main/java/androidx/media3/transformer/DefaultEncoderFactory.java b/libraries/transformer/src/main/java/androidx/media3/transformer/DefaultEncoderFactory.java index 6c6612c75a..f1d8741166 100644 --- a/libraries/transformer/src/main/java/androidx/media3/transformer/DefaultEncoderFactory.java +++ b/libraries/transformer/src/main/java/androidx/media3/transformer/DefaultEncoderFactory.java @@ -630,15 +630,9 @@ public final class DefaultEncoderFactory implements Codec.EncoderFactory { } } - List removedEncoders = new ArrayList<>(encoders); - removedEncoders.removeAll(filteredEncoders); - StringBuilder stringBuilder = - new StringBuilder("Encoders removed for ").append(filterName).append(":\n"); - for (int i = 0; i < removedEncoders.size(); i++) { - MediaCodecInfo encoderInfo = removedEncoders.get(i); - stringBuilder.append(Util.formatInvariant(" %s\n", encoderInfo.getName())); + if (filteredEncoders.size() != encoders.size()) { + logRemovedEncoders(encoders, filteredEncoders, filterName); } - Log.d(TAG, stringBuilder.toString()); return ImmutableList.copyOf(filteredEncoders); } @@ -672,4 +666,17 @@ public final class DefaultEncoderFactory implements Codec.EncoderFactory { /* isDecoder= */ false, format); } + + private static void logRemovedEncoders( + List encoders, List filteredEncoders, String filterName) { + List removedEncoders = new ArrayList<>(encoders); + removedEncoders.removeAll(filteredEncoders); + StringBuilder stringBuilder = + new StringBuilder("Encoders removed for ").append(filterName).append(":\n"); + for (int i = 0; i < removedEncoders.size(); i++) { + MediaCodecInfo encoderInfo = removedEncoders.get(i); + stringBuilder.append(Util.formatInvariant(" %s\n", encoderInfo.getName())); + } + Log.d(TAG, stringBuilder.toString()); + } }