11846 Commits

Author SHA1 Message Date
Hangyu Kuang
2563ddcca4 media: Add more detail for the use of metadata track.
Test: None as just documentation.
Bug: 28536560
Change-Id: Ie9a765b02fb304b16146c314eeb89758b9cd4a4d
2017-02-27 10:28:16 -08:00
Hangyu Kuang
cd923a219f media: Add new key for latency support
Test: NONE
Bug: 34221970
Change-Id: Id2d64f9be6bffaff1897079b5132388046882334
2017-02-27 18:10:17 +00:00
Andy Hung
fef734cec1 VolumeShaper: Use VolumeAutomation interface and unhide
Test: Ducking and CTS
Bug: 31015569
Change-Id: I21b77905e86bf336c05aad5378f33ff36a92b3b5
2017-02-24 19:12:50 -08:00
Andy Hung
7da0e98219 VolumeShaper: Remove PlayerProxy constructor
Use of the VolumeShaper through PlayerProxy requires system ids,
which is different enough from PlayerBase that we don't allow
direct construction.

Test: Ducking
Bug: 31015569
Change-Id: Ia98ec5396047ae39e78237bb7e485d07f2eb1efd
2017-02-24 19:12:35 -08:00
Conrad Chen
be339625a8 Merge "Add TvProvider methods to get and add columns" 2017-02-25 00:18:04 +00:00
Conrad Chen
b842f4449a Add TvProvider methods to get and add columns
Test: gts-tradefed run gts -m GtsTvTestCases
Bug: 34684896
Change-Id: If284879a96199d26063312e2af7401c9a9066cea
2017-02-23 14:51:39 -08:00
Chong Zhang
15d10517cf Merge "MediaCas: add framework APIs" 2017-02-23 22:36:22 +00:00
TreeHugger Robot
212b51422d Merge "PlayerBase: reference to IAppOpsService may be null" 2017-02-23 20:54:06 +00:00
Jean-Michel Trivi
0fbcb86389 PlayerBase: reference to IAppOpsService may be null
The reference to IAppOpsService may be null for a player
  that failed to be initialized correctly, account for this.

Test: see bug
Bug 35415129

Change-Id: I9da40b87736a7890fcb63640eeabd17d0da3d5d3
2017-02-23 10:21:17 -08:00
TreeHugger Robot
4bc511cb66 Merge "VideoView: option for audio focus, support for AudioAttributes" 2017-02-23 04:37:54 +00:00
TreeHugger Robot
798cccb659 Merge "Don't copy ringtones when profile sync goes off" 2017-02-23 04:21:39 +00:00
Robin Lee
7af9a74431 Don't copy ringtones when profile sync goes off
Experimentally, it makes more sense to more people to have the parent
setting as an overlay not a concrete thing.

Test: make cts -j30 && cts-tradefed run cts --module CtsDevicePolicyManagerTestCases --test 'com.android.cts.devicepolicy.ManagedProfileTest#testRingtoneSyncAutoDisableRingtone' </dev/null 2>&1
Bug: 34730524
Change-Id: I5f804713def9e54921b90e4f5cea742ba8aaa685
2017-02-23 02:47:24 +00:00
Chong Zhang
d5927ae883 MediaCas: add framework APIs
Java API changes to support MediaCas framework.

Also add partial-frame related enums to MediaCodec,
MediaCodecInfo, and MediaExtractor as a way to indicate
a input frame contains partial data.

Test: basic test app and test plugin to execise the code path;
impelenting playback of CAS-secured MPEG2TS streams, including
a Widevine-based CAS plugin, locally modified ExoPlayer and
Android TV Tuner input.

bug: 22804304
Change-Id: Ia4ba1d4046f7588e42bfb21e726390457d2fc8e3
2017-02-22 17:27:01 -08:00
Jean-Michel Trivi
0f49f82e97 VideoView: option for audio focus, support for AudioAttributes
Add API for VideoView to select whether it uses audio focus during
  playback, and how.
Add support for AudioAttributes

Test: cts-tradefed run cts -m CtsWidgetTestCases -t android.widget.cts.VideoViewTest
Bug 30955183
Bug 30258418

Change-Id: I581d32c79c78b8197ded2319e0d5bfdc35b93c5e
2017-02-22 12:04:24 -08:00
Phil Burk
2dfa6d121c Merge "bluetoothmidiservice: fix timestamp for BLE-MIDI transmitted packets" 2017-02-22 03:03:30 +00:00
Phil Burk
94ec584bed bluetoothmidiservice: fix timestamp for BLE-MIDI transmitted packets
Transmitted packets that contained multiple MIDI messages and that did not
use running status were missing a timestamp! This CL fixes that bug.

Bug: 34708799
Test: a manual test using MidiMatrix is described in the bug report
Change-Id: Iddb55e01c60625787c5907fe8e4b202ef1415e59
Signed-off-by: Phil Burk <philburk@google.com>
2017-02-21 16:15:33 -08:00
Conrad Chen
56b2dcd54f Merge "TIF: fix NPE caused by invalid component name" 2017-02-21 19:00:02 +00:00
Conrad Chen
735a8d8fe9 TIF: fix NPE caused by invalid component name
Fixes NPE caused by invalid component name in TvInputInfo.Builder

Test: bug fix
Bug: 29457556
Change-Id: I92a77777373669c893299eaad7367a68aa458156
2017-02-17 17:41:40 -08:00
TreeHugger Robot
8922f5dbcd Merge "Audio focus enforcement: use VolumeShaper for ducking" 2017-02-18 00:47:33 +00:00
Dongwon Kang
d66301f7e3 Merge "TIF: specify the type for COLUMN_INTERACTION_COUNT" 2017-02-17 23:07:40 +00:00
Ray Essick
8020105fb2 Merge "Metrics for android.media.MediaRecorder" 2017-02-17 22:39:40 +00:00
Mathias Agopian
f1cb02e7b5 fallout of splitting rect.h out of libandroid.
- Main goal here: libandroid now links against 
libarect and export its includes.

- Also fix some wrongful makefiles that included 
headers without proper dependency list.

Test: built and booted device
Bug: 35164655
Change-Id: Iae17b966bba00fe53424486a75eebff468873787
2017-02-17 12:25:26 -08:00
Dongwon Kang
f1f59ce91a TIF: specify the type for COLUMN_INTERACTION_COUNT
Test: documentation change.
Bug: 35217547
Change-Id: Ia693ebc1ad9029910cd91882a783edd15235073d
2017-02-17 10:44:39 -08:00
Conrad Chen
7a9e2fb857 Merge "TIF: Fix current position not reported issue" 2017-02-17 18:36:42 +00:00
Jean-Michel Trivi
dce82ab7bf Audio focus enforcement: use VolumeShaper for ducking
When ducking players, check whether their content type
  is speech, or the player is a SoundPool. If yes, do
  not enforce ducking and leave it to the app. Otherwise
  use a VolumeShaper to duck, and keep it in a list
  so it can be reused to unduck (by using the REVERSE
  operation).

Test: play a notification while an AudioTrack is playing
Bug 30258418

Change-Id: I7e0204ad38d4ef48e88ffc45533caccfc6e279b5
2017-02-17 10:08:53 -08:00
Conrad Chen
73d86e34bb TIF: Fix current position not reported issue
Fixes the issue that when current position or start position is 0,
TIF won't report TimeShiftCurrentPositionChanged() or
TimeShiftStartPositionChanged().

Test: bug fix
Bug: 32211561
Change-Id: I932d772850063f05fb8fc67a4b6bea7400b6443b
2017-02-16 17:01:18 -08:00
Dongwon Kang
4683b83c40 TIF: add PreviewPrograms
Currently, Programs class is being used for storing both linear
tv program and preview program. This change adds PreviewPrograms
class for clear separation.

Test: build and cts-tradefed run cts -m CtsTvTestCases
Bug: 34853064
Change-Id: I9789e0296941783c6096d1ff9a0d81e11370ab65
2017-02-16 23:23:04 +00:00
TreeHugger Robot
e6e61f2fd9 Merge "media: Update MediaMuxer Java doc to reflect new features." 2017-02-16 21:44:14 +00:00
TreeHugger Robot
f582d6c96e Merge "TIF: Add internal provider ID field to channels" 2017-02-16 21:03:26 +00:00
Hangyu Kuang
7e2f547da8 media: Update MediaMuxer Java doc to reflect new features.
Generated a table to summarizes the feature support in different API version
and containers. Features include: Muxing B-frame, 3GP container, multiple
video/audio tracks, metadata tracks.

Test: None as just documentation.
Bug: 28536560
Change-Id: I7ab883a46f4b3420542eae504a33d4ebe1176a65
2017-02-16 11:28:53 -08:00
Hassan Shojania
06b25fb236 Modular DRM for MediaPlayer
Bug:  34559906
Test: Manual through the test app
Change-Id: I1b1ca61e74f250d63ff5ff462905facb81fe44e0
2017-02-15 18:44:54 -08:00
Hassan Shojania
18d58d81b4 Merge "New setDataSource API for accepting cookies" 2017-02-15 23:03:02 +00:00
Conrad Chen
485c9f7ede TIF: Add internal provider ID field to channels
Test: build
Bug: 35101383
Change-Id: Ic725da964a287a2aa434998dd4e5879ea1f8e6bd
2017-02-15 13:23:18 -08:00
Conrad Chen
2e94d3e9fc Merge "TIF: Add browsable field to programs" 2017-02-15 19:15:22 +00:00
Hassan Shojania
a6c969c036 New setDataSource API for accepting cookies
Bug:    34736056
Test:   Manual through the test app
Change-Id: Ibd48d5e292dda490d9e4e4528589b2b7ba97a4b4
2017-02-15 10:02:01 -08:00
Eric Laurent
e0ac9dabc7 Merge "audio: deprecate AudioManager.isBluetoothA2dpOn()" 2017-02-15 02:13:22 +00:00
Andy Hung
27b35add5c Merge "VolumeShaper: Initial implementation" 2017-02-14 01:39:00 +00:00
Conrad Chen
e87a7d9e95 TIF: Add browsable field to programs
Test: build
Bug: 34720053
Change-Id: I8cf43bda833fdb93c898b07d9fdec9ebefa4227b
2017-02-13 11:42:38 -08:00
Ray Essick
b0bd62f96c Metrics for android.media.MediaRecorder
Implementation of getMetrics() API and underlying metrics gathering
for android.media.MediaRecorder.

Bug: 35150984
Test: hacked CTS, observing of 'dumpsys media.metrics'
2017-02-12 19:22:48 -08:00
Andy Hung
035d4ec772 VolumeShaper: Initial implementation
The VolumeShaper is used to apply a volume
envelope to an AudioTrack or a MediaPlayer.

Test: CTS
Bug: 30920125
Bug: 31015569
Change-Id: If8b4bed29760aa3bd15a4b54cae60e40b4f518ee
2017-02-10 18:08:12 -08:00
Mark Goldstein
8e24dbdc97 Update the exception description for start(). am: ac06177a13 am: 8b137cc06b am: fd88989486
am: 673a2df291

Change-Id: I297d9243273a178e31abad5bfedc50422a6a8610
2017-02-11 01:44:40 +00:00
Mark Goldstein
673a2df291 Update the exception description for start(). am: ac06177a13 am: 8b137cc06b
am: fd88989486

Change-Id: I9fef1f2ba9ca5db9b46ea67e2507a682b249c595
2017-02-11 01:38:34 +00:00
Mark Goldstein
8b137cc06b Update the exception description for start().
am: ac06177a13

Change-Id: I124d99971918daa7768d79daa01ecbbb86f60199
2017-02-11 01:29:27 +00:00
Mark Goldstein
ac06177a13 Update the exception description for start().
Bug: 31592353
Change-Id: Ic325a8004a87b71c0b43d02db58d4717b4b3831d
2017-02-10 13:22:24 -08:00
Ray Essick
242ca74094 Merge "API android.media.MediaExtractor.getMetrics()" 2017-02-08 18:58:23 +00:00
TreeHugger Robot
1dd026d981 Merge "TIF: add BaseProgramColumns in TvContract" 2017-02-08 09:51:52 +00:00
Ray Essick
ba5ce2c0f8 API android.media.MediaExtractor.getMetrics()
adds the API getMetrics() to android.media.MediaExtractor
includes plumbing through JNI to the underlying mediaextractor
code in frameworks/av.

Tested with some CTS modifications; a more formal set of CTS
updates will be along later.

Bug: 35094936
Test: modified CTS to invoke new API and output results
Change-Id: Id8d56c9c3273b86bbd11e248bdf5004be90b91ef
2017-02-07 15:35:39 -08:00
Jean-Michel Trivi
bdc2365489 Merge "Audio player delayed start: don't throw exception" 2017-02-07 20:03:56 +00:00
Eric Laurent
c117bea6dc audio: deprecate AudioManager.isBluetoothA2dpOn()
This method name is misleading and the functionality is now
replaced by the more generic AudioManager.getDevices() method.

Bug: 35076621
Test: make, make update-api
Change-Id: Idc2e55f85722d3197fc8fab115af33f5da889d57
2017-02-07 11:14:19 -08:00
Jean-Michel Trivi
10ffc78304 Audio player delayed start: don't throw exception
When the framework sets a delayed start on a PlayerBase instance
  (e.g. MediaPlayer or AudioTrack), catch the IllegalStateException
  that can be thrown if the player's state has changed by the time
  the actual start command gets executed.

Test: generate notifications played by NotificationPlayer
Bug 35019197

Change-Id: I51fd0305bc83b34e33fbcf9331f55627d32702f3
2017-02-07 10:47:31 -08:00