| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
|
| |
external issue 35214
patch contributed by Jeff Smith <whydoubt@yahoo.com>
Change-Id: I70dcee88a140699bf3e1ab369bed6dcd2fdd3d83
|
|\ |
|
| |
| |
| |
| |
| | |
Change-Id: I5faf0f5d1fdf76a5b4bd1cff37aa58df79d18e85
related-to-bug: 6785452
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
The system gives priority to physically connected
headphones/speakers/docks/etc. Reflect this in MediaRouter and
associated UI.
Bug 6777592
Change-Id: Ibabf3d7512207117e892c99f004443490c3d0612
|
|\ \
| |/
|/| |
|
| |
| |
| |
| | |
Change-Id: Ia0a460ca8532ccb2f4b0f0205d192b1ba907b5b6
|
| |
| |
| |
| |
| |
| | |
per external issue 33610
Change-Id: Ibd778cb4ecc5f1717fa007ac069a7b3660ec4794
|
|\ \
| | |
| | |
| | | |
changes." into jb-dev
|
| |/
| |
| |
| | |
Change-Id: If64e7ea0fa9c892d728282e5e18547a4da115989
|
|\ \
| |/
|/|
| | |
into jb-dev
|
| |
| |
| |
| |
| |
| |
| | |
Bug: 6684451
Change-Id: I90204550ccfcd1b7a5b1973bed2a88e934aae053
Signed-off-by: Mike Lockwood <lockwood@google.com>
|
|/
|
|
|
|
| |
MediaCodec components.
Change-Id: I810507d1d76a28666eb6fb63e3b597d38e5f1389
|
|
|
|
|
|
|
|
|
|
|
| |
Fix a bug where a newly added group had no supported types at the time
of callback dispatch, meaning that no registered callbacks would be
invoked.
Fix a bug where subscribed type flags were not updated properly when
re-adding a callback for new types.
Change-Id: I7d9f11b363ebdca692786cec1d432600946e5721
|
|
|
|
|
|
| |
grouped/ungrouped events
Change-Id: I1b00678cc3b548f347c51c3fcbfce18ecc8fbabe
|
|
|
|
|
|
|
|
|
| |
RouteGroups always report back the loudest volume of their component
routes. Maintain this through volume update requests (such as those
reported by volume hard keys) such that each route updates
individually, but the group slider always indicates the loudest value.
Change-Id: I5de4b9048bf55682b6271e9485fe50496a1c97c2
|
|\ |
|
| |
| |
| |
| |
| |
| |
| |
| | |
Allow applications to set a requested volume level on RouteInfo
objects. If requested for a user route, the app-supplied callback will
be invoked to perform actual volume adjustment.
Change-Id: I856990a0da7292492aa15e6562dbc3d055b848a0
|
|\ \
| |/
|/| |
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
If the filter graph in an app closes out, the SurfaceTextureTarget
filter was losing the reference to the original surfacetexture, and the
app would re-start the graph without setting the surfacetexture again,
thus leading to a crash in registering a surface from surfacetexture.
Typical scenarios is start/stop immediately in camera effects recording.
Fix part of b/6651352
Fix part of b/6655597
Change-Id: Ib2bae7e886784e91b3a886f7ccd439ff190feb22
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Expose new functionality for handling remote volume in:
android.media.MediaRouter.RouteInfo
android.media.MediaRouter.UserRouteInfo
android.media.MediaRouter.VolumeCallback
Change-Id: I8fd9c92be606364599e65939f318e11c2860bab9
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Remote playback information updates will be posted from the
application thread, and sent to AudioService. Because they
require locking the stack containing the remote playback
information, the update should happen on AudioService's handler
thread to avoid lock contention.
Change-Id: Ie04898295e08c16dd8ab5985fd825301e9cf1981
|
|/
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Extend MediaRouter.UserRouteInfo to enable setting playback
information, which includes volume. When the user route instance
has a RemoteControlClient, forward any playback information to it.
Enable specifying a callback to be notified of volume events
on the route.
Extend MediaRouter.RouteInfo to enable retrieving playback
information.
Update RemoteControlClient javadoc to reflect which parts of the
API are not intended to be made public.
Change-Id: I59d728eb61747af6c8c89d53f0faeb07940594c3
|
|\ |
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Extend RemoteControlClient class to enable an applicaton to
specify more information about how it's playing media, now covering
usecases where media playback happens "remotely". This playback
information can be used to set the volume and maximum volume
used remotely.
Declare a new intent and associated extras in Intent,
ACTION_VOLUME_UPDATE, so an application can be notified that
the volume it handles should be updated. It can then use
the new RemoteControlClient.setPlaybackInformation() method
to notify AudioService what the volume is.
Extend AudioService to maintain playback information associated
with the RemoteControlClient information in the stack of
media button event receivers (mRCStack). The information
about the active remote is cached so the stack doesn't have
to be iterated over in order to retrieve remote playback info.
Events to "adjust" the remote volume based on hardware key
presses cause the client application to be notified of
volume updates, and the volume panel to display the volume
set by the app.
Revise which stream type is controlled when none is specified
according to latest guidelines for remote playback.
Update VolumePanel class to support a new pseudo stream type,
AudioService.STREAM_REMOTE_MUSIC, that corresponds to the
remote playback volume, and uses the new "media route" icon.
Enable it to receive asynchronously new volume values for
the remote that will be displayed if the UI is still up,
and ignored otherwise.
Now supports hiding/showing sliders dynamically so remote
volume only appears when AudioService has a remote control
client handling remote volume.
Define new java symbols for the two media route icons.
Modify lockscreen behavior: don't automatically control music
volume when music is active, consider also remote playback.
Still to do:
- playback information set by RemoteControlClient should post
a message for AudioService to update playback information
instead of updating it synchronously
Change-Id: I557aa687239f9acfe33a609f05876c67fa7eb967
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Remove bluetooth permission check from internal AudioService method
setBluetoothA2dpOn
Manage BT A2DP state in MediaRouter. A2DP is only enabled or disabled
when either the system built-in audio route or the A2DP audio route is
selected; when selecting any other route the current state is left
alone.
Change-Id: Ib14274e206e79bd8762edca1205ecfa87b7a94cf
|
|/
|
|
|
|
|
| |
Actually restrict the programmatic selection of routes by
type. (Oops.)
Change-Id: I91e837f7ecbcddb626c664fb470e8296d563498d
|
|
|
|
|
|
|
|
|
|
|
|
| |
MediaRouter dialogs now intercept the volume keys for altering the
current volume. The status icon indicates if the slider/buttons are
currently controlling the local device volume or a remote device's
volume.
Group volume for user routes is handled by using the
RemoteControlClient supplied by the first route in the group.
Change-Id: I40a0d054847ed5acce7a4c3b669487841b4dca15
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Improve the API around ActionProvider visibility overriding. Allow the
application to notify whatever is hosting the ActionProvider that
visibility has changed in a way that is friendly to alternate support
library-style reimplementations of MenuItem.
Allow MediaRouter.Callback implementations to add or remove themselves
or other Callbacks during dispatch of callback events.
Make MediaRouteActionProvider track the visibility of corresponding
menu items more accurately.
Change-Id: Ic7ddb6a87c3637904750d2661e4a9fa323b09ea0
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* Add ActionProvider#overridesItemVisibility and isVisible.
These methods allow an ActionProvider to override the
visibility of a MenuItem that it is bound to. If a MenuItem
has been explicitly hidden by the application, it will not
be visible.
* Change MediaRouteActionProvider to not require a MediaRouter
callback, to avoid extra lifecycle management headaches.
Change-Id: I606fa98b3a6a3e60a953dd024274f9bf9c67acdd
|
|\
| |
| |
| | |
into jb-dev
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
The AudioService now has an API to call to get the currently
connected devices, and later reports of changes in connection
state. The information includes the name of the bluetooth
device if one is connected for display to the user, and states
for all of the pluggable devices. No longer requires a Bluetooth
permission to keep the routes updated.
Change-Id: I81ca421c60592fbc1592477d59bf1c9d1b64954a
|
|\ \
| |/
|/| |
|
| |
| |
| |
| |
| |
| |
| |
| | |
Come back to old versions of setBluetoothA2dpOn() and isBluetoothA2dpOn().
MediaRouter will call methods on IAudioService directly.
Change-Id: I18f0a3106bad78715ed11a6b7b4ec1d656cdae41
|
| |
| |
| |
| |
| |
| | |
Move UserRouteInfo tag support to RouteInfo
Change-Id: Ia753924f8613462d5f74736be93a8d748689eef1
|
|/
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* Accept a Context when fetching the names of routes and
categories. This lets string resources resolve at time of access
with the correct configuration. The older versions remain available
that will use the static resources from the application. (There are
enough cases where applications will populate this from external
data that requiring it each time even when it was not initialized
from a resource doesn't seem reasonable.)
* Remove the ability for apps to programmatically select non-user
routes.
* Make MediaRouter.Callback an abstract class instead of an interface.
This will make further extensions easier to keep compatible in the
future.
Change-Id: If981c511dfbdfaf41ef0d1cfe4a377fc14bb5600
|
|\ |
|
| |
| |
| |
| | |
Change-Id: Idcae12cedfb7ca13950e7fa45441fba2029a9f68
|
|\ \
| |/
|/| |
|
| |
| |
| |
| |
| |
| |
| | |
Also, change the default background mean to be the first incoming frame.
Bug: 6600585
Change-Id: I2181e75711d48d01f48e3fb1d604eb467f08fda4
|
|/
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Add the dialog behavior for MediaRouteActionProvider/MediaRouteButton.
Still TODO:
* Switch audio icon based on source; speaker/bt/user
* Rig up volume slider
* Rig up item icons
* Rig up group button for groupable categories
* Make grouping work
Change-Id: I3f992516b184d5ae940ddb7bbb7f94ff58914589
|
|\
| |
| |
| | |
jb-dev
|
| |
| |
| |
| |
| | |
Change-Id: Ibe37c2e6ede6143dc4e27c6072867bc58aa1c08a
related-to-bug: 6647465
|
|\ \ |
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Fix a bug where MediaRouter would crash on creation
Add click listener for app-supplied extended settings on the route
selection dialog.
Change-Id: I2991db1720b5c574148e250526984592f4dc3c44
|
|\ \ \
| |/ /
|/| | |
|
| |/
| |
| |
| |
| |
| |
| |
| |
| |
| | |
IAudioService.setBluetoothA2dpOn() should not be one way as
IAudioService.isBluetoothA2dpOn() will return inconsistent results
if called just after.
Bug 6572651.
Change-Id: Ib03ae49e6c0041b1b37dcac9e198cd93a4794030
|
| |
| |
| |
| | |
Change-Id: If0215c02abf419d14f28574b751c9dfc2f27bcbe
|
|/
|
|
|
|
|
|
|
|
| |
Add RemoteControlClient to user routes. This will allow the UI layered
on top to access info about the remote volume channel associated with
a user route.
Add icons for user routes and route groups.
Change-Id: I438aa60fc8c93f878ec7638897225738155f0746
|
|
|
|
| |
Change-Id: Ic1cb6f13e691d22783bcdafae85b7c75aec0a66f
|
|
|
|
|
|
|
|
|
|
| |
Remove volume control and tracking. This will be handled by extensions
to existing audio and media APIs for now.
Tweak/refine other aspects of the API. Pass the router to callbacks for
easier future-proofing. Add group/ungroup callback methods.
Change-Id: Ib69e76e5f46280a9002b545bcf4cbc7b839844ee
|