diff --git a/core/api/current.txt b/core/api/current.txt index c30e93016b4ed..4d8fac2ffb85b 100644 --- a/core/api/current.txt +++ b/core/api/current.txt @@ -20332,6 +20332,7 @@ package android.media { field public static final int ENCODING_DOLBY_TRUEHD = 14; // 0xe field public static final int ENCODING_DTS = 7; // 0x7 field public static final int ENCODING_DTS_HD = 8; // 0x8 + field public static final int ENCODING_DTS_UHD = 27; // 0x1b field public static final int ENCODING_E_AC3 = 6; // 0x6 field public static final int ENCODING_E_AC3_JOC = 18; // 0x12 field public static final int ENCODING_IEC61937 = 13; // 0xd diff --git a/core/jni/android_media_AudioFormat.h b/core/jni/android_media_AudioFormat.h index 5630a1e23f83b..7fde92c945312 100644 --- a/core/jni/android_media_AudioFormat.h +++ b/core/jni/android_media_AudioFormat.h @@ -45,6 +45,7 @@ #define ENCODING_MPEGH_BL_L4 24 #define ENCODING_MPEGH_LC_L3 25 #define ENCODING_MPEGH_LC_L4 26 +#define ENCODING_DTS_UHD 27 #define ENCODING_INVALID 0 #define ENCODING_DEFAULT 1 @@ -110,6 +111,8 @@ static inline audio_format_t audioFormatToNative(int audioFormat) return AUDIO_FORMAT_MPEGH_LC_L3; case ENCODING_MPEGH_LC_L4: return AUDIO_FORMAT_MPEGH_LC_L4; + case ENCODING_DTS_UHD: + return AUDIO_FORMAT_DTS_UHD; default: return AUDIO_FORMAT_INVALID; } @@ -179,6 +182,8 @@ static inline int audioFormatFromNative(audio_format_t nativeFormat) return ENCODING_MPEGH_LC_L3; case AUDIO_FORMAT_MPEGH_LC_L4: return ENCODING_MPEGH_LC_L4; + case AUDIO_FORMAT_DTS_UHD: + return ENCODING_DTS_UHD; case AUDIO_FORMAT_DEFAULT: return ENCODING_DEFAULT; default: diff --git a/media/java/android/media/AudioFormat.java b/media/java/android/media/AudioFormat.java index eedb9966dca13..24f553f957962 100644 --- a/media/java/android/media/AudioFormat.java +++ b/media/java/android/media/AudioFormat.java @@ -324,6 +324,8 @@ public final class AudioFormat implements Parcelable { public static final int ENCODING_MPEGH_LC_L3 = 25; /** Audio data format: MPEG-H low complexity profile, level 4 */ public static final int ENCODING_MPEGH_LC_L4 = 26; + /** Audio data format: DTS UHD compressed */ + public static final int ENCODING_DTS_UHD = 27; /** @hide */ public static String toLogFriendlyEncoding(int enc) { @@ -380,6 +382,8 @@ public final class AudioFormat implements Parcelable { return "ENCODING_MPEGH_LC_L3"; case ENCODING_MPEGH_LC_L4: return "ENCODING_MPEGH_LC_L4"; + case ENCODING_DTS_UHD: + return "ENCODING_DTS_UHD"; default : return "invalid encoding " + enc; } @@ -615,6 +619,7 @@ public final class AudioFormat implements Parcelable { case ENCODING_MPEGH_BL_L4: case ENCODING_MPEGH_LC_L3: case ENCODING_MPEGH_LC_L4: + case ENCODING_DTS_UHD: return true; default: return false; @@ -650,6 +655,7 @@ public final class AudioFormat implements Parcelable { case ENCODING_MPEGH_BL_L4: case ENCODING_MPEGH_LC_L3: case ENCODING_MPEGH_LC_L4: + case ENCODING_DTS_UHD: return true; default: return false; @@ -688,6 +694,7 @@ public final class AudioFormat implements Parcelable { case ENCODING_MPEGH_BL_L4: case ENCODING_MPEGH_LC_L3: case ENCODING_MPEGH_LC_L4: + case ENCODING_DTS_UHD: return false; case ENCODING_INVALID: default: @@ -726,6 +733,7 @@ public final class AudioFormat implements Parcelable { case ENCODING_MPEGH_BL_L4: case ENCODING_MPEGH_LC_L3: case ENCODING_MPEGH_LC_L4: + case ENCODING_DTS_UHD: return false; case ENCODING_INVALID: default: @@ -1012,6 +1020,7 @@ public final class AudioFormat implements Parcelable { case ENCODING_MPEGH_BL_L4: case ENCODING_MPEGH_LC_L3: case ENCODING_MPEGH_LC_L4: + case ENCODING_DTS_UHD: mEncoding = encoding; break; case ENCODING_INVALID: @@ -1238,7 +1247,8 @@ public final class AudioFormat implements Parcelable { ENCODING_MPEGH_BL_L3, ENCODING_MPEGH_BL_L4, ENCODING_MPEGH_LC_L3, - ENCODING_MPEGH_LC_L4 } + ENCODING_MPEGH_LC_L4, + ENCODING_DTS_UHD } ) @Retention(RetentionPolicy.SOURCE) public @interface Encoding {} @@ -1258,6 +1268,7 @@ public final class AudioFormat implements Parcelable { ENCODING_MPEGH_BL_L4, ENCODING_MPEGH_LC_L3, ENCODING_MPEGH_LC_L4, + ENCODING_DTS_UHD }; /** @hide */ @@ -1274,7 +1285,8 @@ public final class AudioFormat implements Parcelable { ENCODING_MPEGH_BL_L3, ENCODING_MPEGH_BL_L4, ENCODING_MPEGH_LC_L3, - ENCODING_MPEGH_LC_L4 } + ENCODING_MPEGH_LC_L4, + ENCODING_DTS_UHD } ) @Retention(RetentionPolicy.SOURCE) public @interface SurroundSoundEncoding {} @@ -1316,6 +1328,8 @@ public final class AudioFormat implements Parcelable { return "MPEG-H 3D Audio low complexity profile level 3"; case ENCODING_MPEGH_LC_L4: return "MPEG-H 3D Audio low complexity profile level 4"; + case ENCODING_DTS_UHD: + return "DTS UHD"; default: return "Unknown surround sound format"; } diff --git a/media/java/android/media/AudioSystem.java b/media/java/android/media/AudioSystem.java index 7220379e836bb..5f60fb63a3344 100644 --- a/media/java/android/media/AudioSystem.java +++ b/media/java/android/media/AudioSystem.java @@ -428,6 +428,8 @@ public class AudioSystem return "AUDIO_FORMAT_MAT_2_0"; // (MAT | MAT_SUB_2_0) case /* AUDIO_FORMAT_MAT_2_1 */ 0x24000003: return "AUDIO_FORMAT_MAT_2_1"; // (MAT | MAT_SUB_2_1) + case /* AUDIO_FORMAT_DTS_UHD */ 0x2E000000: + return "AUDIO_FORMAT_DTS_UHD"; default: return "AUDIO_FORMAT_(" + audioFormat + ")"; }