ac0f704b1a77cb27dc0975206825098df6b211bb |
|
24-Feb-2016 |
Phil Burk <philburk@google.com> |
AudioService: add support for ENCODED_SURROUND_OUTPUT Preference allows override of AudioPolicyManager. Lets user force or prevent use of AC3 and DTS regardless of what the EDID says. Bug: 26373761 Change-Id: I21440f2b90af9a369a36b7b07724e992501bce6d Signed-off-by: Phil Burk <philburk@google.com>
/frameworks/base/media/java/android/media/AudioSystem.java
|
8ab728093eed85c176822d58a0d2ba1f4ebbb362 |
|
26-Feb-2016 |
Jean-Michel Trivi <jmtrivi@google.com> |
Audio record notification: report audio device information Support querying the AudioDeviceInfo in AudioRecordConfiguration. When AudioService (through RecordingActivityMonitor) receives a recording event on an existing session, report it as an update if the recording configuration has changed. Bug 22876530 Change-Id: I1b72c08aa0589077fe8ad254087965e6384ce50a
/frameworks/base/media/java/android/media/AudioSystem.java
|
33fd8169cdb7e7fa33885b6f892bc4f6df68959b |
|
22-Feb-2016 |
Jean-Michel Trivi <jmtrivi@google.com> |
Audio record notification: report client/device configuration Report client and device recording configuration during updates. Support querying the AudioFormat in AudioRecordConfiguration. Bug 22876530 Change-Id: I90b44db9bc3fda479452fc63221f8082f5b6a741
/frameworks/base/media/java/android/media/AudioSystem.java
|
93687f2718fbaeff556c02f2a15f5c8cc61621dc |
|
18-Feb-2016 |
Jean-Michel Trivi <jmtrivi@google.com> |
New constant for BUS audio devices Add a new constant covering "bus"-type audio devices. Bug 25448664 Change-Id: I8c3e439f28756a940f528ade2f6ce3a72a546040
/frameworks/base/media/java/android/media/AudioSystem.java
|
de41d3cd5a28cce3ba7f0fa23ba7c41ef93b223d |
|
13-Jan-2016 |
Jean-Michel Trivi <jmtrivi@google.com> |
Merge changes from topic 'recordingcallback' * changes: Audio recording notification API AudioManager event dispatcher: make more generic
|
d3c71f075b139024e2bea39bbd75e3b976bfb7cb |
|
07-Dec-2015 |
Jean-Michel Trivi <jmtrivi@google.com> |
Audio recording notification API AudioService can register a recording callback with AudioSystem. Callbacks are handled in a new class, RecordingActivityMonitor. This class notifies registered AudioManager instances of updates, only if this AudioManager has client callbacks. Each AudioManager dispatches updates to its registered callbacks. Bug 22876530 Change-Id: I95c6e5ec0631e53af53a490bcecca96089490089
/frameworks/base/media/java/android/media/AudioSystem.java
|
f04b84d4c66ea377ec6fe2b36f3a0994f3e94eba |
|
19-Dec-2015 |
Andy Hung <hunga@google.com> |
Add setMasterMono and getMasterMono Bug: 15283594 Bug: 22700363 Change-Id: I5d0552938ec2a54be4450512974d92ff8c77b1e9
/frameworks/base/media/java/android/media/AudioSystem.java
|
4e1ccd370fc268f3207c5baee08ac8c943c3fdf9 |
|
02-Jul-2015 |
Eric Laurent <elaurent@google.com> |
AudioTrack: error reporting for getTimestamp() Add a new getTimestamp() method that returns an error code. Bug: 21886109. Bug: 22202349. Bug: 17548098. Change-Id: Ib072dd3442de79bab9aca77c3c33b0790b492154
/frameworks/base/media/java/android/media/AudioSystem.java
|
6d00e41145a577de114f93985bf05d7eca99ccc3 |
|
04-Aug-2015 |
Jean-Michel Trivi <jmtrivi@google.com> |
AudioService: check for audio device connection success When connecting/disconnecting and audio device, AudioService was assuming that the call was always successful through AudioSystem.setDeviceConnectionState(). In the case of the connection of a wired headset (mic + headphones), this also causes A2DP to not be used for media playback. The connection can fail if the audio device being connected is not supported by the platform. But if this failure is not taken into account for DEVICE_OUT_WIRED_HEADSET or HEADPHONES, A2DP would still be avoided even when an A2DP device reconnects at boot. The fix consists in executing the connection logic only when the connection was deemed successful. Nothing is altered on the disconnection code path, or the direct connection of A2DP. The javadoc is updated in AudioSystem to indicate the return codes to take into account in setDeviceConnectionState(). Bug 22511833 Change-Id: I22f0d2c7d4ab4fb9ee1be2f248907f721596a16f
/frameworks/base/media/java/android/media/AudioSystem.java
|
1e725f8137391474b71ebd9109a0968ecef5373f |
|
02-Jul-2015 |
Eric Laurent <elaurent@google.com> |
audio: add definitions for devices connected over IP Bug: 22068684. Change-Id: I0411679d2852135d4af3016844ced74f7718fa0d
/frameworks/base/media/java/android/media/AudioSystem.java
|
0867bed9ddb3bea3d7c252791f8b62ae21ad3de5 |
|
20-May-2015 |
Eric Laurent <elaurent@google.com> |
AudioService: indicate system ready to AudioFlinger Indicate when JAVA services are ready to AudioFlinger so that calls to power manager and scheduling service can be enabled. Bug: 11520969. Change-Id: Id977cab3208c34709011703d2dfdcf552e60371b
/frameworks/base/media/java/android/media/AudioSystem.java
|
4bcdba848449b33d7022de527c526943aff1f5fd |
|
01-May-2015 |
Eric Laurent <elaurent@google.com> |
Implement audio routing callbacks Implement JNI for AudioTrack and AudioRecord routing callbacks: - Added files core/jni/android_media_DeviceCallback.cpp/.h for JNI callback implementation used by both AudioTrack and AudioRecord. - Made AudioManager AudioPort and AudioPatch methods static in order to call them without context. Also added IO handle information to AudioMixPort. Change-Id: Icee182aa68310d4b12fd1469f48e78110889acf1
/frameworks/base/media/java/android/media/AudioSystem.java
|
5a56109d1f5c00404c8f0e4281b9ac1392d72886 |
|
24-Apr-2015 |
Jean-Michel Trivi <jmtrivi@google.com> |
AudioService receives callback for dynamic policy mix state changes AudioService registers a callback for dynamic policies from AudioSystem. AudioSystem keeps track of a single callback for dynamic policies. Bug 20226914 Change-Id: I48899d20d1dbb47bb680e733a3bc9fd064b60f07
/frameworks/base/media/java/android/media/AudioSystem.java
|
b2b292317482d00d067bc91669322b273be61926 |
|
04-Apr-2015 |
Rom Lemarchand <romlem@android.com> |
Change audio include path from system/core to system/media/audio Change-Id: Iefd5933e7ba10fa2a8ca3489bcbee3bc8f1396ad
/frameworks/base/media/java/android/media/AudioSystem.java
|
6156017c2217d0fbbbb03434986250ec6bbd69d8 |
|
07-Feb-2015 |
John Spurlock <jspurlock@google.com> |
Move AudioService to services. ...and a few dependencies. Move remaining shared items to AudioSystem. Change-Id: Ib9623ff867678d34977337856bb0156e8cdaeeb5
/frameworks/base/media/java/android/media/AudioSystem.java
|
10804eb2818ab59b763a37b4f6151693c2ebba7b |
|
28-Jan-2015 |
Paul McLean <pmclean@google.com> |
Add additional info to AudioPort for enum/selection API. Add "device name" member to AudioPort. Moved unique device ID from DevicePort to AudioPort. Straighten out confusion between "name" and "address" Created string constants for Intent "extra" data keys. Combine card/address data into "address" at sender.Add additional info to AudioPort for enum/selection API. Parse out USB Device name in UsbCardsParser. Change-Id: Ifd76b0298312090a8f39e638339f993b86d47080
/frameworks/base/media/java/android/media/AudioSystem.java
|
7f5eb9fe3c10d8d83ff0e2b0fc60a05c2e6d5b02 |
|
02-Dec-2014 |
Eric Laurent <elaurent@google.com> |
AudioSystem JNI: Add audio policy custom mixes registration Bug: 16009464. Change-Id: I3763e79f4fa0331acb56d1d6f575c7a36e0bebd5
/frameworks/base/media/java/android/media/AudioSystem.java
|
07cd124b09a63985f0b200de248fab165f736ae4 |
|
27-Oct-2014 |
Mike Lockwood <lockwood@google.com> |
Improve toString() methods for audio classes to help with debugging bug: 18139399 Change-Id: I6076f9f5daa3b485bc80a4ff1b16a583e6c93f67
/frameworks/base/media/java/android/media/AudioSystem.java
|
2b29bc4c1cef64abdf3a68b60bdcf7207193e980 |
|
26-Aug-2014 |
John Spurlock <jspurlock@google.com> |
Enhance audio service dumpsys. - Add device name for keys - Add max volume for streams - Add missing stream name constant Bug:16964015 Change-Id: I92facbd8ae49ba299c27bcb10bcf6668fed0d302
/frameworks/base/media/java/android/media/AudioSystem.java
|
b634e1b6d6bda56128c354b1803b04b537e3799d |
|
01-Aug-2014 |
Eric Laurent <elaurent@google.com> |
AudioSystem: add API to query audio HW sync source Add a method to query from the audio HAL the HW sync source used for a given audio session. Add an AudioAttributes flag to request an output with HW sync source. Bug: 16132368. Change-Id: Ic31b2924b98f242c3aa0d58688879f05ea02d6f7
/frameworks/base/media/java/android/media/AudioSystem.java
|
12307ca810e8100981b2b60e3f2c6a7e451b9774 |
|
15-Jul-2014 |
Jungshik Jang <jayjang@google.com> |
Revisit HDMI-CEC system audio mode in AudioService. From recent feedback on HDMI-CEC system audio mode, it would be unnecessary to enforce output from AudioService. Instead, it would follow audio policy according to status of HDMI-CEC system audio mode. For that removed two params of setHdmiSystemAudioModeSupported api of AudioManager. In terms of speaker mute, it will be handled by removing speaker from audio ouput instead of changing gain control. For that added new force usage type, FOR_HDMI_SYSTEM_AUDIO_MODE and new force config type, FORCE_HDMI_SYSTEM_AUDIO_ENFORCED. This is used to notify change of system audio mode to audio policy manager. Bug: 16305986 Bug: 16002150 Change-Id: I5643ad093a651c951e12b567c6e11b88aa87cea2
/frameworks/base/media/java/android/media/AudioSystem.java
|
6f34f5ab8ab1b1db7887e5405d8b0031e105ab05 |
|
08-Jul-2014 |
Jungshik Jang <jayjang@google.com> |
Revamp HDMI-CEC system audio mode integration with audio service. In previous change we use setForceUse(FORCE_MEDIA, XXX) method in order to set specific audio output type, such as LINE, HDMI_ARC, and SPDIF. But it turns out that it conflicts with bluetooth a2dp which uses the same setForceUse(FORCE_MEDIA, yyy). This change is based on several conditions. 1. When other non-speaker devices are on, prevent system audio from turing on. 2. In order to keep track of other devices' connectivity and to turn off system audio if other device like bluetooth or headphone preempts current output, register OnAudioPortChangeListner to audio manager. 3. All possible system audio outputs can be merged with other outputs without priority. Change-Id: Id4e47d99db64b9f77a17c2c28c47787ab8980bf7
/frameworks/base/media/java/android/media/AudioSystem.java
|
0543b17e84f970751d12bf8cd9fb8c8f22b1f52b |
|
09-Jul-2014 |
Terry Heo <terryheo@google.com> |
Merge "AudioSystem: add definition for loopback input device"
|
112c19ee8b459439c3462767199832e5394b37a8 |
|
07-Jul-2014 |
Terry Heo <terryheo@google.com> |
AudioSystem: add definition for loopback input device Bug: 15437484 Change-Id: I91d88d476693e9b9a72799f3c52a659a5843e446
/frameworks/base/media/java/android/media/AudioSystem.java
|
41d974631c5f525da49c88d34cecedd5a4cfeda8 |
|
30-Jun-2014 |
Jungshik Jang <jayjang@google.com> |
Add volume callback for Hdmi-Cec system audio mode. Hdmi-Cec's system audio mode delegates audio control to audio receiver from tv. It requires to delegate volume change including mute to audio receiver instead of consuming by tv. In order to do this this change introduces three apis. One is added to IAudioService, the others are added to IHdmiControlService as hidden apis. 1. IAudioService#setHdmiSystemAudioSupported; This is to notify system audio mode change to audio service so that it determines to notify volume or mute change to HdmiControlService. 2. IHdmiControlService#setSystemAudioVolume; This is to notify volume change to HdmiControlService. It's called only where system audio mode is on. 3. IHdmiControlService#setSystemAudioMute; This is to notify volume change to HdmiControlService . It's called only where system audio mode is on. Change-Id: I3d8534b37ddf1a812e32012059a8778772044bf0
/frameworks/base/media/java/android/media/AudioSystem.java
|
70d34bb485e720d7d50c7108a357a5cfdb09de93 |
|
26-Jun-2014 |
Jungshik Jang <jayjang@google.com> |
Define force usage and category for System Audio Control. This is to be sync with change of system/core/include/system/audio_policy.h Change-Id: Ibd371197775fb70a96df6e3eef82ec8ae10b0508
/frameworks/base/media/java/android/media/AudioSystem.java
|
a1d80e3b1d210c60c6881a55ed39a4077ff66080 |
|
18-Jun-2014 |
Jean-Michel Trivi <jmtrivi@google.com> |
AudioTrack Java constructor with AudioAttributes and AudioFormat Change-Id: I82758a4231b8dc0b8d8e72acf3c896a289c28f60
/frameworks/base/media/java/android/media/AudioSystem.java
|
d7c29189aa639bfac1e6efcd222e65c2c8ecf3f1 |
|
27-May-2014 |
Wonsik Kim <wonsik@google.com> |
TvInputHardware: Integration with audio framework changes TvInputHardwareManager detects AudioPort specified by tv_input and connect source to sink via AudioManager.createAudioPatch(). Bug: 15177175 Change-Id: I2252eb0df2d8287889ed28cc7d76dc1a659fd08b
/frameworks/base/media/java/android/media/AudioSystem.java
|
8a21f5dd79e93aa4e4b08ab4f33b9255d7c06961 |
|
06-Jun-2014 |
Jean-Michel Trivi <jmtrivi@google.com> |
AudioManager: add ability to allocate a new session ID Expose method to allocate a new session ID. Make the generic error code public. Change-Id: Iec93548292845e3a1b1a97be9bbe54e9fcf06f2d
/frameworks/base/media/java/android/media/AudioSystem.java
|
3ed851bd07867fe41c5c9c2a9421da0b92ae1c6e |
|
31-May-2014 |
Eric Laurent <elaurent@google.com> |
am f2e19a36: Merge "AudioManager: add audio port gain control" into lmp-preview-dev * commit 'f2e19a36973331bbc09284993f772bf6981c10da': AudioManager: add audio port gain control
|
ec2f4b0aece1583f3e3f5c449ca107d6f7e915e1 |
|
31-May-2014 |
Eric Laurent <elaurent@google.com> |
am 47615317: Merge "AudioSystem: added JNI for routing extensions" into lmp-preview-dev * commit '476153173b5a1b6b1fb5fc41af8b87d7e1ec36b3': AudioSystem: added JNI for routing extensions
|
3a24199a0fe9479802ff6096d82cb3745efa1f1f |
|
20-May-2014 |
Eric Laurent <elaurent@google.com> |
AudioManager: add audio port gain control Implement AudioManager.setAudioPortGain() API. Bug: 14815883. Change-Id: Ib54bd1fd1392c474f4767a00228b0a617c51ec5e
/frameworks/base/media/java/android/media/AudioSystem.java
|
b69681c894c663e84f2826d9b0c832ceb9b45047 |
|
20-May-2014 |
Eric Laurent <elaurent@google.com> |
AudioSystem: added JNI for routing extensions Bug: 14815883. Change-Id: Ia0c0d14a8e3051a4bc0ce502b6e979135b170c97
/frameworks/base/media/java/android/media/AudioSystem.java
|
0a40ec2192e4836b2fcb6ba51a7688aa6bd4ee98 |
|
21-May-2014 |
Mike Lockwood <lockwood@google.com> |
Add Audio Manager support for Bluetooth A2DP Sink profile Change-Id: Iff6035e85faf52647cc41a59f98ba2924300eb8d
/frameworks/base/media/java/android/media/AudioSystem.java
|
948d32748caaac5be06c991ebf00f74265a7849f |
|
17-May-2014 |
Eric Laurent <elaurent@google.com> |
AudioSystem: add new audio device definitions Change-Id: Ib7675bc33771365b2dbb7694c522469317b11457
/frameworks/base/media/java/android/media/AudioSystem.java
|
bc11a696f6856624de532a6830d5db9dbbe2384c |
|
16-May-2014 |
Eric Laurent <elaurent@google.com> |
AudioSystem: native to JAVA status translation Regroup status code translation from native to JAVA in AudioSystem. The same codes will be used by AudioTrack, AudioRecord, AudioManager and defined in a single place in AudioSystem. Change-Id: I7d3f39f30e3bb8e53f33f4408bcb0672df8af42b
/frameworks/base/media/java/android/media/AudioSystem.java
|
c837a451946b64d70ed7c642fbde03c182c28b6f |
|
09-Apr-2014 |
Paul McLean <pmclean@google.com> |
Revert "Revert "Initial implementation of USB Audio output."" This reverts commit f2f80c09b668176b3b1e619457ae628432636507.
/frameworks/base/media/java/android/media/AudioSystem.java
|
f2f80c09b668176b3b1e619457ae628432636507 |
|
08-Apr-2014 |
Eric Laurent <elaurent@google.com> |
Revert "Initial implementation of USB Audio output." This reverts commit 3af0fe0c9df2fc1e0a4d6bcd827a4d7aa28dbdeb while investigating issues 13751080 and 13883978. Bug: 13751080.
/frameworks/base/media/java/android/media/AudioSystem.java
|
3af0fe0c9df2fc1e0a4d6bcd827a4d7aa28dbdeb |
|
02-Dec-2013 |
Paul McLean <pmclean@google.com> |
Initial implementation of USB Audio output. Change-Id: I7fbbe421285d628fa49591c6469ac50efec77ccf
/frameworks/base/media/java/android/media/AudioSystem.java
|
4896cb59a443370252d230793ee030021f719821 |
|
15-Jan-2014 |
Glenn Kasten <gkasten@google.com> |
Merge "Use AUDIO_SESSION_ALLOCATE instead of hard-coded 0"
|
dfb881f96af7898151940a4bbc52e45e6043d38b |
|
18-Jul-2013 |
Eric Laurent <elaurent@google.com> |
AudioSystem: new audioflinger restart detection Add a specific method to AudioSystem for AudioService to poll for AudioFlinger service restart instead of relying on current callback mechanism which is flaky. Bug: 9693068. Change-Id: Id21d142a22b257205700201978cce1cb8b15180d
/frameworks/base/media/java/android/media/AudioSystem.java
|
fd116ad1ab02f6060a0b2201f018317fa32e28b4 |
|
13-Jul-2013 |
Glenn Kasten <gkasten@google.com> |
Inform AudioFlinger of device's low RAM attribute to help it configure it's memory Bug: 9798886 Change-Id: Ia2df59cfcb76f5ff48cca92b107915e2adde899c
/frameworks/base/media/java/android/media/AudioSystem.java
|
60bd67f7b1b85ed0ee19f77b056b90350a3d5343 |
|
26-Jun-2012 |
Glenn Kasten <gkasten@google.com> |
Use AUDIO_SESSION_ALLOCATE instead of hard-coded 0 Change-Id: Ic56e4a51895297516552e190d508e2257484fb53
/frameworks/base/media/java/android/media/AudioSystem.java
|
61dcdf3764b614c6f01e77cb4342d192e3101f8a |
|
26-Jun-2013 |
Oliver Woodman <olly@google.com> |
Expose latency methods through AudioManager and AudioTrack. There's a longer term plan to fix audio/video sync, but this gets the Java level to parity with the native level, and allows applications in Java to achieve sync in the same way as the native media player. APIs are left as hidden for now. Change-Id: Iaf70baac1ffb50ef48e03355163158568fbd0fe9
/frameworks/base/media/java/android/media/AudioSystem.java
|
679d5046f245ea8b39f9b5596195f3468808dd54 |
|
05-Feb-2013 |
Jean-Michel Trivi <jmtrivi@google.com> |
Add support for querying whether the music stream is active remotely Bug 7485803 Change-Id: I554b44bd35b017fa4030a0d89779066c96594f2b
/frameworks/base/media/java/android/media/AudioSystem.java
|
c203ecfd9f6c356542fcb10bc85b27b98b170ddf |
|
11-Oct-2012 |
Jean-Michel Trivi <jmtrivi@google.com> |
Use device availability to start WFD audio routing Don't use the force_use mechanism to start WFD audio routing, but rather only the availability of the remote submix audio device. This is matched by a change in the audio policy manager. Bug 7318180 Change-Id: I756f032d8ca0375c3dbeddb7c321261c497539bc
/frameworks/base/media/java/android/media/AudioSystem.java
|
d677054ca63f55abaa1c478ea3c50f6be665a979 |
|
10-Oct-2012 |
Jean-Michel Trivi <jmtrivi@google.com> |
Don't play notifications during speech recognition Add support for querying AudioManager to know whether speech recognition is currently underway. Don't play a notification if speech recognition is underway. Bug 7314859 Change-Id: I1bd013a3168cfe1a6b6dcfd28565e1c3c512eb6a
/frameworks/base/media/java/android/media/AudioSystem.java
|
dd45d01128423a82652a3c9d77fa393631d95229 |
|
08-Oct-2012 |
Eric Laurent <elaurent@google.com> |
enforce camera sound according to country code Use mcc config overlay mechanism to enforce camera shutter sounds in countries where it is mandatory. Property ro.camera.sound.forced is not needed anymore. When camera sound is forced, STREAM_SYSTEM_ENFORCED is removed from streams affected by ringer mode and its volume is maxed out. AudioSystem.FORCE_SYSTEM_ENFORCED is sent to audio policy manager to alter the routing policy for STREAM_SYSTEM_ENFORCED. Also fix streams being unmuted when settings are reloaded upon user switch while in silent mode. Add ringer mode to audio service dump. Bug 7032634. Change-Id: Iceea5bba3b8d3aabf8e42b222deb33a893dc8f38
/frameworks/base/media/java/android/media/AudioSystem.java
|
c6c4365ddb0213c548b055f257dc8077389224fb |
|
25-Sep-2012 |
Glenn Kasten <gkasten@google.com> |
Implement android.media.AudioManager.getProperty() Bug: 6635041 Change-Id: I0e7d53b99559cdc89f2f107f23048e4b1a8dd383
/frameworks/base/media/java/android/media/AudioSystem.java
|
2ac2afeac989ea1dc326b0db996d6c6c8e00cc29 |
|
21-Aug-2012 |
Jean-Michel Trivi <jmtrivi@google.com> |
Add support for controlling remote submix audio routing Add method in AudioManager to control remote submix through AudioService. AudioService controls remote submxi: enabling/disabling remote submix will: - make the sink audio device available/unavailable - make the audio source available/unavailable - force/unforce media streams to be routed to WFD Change-Id: I05d9cc7c3e8a720318ec1385737cbd46a21a3207
/frameworks/base/media/java/android/media/AudioSystem.java
|
53082eced917e0af8fd06486e824d3ea78bc65b6 |
|
28-Aug-2012 |
Eric Laurent <elaurent@google.com> |
AudioSystem: new audio device enums Update audio device enums to match new definitions in native framework. Change-Id: Ie257ab0423e3567f4af5a02b03e128af6c714da6
/frameworks/base/media/java/android/media/AudioSystem.java
|
7847211fb4699bf6018e29d214a918ed6657319b |
|
21-May-2012 |
Eric Laurent <elaurent@google.com> |
AudioManager: restore setBluetoothA2dpOn() method Remove deprecation on setBluetoothA2dpOn() method so that applications can override the default audio policy which is to use A2DP for media whenever connected. The request is not persistent and the default policy is restored when a new A2DP i ro wired headset connection occurs. Bug 6485897. Change-Id: I2a4b6b6bdba55f7b133e64f86d27c03eb86acfa4
/frameworks/base/media/java/android/media/AudioSystem.java
|
bffc3d1bd33eb2d8e00a9f8b6261d815db503311 |
|
08-May-2012 |
Eric Laurent <elaurent@google.com> |
Silent and Vibrate mode clean up Clean up related to new Vibration policy. The vibrate behavior is now only derived from: - presence of a vibrator on the device - current ringer mode selected: NORMAL, VIBRATE or SILENT If no vibrator is present the ringer mode can only be NORMAL or SILENT. The control of ringer mode via volume keys when volume keys control the "master" stream type (RING on phones, MUSIC on tablets) is as follows: If a vibrator is present: VOL- and volume equals 1: NORMAL => VIBRATE VOL- and volume equals 0 and not continuous press: VIBRATE => SILENT VOL+ and in SILENT mode: SILENT => VIBRATE VOL+ and in VIBRATE mode: VIBRATE => NORMAL, volume = 1 If no vibrator is present: VOL- and volume equals 0 and not continuous press: NORMAL => SILENT VOL+ and in SILENT mode: SILENT => NORMAL, volume = 0 VIBRATE_ON and VIBRATE_IN_SILENT settings are not stored/retreived any more. AudioService checks and corrects ringer mode and stream volumes if necessary when reading from DB at boot time. Also: Added dump for stream volumes in AudioService. Added device names missing in AudioSystem for USB accessory and USB device. Issue: 6036529 Issue: 6414950 Issue: 6448163 Change-Id: I77fb821ec63e4e566320cac2701b4ac466e86aef
/frameworks/base/media/java/android/media/AudioSystem.java
|
59f482764e346a5c5ac118ee1f7b24da645c2559 |
|
06-Apr-2012 |
Eric Laurent <elaurent@google.com> |
Added support for USB audio devices Two types of USB audio devices are defined: - USB audio device: the audio device in USB device mode while the Android device is in USB host mode. - USB audio accessory: the audio device in USB host mode while the Android device is in USB device mode. Renamed intents for analog and digital docks to avoid confusion: - ACTION_USB_ANLG_HEADSET_PLUG to ACTION_ANALOG_AUDIO_DOCK_PLUG - ACTION_USB_DGTL_HEADSET_PLUG to ACTION_DIGITAL_AUDIO_DOCK_PLUG Factorized code in AudioService broadcast receiver. Change-Id: I1b6d0257a9d68ecb9495c78c98bac8c67fec7891
/frameworks/base/media/java/android/media/AudioSystem.java
|
505e5c8859f596ed58489be565d6e029314b2ac8 |
|
30-Mar-2012 |
Eric Laurent <elaurent@google.com> |
implemented synchronous audio capture Added the infrastructure to support the synchronization of playback and capture actions on specific events. The first requirement for this feature is to synchronize the audio capture start with the full rendering of a given audio content. The applications can further be extended to other use cases (synchronized playback start...) by adding new synchronization events and new synchronous control methods on player or recorders. Also added a method to query the audio session from a ToneGenerator. Change-Id: I4e47f5108c7cbbd3bd334a7fad9b3b6c5ba55d88
/frameworks/base/media/java/android/media/AudioSystem.java
|
9ac8d0c445a3ccde40c05f0f3ad0ec4e8265d4c6 |
|
07-Mar-2012 |
Eric Laurent <elaurent@google.com> |
AudioService: fix system stream muted by restore Releases prior ICS (included) would persist the stream volumes in the database when muted by silent mode. If the DB was backed up while in silent mode, stream volume was backed up at 0. When restored on a new device, the volume was restored at 0 which was a problem for SYSTEM stream because it would never be corrected as this stream volume is fixed. Added a check on valid volume values when reading settings from the DB and correct the DB if this happens. Change-Id: Ie3b98eb74e10413c22aab7568b83ac3ace5bfc07
/frameworks/base/media/java/android/media/AudioSystem.java
|
cbdb49dc5e1b993a0bc5c68dbfb9486bfa0cd762 |
|
20-Oct-2011 |
Mike Lockwood <lockwood@android.com> |
Simple master volume support Still needs integration with Settings (for persistence) and VolumePanel UI. Change-Id: I9eca92c4b1ef2df2564411006a35753ab9618dce Signed-off-by: Mike Lockwood <lockwood@android.com>
/frameworks/base/media/java/android/media/AudioSystem.java
|
ee7fea9f2fd536107450204c9c2058bbe215f713 |
|
18-Jan-2012 |
Glenn Kasten <gkasten@google.com> |
Remove dead setRingerMode(mode, mask) Change-Id: Ia4cc8be8424a40b3dcb7ebd0264fdff4e5247f7f
/frameworks/base/media/java/android/media/AudioSystem.java
|
9bc8358ddaa01c3490f9709991989633a6a3dd42 |
|
19-Nov-2011 |
Eric Laurent <elaurent@google.com> |
audio framework: manage stream volume per device Improve volume management by keeping track of volume for each type of device independently. Volume for each stream (MUSIC, RINGTONE, VOICE_CALL...) is now maintained per device. The main changes are: - AudioService now keeps tracks of stream volumes per device: volume indexes are kept in a HashMap < device , index>. active device is queried from policy manager when a volume change request is received initalization, mute and unmute happen on all device simultaneously - Settings: suffixes is added to volume keys to store each device volume independently. - AudioSystem/AudioPolicyService/AudioPolicyInterface: added a device argument to setStreamVolumeIndex() and getStreamVolumeIndex() to address each device independently. - AudioPolicyManagerBase: keep track of stream volumes for each device and apply volume according to current device selection. Change-Id: I61ef1c45caadca04d16363bca4140e0f81901b3f
/frameworks/base/media/java/android/media/AudioSystem.java
|
5c17a820f9e46e0756c11795b3e6f89105f2f539 |
|
30-Nov-2011 |
Glenn Kasten <gkasten@google.com> |
Audio Java doc comment typos and minor changes Change-Id: Id6ea6dccb8054c9f05db9a9c045387ce813659e6
/frameworks/base/media/java/android/media/AudioSystem.java
|
ed0079ddddd4070f3369b13b274222da2e69f4b9 |
|
04-Apr-2011 |
Glenn Kasten <gkasten@google.com> |
Miscellaneous code cleanup in audio framework Changes: - Move declaration of kClassPathName to top of file so it can be used in more than one place, instead of "android/media/AudioSystem". - Make private methods static. - Add comment to stream_type, audio_mode, force_use types that they must match values in AudioSystem.java. - Add comment about unused types mp3_sub_format and vorbis_sub_format. - Fix typos. - Use @ in javadoc comments. - Delete dead APIs setMode, getMode, setRouting, getRouting in AudioSystem.java (they are all hidden, deprecated, and unused by rest of framework) - Delete unused private log method. - Fix pathname for android_media_AudioSystem.cpp. - Improve code formatting for space after == and !=. - Add logging of delta for changing audio policy manager ref count. Change-Id: I18037c7beb8ab76d1fda08c11e589f6e591d36e1
/frameworks/base/media/java/android/media/AudioSystem.java
|
8132a8caf36f6c13d679f7275be8e2fd5afd52ba |
|
11-Feb-2011 |
Glenn Kasten <gkasten@google.com> |
Merge "Bug 3352047 Wrong message when adjusting volume"
|
8b4b97a14ad9b5b982d8fe92755efabec8ad0076 |
|
04-Feb-2011 |
Glenn Kasten <gkasten@google.com> |
Bug 3352047 Wrong message when adjusting volume Add hidden AudioManager.getDevicesForStream and output device codes. Change-Id: I4d1c1d3b6a077cd117720817d1f733dda557b947
/frameworks/base/media/java/android/media/AudioSystem.java
|
a25c5d88d17f251262307ce31e799c9cf361d145 |
|
10-Feb-2011 |
Eric Laurent <elaurent@google.com> |
Fix issue 3435692 The problem is that the AudioService is not notified of the death of IAudioFlinger binder interface because no methods was called on AudioFlinger from system_server since the device booted. Therefore, AudioSystem did not created any IAudioFlinger interface in the system_server process. The root cause was always present but more likely to happen on a tablet than on a phone as for instance no beeps are played when volume is adjusted. The fix consists in having AudioSystem explicitly call a method on AudioFlinger when a callback is installed to make sure that an IAudioFlinger binder interface is created regardless of any other activity in the client process. Change-Id: I9df34a36825af0b25cd0246dd02edbd712263f41
/frameworks/base/media/java/android/media/AudioSystem.java
|
25101b0b9a84571ead15b26e9f4cd9c4298d7823 |
|
02-Feb-2011 |
Eric Laurent <elaurent@google.com> |
Fix issue 3371080 Modified default volume control logic in AudioService: 1 IN_CALL volume if in video/audio chat 2 NOTIFICATION if notification is playing or was playing less than 5s ago. 3 MUSIC Modified silent mode: - now also affect MUSIC stream type - entering silent mode when VOL- hard key is pressed once while selected stream volume is already at 0 (except for VOICE_CALL stream). - exiting silent mode when pressing VOL+ hard key while in silent mode Play sound FX (audible selections, keyboard clicks) at a fixed volume. Modified audio framework: - isStreamActive() method now implemented in AudioPolicyManagerBase (previously AudioFlinger) - iStreamActive() now specifies a time window during which the stream is considered active after it actually stopped. Change-Id: I7e5a0724099450b9fc90825224180ac97322785f
/frameworks/base/media/java/android/media/AudioSystem.java
|
8f677d66d9c3ba34c97e69b2bb9e161f129af0ee |
|
15-Nov-2010 |
Jean-Michel Trivi <jmtrivi@google.com> |
Add new audio mode for audio communications other than telelphony. The audio mode MODE_IN_CALL signals the system the device a phone call is currently underway. There was no way for audio video chat or VoIP applications to signal a call is underway, but not using the telephony resources. This change introduces a new mode to address this. Changes in other parts of the system (java and native) are required to take this new mode into account. The generic AudioPolicyManager is updated to not use its phone state variable directly, but to use two new convenience methods, isInCall() and isStateInCall(int) instead. Change-Id: Id744cd26520ea1d1a4795eabe6a1f0c58789af76
/frameworks/base/media/java/android/media/AudioSystem.java
|
21e941bf43362ddc6639a9f2d0828053360f53d7 |
|
06-Oct-2010 |
Praveen Bharathi <pbharathi@motorola.com> |
Added support for dock headset observer Change-Id: I06b2e65e3bfa10735e6c7fd3349afa9ae7d45292 Signed-off-by: Praveen Bharathi <pbharathi@motorola.com>
/frameworks/base/media/java/android/media/AudioSystem.java
|
23f25cda0c73f8eb878844dea32fb0bd419edca2 |
|
25-Jan-2010 |
Eric Laurent <elaurent@google.com> |
Fix issue 2378022: AudioService should direct volume control to STREAM_VOICE_CALL stream when STREAM_VOICE_CALL stream is active. Modified AudioService.getActiveStreamType() so that STREAM_VOICE_CALL is selected when a track using this stream type is playing. Chanded isMusicActive() for a more generic isStreamActive(stream) method in AudioSystem, IAudioFlinger and AudioFlinger.
/frameworks/base/media/java/android/media/AudioSystem.java
|
eb14a783be073b5fd6e8c8c9bc87d2d1919f2c9e |
|
17-Dec-2009 |
Eric Laurent <elaurent@google.com> |
Fix issues 2333450 and 2333559: Add new config values to AudioSystem::FOR_DOCK force usage to differenciate car and desk docks. Use a receiver for the sticky Intent.ACTION_DOCK_EVENT in AudioService to detect the type of dock and select force usage accordingly.
/frameworks/base/media/java/android/media/AudioSystem.java
|
6154412ee8e07e9cde129cccb944dd7ed9dcef53 |
|
08-Dec-2009 |
Jean-Michel Trivi <jmtrivi@google.com> |
Partially fix bug 2111240 Detect docking / undocking event by reporting to the AudioPolicyManager a new forced usage AudioSystem::FOR_DOCK which can take the FORCE_NONE, FORCE_BT_DOCK or FORCE_WIRED_ACCESSORY values. This CL is complemented by an update of the APM to take into account the FOR_DOCK usage.
/frameworks/base/media/java/android/media/AudioSystem.java
|
923d7d721d37f6ba5148e7d79d61a4fa48e79df2 |
|
12-Nov-2009 |
Eric Laurent <elaurent@google.com> |
Fix issue 2242614: Wired headset not recognized: bogus "state" in ACTION_HEADSET_PLUG broadcast. The headset state indicated by HeadsetObserver in the broadcast intent ACTION_HEADSET_PLUG was not 0 or 1 as specified in the java doc but contained a bit field indicating the type of headset connected. Modified HeadsetObserver to broacast a state conforming to java doc. Added an extra to intent ACTION_HEADSET_PLUG to indicate if headset has a microphone or not. Removed handling of non standard headset indications from HeadsetObserver. Removed platform specific devices from output devices defined in AudioSystem. Modified AudioService to use new ACTION_HEADSET_PLUG intent extra instead of bitfield in state.
/frameworks/base/media/java/android/media/AudioSystem.java
|
4a51c20ce607c74914f90fd897f04080121ac13b |
|
22-Aug-2009 |
Dianne Hackborn <hackbod@google.com> |
I am getting tired of the java doc warnings, so fix them. Change-Id: I2205eebae419eaf4a0992c9f5b7cd807eb843fe1
/frameworks/base/media/java/android/media/AudioSystem.java
|
a553c25b33c99b345cf1c8688f8df0ed8df14e5a |
|
17-Jul-2009 |
Eric Laurent <elaurent@google.com> |
Fix issue 1795088 Improve audio routing code Initial commit for review. Integrated comments after patch set 1 review. Fixed lockup in AudioFlinger::ThreadBase::exit() Fixed lockup when playing tone with AudioPlocyService startTone()
/frameworks/base/media/java/android/media/AudioSystem.java
|
ef02827d4c3b9c0601eddc9c348fc2ea866420a2 |
|
21-Apr-2009 |
Eric Laurent <elaurent@google.com> |
Fix issue 1745312: Various cleanups in media framework AudioTrack, AudioRecord: - remove useless mAudioFlinger member of AudioTrack and AudioRecord. - signal cblk.cv condition in stop() method to speed up stop completion. - extend wait condition timeout in obtainBuffer() when waitCount is -1 to avoid waking up callback thread unnecessarily AudioFlinger: - remove some warnings in AudioFlinger.cpp. - remove function AudioFlinger::MixerThread::removetrack_l() as its content is never executed. - remove useless call to setMasterVolume in AudioFlinger::handleForcedSpeakerRoute(). - Offset VOICE_CALL stream volume to reflect actual volume that is never 0 in hardware (this fix has been made in the open source): 0.01 + v * 0.99. AudioSystem.java: - correct typo in comment IAudioflinger, IAudioFlingerClient: - make AudioFlinger binder interfaces used for callbacks ONEWAY. AudioHardwareInterface: - correct routeStrings[] table in AudioHardwareInteface.cpp
/frameworks/base/media/java/android/media/AudioSystem.java
|
9066cfe9886ac131c34d59ed0e2d287b0e3c0087 |
|
04-Mar-2009 |
The Android Open Source Project <initial-contribution@android.com> |
auto import from //depot/cupcake/@135843
/frameworks/base/media/java/android/media/AudioSystem.java
|
d83a98f4ce9cfa908f5c54bbd70f03eec07e7553 |
|
04-Mar-2009 |
The Android Open Source Project <initial-contribution@android.com> |
auto import from //depot/cupcake/@135843
/frameworks/base/media/java/android/media/AudioSystem.java
|
d24b8183b93e781080b2c16c487e60d51c12da31 |
|
11-Feb-2009 |
The Android Open Source Project <initial-contribution@android.com> |
auto import from //branches/cupcake/...@130745
/frameworks/base/media/java/android/media/AudioSystem.java
|
f013e1afd1e68af5e3b868c26a653bbfb39538f8 |
|
18-Dec-2008 |
The Android Open Source Project <initial-contribution@android.com> |
Code drop from //branches/cupcake/...@124589
/frameworks/base/media/java/android/media/AudioSystem.java
|
e70cfafe580c6f2994c4827cd8a534aabf3eb05c |
|
21-Nov-2008 |
Jean-Baptiste Queru <jbq@google.com> |
Change ROUTE_ALL from 15 (4-bit mask) to -1 (32-bit mask) to allow for more routes in the future.
/frameworks/base/media/java/android/media/AudioSystem.java
|
54b6cfa9a9e5b861a9930af873580d6dc20f773c |
|
21-Oct-2008 |
The Android Open Source Project <initial-contribution@android.com> |
Initial Contribution
/frameworks/base/media/java/android/media/AudioSystem.java
|