Adds a new broadcast intent for system APPs to send when some TV APP met
certain requirements is newly installed. The intent will wake up the APP
and notify it to initialize its channel and program list to the system
provider.
Test: build
Bug: 34739955
Change-Id: Ib172b40434db4a439ec0db7bf8b28037d0bfb8a8
Changes for the new HAL structure have brought about a build time
circular dependency between libmedia and libmediadrm. This set of
changes the media metrics code into its own library and arranges
for the relevant consumers of the media metrics code to link
to this new library (where they had previously picked it up by
including libmedia).
Bug: 36990807
Test: build, boot.
Vendor tag cache will be used alternatively to the regular
Vendor tag descriptor. The caches can support multiple vendor
tag providers at the same time. The native metadata along with
the requests/results/characteristics will store vendor specific
information that will be used to indentify the respective
descriptor.
Bug: 34275821
Test: Complete Camera/Camera2 CTS tests
Change-Id: I50b7cf9aa5575944fde7673a1728869690b2ce0d
MediaDrm getKeyRequest works fine even if init and mimeType
parameters are null when releasing or renewing a key.
bug: 33375079
Change-Id: I707874c8f4f26bf8b23b270331680f69833ae14f
The documentation for MediaDrm#getKeyResponse says null is returned from
provideKeyResponse for requests of type streaming or release. This corrects
the documentation to indicate that an empty byte array is returned.
bug: 36093612
Change-Id: I2e4fc658d68d827b8a42fb7fa3ef30e35ee51dcf
Note: BaseColumns(API 1) and BaseTvColumns(API 21) remains public due to
the backward compatability. Plus, inheritence between BaseProgramColumns
and BasePreviewColumns is also removed to follow patterns in other
Contracts.
Test: cts-tradefed run cts -m CtsTvTestCases -t android.media.tv.cts.TvContractTest
Bug: 36395855
Change-Id: Ie73a2e48217676be53f373f8524afd04f7d8fc37
System API for an external audio focus policy. Extends
the system focus listener with interception of
focus requests and abandons. Adds method for the focus
policy to dispatch focus grants and losses.
Test: gts-tradefed run gts -m GtsGmscoreHostTestCases -t 'com.google.android.gts.audio.AudioHostTest#testFocusPolicy'
Bug: 30258418
Change-Id: If408569a2dce07a774e0e2f1be9f1af8e426d2d3
CloseGuard instances are allocated in constructors and usually
assigned to final fields. This implies they're non-null in finalizers
except in the case where the constructor throws. We add a null check
to make sure we can continue cleaning up other state in the finalizer
(if applicable).
Also, this change decouples closeguard warnings in constructors
from other state based logic. This because the logic there is usually
duplicated with the call to close().
NOTE: This change is not a "complete" fix. Many of these finalizers
are broken in the case where <init> throws. The only objective of
this change is to make such errors more obvious.
Note that some of these classes don't have CTS tests.
Test: make, CtsMediaTestCases.
Bug: 35609098
Change-Id: I24d9e0215f80e44914dba8ab99b6312fd6ed1fc0
This is causing a large number of unnecessary small object allocations
during encrypted playbacks, which presumably all need to be GC'd.
I wasn't sure whether the zero pattern should be static; that might
be objectionable in the platform (unsure?), since it would live
forever from the point of the class being classloaded. It doesn't
make much/any difference in practice in any case.
Test: Safe refactoring CL.
Change-Id: I9ee5fe284b0f854d672d83b97fc51116b0416f91