diff --git a/core/api/current.txt b/core/api/current.txt index 19c73cb377755..1695d12ace8a7 100644 --- a/core/api/current.txt +++ b/core/api/current.txt @@ -20526,6 +20526,7 @@ package android.media { field public static final int ENCODING_DOLBY_MAT = 19; // 0x13 field public static final int ENCODING_DOLBY_TRUEHD = 14; // 0xe field public static final int ENCODING_DRA = 28; // 0x1c + field public static final int ENCODING_DSD = 31; // 0x1f 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_HD_MA = 29; // 0x1d diff --git a/core/jni/android_media_AudioFormat.h b/core/jni/android_media_AudioFormat.h index 962b50147f3d5..a9b19062b7641 100644 --- a/core/jni/android_media_AudioFormat.h +++ b/core/jni/android_media_AudioFormat.h @@ -49,6 +49,7 @@ #define ENCODING_DRA 28 #define ENCODING_DTS_HD_MA 29 #define ENCODING_DTS_UHD_P2 30 +#define ENCODING_DSD 31 #define ENCODING_INVALID 0 #define ENCODING_DEFAULT 1 @@ -122,6 +123,8 @@ static inline audio_format_t audioFormatToNative(int audioFormat) return AUDIO_FORMAT_DTS_HD_MA; case ENCODING_DTS_UHD_P2: return AUDIO_FORMAT_DTS_UHD_P2; + case ENCODING_DSD: + return AUDIO_FORMAT_DSD; default: return AUDIO_FORMAT_INVALID; } @@ -201,6 +204,8 @@ static inline int audioFormatFromNative(audio_format_t nativeFormat) return ENCODING_DTS_UHD_P2; case AUDIO_FORMAT_DEFAULT: return ENCODING_DEFAULT; + case AUDIO_FORMAT_DSD: + return ENCODING_DSD; default: return ENCODING_INVALID; } diff --git a/media/java/android/media/AudioFormat.java b/media/java/android/media/AudioFormat.java index ccd4ed09fa94c..4d3f05be367df 100644 --- a/media/java/android/media/AudioFormat.java +++ b/media/java/android/media/AudioFormat.java @@ -373,6 +373,8 @@ public final class AudioFormat implements Parcelable { * Use {@link #ENCODING_DTS_UHD_P2} to transmit DTS UHD Profile 2 (aka DTS:X Profile 2) * bitstream. */ public static final int ENCODING_DTS_UHD_P2 = 30; + /** Audio data format: Direct Stream Digital */ + public static final int ENCODING_DSD = 31; /** @hide */ public static String toLogFriendlyEncoding(int enc) { @@ -437,6 +439,8 @@ public final class AudioFormat implements Parcelable { return "ENCODING_DTS_HD_MA"; case ENCODING_DTS_UHD_P2: return "ENCODING_DTS_UHD_P2"; + case ENCODING_DSD: + return "ENCODING_DSD"; default : return "invalid encoding " + enc; } @@ -798,6 +802,7 @@ public final class AudioFormat implements Parcelable { case ENCODING_DRA: case ENCODING_DTS_HD_MA: case ENCODING_DTS_UHD_P2: + case ENCODING_DSD: return true; default: return false; @@ -837,6 +842,7 @@ public final class AudioFormat implements Parcelable { case ENCODING_DRA: case ENCODING_DTS_HD_MA: case ENCODING_DTS_UHD_P2: + case ENCODING_DSD: return true; default: return false; @@ -1211,6 +1217,7 @@ public final class AudioFormat implements Parcelable { case ENCODING_DRA: case ENCODING_DTS_HD_MA: case ENCODING_DTS_UHD_P2: + case ENCODING_DSD: mEncoding = encoding; break; case ENCODING_INVALID: @@ -1441,7 +1448,8 @@ public final class AudioFormat implements Parcelable { ENCODING_DTS_UHD_P1, ENCODING_DRA, ENCODING_DTS_HD_MA, - ENCODING_DTS_UHD_P2 } + ENCODING_DTS_UHD_P2, + ENCODING_DSD } ) @Retention(RetentionPolicy.SOURCE) public @interface Encoding {}