Add new audio mode MODE_CALL_SCREENING allowing call screening
to take place while other audio use cases are still active.
Also add API to indicate if the platform supports this audio mode.
Bug: 140384450
Test: make
Change-Id: I056f79580d9c7b4de5eabb6d8d8c917f39162bcd
This CL updates callbacks for MediaRouter2Manager such that
onRoutesAdded, onRoutesRemoved are added and onRoutesChanged is changed.
onControlCategories also is added to know when getAvailableRoutes() can
be called.
It also updated tests for that and add some helper methods to test
easily.
Test: atest mediaroutertest
Change-Id: I122ce8f8472e01284f13b8aec79e3b8e97fc712b
AudioAttributes.Builder.setFlags() is a public method and should only
allow to set public flags
Test: CTS AudioAttributesTest
Change-Id: Ib75e3487f5297f6a200ffe326c53a0f58458b51f
Retrieve audio HAL processes pids from service manager and send them
to AudioFlinger native service. This is needed to dump audio HAL process tombstones
and because audioserver process does not have the SELinux permission to
list services.
Bug: 141528385
Test: Force watchdog and verify tombstone creation
Change-Id: I3e35b8040779e041b8d8c2e72d1e650d6f8fe818
This CL revised callbacks for MediaRouter2 so that it gives
a list instead of a single route.
This will effectively reduce the number of invokings.
This CL also fixes binder call between media router service and media
router such that media router service notifies only changes of routes
instead of all provider information.
Following CLs will update manager callbacks as well.
Test: atest mediaroutertest
Change-Id: Ibbc23aa5f12f5450d44c81756e3fcefe3e0d7f4b
Currently when application calls ImageWriter.newInstance(Surface, int,
int), the default format of UNKNOWN is overridden to surface format in
Java side before being overridden again to user specified format (from
RGBA to IMPLEMENTATION_DEFINED). This breaks backward compatibility with
certain gralloc implementations.
Do not override UNKNOWN format in Java side.
Test: testWriterFormatOverride
Bug: 143637345
Change-Id: Ie61157bca11f623eff2b8c0ed2a988c86da07cb2
These allowed null parameters handling them with a try/catch block.
Avoid the exception overhead for this frequent case by comparing for null
before the try{} block.
Bug: 143173083
Test: boot, simple playback
Change-Id: I761a8f35839054d61bba5aa1c80eb45058b9db22
Added tests for both PNG files that do not have EXIF data and that
do have EXIF data.
Bug: 138376314
Test: Run atest ExifInterfaceTest
Change-Id: I3394940aa4466fac259117a4a0d226899068fd7d
MediaRecorder.AudioSource.RADIO_TUNER is @SystemApi and as such
must be guarded by a privileged permission.
Use android.permission.CAPTURE_AUDIO_OUTPUT as it matches the
use case of capturing what is played by the device and not
capturing from a microphone.
Bug: 135717621
Test: CTS tests for AudioRecord
Change-Id: Ic5dc191cb2340d7614f51c5acb0bac6156d214ab