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
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
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
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
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
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>
- 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
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
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
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
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
Implementation of getMetrics() API and underlying metrics gathering
for android.media.MediaRecorder.
Bug: 35150984
Test: hacked CTS, observing of 'dumpsys media.metrics'
The VolumeShaper is used to apply a volume
envelope to an AudioTrack or a MediaPlayer.
Test: CTS
Bug: 30920125
Bug: 31015569
Change-Id: If8b4bed29760aa3bd15a4b54cae60e40b4f518ee
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
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
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