7335 Commits

Author SHA1 Message Date
Lajos Molnar
66b753b06b Merge "MediaPlayer: MTP: update state only based on source events" into klp-dev 2013-10-28 21:59:55 +00:00
Lajos Molnar
4de8e7c1a5 MediaPlayer: MTP: update state only based on source events
State only depends on events from the MediaPlayer (this includes
the pseudo-event from MTP recovery mechanism.)

Change-Id: Idd62a773d2386ad6bfbfe417412c2e2ff09b3600
Signed-off-by: Lajos Molnar <lajos@google.com>
Bug: 11412881
2013-10-28 09:19:26 -07:00
Jean-Michel Trivi
d4249251e0 Merge "Limit RemoteControlClient generation ID changes" into klp-dev 2013-10-25 20:41:39 +00:00
Jean-Michel Trivi
0b60534917 Limit RemoteControlClient generation ID changes
At the beginning of each song, the Music app re-registers its
 media button event and requests audio focus, which causes
 the reevaluation of each corresponding stack of clients. Each
 reevaluation is accompanied by the incrementation of the
 RemoteControlClient generation ID, which causes RemoteController
 to issue a notification that the client has changed. The lockscreen
 correctly interprets this as a reason to dump the current
 RemoteControlClient data (including the artwork) because it will
 receive the new data if new one is available. This is what causes
 the "flashing" of the wallpaper on the lockscreen: for an instant,
 no client data is available.
The fix consists in not causing the client generation ID to be
 incremented when registrations don't cause any change in the
 RemoteControlClient stack. Even though Music re-registers everything,
 nothing has changed: it still is the current media button receiver,
 and it still has the same RemoteControlClient.

Bug 11307382

Change-Id: I4d2404b571e88aeedb0eca6bd19d39f7ec4fc8b1
2013-10-24 19:10:24 -07:00
Jean-Michel Trivi
3661494d46 Missing LoudnessEnhancer constructor and UUID in public API
Bug 11356672

Change-Id: Ia3d16712c8b9bb425a587acd87ba7fad6b4ce31c
2013-10-23 15:21:08 -07:00
Adam Powell
3b435fb2f0 Fix stale data in keyguard transport control display
Make sure that caches are cleared at the right times and views have
their data populated correctly. Also fix a caching issue in
RemoteController.

Bug 11218218

Change-Id: Ieb833b5dc440ccd1b82050f12eb7059a4e0a412f
2013-10-15 19:18:04 -07:00
Eino-Ville Talvala
d38b1302b7 Merge "DO NOT MERGE: Hide new camera API." into klp-dev 2013-10-13 01:50:30 +00:00
Eino-Ville Talvala
cd92588528 DO NOT MERGE: Hide new camera API.
Not yet ready.

Bug: 11141002

Change-Id: I4704bffb9ba36af47a66dc5b49cbba00be623aae
2013-10-11 19:26:08 +00:00
Jean-Michel Trivi
fca1e60323 Remote volume changes
When the user plays media remotely, and presses on the volume
 keys with the screen off, verify whether not only local playback
 is active, but also if remote playback is active to see if
 the volume should be adjusted.
When adjusting the volume with screen off, adjust the remote
 volume if applicable.

When controlling volume, give priority to local media playback.

Bug 11169862

Change-Id: I88a8c003969177d50d4c1569ec6cd2a7c153a341
2013-10-11 11:36:18 -07:00
Jean-Michel Trivi
4348a73bbe Make RemoteController weakly referenced by IRemoteControlDisplay
In the RemoteController implementation, the inner class that
 implements the IRemoteControlDisplay interface must have a weak
 link to the RemoteController instance with which it is associated,
 as MediaFocusControl and RemoteControlClient hold a strong
 reference to this binder object in a different remote process.
 Without a weak reference, any object referencing RemoteController
 couldn't be independently garbage collected without a garbage
 collection in the remote process.

Bug 8209392

Change-Id: I29e4274c45249b3cb0d3d89417c69e8fe8f62fc4
2013-10-08 15:42:31 -07:00
Jean-Michel Trivi
1a1e24f18e Merge "Update RemoteController info when enabling/disabling it" into klp-dev 2013-10-08 00:45:54 +00:00
Jean-Michel Trivi
19566543c4 Update RemoteController info when enabling/disabling it
When a RemoteController listener is disabled: send its listener
 "blank" information (no artist, "stopped state"...)
When a RemoteController listener is enabled: have the current
 RemoteControlClient send the current information.

Bug 8209392

Change-Id: I375bf3c42a425ada94c61453b51669d7e819dde4
2013-10-07 17:10:08 -07:00
Rachad Alao
00fb27dda8 Merge "Camera2: add metadata override" into klp-dev 2013-10-07 20:40:22 +00:00
Jean-Michel Trivi
bacb5422bc Merge "Also rely on enabled notification listeners for RemoteController registration" into klp-dev 2013-10-07 17:04:20 +00:00
Zhijun He
b7bfdc7cf7 Camera2: add metadata override
There are interface difference between managed and native side for some
metadata, like Face and JPEG format. we need override them when they are set/get
between native and managed sides.

Also fix some issues in the CameraMetadataTest.

Bug: 10406212

Change-Id: Ibd8be0415968445e711b3ea89f45e1edfa193ee2
2013-10-07 08:02:25 -07:00
Jean-Michel Trivi
f108cdd9ee Also rely on enabled notification listeners for RemoteController registration
Registration of a RemoteController may succeed only if:
 - the caller has the MEDIA_CONTENT_CONTROL permission,
 - or if the RemoteController.OnClientUpdateListener it
   registers if one of the enabled notification listeners.

For using the "enabled notification listener" functionality,
 the CL involved:
 - making OnClientUpdateListener an interface so a 3rd-party
   application may have its implementation extend
   NotificationListenerService, which is required for a
   listener to be enabled by the user.
 - add the concept of "enabled" status in an
   IRemoteControlDisplay, so a RemoteController (which
   encapsulates the IRemoteControlDisplay implementation)
   may be registered, but later temporarily disabled by
   the user, as a result of a user action in the security
   settings, or a user switch.
 - making MediaFocusControl, the component tied to
   AudioService, monitor changes in enabled notification
   listeners, and act upon enable/disable changes.

Bug 8209392

Change-Id: Ia8dfa2156c65668b2b0d4ae92048005912652d84
2013-10-04 17:50:44 -07:00
Eric Laurent
15bcc2d82f Merge "audioservice: fix DTMF stream volume" into klp-dev 2013-10-04 15:18:32 +00:00
Eric Laurent
24e0d9b6c4 audioservice: fix DTMF stream volume
DTMF stream must also be muted by silent mode when following ring
stream volume in order to be properly muted and unmuted when ringer
mode changes.

Also fix a problem in VolumeStreamState.setAllIndexes() when some
devices are not present in the stream state from which indexes
are copied.

Bug: 10932676.
Change-Id: I373d0fd1a475980786d97d97348d46a7e7421461
2013-10-03 18:15:07 -07:00
Adam Powell
70cb8021ef Fix docs
Change-Id: I19e0cdab6c526f7eed376fc2067b5c49b31a3ea9
2013-10-03 16:39:30 -07:00
Adam Powell
d6239b9229 Merge "Add a scrubber to keyguard; layout tweaks" into klp-dev 2013-10-03 22:35:35 +00:00
Adam Powell
f8895248e2 Add a scrubber to keyguard; layout tweaks
Switch KeyguardTransportControlView over to using RemoteController
instead of the internal API.

Guard transition animations behind a flag until we can work out some
intermittent issues.

Change-Id: Ie9f41339ce6e735c5d524db88437672f2c9859e2
2013-10-03 14:55:18 -07:00
Eino-Ville Talvala
e841d4e165 Camera2: Implement idle callbacks
- Rework camera callback binder interface
- Connect up idle, disconnect callbacks
- A few unit tests for shutter firing and idle use

Bug: 10549462
Change-Id: I8455a8a0561e366b7edeef6b101682be2ec44d79
2013-10-03 15:44:32 +00:00
Eric Laurent
0bc0f109df Merge "audioservice: always acquire wake lock as AudioService" into klp-dev 2013-10-01 21:00:10 +00:00
Eric Laurent
a4dfbdc54d audioservice: always acquire wake lock as AudioService
When a wake lock is aquired while executing a binder call and released
in the message handler, AppOps complains about the uid mismatch.

Clear the binder identity before acquiring the wake lock.

Bug: 10627124.
Change-Id: Ibd5babc1ae699bffde1a659562089eb091879106
2013-10-01 12:02:10 -07:00
Lajos Molnar
fcd61bb587 Merge "Fix MediaTimeProvider seek & time drift recovery issue" into klp-dev 2013-10-01 16:37:06 +00:00
Jean-Michel Trivi
b4c6b241fb Merge "Cache RemoteController artwork bitmap size, use it in registration" into klp-dev 2013-09-30 23:24:01 +00:00
Jean-Michel Trivi
60e7f8191e Merge "Improve RemoteControlDisplay registration" into klp-dev 2013-09-30 23:22:58 +00:00
Lajos Molnar
d58b122208 Fix MediaTimeProvider seek & time drift recovery issue
Handle MEDIA_SKIPPED event

Prevent notifyTimedEvent events (REFRESH_AND_/NOTIFY_TIME)
to eclipse NOTIFY_SEEK events.

Add automatic seek when time drifts too much.  This should
not happen under normal circumstances, but is there to recover
from any unannounced media time discontinuity.

Change-Id: I8d7fdac2b0b6a9e62d2860461e6a25788e77fef8
Signed-off-by: Lajos Molnar <lajos@google.com>
Bug: 10954008
2013-09-30 15:50:31 -07:00
Jean-Michel Trivi
86142da1ce Improve RemoteControlDisplay registration
When a new RemoteControlDisplay gets registered, don't cause all
  existing RemoteControlDisplays to re-receive RemoteControl
  information they already have.

Bug 8417073

Change-Id: Icc8e7104d6870f748fddd702692789dbaef948ac
2013-09-29 16:57:08 -07:00
Jean-Michel Trivi
8ab8c2d061 Cache RemoteController artwork bitmap size, use it in registration
Allow an app to set the artwork configuration at any point
  regardless of the registration state, and cache the width/height
  values.
If the RemoteController is already registered, apply them.
If the RemoteController is not registered, use the cached value
  when the object gets registered.

Bug 10862527

Change-Id: If633e2b9383e7d59690288d2271113e98b195cd8
2013-09-29 12:17:13 -07:00
David Friedman
d42e4132ba am 233a341b: am 1b8e3197: am 8c38ea39: Merge "Docs: Fixed wrong parameter in SoundPool file; fixed typo in security file. Bug: 10807931 10796994" into jb-mr2-docs
* commit '233a341b6d9477f7f41d5a954fa7f7a150972ccb':
  Docs: Fixed wrong parameter in SoundPool file; fixed typo in security file. Bug: 10807931 10796994
2013-09-27 15:57:56 -07:00
Lajos Molnar
974a6e1231 Merge "Make SubtitleController thread safe" into klp-dev 2013-09-27 22:57:22 +00:00
Lajos Molnar
29f5183794 Make SubtitleController thread safe
Add the concept of an anchor looper.
Allow show/hide/selectTrack/selectDefaultTrack to be called from thread
other than anchor looper.

Change-Id: Iaf2f3d3c46d1b00a0a24156745ec16b301c80c04
Signed-off-by: Lajos Molnar <lajos@google.com>
Bug: 10919206
2013-09-27 14:55:36 -07:00
David Friedman
233a341b6d am 1b8e3197: am 8c38ea39: Merge "Docs: Fixed wrong parameter in SoundPool file; fixed typo in security file. Bug: 10807931 10796994" into jb-mr2-docs
* commit '1b8e319784a1bb166aaa6b0f1dc306f8d4b6e57f':
  Docs: Fixed wrong parameter in SoundPool file; fixed typo in security file. Bug: 10807931 10796994
2013-09-27 10:37:07 -07:00
David Friedman
1b8e319784 am 8c38ea39: Merge "Docs: Fixed wrong parameter in SoundPool file; fixed typo in security file. Bug: 10807931 10796994" into jb-mr2-docs
* commit '8c38ea39203016dde95bc5dd68f27f6f45096784':
  Docs: Fixed wrong parameter in SoundPool file; fixed typo in security file. Bug: 10807931 10796994
2013-09-27 10:30:01 -07:00
David Friedman
36b692d8ef Docs: Fixed wrong parameter in SoundPool file; fixed typo in security file.
Bug: 10807931 10796994

Change-Id: I8c8e07c3e8606d5983c2545fa6638af45650d27c
2013-09-27 10:04:48 -07:00
Marco Nelissen
2c70299029 Merge "Fix logic in fallback ringtone handling" into klp-dev 2013-09-26 19:56:13 +00:00
Marco Nelissen
19a4671b10 Fix logic in fallback ringtone handling
The existing code would only play a fallback ringtone if the requested
ringtone was one of the three ringtone uris that are defined by settings,
and it wasn't set to "silent".
Now it also plays the fallback for custom ringtone uris.

b/10891718

Change-Id: I79c2298c6497165e6845b98532cce0855347e50b
2013-09-26 12:44:55 -07:00
Zhijun He
aea8ec1a73 Merge "Camera2: Fix Camera integration test deadlock" into klp-dev 2013-09-26 17:06:49 +00:00
Zhijun He
7b7a154026 Camera2: Fix Camera integration test deadlock
The problem was: when SurfaceTexture is used, test didn't acquire/release
images when they are produced, then it starves the producer and
cause deadlock. This change replaces SurfaceTexture with ImageReader, release
every image produced immediately.

Bug: 10360518
Change-Id: I9aabaee23013277c2da6f5825ac931bc10511fbc
2013-09-25 19:33:31 -07:00
Zhijun He
822ac0bada Merge "Camera2: Implement CameraManager#getCameraCharacteristics" into klp-dev 2013-09-25 23:57:24 +00:00
Alan Viverette
812b642641 Merge "Fix caption rendering" into klp-dev 2013-09-25 22:21:08 +00:00
Zhijun He
2001188be3 Camera2: Implement CameraManager#getCameraCharacteristics
Bug: 10904541
Bug: 10360518
Change-Id: I1da0b0319703fda46789f15a232e56ed1d928bc3
2013-09-25 13:54:25 -07:00
Marco Nelissen
fd2e50086c Fix hang
b/10855561

Change-Id: I29b046b835ce0ca3644e5c2e8f9bca5c0b380d4b
2013-09-25 13:45:41 -07:00
Alan Viverette
7fe420f31b Fix caption rendering
Fixed rendering of captions in regions and incorrect caption width
measurement. Removes minimum-difference line wrapping, since the
results weren't consistent with StaticLayout's rendering.

BUG: 10917766, 10822229
Change-Id: I55ef28cbf383fd6b945c0be62e440781288364f1
2013-09-25 12:35:00 -07:00
Jean-Michel Trivi
80e8a28c33 Merge "Fix artwork not received in RemoteController metadata update." into klp-dev 2013-09-24 23:37:22 +00:00
Lajos Molnar
566d6b6534 Merge "WebVttRenderer: allow BOM at beginning of a WebVTT file." into klp-dev 2013-09-24 18:37:12 +00:00
Lajos Molnar
283fe37aa2 WebVttRenderer: allow BOM at beginning of a WebVTT file.
This is part of the spec.

Change-Id: I61ccc259c0b9d3a2bc4273925665d107b0c89c62
Signed-off-by: Lajos Molnar <lajos@google.com>
Bug: 10900755
2013-09-24 10:13:43 -07:00
Jean-Michel Trivi
6d298811ef Fix artwork not received in RemoteController metadata update.
Regardless of the artwork value, always update the metadata.

When updating the metadata, make sure the artwork is stored
 in the artwork field, not in the bundle of the MetadataEditor.

Bug 10862527

Change-Id: Iec83fd9bb358a91c852099b30bb6d307a52a034c
2013-09-23 18:34:23 -07:00
Jean-Michel Trivi
01b5743aee Public API for peak and RMS monitoring through the Visualizer effect
Public API to extend the capabilities of the Visualizer audio
  effect with measurements of peak and RMS values.

Bug 8413913

Change-Id: Ifc6646e013ec55fde3523fab685add1d043f1272
2013-09-23 16:41:53 -07:00