From 0462349902cf62372265e6f3a4bda81d09ae9e28 Mon Sep 17 00:00:00 2001 From: ibaker Date: Wed, 30 Oct 2024 07:18:31 -0700 Subject: [PATCH] Deprecate `NalUnitUtil.isNalUnitSei(String, byte)` The overload that takes a `Format` is preferred, because it can detect SEI NAL units in Dolby Vision tracks too. Submitting this in a separate change so we can avoid cherry-picking it into `1.5.0-rc01`, otherwise it would naturally be part of https://github.com/androidx/media/commit/27371db225c80316cdb8e6abdb9220da737ced31. Issue: androidx/media#1820 PiperOrigin-RevId: 691408725 --- .../java/androidx/media3/container/NalUnitUtil.java | 11 ++++------- 1 file changed, 4 insertions(+), 7 deletions(-) diff --git a/libraries/container/src/main/java/androidx/media3/container/NalUnitUtil.java b/libraries/container/src/main/java/androidx/media3/container/NalUnitUtil.java index 195566b2d9..dd9d84702c 100644 --- a/libraries/container/src/main/java/androidx/media3/container/NalUnitUtil.java +++ b/libraries/container/src/main/java/androidx/media3/container/NalUnitUtil.java @@ -601,14 +601,11 @@ public final class NalUnitUtil { } /** - * Returns whether the NAL unit with the specified header contains supplemental enhancement - * information. - * - * @param mimeType The sample MIME type, or {@code null} if unknown. - * @param nalUnitHeaderFirstByte The first byte of nal_unit(). - * @return Whether the NAL unit with the specified header is an SEI NAL unit. False is returned if - * the {@code MimeType} is {@code null}. + * @deprecated Use {@link #isNalUnitSei(Format, byte)} in order to support {@link + * MimeTypes#VIDEO_DOLBY_VISION} tracks with backwards compatible {@link MimeTypes#VIDEO_H264} + * or {@link MimeTypes#VIDEO_H265} data. */ + @Deprecated public static boolean isNalUnitSei(@Nullable String mimeType, byte nalUnitHeaderFirstByte) { return (MimeTypes.VIDEO_H264.equals(mimeType) && (nalUnitHeaderFirstByte & 0x1F) == H264_NAL_UNIT_TYPE_SEI)