Add missing API level checks in EnumerateDecodersTest

-------------
Created by MOE: https://github.com/google/moe
MOE_MIGRATED_REVID=209414373
This commit is contained in:
andrewlewis 2018-08-20 07:32:32 -07:00 committed by Oliver Woodman
parent 5c2dd9ca42
commit e56a9d1bb5

View File

@ -88,33 +88,44 @@ public class EnumerateDecodersTest {
}
private void enumerateDecoders(String mimeType) throws DecoderQueryException {
logDecoderInfos(MediaCodecUtil.getDecoderInfos(mimeType, /* secure= */ false));
logDecoderInfos(MediaCodecUtil.getDecoderInfos(mimeType, /* secure= */ true));
logDecoderInfos(mimeType, /* secure= */ false);
logDecoderInfos(mimeType, /* secure= */ true);
}
private void logDecoderInfos(List<MediaCodecInfo> mediaCodecInfos) {
private void logDecoderInfos(String mimeType, boolean secure) throws DecoderQueryException {
List<MediaCodecInfo> mediaCodecInfos = MediaCodecUtil.getDecoderInfos(mimeType, secure);
for (MediaCodecInfo mediaCodecInfo : mediaCodecInfos) {
CodecCapabilities capabilities = Assertions.checkNotNull(mediaCodecInfo.capabilities);
metricsLogger.logMetric(
"capabilities_" + mediaCodecInfo.name, codecCapabilitiesToString(capabilities));
"capabilities_" + mediaCodecInfo.name, codecCapabilitiesToString(mimeType, capabilities));
}
}
private static String codecCapabilitiesToString(CodecCapabilities codecCapabilities) {
String mimeType = codecCapabilities.getMimeType();
boolean isVideo = MimeTypes.isVideo(mimeType);
boolean isAudio = MimeTypes.isAudio(mimeType);
private static String codecCapabilitiesToString(
String requestedMimeType, CodecCapabilities codecCapabilities) {
boolean isVideo = MimeTypes.isVideo(requestedMimeType);
boolean isAudio = MimeTypes.isAudio(requestedMimeType);
StringBuilder result = new StringBuilder();
result.append("[mimeType=").append(mimeType).append(", profileLevels=");
profileLevelsToString(codecCapabilities.profileLevels, result);
result.append(", maxSupportedInstances=").append(codecCapabilities.getMaxSupportedInstances());
result.append("[requestedMimeType=").append(requestedMimeType);
if (Util.SDK_INT >= 21) {
result.append(", mimeType=").append(codecCapabilities.getMimeType());
}
result.append(", profileLevels=");
appendProfileLevels(codecCapabilities.profileLevels, result);
if (Util.SDK_INT >= 23) {
result
.append(", maxSupportedInstances=")
.append(codecCapabilities.getMaxSupportedInstances());
}
if (Util.SDK_INT >= 21) {
if (isVideo) {
result.append(", videoCapabilities=");
videoCapabilitiesToString(codecCapabilities.getVideoCapabilities(), result);
appendVideoCapabilities(codecCapabilities.getVideoCapabilities(), result);
result.append(", colorFormats=").append(Arrays.toString(codecCapabilities.colorFormats));
} else if (isAudio) {
result.append(", audioCapabilities=");
audioCapabilitiesToString(codecCapabilities.getAudioCapabilities(), result);
appendAudioCapabilities(codecCapabilities.getAudioCapabilities(), result);
}
}
if (Util.SDK_INT >= 19
&& isVideo
@ -140,7 +151,7 @@ public class EnumerateDecodersTest {
return result.toString();
}
private static void audioCapabilitiesToString(
private static void appendAudioCapabilities(
AudioCapabilities audioCapabilities, StringBuilder result) {
result
.append("[bitrateRange=")
@ -152,7 +163,7 @@ public class EnumerateDecodersTest {
.append(']');
}
private static void videoCapabilitiesToString(
private static void appendVideoCapabilities(
VideoCapabilities videoCapabilities, StringBuilder result) {
result
.append("[bitrateRange=")
@ -170,8 +181,7 @@ public class EnumerateDecodersTest {
.append(']');
}
private static void profileLevelsToString(
CodecProfileLevel[] profileLevels, StringBuilder result) {
private static void appendProfileLevels(CodecProfileLevel[] profileLevels, StringBuilder result) {
result.append('[');
int count = profileLevels.length;
for (int i = 0; i < count; i++) {