MediaPlayer2 will provide implementation of MediaPlayerInterface
Test: Run all MediaComponents test once
Change-Id: Iecdbbcd0cbbdb191cdb228cf09d828565e13fc3d
Certain APIs require that a device have a specific feature to operate
correctly, so start annotating them.
Test: builds, boots
Bug: 72284763
Change-Id: Ie2f30284bdfdb6acc4067f434eba3b5433837606
Exempt-From-Owner-Approval: simple annotations
Annotate permissions for REMOTE_SUBMIX and HOTWORD.
Note that REMOTE_SUBMIX was defined before the notion
of @SystemApi, hence its presence in SDK despite the
need for system permission.
Bug: 72176464
Test: make online-system-api-sdk-docs
Change-Id: I315d584f06870b1e778d73a9f9415d201fe87af7
Support library uses reflection to the variable, mCallback, of
MediaSession. In order not to break the existing support lib
behavior on P devices, we need to keep the name.
Bug: 72979099
Test: version-compat-tests on P device
Change-Id: I5fd6c786d6a988777b94a3eb4f23d885202daa2a
Add system APIs for components (e.g rild) to monitor native audioserver
state and be able to reaply states after a native audioserver
crash and restart.
Bug: 67317552
Test: manual test.
Change-Id: I2afba9da5fc32b3768ca5ca0d5f97cc68707c408
During development of the vendor/widevine HAL module, the newly added
MediaDrm.setSecurityLevel method was found to be difficult to
implement efficiently since the security level is needed at the time
a session is opened. This CL moves the security level parameter to
openSession to resolve this problem.
bug:72831697
bug:64001680
test: GTS media tests
Change-Id: I74b3d1013405805c18b9794bbf7c46348e0ccda9
Move all the methods called from native to the beginning,
so adding new Java-only methods does not affect transaction IDs
of methods called from native.
Also, remove unused imports from IAudioService.aidl
Bug: 72256604
Test: Loopback test in Java, OpenSL ES, and AAudio modes
Change-Id: Icc89e3ed7a052c26eb0e72ba31e3a4a973bcfd35
This CL also adds setAudioOutputDeviceById() in the same class,
in order to support JAudioTrack::setOutputDevice().
Bug: 70363744
Test: Builds successfully
Change-Id: I1466670e74cff73d6cd32c4f439eac476c53ea2a
Add @GuardedBy for simple functions that require a single lock
and are named XYZLocked.
Derived by errorprone.
Bug: 73000847
Test: m
Test: m javac-check-framework RUN_ERROR_PRONE=true
Change-Id: I17e265a771604a06792566c2dd1842f9fe6439e7
It should be inner interface of MediaController2Provider because
PlaybackInfo is inner class of MediaController2
Test: Build
Change-Id: I575fe7e214256229bb27ce21038970fd552c8b97
This patch preserves the synchronous nature of audio focus requests,
even when an external focus policy is installed.
When focus is requested, the request is blocked on
the client-side, while AudioService informs the external
policy of the request, and until the ext policy responds
with the focus request result for this client, or
it times out.
The new AudioPolicy API is the call for the external policy
to send the focus request result.
Bug: 63906162
Test: gts-tradefed run gts -m GtsGmscoreHostTestCases -t 'com.google.android.gts.audio.AudioHostTest#testFocusPolicy'
Change-Id: I4671517f7f00eaaed8748bd4013b7d20be3085fb
MediaControlView2's setTimeout API is removed and MCV2's visibility
handling logic is moved into VideoView2.
Test: build
Change-Id: I149119148f159c78e86c5061d247f0a434310719