Commit Graph

6255 Commits

Author SHA1 Message Date
Chong Zhang
9519257763 Merge "MediaCodec: expose constant quality mode" 2018-01-25 02:47:59 +00:00
Chong Zhang
8883329936 MediaCodec: expose constant quality mode
Also fix a bug where the supported bitcontrol mode
bitmask is wrong.

bug: 63633199
Change-Id: Ib2c21b0d846bcc31f61027d875f801a2282c1101
2018-01-24 15:10:03 -08:00
Wei Jia
8069cd9861 Merge "add MediaPlayer2" 2018-01-24 22:35:43 +00:00
Jaewan Kim
aecd38757b Merge "MediaSession2: Last changes before API unhide" 2018-01-24 22:12:04 +00:00
Andy Hung
c4d2827c96 Merge "AudioSystem: Inform AudioFlinger of total memory" 2018-01-24 20:28:46 +00:00
Jaewan Kim
04de5de9a0 MediaSession2: Last changes before API unhide
This CL includes
- Rename SessionToken to SessionToken2
- Add repeat/shuffle mode support in PlaylistParam
- Add Executor params in session builder
- Add more APIs for MediaPlayerBase

Test: Run all MediaComponents tests once
Change-Id: Ia61632b7a09fab7f41fd89e9489a01af13d6c3c2
2018-01-25 04:59:05 +09:00
Jaewan Kim
1252c015a5 Merge "Change MediaControlView2 APIs" 2018-01-24 19:58:02 +00:00
Wei Jia
0a8a8f0b26 add MediaPlayer2
Forked from 9070e29586
Test: plays local files, callback source and streaming.
Bug: 63934228
Change-Id: I692007c07eb2819f8ad1d843e4e2b1fc96fbecca
2018-01-24 11:03:37 -08:00
TreeHugger Robot
2cef59dc7b Merge "Fix type in comment" 2018-01-24 18:10:21 +00:00
Jaewan Kim
4099b6e6fe MediaSession2: Public APIs for MediaBrowser2 and MediaLibraryService2
Test: Run MediaComponents test once
Change-Id: Icea9f7db7f13ed8354c7ce36b069f45ad7ddbfa8
2018-01-25 02:20:14 +09:00
Jaewan Kim
17b19b7305 MediaSession2: Public APIs for MediaSession2 and MediaController2
Test: Run MediaComponentsTests once
Change-Id: I0373f927063ab8feb340c6d91b2adc99bbcf92a4
2018-01-25 01:58:35 +09:00
Jin Seok Park
482173e03c Change MediaControlView2 APIs
Test: build
Change-Id: Ida307fa16f76e680aa12b92cbce4a8635cac17b2
2018-01-24 16:13:42 +00:00
Insun Kang
ae70ca2e1f MediaSession2: Define setAudioAttributes / setAudioFocusRequest
Test: build
Change-Id: I8ed824e1f1bd536ac37647d94f88195ec7b51bdc
2018-01-24 22:00:51 +09:00
Jin Seok Park
421e7ec3df Merge "Put latest MediaControlView2/VideoView2 code" 2018-01-24 11:24:17 +00:00
Jaewan Kim
495ea5f826 Merge "MediaSession2: Stop overriding MediaPlayerBase for session/controller" 2018-01-24 11:05:21 +00:00
Jaewan Kim
cf707c4741 MediaSession2: Stop overriding MediaPlayerBase for session/controller
Implement AutoClosable instead

Test: Run all MediaComponents test once
Change-Id: Ibb1dac06b80230d62e17111bf2da1b2df81a164c
2018-01-24 19:16:21 +09:00
Sungsoo Lim
c9af5b3076 Merge "VideoView2: Add API for MediaRouter intergration" 2018-01-24 10:15:29 +00:00
Hyundo Moon
efeb45eabd Put latest MediaControlView2/VideoView2 code
This CL brings latest MediaControlView2/VideoView2 code from
experimental, and it does the following:
 - Fullscreen button support (ag/3490251)
 - Set prev/next listener and controlling button visibility (ag/3498244)

Test: Ran VideoViewTest app
Change-Id: I1a64a9c98dcc625b504785728673edbee7b6935d
2018-01-24 19:07:38 +09:00
Jaewan Kim
7800fef943 Merge "MediaSession2: Add MediaSession2.CommandButton" 2018-01-24 10:00:42 +00:00
Rahul Frias
bbf96b1af1 Merge "Add new values to KeyRequestType" 2018-01-24 07:36:14 +00:00
Jaewan Kim
e542bf01d0 MediaSession2: Add MediaSession2.CommandButton
And also adds APIs to share custom layout

Test: Run all MediaComponents tests once
Change-Id: I4d18a023d2809d5405e72a73f14ae1150dee34bc
2018-01-24 15:52:26 +09:00
Jin Seok Park
8b314b2b5d Merge "Add API documentation for MediaControlView2" 2018-01-24 06:35:28 +00:00
TreeHugger Robot
c1ac0355ce Merge "Fixing bugs in Notification proto dumping." 2018-01-24 06:24:29 +00:00
Sungsoo Lim
af2a1ad069 VideoView2: Add API for MediaRouter intergration
Test: build
Change-Id: I3d52d332f587ea8c5b1fa97de512805001e9a130
2018-01-24 15:12:26 +09:00
Jin Seok Park
d9ce1bce82 Add API documentation for MediaControlView2
Test: ran 'make doc-comment-check-docs' after removing @hide tag.
Change-Id: I0eb45ed92e853ec1683c54863f0fdecccd2aa6e9
2018-01-24 14:36:28 +09:00
Jaewan Kim
2bdb9af08f Merge changes from topics "medialibraryservice2", "mediabrowser2"
* changes:
  MediaSession2: Initial commit of MediaLibraryService2
  MediaSession2: Initial commit of MediaBrowser2
2018-01-24 04:41:09 +00:00
Jaewan Kim
bcecf31a97 MediaSession2: Initial commit of MediaLibraryService2
MediaLibraryService2 is the new name for the MediaBrowserService

Test: Run all MediaComponents tests once
Change-Id: I7a1ae20ff59aa4714cff08e43cdabb5b8c557b98
2018-01-24 10:52:20 +09:00
Jaewan Kim
ec877287fb MediaSession2: Initial commit of MediaBrowser2
Test: Run all MediaComponents tests once
Change-Id: I284806ff97da4ba53d7e4de9a39864f70f69a942
2018-01-24 10:51:33 +09:00
Andy Hung
7958358ddb AudioSystem: Inform AudioFlinger of total memory
To better allocate per-client memory blocks.

Test: Debug logging
Bug: 64161002
Change-Id: I389bdea250a74322fab616f1009f51c6c73aef07
2018-01-23 17:14:25 -08:00
Scott Randolph
589f96285b Fix type in comment
missing letter in a word...

Test:  NA
Change-Id: I1a031ad60040e92e8f357c3c789c43e9b83959df
2018-01-23 17:03:55 -08:00
Rahul Frias
8f761ba1cd Add new values to KeyRequestType
Two additional KeyRequestTypes have been added, None and Update. None
indicates that no key request is needed as keys have already been
loaded. Update indicates that while keys have previously been loaded,
an additional (non-renewal) license request is needed.

Bug: 70335058
Change-Id: Id8575fd4c8e8d71009373235a3944b4ec47849da
2018-01-23 13:45:17 -08:00
Adam Stone
e7d255976f Add CounterMetric and a single use case.
This adds a new class CounterMetric which is used to hold metric
information.  It also adds a single use case for recording and
reporting a counter metric.

BUG: 64001676

Test: Added and ran a new test for the specific CounterMetric use case.
Change-Id: I94ff9d4d965d55af4d78b3f9545f07d634b5abbd
2018-01-23 13:39:55 -08:00
Adam Stone
c06e10e241 Add definition and stub for getMetrics.
This adds a stub for supporting retrieving metrics from the MediaDrm
interface.

BUG: 64001676

Test: Ran the new CTS unit test added in a related CL.

Change-Id: I84cafb79dd6e6f860b058a58fb52113a4e699f7d
2018-01-23 13:36:31 -08:00
Kweku Adams
bc84aecc76 Fixing bugs in Notification proto dumping.
Also changing method signatures to be more in line with our convention.
Based on some of the changes I went through, it looks like:
1. We were only legitimately saving the very last NotificationRecord
that was dumped.
2. We weren't dumping any NotificationChannels into
NotificationChannelGroup protos.

Bug: 65750824
Test: Android builds
Change-Id: I8c1ef90cf69d8ea00a7bad0c67445741056e23ef
2018-01-23 13:36:23 -08:00
TreeHugger Robot
e74fa6c231 Merge "Add new MediaDrm methods" 2018-01-23 17:07:40 +00:00
TreeHugger Robot
d66cfdfc9a Merge "AudioFocusRequest: add ability to force ducking for a11y" 2018-01-23 16:46:10 +00:00
Jaewan Kim
b78ea164d6 Merge "MediaSession2: Introduce MediaSession2.Command / CommandGroup" 2018-01-23 09:52:03 +00:00
Jaewan Kim
727e3d2872 Merge "MediaSession2: Move MediaSession2/MediaController2 from experimental" 2018-01-23 09:46:10 +00:00
Insun Kang
fd3fdfdfed Release MediaSession when VideoView2 is detached from window.
Test: build
Change-Id: I36baae35cc8196e3fa2fc9f9bdda4219ffaf863d
2018-01-23 15:01:37 +09:00
Jaewan Kim
589795d12d MediaSession2: Introduce MediaSession2.Command / CommandGroup
Test: Run all tests once
Change-Id: I2ccafcdac5247c9f008b8d4fe50b974ea47fdeed
2018-01-23 14:36:20 +09:00
Jaewan Kim
ceb6b6e131 MediaSession2: Move MediaSession2/MediaController2 from experimental
APIs will be unhidden later

Test: Run MediaComponentsTest
Change-Id: I2d9fcd98232016281fad128e9e674885b41e20d9
2018-01-23 14:02:08 +09:00
Jeff Tinker
3eb07f46a7 Add new MediaDrm methods
Methods for querying HDCP, security levels and
number of sessions

bug:64001680
bug:33657579

Test: cts: MediaDrmMockTest, ClearKeySystemTest
gts: GtsMediaTestCases

Change-Id: Ie616f96ab6b74410a3d7548a7f34b20cf0831d0c
2018-01-22 13:34:06 -08:00
TreeHugger Robot
0e5f9c8a4b Merge "Use generic native routing event handler in MediaRecorder." 2018-01-22 19:12:42 +00:00
Jean-Michel Trivi
9228af6bc2 AudioFocusRequest: add ability to force ducking for a11y
New API to specify an accessbility service wants to force ducking
  in its focus request, regardless of the framework's evaluation
  of whether or not it should duck the other players.
Use of this API is restricted to requests coming from services
  bound to the A11y service, or root

Bug: 62194333
Test: play a podcast in GPM and "adb shell claf --gain 3 --usage 11 --forceDuck"

Change-Id: I85f26afa14fe233a3b870f86c9084613203494b8
2018-01-20 15:51:01 -08:00
Jean-Michel Trivi
5c2aae0908 Unhide audio offload for android.media.AudioTrack
Unhide some compressed audio formats for offloading
  or direct output.
Unhide AudioManager method to query whether a given
  format can be offloaded on the device.
Unhide AudioTrack.Builder method to request offload.
Unhide callback for new AudioTrack events and
  associated methods.

Bug: 63934228
Test: same as MediaPlayer2 tests
Change-Id: If763eb2424baa6aa55cb60e96bb3564c4234e23f
2018-01-20 13:18:50 -08:00
TreeHugger Robot
51a9a31ba5 Merge "Multi-A2DP support - add a new internal API to suppress Audio Noisy intent" 2018-01-20 17:58:25 +00:00
TreeHugger Robot
b5ebe3003a Merge "AudioTrack: support for offloaded playback" 2018-01-20 05:48:37 +00:00
Pavlin Radoslavov
82e06463f2 Multi-A2DP support - add a new internal API to suppress Audio Noisy intent
The new API setBluetoothA2dpDeviceConnectionStateSuppressNoisyIntent()
is similar to the existing setBluetoothA2dpDeviceConnectionState()
except that it takes one extra argument that indicates whether the
AudioManager.ACTION_AUDIO_BECOMING_NOISY intent will be sent:

  setBluetoothA2dpDeviceConnectionStateSuppressNoisyIntent(
      ..., boolean suppressNoisyIntent)

This API is needed so the Active A2DP Sink device can be changed
while audio is streaming, and the audio continues playing on the new
Active Device.

Bug: 69269748
Test: Manual: multiple connected A2DP devices, and selecting each as
      the Active Device.

Change-Id: I75766a58d9e6b42b3ce68bd9ad3a7a72ca5a1023
2018-01-19 19:53:02 -08:00
Jean-Michel Trivi
980d38ff77 AudioTrack: support for offloaded playback
Surface new callbacks from native AudioTrack to
  Java through the existing callback method and
  post to the Java instance.
New AudioManager method to query whether offload
  is supported.
Allow using non-PCM format on a track built for
  offload (new option in AudioTrack.Builder)

Numerous "todo" are added for the unhide of the
  API additions and will be in a separate patch.

Bug: 63934228
Test: same as MediaPlayer2 tests

Change-Id: I98a81ffffc95c7596a39ee634dcb89bb854f3178
2018-01-19 15:05:37 -08:00
jiabin
0b9fa51992 Use generic native routing event handler in MediaRecorder.
We already make a generic native routing event handler. There is no need
to keep the handler class in MediaRecorder.

Bug: 64038649
Test: runtest --path cts/tests/tests/media/src/android/media/cts/RoutingTest.java
Change-Id: I2d54977a6f990fb549d27aabf52f040bd9da58fa
2018-01-19 14:52:12 -08:00