This gives slightly better gaurantees around when an app will receive
a callback. As long as they remove a callback on the same thread calls
get posted on they won't receive any callbacks after the remove.
bug:18104724
Change-Id: Id9878186f005bf0b35c0380cd35f8fd7e67d1d90
This allows apps to include extras that are atomic with play state
changes.
bug:18189125
bug:18103891
Change-Id: Ia3bc5b0dcf29960cb70e2ff3a67ec1fdd48b7a5a
Passes the BufferItem for the queued buffer to the onFrameAvailable
callback so the consumer can track the BufferQueue's contents.
Bug: 18111837
Change-Id: If9d07229c9b586c668e5f99074e9b63b0468feb0
Do not systematically delay a device connection
message by 1 second if another message is still in the queue
but calculate delay based on last message insertion time.
Bug: 17882912.
Change-Id: Id86c338488f41eebfa1dfd926032468be0294cec
Fix cross deadlock between VolumeStreamState.class and
VolumeStreamState instance synchronization.
Do not synchronize on VolumeStreamState instance anymore.
Also document the locking order for synchronization objects
related to volume management.
Bug: 18159081.
Change-Id: Ibfe0759215cdac778408b95191cf0fd96bf46312
Doc had included link to method MediaBrowserService.onLoadIcon().
Per bug http://b/17205016 that method was removed before release.
Revised doc is staged to:
http://asolovay.mtv.corp.google.com:9650/reference/android/service/media/MediaBrowserService.Result.html
(Note that the other "See Also" link, which I didn't remove, is badly
formatted because Javadoc seems to choke on links to methods that are
passed generic types. JoeFernandez@, if you can suggest a better way
to format that link I'll make that change too.)
bug: 18229650
Change-Id: Ic55ae8b9edc6dd314cf5acc306abd8a9d5f71134
Define new usage in AudioAttributes to describe "virtual" sources.
Maintain a registration string in AudioPolicy and AudioMix that
is used for the address of the mix in the native policy manager.
AudioPolicy registration marks the audio policy configuration and
the audio mixes as registered.
The AudioPolicy class is used as the factory for the AudioTrack
and AudioRecord objects that are respectively used as the
source and sink of the mixes created by the policy owner.
Bug 16009464
Change-Id: I8e5bd351495257597c513d22597e273fcabdbc55
Previously, we relied on a handler by posting runnables when the
session is not initialized yet. However, this trick was broken when we
separated the creation procedure into DO_CREATE_SESSION and
DO_NOTIFY_SESSION_CREATED.
Bug: 17909798
Change-Id: I46f610cb9673f8162266525ac0e343b61c6db9ec
If AudioManager.startBluetoothSco() is invoked with no Bluetooth Headset
connected, a NullPointerException will ensue.
Added check to make sure mBluetoothHeadsetDevice is set before accessing
it.
Bug: 17601845
Change-Id: Ia00bfffbea5484230b11a74787fe3309c18f824d
Volume requests should be getting sent on the same thread as other
callbacks, not on the binder thread.
bug:18156755
Change-Id: I35bceb3f8c74ccba35f3d08ff000a254fcbd04bb
- allow Media.Image.setCropRect(null) to unset cropRect
- use full image if cropRect is null in MediaCodec$Image
Bug: 18124320
Change-Id: I7abb6175402a1fe913e16c0a682fabee79c55741
When the max stream volume is configurable by
a system property, the default stream volume should
be set accordingly.
Bug: 17507571.
Change-Id: I9d9378292fc7b9c9e32acc55a275cc0ae5b203d4
Ensure the ringer-mode is valid when set, and forward client calls
to service method to centralize validation.
Bug: 17884168
Change-Id: I500f9beefbce5b7a8bc01ca9eb7b4a7a16114160