diff options
Diffstat (limited to 'media/java')
| -rw-r--r-- | media/java/android/media/AudioManager.java | 29 | ||||
| -rw-r--r-- | media/java/android/media/AudioService.java | 9 | ||||
| -rwxr-xr-x | media/java/android/mtp/MtpDatabase.java | 1 |
3 files changed, 36 insertions, 3 deletions
diff --git a/media/java/android/media/AudioManager.java b/media/java/android/media/AudioManager.java index ea00ec8..c848f0f 100644 --- a/media/java/android/media/AudioManager.java +++ b/media/java/android/media/AudioManager.java @@ -2443,4 +2443,33 @@ public class AudioManager { return null; } } + + /** + * Used as a key for #getProperty to request the native or optimal output sample rate for + * this device, in decimal Hz. + * {@hide} + */ + public static final String PROPERTY_OUTPUT_SAMPLE_RATE = + "android.media.property.OUTPUT_SAMPLE_RATE"; + + /** + * Used as a key for #getProperty to request the native or optimal output buffer size for + * this device, in decimal PCM frames. + * {@hide} + */ + public static final String PROPERTY_OUTPUT_FRAMES_PER_BUFFER = + "android.media.property.OUTPUT_FRAMES_PER_BUFFER"; + + /** + * @param key One of the strings corresponding to a property key: either + * #PROPERTY_OUTPUT_SAMPLE_RATE or #PROPERTY_OUTPUT_FRAMES_PER_BUFFER + * @return A string representing the associated value for that property key, + * or null if there is no value for that key. + * {@hide} + */ + public String getProperty(String key) { + // uses android.os.SystemProperties.get for selected keys, with suitable defaults + return null; + } + } diff --git a/media/java/android/media/AudioService.java b/media/java/android/media/AudioService.java index 4d58894..5b3350a 100644 --- a/media/java/android/media/AudioService.java +++ b/media/java/android/media/AudioService.java @@ -3517,12 +3517,15 @@ public class AudioService extends IAudioService.Stub implements OnFinished { (device == AudioSystem.DEVICE_OUT_WIRED_HEADPHONE))) { setBluetoothA2dpOnInt(true); } - handleDeviceConnection((state == 1), device, ""); + boolean isUsb = ((device & AudioSystem.DEVICE_OUT_ALL_USB) != 0); + handleDeviceConnection((state == 1), device, (isUsb ? name : "")); if ((state != 0) && ((device == AudioSystem.DEVICE_OUT_WIRED_HEADSET) || (device == AudioSystem.DEVICE_OUT_WIRED_HEADPHONE))) { setBluetoothA2dpOnInt(false); } - sendDeviceConnectionIntent(device, state, name); + if (!isUsb) { + sendDeviceConnectionIntent(device, state, name); + } } } @@ -3614,7 +3617,7 @@ public class AudioService extends IAudioService.Stub implements OnFinished { + (action.equals(Intent.ACTION_USB_AUDIO_ACCESSORY_PLUG) ? "ACTION_USB_AUDIO_ACCESSORY_PLUG" : "ACTION_USB_AUDIO_DEVICE_PLUG") + ", state = " + state + ", card: " + alsaCard + ", device: " + alsaDevice); - handleDeviceConnection((state == 1), device, params); + setWiredDeviceConnectionState(device, state, params); } else if (action.equals(BluetoothHeadset.ACTION_AUDIO_STATE_CHANGED)) { boolean broadcast = false; int scoAudioState = AudioManager.SCO_AUDIO_STATE_ERROR; diff --git a/media/java/android/mtp/MtpDatabase.java b/media/java/android/mtp/MtpDatabase.java index bd65b9e..487585e 100755 --- a/media/java/android/mtp/MtpDatabase.java +++ b/media/java/android/mtp/MtpDatabase.java @@ -490,6 +490,7 @@ public class MtpDatabase { MtpConstants.FORMAT_MPEG, MtpConstants.FORMAT_EXIF_JPEG, MtpConstants.FORMAT_TIFF_EP, + MtpConstants.FORMAT_BMP, MtpConstants.FORMAT_GIF, MtpConstants.FORMAT_JFIF, MtpConstants.FORMAT_PNG, |
