diff options
| -rw-r--r-- | core/api/current.txt | 6 | ||||
| -rw-r--r-- | media/java/android/media/AudioManager.java | 11 | ||||
| -rw-r--r-- | media/java/android/media/Spatializer.java | 4 |
3 files changed, 8 insertions, 13 deletions
diff --git a/core/api/current.txt b/core/api/current.txt index d684e4b82bbe..ec8dce0837cd 100644 --- a/core/api/current.txt +++ b/core/api/current.txt @@ -20454,7 +20454,7 @@ package android.media { method public String getProperty(String); method public int getRingerMode(); method @Deprecated public int getRouting(int); - method @Nullable public android.media.Spatializer getSpatializer(); + method @NonNull public android.media.Spatializer getSpatializer(); method public int getStreamMaxVolume(int); method public int getStreamMinVolume(int); method public int getStreamVolume(int); @@ -23854,9 +23854,13 @@ package android.media { public class Spatializer { method public void addOnSpatializerStateChangedListener(@NonNull java.util.concurrent.Executor, @NonNull android.media.Spatializer.OnSpatializerStateChangedListener); method public boolean canBeSpatialized(@NonNull android.media.AudioAttributes, @NonNull android.media.AudioFormat); + method public int getImmersiveAudioLevel(); method public boolean isAvailable(); method public boolean isEnabled(); method public void removeOnSpatializerStateChangedListener(@NonNull android.media.Spatializer.OnSpatializerStateChangedListener); + field public static final int SPATIALIZER_IMMERSIVE_LEVEL_MULTICHANNEL = 1; // 0x1 + field public static final int SPATIALIZER_IMMERSIVE_LEVEL_NONE = 0; // 0x0 + field public static final int SPATIALIZER_IMMERSIVE_LEVEL_OTHER = -1; // 0xffffffff } public static interface Spatializer.OnSpatializerStateChangedListener { diff --git a/media/java/android/media/AudioManager.java b/media/java/android/media/AudioManager.java index ee75a8d6f4b2..38f9607c9529 100644 --- a/media/java/android/media/AudioManager.java +++ b/media/java/android/media/AudioManager.java @@ -2444,15 +2444,10 @@ public class AudioManager { /** * Return a handle to the optional platform's {@link Spatializer} * @return the {@code Spatializer} instance. + * @see Spatializer#getImmersiveAudioLevel() to check for the level of support of the effect + * on the platform */ - public @Nullable Spatializer getSpatializer() { - int level = Spatializer.SPATIALIZER_IMMERSIVE_LEVEL_NONE; - try { - level = getService().getSpatializerImmersiveAudioLevel(); - } catch (Exception e) { /* using NONE */ } - if (level == Spatializer.SPATIALIZER_IMMERSIVE_LEVEL_NONE) { - return null; - } + public @NonNull Spatializer getSpatializer() { return new Spatializer(this); } diff --git a/media/java/android/media/Spatializer.java b/media/java/android/media/Spatializer.java index c64bf2c60117..d8519b689a56 100644 --- a/media/java/android/media/Spatializer.java +++ b/media/java/android/media/Spatializer.java @@ -122,7 +122,6 @@ public class Spatializer { public @interface ImmersiveAudioLevel {}; /** - * @hide * Constant indicating the {@code Spatializer} on this device supports a spatialization * mode that differs from the ones available at this SDK level. * @see #getImmersiveAudioLevel() @@ -130,14 +129,12 @@ public class Spatializer { public static final int SPATIALIZER_IMMERSIVE_LEVEL_OTHER = -1; /** - * @hide * Constant indicating there are no spatialization capabilities supported on this device. * @see #getImmersiveAudioLevel() */ public static final int SPATIALIZER_IMMERSIVE_LEVEL_NONE = 0; /** - * @hide * Constant indicating the {@code Spatializer} on this device supports multichannel * spatialization. * @see #getImmersiveAudioLevel() @@ -145,7 +142,6 @@ public class Spatializer { public static final int SPATIALIZER_IMMERSIVE_LEVEL_MULTICHANNEL = 1; /** - * @hide * Return the level of support for the spatialization feature on this device. * This level of support is independent of whether the {@code Spatializer} is currently * enabled or available and will not change over time. |