The buffers queued in Puller need to be flushed when resuming
recording, or these buffers' timestamps would be modified by
the InputBufferTimeOffset incorrectly.
Bug: 143046077
Test: atest android.media.cts.MediaRecorderTest
Change-Id: Ia904c8cdd3e2ba59a05df5702d8682b02b3fa30c
* changes:
MPEG4Extractor: check the default sample info before checking the validity of sample size.
Add size checking for 'saiz' box
Add more size checking for 'stts' box
Add more size checking for 'stss' box
Add size checking for 'saio' box
Stream for which no attributes is associated (aka no strategy supports it)
will use default attributes hence it will change the default strategy
volume (aka Music).
It leads to eroneous volume changes.
This bug does not happen on phone / tablets targets as all streams are
linked to a strategy with specifc attributes.
In case of OEM configuration, some stream types may not be supported
and associated to any strategy.
Bug: 136121584
Test: dumpsys audio & dumpsus media.audio_policy.
Ensure volumes of stream types and their aliases match.
Signed-off-by: Francois Gaffie <francois.gaffie@renault.com>
Change-Id: I5e12b2c7248074d10affb6c28d1866d4589cb9e8
Merged-In: I5e12b2c7248074d10affb6c28d1866d4589cb9e8
If a strategy matches a attributes, whatever a stream type has
been provided, the MUSIC stream type shall be returned as a fallback
to ensure AudioFlinger will apply the right gain to the right stream
(which always fallback as music if none is provided)
Bug: 136121584
Test: build & run cts-dev -m CtsMediaTestCase --test android.media.cts.AudioProductStrategyTest
run cts-dev -m CtsMediaTestCase --test android.media.cts.AudioVolumeGroupTest
run cts-dev -m CtsMediaTestCase --test android.media.cts.AudioVolumeGroupChangeHandlerTest
run cts-dev -m CtsMediaTestCase --test android.media.cts.AudioManagerTest#testPermissionsForVolumePerAttributes
run cts-dev -m CtsMediaTestCase --test android.media.cts.AudioManagerTest#testGetAndValidateProductStrategies
run cts-dev -m CtsMediaTestCase --test android.media.cts.AudioManagerTest#testGetAndValidateVolumeGroups
run cts-dev -m CtsMediaTestCase --test android.media.cts.AudioManagerTest#testSetGetVolumePerAttributesWithInvalidAttributes
run cts-dev -m CtsMediaTestCase --test android.media.cts.AudioManagerTest#testSetGetVolumePerAttributes
run cts-dev -m CtsMediaTestCase --test android.media.cts.AudioManagerTest#testVolumeGroupCallback
Signed-off-by: François Gaffie <francois.gaffie@renault.com>
Change-Id: Ic79effb1341b788d90f5d73d23ae92b983f17225
Merged-In: Ic79effb1341b788d90f5d73d23ae92b983f17225
am skip reason: Change-Id I9246382b657c2a1213d27c66fc006578553f7b1e with SHA-1 25532c7698 is in history
Change-Id: Icddbc17a6dd791abff3a355e08c003aea9e403f3
When start/resume activity, WindowManagerService start/resume the
activity, then post a runnable to DiaplayThread and
ActivityManagerService to update UidRecord's
proc state, because the thread switch, the latency before proc
state update is undetermined.
When CameraService calls ActivityManagerService.isUidActive(), the proc
state may not have been updated and camera access is denied.
isUidActiveOrForeground() will check isUidActive() first, if false,
check isUidForeground() which is actually to check with WindowManagerService if
the uid is foreground, which is equivalent to ActivityManagerService's uid
active, just updated earlier.
Bug: 151185692, 151777097, 109950150
Test: manual test.
Change-Id: I3685e0c8d2e69ca7ff3c4de4bef4ec754c400015
Ignore releaseBuffer() if it is for a different IAudioTrack than was
used for obtainBuffer().
Bug: 136268149
Test: at bug comments #32 and #45
Change-Id: I2e1955c60479edcba6e7d66c98b9faef088b65d9
Ignore releaseBuffer() if it is for a different IAudioRecord than was
used for obtainBuffer().
Bug: 136268149
Test: at bug comments #26 and #27
Change-Id: I2a08c30bf9187b35535318761eaac7856da68c11
Without trunksize as restriction, function parseClearEncryptedSized()
can read the rest of file. If the file has a large number of saiz trunk,
large number of bytes will be copied, which can lead to high cost of
CPU time.
Bug: 124777526
Test: please see #3 and #8 in bug report:
push senc.mp4 to devices's sdcard
open photo app
manuly print log
Change-Id: I854765c82d02d541b92f2658673aa4ce61fb5412
(cherry picked from commit aa15fefa185278a549fd72dd1b79ae73ca5e4436)
Among the many changes that went in as part of CL ag/9501009, reading empty edit list entry was
also added in MPEG4Extractor. Code modifications for seek functionality with the same is done
now.
Bug: 150956121
Test: atest android.media.cts.MediaMetadataRetrieverTest
atest android.media.cts.MediaMuxerTest
atest android.media.cts.MediaExtractorTest
atest android.media.cts.MediaRecorderTest
Change-Id: I3ec065f56259eaf1d923c6701713c6a445e4e2f4
Bug: 135515629
Test: set forceGoogleEncoder to true in VideoCodecTestBase.java
Test: atest android.media.cts.VideoCodecTes.testSyncFrameHEVCCBR
Change-Id: I869506d13d695b90a280d9bcd42c307043269b74
CHECK() for color format has been replaced with appropriate error
handling.
Bug: 117625412
Bug: 152070124
Test: stagefright -s -S /sdcard/cformat.webm
Test: stagefright -s -S /sdcard/crowd_640x360p50f32_frmPar_1x1.webm
Change-Id: I1fe0be54f9910fd98ff4db9240b4dcfd09888ffb
Merged-In: I1fe0be54f9910fd98ff4db9240b4dcfd09888ffb
To better document how android.control.zoomRatio works, add examples to
illustrate its relationship with scalerCropRegion.
Test: Build and read docs
Bug: 144780745
Change-Id: Iab0e849b4d045fc1648fcf2ddc51d84c66249273
am skip reason: Change-Id I467e1e6a76d09951050f7f45e5a63419e540c572 with SHA-1 e783e4b24b is in history
Change-Id: I18b20b435f91c04209cfdb5d7661615a483b4362
Use media utility function limitProcessMemory().
Test: restrict mediametrics memory by property, ensure restart
Bug: 152084875
Change-Id: I20b51cecd67e9ac5e03ab34c1c68b1cfd0b8a964
Migrate BOKEH_MODE_STILL_CAPTURE and BOKEH_MODE_CONTINUOUS to be 2 enums
of CONTROL_EXTENDED_SCENE_MODE.
Test: Camera CTS, VTS
Bug: 151759402
Change-Id: Ie56c6403cd7b530356d3a007088e30730906ec65
am skip reason: Change-Id Iff742d2fdf4139bab7b5f378c1742ef52c0bbc78 with SHA-1 3473d55878 is in history
Change-Id: I546c0daa74ce32cd3b324463c1eab97a29300ec5
Implement a MMAP stream invalidation logic consistent with AAudio
disconnect callback policy.
- When a MMAP stream is opened with a preferred device selection:
Invalidate the stream only when the preferred device becomes unavailable,
either because disconnected or not selectable by highest priority use case.
- When a MMAP stream is opened without explicit device selection:
Invalidate the stream when current device selection changes due to the
routing rules applicable to the stream's audio attributes (attributes
of first client on that stream).
Bug: 144020984
Test: OboeTester > TEST DISCONNECT
Change-Id: I70fde0bc8ab9d544b8d3badb713e6239d792cbdb