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
Programs and RecordedPrograms have a lot in common. This change
introduces BaseProgramColumns which removes the duplicates.
This will be also helpful for the further clean-up.
Test: build & passes CtsTvTestCases without modification
Bug: 34853064
Change-Id: I4ad352a9a904e7fef57c56acec5583df92b4226c
Stream types are deprecated to describe an audio playback use case.
But they are used for volume control. This API helps the developer
go from an AudioAttributes instance used for playback, to a
stream type used to describe which volume stream type should be
used when the user presses on the volume keys.
Test: see AudioAttributes cts test
Bug 21267880
Change-Id: I2b9da5b282e8ed2342c61c14a7f59b874d0ce979