Make sure getActiveRecordingConfiguration() doesn't throw an
exception when queried after the recorder is released as this
isn't part of the API contract
Bug: 170608713
Test: atest android.media.cts.AudioRecordTest#testGetActiveRecordingConfiguration
Change-Id: I8003056e65ab0e125b5478d6c765878b2840d4b9
When creating a Rating instance, invalid values shouldn't be allowed.
However, Float.NaN passes the checks, which leads to creating invalid
ones. This CL fixes the code.
Bug: 173680971
Test: Passed CTS
Change-Id: I629f1568a2efb0c324cc11e94969356c59298db8
Merge the configuration of scrambling status change and ip cid change
into one API - configureMonitorEvent
Previously we only report scrambling status change on configured status,
now we change it to report any status change along with the initial
status
Test: atest TunerTets
Bug: 153595125
Change-Id: Ie6e26774dd3f3ab5753746795188a258e1a55393
After the user renames/moves a file/directory, the database of
MediaProvider is not updated. It causes that the file can't be
opened via MediaProvider. Use scanFile to instead of MP.update
for the file/directory.
Handle the .nomedia case for create/copy/move/delete/rename.
Scan the parent directory to update the database.
Test: atest MtpTests
Test: atest --test-mapping packages/providers/MediaProvider
Test: manual. 1. Move/rename the file/directory.
2. Open the file in DocumentsUI
3. create/copy/move/delete/rename for .nomedia case
Bug: 169300366
Bug: 171538933
Bug: 172029805
Bug: 170798581
Change-Id: Ia37be7a027bfe502e3f7c96babe5a5bbed5f942c
audio_policy_configuration.xsd defines strings used by HAL
to represent audio usages. This adds converters between
those strings and the AudioAttributes#attributeUsage values
Bug: 171572311
Test: atest AudioAttributesTest
Change-Id: I5301276ebd6ea1539182e9925a1e19f515e80597
And use the new ApplicationMediaCapabilities class.
CTS-Coverage-Bug:168990206
Bug: 169849854
Test:tracking in b/168990206
Change-Id: I0e0d801de019b453ad4171816e1d59d82a085a52
Allow scan again if callback and executor are same as before.
bug: 173239634
Test: atest -c TunerTest
Change-Id: Iec5ba453b3d3d40c0d96fda5c7288b79898d9aea
Restart event would be sent when a filter is reconfigured and
restarted.
After stopping to reconfigure the filter, all the filter events
should be discarded until restart and receive the start event
from the newly configured filter.
Test: atest android.media.tv.tuner.cts
Bug: 172593389
Change-Id: I1c7c4391d8477ae191e318b1830dd8afed86ed87
@SuppressLint("Doclava125") is a legacy way of suppressing
RequiresPermission check. Updating to the new style of suppression
so metalava no longer has to support the legacy mode.
sed -i "s/@SuppressLint(\"Doclava125/@SuppressLint(\"RequiresPermission/" \
core/java/android/app/admin/DevicePolicyManager.java \
core/java/android/hardware/hdmi/HdmiControlManager.java \
core/java/android/hardware/location/ContextHubManager.java \
core/java/android/hardware/usb/UsbDeviceConnection.java \
core/java/android/net/TrafficStats.java \
core/java/android/os/RecoverySystem.java \
core/java/android/os/storage/StorageManager.java \
core/java/android/service/persistentdata/PersistentDataBlockManager.java \
location/java/android/location/LocationManager.java \
media/java/android/media/AudioManager.java \
telecomm/java/android/telecom/TelecomManager.java \
telephony/java/android/telephony/CarrierConfigManager.java \
telephony/java/android/telephony/TelephonyManager.java \
wifi/java/android/net/wifi/RttManager.java \
wifi/java/android/net/wifi/WifiScanner.java
Test: make
Exempt-From-Owner-Approval: No-op change
Change-Id: I6d5df95cfca2950ea86872d2f0afc1ba828841dc
These flags determine if we bypass transcoding in several platform
media classes.
We previously, had non-perssitent, default-false flags for each
framework class.
Now, we have one persistent default-true 'optimize' flag:
persist.sys.fuse.transcode_optimize.
Of course, if the global transcode flag, persist.sys.fuse.transcode is
off, the code is a no-op.
Bug: 158465539
Test: Manual
Change-Id: Ie1442213d0744888bac45b43ad8a07f0ebf55066
Having a hidden abstract method for a class that can be extended
means that public implementors cannot implement these hidden methods
posing a risk that custom implementations will not have required
abstract methods resulting in an exception.
Bug: 151134792
Test: make update-api
Change-Id: I758d12465fabc671be19bedeeceb16885de23c87
Exempt-From-Owner-Approval: large scale suppression of existing issues,
no-op in terms of behavior
Add extended high definition integer formats to support direct
audio data delivery to the HAL.
Test: atest AudioRecordTest
Test: atest AudioTrackTest
Test: Clarity AudioManager
Bug: 152481314
Bug: 157671580
Change-Id: I92a099e98dd20ef900765928cbacea5e8a940c3c
This change adds tracking of SoundTriggerService client death
and frees up resources whenever that happens.
Test: Kill Now Playing process and observer recovery.
Bug: 171026874
Change-Id: Ie31d0a3ed392b1513b4e81ec3c344f4e79adcf52
The exif metadata extraction process for AVIF is similar to HEIC.
Adding AVIF sniffing so that avif files can be used wit
ExifInterface.
CTS tests for this feature will come in a separate CL as there are
still some CLs in flight to finish AVIF support.
Test: ExifInterfaceTest still passes.
Bug: 141654151
Change-Id: I5546a4f81e928a29d46f6c4b9db77032a09a8350
Similar to HEIC, AVIF files can also have smaller thumbnail images
along with the main image in the container. So try to fetch that
first instead of decoding the main image when creating a thumbnail.
Test: ThumbnailUtils test still pass (with the new AVIF test).
Bug: 141654151
Change-Id: I74afffe0e180edd425154daad30e07fcb0781ee6