Dead lock sequence:
1. called onSetA2dpConnectionState()
1-1. synchronized(mConnectedDevices)
2. called onServiceDisconnected()
2-1. synchronized(mA2DPAvrcpLock)
3. waiting to lock(mConnectedDevices) in onServiceDisconnected()
4. waiting to lock(mA2DPAvrcpLock) in onSetA2dpConnectionState()
========================================================================================
- watchdog issue
----- pid 3306 at 2014-10-14 16:15:12 -----
Cmd line: system_server
"main" prio=5 tid=1 MONITOR
- waiting to lock <0x4343e9b0> (a java.util.HashMap) held by tid=46 (AudioService)
at android.bluetooth.BluetoothA2dp$2.onServiceDisconnected(BluetoothA2dp.java:529)
"AudioService" prio=5 tid=46 MONITOR
- waiting to lock <0x42ab7a58> (a java.lang.Object) held by tid=1 (main)
========================================================================================
Signed-off-by: Seunghwan Hong <seunghwan.hong@lge.com>
Change-Id: I99e061c07be01aabcd26786ef2ebb71f46717b93
- allow Media.Image.setCropRect(null) to unset cropRect
- use full image if cropRect is null in MediaCodec$Image
Bug: 18124320
Change-Id: I7abb6175402a1fe913e16c0a682fabee79c55741
We weren't setting the ratings in the new MediaMetadata from RCC.
This adds some code to set them correctly.
bug:18051829
Change-Id: I358eeb2b25b3fb9bd9a5d207eb3314bb2cdff25e
Apps can end up in priority mode by setting ringer-mode = silent.
Now they can leave priority mode by setting ringer-mode = non-silent.
(normal or vibrate)
Bug: 17884168
Change-Id: I54c853885f4ae9ee618041dd7ac6ab0663fc7b37
Current implmentation only sends rotation updates on orientation
changes, so does not handle direct 0<->180 or 90<->270 transitions.
Update rotation based on an OrientationEventListener instead of
Intent.ACTION_CONFIGURATION_CHANGED
Bug 17606902
Change-Id: I01dfcd1c587f5b2e8a96365c2389782ad77936ef
If an AudioRecord is created with the "fixedVolume" tag
when recording from REMOTE_SUBMIX, treat the
device DEVICE_OUT_REMOTE_SUBMIX as a fixed full volume
device during the recording. Also register a death
handler during the recording.
Otherwise this is a no-op.
Bug 17635294
Change-Id: I8d26fe777047126f34308e1e1b7ac28ba269ad89
Found a very simple fix. Just set the cached metadata so we have
it to copy over when editMetadata(false) is called.
bug:17796693
Change-Id: Ib27f0c3d28e7f2a3c7d9495697f36c8045e2bcf6
- DVB and ISDB ratings are added.
- Remove rating systems whose countries uses DVB and ISDB.
- Updated java doc for AR, AU, and BR.
Bug: 17494772
Change-Id: Ia2a63c7914148b42078decb8de1ae45baefb010d
This checks if the phone app is currently getting or in a call when a
media key event is sent and sends it to the phone session instead of the
foreground app if it is.
bug:17527302
Change-Id: Ie5d6cf0c897da81d106f2b1a0561b79f4fc35e82
A behavior change in the BT stack caused it to stop sending connection
changes for connected devices when you turn BT off. To work around this
we need to remove the connected BT route when BT is turned off.
bug:17512270
Change-Id: I3e5aa8863409c5abac51aa4e93a15f1978cf74b3
Handle the other ways queueBuffer can fail. Revalidate the buffers
properly, e.g. without clearing them.
Bug: 17630446
Change-Id: I22e0e89c2835eb6a461046a8cf3be03635088302
When the binder had disconnected we were setting the state to suspended
and then not setting it back to connecting when we reconnected. This sets
the state correctly when we are trying to connect again.
bug:17593681
Change-Id: I3fe95fa23ba43ac2dc3692fd28309b2f8e5a3599
For legacy behavior (using getInputBuffers) input buffer needs to
be made valid if queue fails. Otherwise, it becomes unusable,
and the buffer still belongs to the user.
In the new model, buffers obtained by getIn/OutputBuffer will
become invalid even if queue/release fails.
We do not do the same logic for output buffers, as these should
not be accessed even if releaseBuffer fails (which really should not
happen anyway unless codec is in bad state).
Bug: 17630446
Change-Id: Ica72a168d8aea97a0ee3f3ef49c60d0ca5a9fa06
Bug: 17379185
- WAR for SW Write usage flags being unavailable on
certain devices for JPEG (blob) format buffers.
Change-Id: Ic7299785b743f35dd47264b9d1cea01a88b71d91
Instead of comparing MediaControllers via reference equality
(which is never true), go deeper and check whether the two
controllers are connected to the same IBinder.
Bug: 17571414
Change-Id: Id25d70be0a60d1900e977310dedcc7063552e018
When HDMI-CEC system audio mode is activated.
1. Hide volume bar when volume button is pressed in TV
2. Show volume bar when TV receives volume notification from
Audio Receiver.
Otherwise, (system audio mode off) follows normal TV's behavior.
Bug: 17347499
Change-Id: I1f5bc14285d60d8626a8fbbef9e1959cae7d193b
+ Add a hidden "UNKNOWN" default type to ToneGenerator.
- Hide the Telephony DisconnectCause from the public API.
+ Add a Telecomm DisconnectCause. This is parcelable, and contains
information (code, user facing message, non-user facing reason,
and tone) to help describe the disconnect state and what behaviors
an application can implement for the user experience. This reduces
the causes for a disconnect to a more generic set.
+ Lots of work to pipe this through. DisconnectCause replaces the
code and message which were formerly passed around.
Bug: 17241433
Bug: 17329632
Change-Id: I9d337e478a8784bcc0ade02267c2df52cac9bf17