Instead of allocating a fixed size output buffer, allocate it as per
width and height of the input being encoded. To ensure for very low
resolutions, this size doesn't become too small, use a minimum size of
512K Bytes.
Bug: 144928581
Test: h264 related tests in android.media.cts.VideoEncoderTest
Change-Id: I01c1aa03456043824354005f1708f07b3268d97e
Call IDevice.close when the client doesn't need the device.
Bug: 114451103
Test: adb shell stop
Change-Id: I486db716be59cd4ea0f6d75d0e366f802ee9b06d
Merged-In: I486db716be59cd4ea0f6d75d0e366f802ee9b06d
Sometimes after switching songs in Files, audio driver
enters "PAUSED" state, and no sound anymore.
In normal case, "paused" track will be removed from active tracks,
then audio hal will make this stream enter standby mode.
Actually there are two paths to move paused tracks into standby mode:
1> track underruns twice:
if (--(track->mRetryCount) <= 0) { // mRetryCount is 2
tracksToRemove->add(track);
} else {
doHwPause = true; // pause
}
Unfortunately, this issue happened exactly in the middle state:
track underrun for the first time, it enters to paused state;
then before it underrun for second time, it is stopped due to MediaPlayer.
2> track is paused and code goes here:
if (mStandby || !last ||
track->presentationComplete(framesWritten, audioHALFrames) ||
track->isPaused() ||
+ track->isStopped()) {
tracksToRemove->add(track);
}
But when the issue happens, track is in stopped state,
there is no logic to standby it anymore, so add one.
Change-Id: I70cac1f3d6b065690400f6a2363712d4642a9763
Till now, file_contexts has been treated differently that other input
src files. Now it is tagged as `android:"path"` because it is.
Bug: 144732805
Test: m
Change-Id: I9d842958da500900e83a95b7d194c9d8a46feee0
Remove copyControlVector, extendedData and decryptInfo from DecryptHandle,
since none of these were actually used.
Test: atest cts/tests/tests/drm/src/android/drm/cts/DRMTest.java
Change-Id: I499bf4884e467b53d05e1317e3dbe0bd85537577
DrmInitialization only needs to be called on PlayerServiceFileSource
and PlayerServiceMediaHTTP, so just have those initialize the forward
lock engine automatically, which removes the need to have this in the
IDataSource interface.
Test: atest cts/tests/tests/drm/src/android/drm/cts/DRMTest.java
Change-Id: I344f46b65b5c473930b16b9b4041e4897384dc18
Merged-In: I344f46b65b5c473930b16b9b4041e4897384dc18
Because of 0-based indexing, we need to make sure the index is
not equal to the number of elements in the array.
Test: TreeHugger
Change-Id: I9662d4a67cdfebb0c890c65a35a2456cd3af001b
media/swcodec apexes should support Android 10.
With this flag, apex packages will include older APEX manifest format
(JSON) as well as new format (Protobuf) so that they will work with
Android 10.
Bug: 143951586
Test: m com.android.media com.android.media.swcodec
and install these to Android Q device
Change-Id: I927a464a8c7b88060126db398f568720396847f0
The APIs that are tagged with # vndk are actually for LLNDK libraries.
Although LLNDK is part of VNDK, calling those APIs 'vndk' has given
users a wrong perception that the APIs don't need to be kept stable
because that's the norm for most of the VNDK libraries that are not
LLNDK.
In order to eliminate the misunderstanding, rename the tag to 'llndk' so
that people introducing new such API will realize what they are signing
themselves up for.
Exempt-From-Owner-Approval: cherry-pick from internal gerrit
Bug: 143765505
Test: m
Merged-In: I6b48cf2091def384780ca91c32a0ddb738e70455
(cherry picked from commit 2299310926)
Change-Id: I6b48cf2091def384780ca91c32a0ddb738e70455
Nothing was using these, so remove them.
Test: build, atest cts/tests/tests/drm/src/android/drm/cts/DRMTest.java
Change-Id: I4545951f6d6faa21ef35732306302a52b7d941d8
CDD requires that the track is the same for compability track and the
actual Dolby Vision track, so we need to pass that back to the app.
Bug: 129367182
Test: CTS
Change-Id: Iab1ad3c4a593923ec6fc4231a4208806bf0159b7
Merged-In: Iab1ad3c4a593923ec6fc4231a4208806bf0159b7