diff options
author | Hongwei Wang <hwwang@google.com> | 2018-01-12 16:55:46 -0800 |
---|---|---|
committer | Hongwei Wang <hwwang@google.com> | 2018-01-24 16:48:41 -0800 |
commit | a5a2b393e10feaa728ccad7fe3bb57a334152f7e (patch) | |
tree | 415e0a2d5367c5246045c0d95f7f3f9cc2401a89 /car-lib/src/android/car/media | |
parent | d133205e6c58a20ad9e37838a3adf007a607cf02 (diff) | |
download | Car-a5a2b393e10feaa728ccad7fe3bb57a334152f7e.tar.gz |
Deprecates CAR_AUDIO_USAGE - part 1
Uses AudioAttributes.USAGE_ instead.
Deprecates also the CarAudioAttributesUtil utility class.
`make update-car-api` is used to update current.txt and
proguard-release.flags
What's next
- Establish the static mapping from AA.USAGE to car audio context
- Integrate with audio control HAL to map car audio context to physical
bus address
- Deprecate the audio_hw_variant
BUG: 72046976
Test: lunch gcar_emu-x86 && m -j // Verify in Car Settings
Change-Id: If152c4c3c3dc01f3595a1cf9ce8135996cd8cba6
Diffstat (limited to 'car-lib/src/android/car/media')
-rw-r--r-- | car-lib/src/android/car/media/CarAudioManager.java | 142 | ||||
-rw-r--r-- | car-lib/src/android/car/media/ICarAudio.aidl | 10 |
2 files changed, 26 insertions, 126 deletions
diff --git a/car-lib/src/android/car/media/CarAudioManager.java b/car-lib/src/android/car/media/CarAudioManager.java index e34bb82a78..fbe97023e7 100644 --- a/car-lib/src/android/car/media/CarAudioManager.java +++ b/car-lib/src/android/car/media/CarAudioManager.java @@ -15,7 +15,6 @@ */ package android.car.media; -import android.annotation.IntDef; import android.annotation.SystemApi; import android.car.CarLibLog; import android.car.CarManagerBase; @@ -28,132 +27,30 @@ import android.os.IBinder; import android.os.RemoteException; import android.util.Log; -import java.lang.annotation.Retention; -import java.lang.annotation.RetentionPolicy; - /** * APIs for handling car specific audio stuff. */ public final class CarAudioManager implements CarManagerBase { - /** - * Audio usage for unspecified type. - */ - public static final int CAR_AUDIO_USAGE_DEFAULT = 0; - /** - * Audio usage for playing music. - */ - public static final int CAR_AUDIO_USAGE_MUSIC = 1; - /** - * Audio usage for H/W radio. - */ - public static final int CAR_AUDIO_USAGE_RADIO = 2; - /** - * Audio usage for playing navigation guidance. - */ - public static final int CAR_AUDIO_USAGE_NAVIGATION_GUIDANCE = 3; - /** - * Audio usage for voice call - */ - public static final int CAR_AUDIO_USAGE_VOICE_CALL = 4; - /** - * Audio usage for voice search or voice command. - */ - public static final int CAR_AUDIO_USAGE_VOICE_COMMAND = 5; - /** - * Audio usage for playing alarm. - */ - public static final int CAR_AUDIO_USAGE_ALARM = 6; - /** - * Audio usage for notification sound. - */ - public static final int CAR_AUDIO_USAGE_NOTIFICATION = 7; - /** - * Audio usage for system sound like UI feedback. - */ - public static final int CAR_AUDIO_USAGE_SYSTEM_SOUND = 8; - /** - * Audio usage for playing safety alert. - */ - public static final int CAR_AUDIO_USAGE_SYSTEM_SAFETY_ALERT = 9; - /** - * Audio usage for the ringing of a phone call. - */ - public static final int CAR_AUDIO_USAGE_RINGTONE = 10; - /** - * Audio usage for external audio usage. - * @hide - */ - public static final int CAR_AUDIO_USAGE_EXTERNAL_AUDIO_SOURCE = 11; - - /** @hide */ - public static final int CAR_AUDIO_USAGE_MAX = CAR_AUDIO_USAGE_EXTERNAL_AUDIO_SOURCE; - - /** @hide */ - @IntDef({CAR_AUDIO_USAGE_DEFAULT, CAR_AUDIO_USAGE_MUSIC, CAR_AUDIO_USAGE_RADIO, - CAR_AUDIO_USAGE_NAVIGATION_GUIDANCE, CAR_AUDIO_USAGE_VOICE_CALL, - CAR_AUDIO_USAGE_VOICE_COMMAND, CAR_AUDIO_USAGE_ALARM, CAR_AUDIO_USAGE_NOTIFICATION, - CAR_AUDIO_USAGE_SYSTEM_SOUND, CAR_AUDIO_USAGE_SYSTEM_SAFETY_ALERT, - CAR_AUDIO_USAGE_EXTERNAL_AUDIO_SOURCE}) - @Retention(RetentionPolicy.SOURCE) - public @interface CarAudioUsage {} - - /** @hide */ - public static final String CAR_RADIO_TYPE_AM_FM = "RADIO_AM_FM"; - /** @hide */ - public static final String CAR_RADIO_TYPE_AM_FM_HD = "RADIO_AM_FM_HD"; - /** @hide */ - public static final String CAR_RADIO_TYPE_DAB = "RADIO_DAB"; - /** @hide */ - public static final String CAR_RADIO_TYPE_SATELLITE = "RADIO_SATELLITE"; - - /** @hide */ - public static final String CAR_EXTERNAL_SOURCE_TYPE_CD_DVD = "CD_DVD"; - /** @hide */ - public static final String CAR_EXTERNAL_SOURCE_TYPE_AUX_IN0 = "AUX_IN0"; - /** @hide */ - public static final String CAR_EXTERNAL_SOURCE_TYPE_AUX_IN1 = "AUX_IN1"; - /** @hide */ - public static final String CAR_EXTERNAL_SOURCE_TYPE_EXT_NAV_GUIDANCE = "EXT_NAV_GUIDANCE"; - /** @hide */ - public static final String CAR_EXTERNAL_SOURCE_TYPE_EXT_VOICE_CALL = "EXT_VOICE_CALL"; - /** @hide */ - public static final String CAR_EXTERNAL_SOURCE_TYPE_EXT_VOICE_COMMAND = "EXT_VOICE_COMMAND"; - /** @hide */ - public static final String CAR_EXTERNAL_SOURCE_TYPE_EXT_SAFETY_ALERT = "EXT_SAFETY_ALERT"; - private final ICarAudio mService; /** - * Get {@link AudioAttributes} relevant for the given usage in car. - * @param carUsage - * @return - */ - public AudioAttributes getAudioAttributesForCarUsage(@CarAudioUsage int carUsage) - throws CarNotConnectedException { - try { - return mService.getAudioAttributesForCarUsage(carUsage); - } catch (RemoteException e) { - throw new CarNotConnectedException(); - } - } - - /** - * Sets the volume index for a particular usage. + * Sets the volume index for an {@link AudioAttributes} usage. * * Requires {@link android.car.Car#PERMISSION_CAR_CONTROL_AUDIO_VOLUME} permission. * - * @param carUsage The car audio usage whose volume index should be set. + * @param usage The {@link AudioAttributes} usage whose volume index should be set. * @param index The volume index to set. See * {@link #getUsageMaxVolume(int)} for the largest valid value. * @param flags One or more flags (e.g., {@link android.media.AudioManager#FLAG_SHOW_UI}, * {@link android.media.AudioManager#FLAG_PLAY_SOUND}) */ @SystemApi - public void setUsageVolume(@CarAudioUsage int carUsage, int index, int flags) + public void setUsageVolume( + @AudioAttributes.AttributeUsage int usage, int index, int flags) throws CarNotConnectedException { try { - mService.setUsageVolume(carUsage, index, flags); + mService.setUsageVolume(usage, index, flags); } catch (RemoteException e) { Log.e(CarLibLog.TAG_CAR, "setUsageVolume failed", e); throw new CarNotConnectedException(e); @@ -179,17 +76,19 @@ public final class CarAudioManager implements CarManagerBase { } /** - * Returns the maximum volume index for a particular usage. + * Returns the maximum volume index for an {@link AudioAttributes} usage. * * Requires {@link android.car.Car#PERMISSION_CAR_CONTROL_AUDIO_VOLUME} permission. * - * @param carUsage The car audio usage whose maximum volume index is returned. + * @param usage The {@link AudioAttributes} usage + * whose maximum volume index is returned. * @return The maximum valid volume index for the usage. */ @SystemApi - public int getUsageMaxVolume(@CarAudioUsage int carUsage) throws CarNotConnectedException { + public int getUsageMaxVolume(@AudioAttributes.AttributeUsage int usage) + throws CarNotConnectedException { try { - return mService.getUsageMaxVolume(carUsage); + return mService.getUsageMaxVolume(usage); } catch (RemoteException e) { Log.e(CarLibLog.TAG_CAR, "getUsageMaxVolume failed", e); throw new CarNotConnectedException(e); @@ -197,17 +96,19 @@ public final class CarAudioManager implements CarManagerBase { } /** - * Returns the minimum volume index for a particular usage. + * Returns the minimum volume index for an {@link AudioAttributes} usage. * * Requires {@link android.car.Car#PERMISSION_CAR_CONTROL_AUDIO_VOLUME} permission. * - * @param carUsage The car audio usage whose minimum volume index is returned. + * @param usage The {@link AudioAttributes} usage + * whose minimum volume index is returned. * @return The minimum valid volume index for the usage. */ @SystemApi - public int getUsageMinVolume(@CarAudioUsage int carUsage) throws CarNotConnectedException { + public int getUsageMinVolume(@AudioAttributes.AttributeUsage int usage) + throws CarNotConnectedException { try { - return mService.getUsageMinVolume(carUsage); + return mService.getUsageMinVolume(usage); } catch (RemoteException e) { Log.e(CarLibLog.TAG_CAR, "getUsageMinVolume failed", e); throw new CarNotConnectedException(e); @@ -215,20 +116,21 @@ public final class CarAudioManager implements CarManagerBase { } /** - * Returns the current volume index for a particular usage. + * Returns the current volume index for an {@link AudioAttributes} usage. * * Requires {@link android.car.Car#PERMISSION_CAR_CONTROL_AUDIO_VOLUME} permission. * - * @param carUsage The car audio usage whose volume index is returned. + * @param usage The {@link AudioAttributes} usage whose volume index is returned. * @return The current volume index for the usage. * * @see #getUsageMaxVolume(int) * @see #setUsageVolume(int, int, int) */ @SystemApi - public int getUsageVolume(@CarAudioUsage int carUsage) throws CarNotConnectedException { + public int getUsageVolume(@AudioAttributes.AttributeUsage int usage) + throws CarNotConnectedException { try { - return mService.getUsageVolume(carUsage); + return mService.getUsageVolume(usage); } catch (RemoteException e) { Log.e(CarLibLog.TAG_CAR, "getUsageVolume failed", e); throw new CarNotConnectedException(e); diff --git a/car-lib/src/android/car/media/ICarAudio.aidl b/car-lib/src/android/car/media/ICarAudio.aidl index 2a952473d9..3116c1e781 100644 --- a/car-lib/src/android/car/media/ICarAudio.aidl +++ b/car-lib/src/android/car/media/ICarAudio.aidl @@ -27,13 +27,11 @@ import android.media.IVolumeController; * @hide */ interface ICarAudio { - AudioAttributes getAudioAttributesForCarUsage(int carUsage); - - void setUsageVolume(int carUsage, int index, int flags); + void setUsageVolume(int usage, int index, int flags); void setVolumeController(IVolumeController controller); - int getUsageMaxVolume(int carUsage); - int getUsageMinVolume(int carUsage); - int getUsageVolume(int carUsage); + int getUsageMaxVolume(int usage); + int getUsageMinVolume(int usage); + int getUsageVolume(int usage); void setFadeTowardFront(float value); void setBalanceTowardRight(float value); |