diff --git a/libraries/exoplayer/src/main/java/androidx/media3/exoplayer/mediacodec/MediaCodecUtil.java b/libraries/exoplayer/src/main/java/androidx/media3/exoplayer/mediacodec/MediaCodecUtil.java index aedb35ac03..b3ad4988e6 100644 --- a/libraries/exoplayer/src/main/java/androidx/media3/exoplayer/mediacodec/MediaCodecUtil.java +++ b/libraries/exoplayer/src/main/java/androidx/media3/exoplayer/mediacodec/MediaCodecUtil.java @@ -1342,6 +1342,8 @@ public final class MediaCodecUtil { return CodecProfileLevel.DolbyVisionProfileDvheSt; case "09": return CodecProfileLevel.DolbyVisionProfileDvavSe; + case "10": + return CodecProfileLevel.DolbyVisionProfileDvav110; default: return null; } diff --git a/libraries/exoplayer/src/test/java/androidx/media3/exoplayer/mediacodec/MediaCodecUtilTest.java b/libraries/exoplayer/src/test/java/androidx/media3/exoplayer/mediacodec/MediaCodecUtilTest.java index d1af420a0a..23f092547c 100644 --- a/libraries/exoplayer/src/test/java/androidx/media3/exoplayer/mediacodec/MediaCodecUtilTest.java +++ b/libraries/exoplayer/src/test/java/androidx/media3/exoplayer/mediacodec/MediaCodecUtilTest.java @@ -69,6 +69,15 @@ public final class MediaCodecUtilTest { MediaCodecInfo.CodecProfileLevel.DolbyVisionLevelFhd60); } + @Test + public void getCodecProfileAndLevel_handlesDolbyVisionProfile10CodecString() { + assertCodecProfileAndLevelForCodecsString( + MimeTypes.VIDEO_DOLBY_VISION, + "dav1.10.09", + MediaCodecInfo.CodecProfileLevel.DolbyVisionProfileDvav110, + MediaCodecInfo.CodecProfileLevel.DolbyVisionLevelUhd60); + } + @Test public void getCodecProfileAndLevel_handlesAv1ProfileMain8CodecString() { assertCodecProfileAndLevelForCodecsString(