mirror of
https://github.com/androidx/media.git
synced 2025-05-15 19:49:50 +08:00
Move E-AC3 workaround out of MediaCodecUtil
PiperOrigin-RevId: 244173887
This commit is contained in:
parent
6665af5b7b
commit
fe65f002a5
@ -331,6 +331,13 @@ public class MediaCodecAudioRenderer extends MediaCodecRenderer implements Media
|
|||||||
mediaCodecSelector.getDecoderInfos(
|
mediaCodecSelector.getDecoderInfos(
|
||||||
format.sampleMimeType, requiresSecureDecoder, /* requiresTunnelingDecoder= */ false);
|
format.sampleMimeType, requiresSecureDecoder, /* requiresTunnelingDecoder= */ false);
|
||||||
decoderInfos = MediaCodecUtil.getDecoderInfosSortedByFormatSupport(decoderInfos, format);
|
decoderInfos = MediaCodecUtil.getDecoderInfosSortedByFormatSupport(decoderInfos, format);
|
||||||
|
if (MimeTypes.AUDIO_E_AC3_JOC.equals(format.sampleMimeType)) {
|
||||||
|
// E-AC3 decoders can decode JOC streams, but in 2-D rather than 3-D.
|
||||||
|
List<MediaCodecInfo> eac3DecoderInfos =
|
||||||
|
mediaCodecSelector.getDecoderInfos(
|
||||||
|
MimeTypes.AUDIO_E_AC3, requiresSecureDecoder, /* requiresTunnelingDecoder= */ false);
|
||||||
|
decoderInfos.addAll(eac3DecoderInfos);
|
||||||
|
}
|
||||||
return Collections.unmodifiableList(decoderInfos);
|
return Collections.unmodifiableList(decoderInfos);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -173,13 +173,6 @@ public final class MediaCodecUtil {
|
|||||||
+ ". Assuming: " + decoderInfos.get(0).name);
|
+ ". Assuming: " + decoderInfos.get(0).name);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
if (MimeTypes.AUDIO_E_AC3_JOC.equals(mimeType)) {
|
|
||||||
// E-AC3 decoders can decode JOC streams, but in 2-D rather than 3-D.
|
|
||||||
CodecKey eac3Key = new CodecKey(MimeTypes.AUDIO_E_AC3, key.secure, key.tunneling);
|
|
||||||
ArrayList<MediaCodecInfo> eac3DecoderInfos =
|
|
||||||
getDecoderInfosInternal(eac3Key, mediaCodecList, mimeType);
|
|
||||||
decoderInfos.addAll(eac3DecoderInfos);
|
|
||||||
}
|
|
||||||
applyWorkarounds(mimeType, decoderInfos);
|
applyWorkarounds(mimeType, decoderInfos);
|
||||||
List<MediaCodecInfo> unmodifiableDecoderInfos = Collections.unmodifiableList(decoderInfos);
|
List<MediaCodecInfo> unmodifiableDecoderInfos = Collections.unmodifiableList(decoderInfos);
|
||||||
decoderInfosCache.put(key, unmodifiableDecoderInfos);
|
decoderInfosCache.put(key, unmodifiableDecoderInfos);
|
||||||
|
Loading…
x
Reference in New Issue
Block a user