Merge "Add constants for supplementary audio placement"
diff --git a/core/api/current.txt b/core/api/current.txt
index 0e92850..46318ae 100644
--- a/core/api/current.txt
+++ b/core/api/current.txt
@@ -20611,6 +20611,7 @@
field public static final int DUAL_MONO_MODE_RR = 3; // 0x3
field public static final int ENCAPSULATION_METADATA_TYPE_DVB_AD_DESCRIPTOR = 2; // 0x2
field public static final int ENCAPSULATION_METADATA_TYPE_FRAMEWORK_TUNER = 1; // 0x1
+ field public static final int ENCAPSULATION_METADATA_TYPE_SUPPLEMENTARY_AUDIO_PLACEMENT = 3; // 0x3
field public static final int ENCAPSULATION_MODE_ELEMENTARY_STREAM = 1; // 0x1
field public static final int ENCAPSULATION_MODE_NONE = 0; // 0x0
field public static final int ERROR = -1; // 0xffffffff
@@ -20629,6 +20630,9 @@
field public static final int STATE_NO_STATIC_DATA = 2; // 0x2
field public static final int STATE_UNINITIALIZED = 0; // 0x0
field public static final int SUCCESS = 0; // 0x0
+ field public static final int SUPPLEMENTARY_AUDIO_PLACEMENT_LEFT = 1; // 0x1
+ field public static final int SUPPLEMENTARY_AUDIO_PLACEMENT_NORMAL = 0; // 0x0
+ field public static final int SUPPLEMENTARY_AUDIO_PLACEMENT_RIGHT = 2; // 0x2
field public static final int WRITE_BLOCKING = 0; // 0x0
field public static final int WRITE_NON_BLOCKING = 1; // 0x1
}
diff --git a/media/java/android/media/AudioTrack.java b/media/java/android/media/AudioTrack.java
index d51f1e1..f61c427 100644
--- a/media/java/android/media/AudioTrack.java
+++ b/media/java/android/media/AudioTrack.java
@@ -266,15 +266,19 @@
@RequiresPermission(android.Manifest.permission.MODIFY_AUDIO_ROUTING)
public static final int ENCAPSULATION_MODE_HANDLE = 2;
- /* Enumeration of metadata types permitted for use by
+ /**
+ * Enumeration of metadata types permitted for use by
* encapsulation mode audio streams.
+ * @hide
*/
- /** @hide */
- @IntDef(prefix = { "ENCAPSULATION_METADATA_TYPE_" }, value = {
- ENCAPSULATION_METADATA_TYPE_NONE, /* reserved */
- ENCAPSULATION_METADATA_TYPE_FRAMEWORK_TUNER,
- ENCAPSULATION_METADATA_TYPE_DVB_AD_DESCRIPTOR,
- })
+ @IntDef(prefix = {"ENCAPSULATION_METADATA_TYPE_"},
+ value =
+ {
+ ENCAPSULATION_METADATA_TYPE_NONE, /* reserved */
+ ENCAPSULATION_METADATA_TYPE_FRAMEWORK_TUNER,
+ ENCAPSULATION_METADATA_TYPE_DVB_AD_DESCRIPTOR,
+ ENCAPSULATION_METADATA_TYPE_SUPPLEMENTARY_AUDIO_PLACEMENT,
+ })
@Retention(RetentionPolicy.SOURCE)
public @interface EncapsulationMetadataType {}
@@ -298,6 +302,45 @@
*/
public static final int ENCAPSULATION_METADATA_TYPE_DVB_AD_DESCRIPTOR = 2;
+ /**
+ * Encapsulation metadata type for placement of supplementary audio.
+ *
+ * A 32 bit integer constant, one of {@link #SUPPLEMENTARY_AUDIO_PLACEMENT_NORMAL}, {@link
+ * #SUPPLEMENTARY_AUDIO_PLACEMENT_LEFT}, {@link #SUPPLEMENTARY_AUDIO_PLACEMENT_RIGHT}.
+ */
+ public static final int ENCAPSULATION_METADATA_TYPE_SUPPLEMENTARY_AUDIO_PLACEMENT = 3;
+
+ /**
+ * Enumeration of supplementary audio placement types.
+ * @hide
+ */
+ @IntDef(prefix = {"SUPPLEMENTARY_AUDIO_PLACEMENT_"},
+ value =
+ {
+ SUPPLEMENTARY_AUDIO_PLACEMENT_NORMAL,
+ SUPPLEMENTARY_AUDIO_PLACEMENT_LEFT,
+ SUPPLEMENTARY_AUDIO_PLACEMENT_RIGHT,
+ })
+ @Retention(RetentionPolicy.SOURCE)
+ public @interface SupplementaryAudioPlacement {}
+ // Important: The SUPPLEMENTARY_AUDIO_PLACEMENT values must be kept in sync with native header
+ // files.
+
+ /**
+ * Supplementary audio placement normal.
+ */
+ public static final int SUPPLEMENTARY_AUDIO_PLACEMENT_NORMAL = 0;
+
+ /**
+ * Supplementary audio placement left.
+ */
+ public static final int SUPPLEMENTARY_AUDIO_PLACEMENT_LEFT = 1;
+
+ /**
+ * Supplementary audio placement right.
+ */
+ public static final int SUPPLEMENTARY_AUDIO_PLACEMENT_RIGHT = 2;
+
/* Dual Mono handling is used when a stereo audio stream
* contains separate audio content on the left and right channels.
* Such information about the content of the stream may be found, for example, in