OSDN Git Service

Notification playback synchronized with audio focus
authorJean-Michel Trivi <jmtrivi@google.com>
Thu, 26 Jan 2017 03:08:49 +0000 (19:08 -0800)
committerJean-Michel Trivi <jmtrivi@google.com>
Tue, 31 Jan 2017 23:40:09 +0000 (15:40 -0800)
commit99489ccf740d369193a8ffc7eeb4bbde6919bd65
treea53aa8d869b46ab455f03d416f310c4e9af7fa22
parent9e77aefe9ce2c3caa8c0daebf21c86088e10b951
Notification playback synchronized with audio focus

PlayerProxy: more control options (pan, delayed start),
  remove exceptions in method signatures.
Use delayed start on notification playback for better sync
  between media apps and notifications
Disabled for now: support for AudioService (through
  MediaFocusControl and PlaybackActivityMonitor) to enforce
  audio ducking of focus owners losing audio focus with
  AUDIOFOCUS_LOSS_TRANSIENT_CAN_DUCK, and who don't
  play audio that has a content labelled as CONTENT_TYPE_SPEECH.
  This feature will be enabled when setting a VolumeShaper
  on a player works.

Test: play music and play notification
Bug 30258418

Change-Id: I4e4d911645306bbde17f74288f3b61781fe0e3fe
15 files changed:
api/system-current.txt
media/java/android/media/AudioFocusInfo.java
media/java/android/media/AudioManager.java
media/java/android/media/AudioTrack.java
media/java/android/media/IAudioService.aidl
media/java/android/media/IPlayer.aidl
media/java/android/media/MediaPlayer.java
media/java/android/media/PlayerBase.java
media/java/android/media/PlayerProxy.java
packages/SystemUI/src/com/android/systemui/media/NotificationPlayer.java
services/core/java/com/android/server/audio/AudioService.java
services/core/java/com/android/server/audio/FocusRequester.java
services/core/java/com/android/server/audio/MediaFocusControl.java
services/core/java/com/android/server/audio/PlaybackActivityMonitor.java
services/core/java/com/android/server/audio/PlayerFocusEnforcer.java [new file with mode: 0644]