Since the error callback ends up calling into Java,
there is a potential for a deadlock with Java code
that takes AudioSystem.class lock and calls into
native code that takes gLock in its own turn.
Bug: 152819012
Test: use audio on a phone, also
killing native audioserver while watching YT,
also while making cellular calls
Change-Id: Ib288ba96ae2f7b5ab36c1b0a1db4adde487d6a49
This is a client-side wrapper around the respective feature of APS.
Bug: 146157104
Test: Manual verification of proper behavior when starting/stopping
recording, killing of audio server, by examination of the logs.
Merged-In: I9b56c431f69e77683151de19830ec6f45741dd6f
Change-Id: I1f5279c4a4b18e0a7862d3b103d383ac3de4c9a0
Previously, audio policy client would call an method on the sound
trigger middleware service. This has been replaced by the sound
trigger service registering a callback, in order to avoid a cyclic
dependency between the services.
Bug: 146157104
Merged-In: I876461a7650d337d6dd05fbe80efaf08f8ef20dd
Change-Id: Ia8f674d7dd50f6dcdd6595bcbadec2f25fdb3561
This is a helper class for notifying a client of capture
state changes.
Bug: 146157104
Test: Compiles (further testing as part of the topic).
Merged-In: Ie27bc404805d319a6969290a6369d59fb68c1f38
Change-Id: I2902468c4692ba68e4bc9be0e5038d5505da7154
The UID of the current InputMethodService (DEFAULT_INPUT_METHOD) is
pushed from AudioService to AudioPolicyService via AudioSystem.
Allow capture audio if:
- the UID is the current InputMethodService's UID,
- AND a RTT call is active,
- AND the source is AUDIO_SOURCE_VOICE_RECOGNITION.
Bug: 147037345
Test: use voice input with Gboard 9.1.4 during a simulated RTT call.
Change-Id: Ib32ec25e962833eddd0320742e177e3c1e0e5c05
Bug: 152541934
Bug: 152531488
This reverts commit bce9a57e0f.
Reason for revert:
This change aims at fixing b/124777526, but it has led to two new bugs: b/152531488 and b/152541934.
Change-Id: I812c64a68c15542dec2521b985e987f5329a1320
In aaudio, when adding tracks to mixed stream, it is needed to update
audio attributes to HAL whenever the tracks are added or removed.
Currently, only the audio attributes used to open the stream will be
sent to the HAL. In that case, adding audio attributes of the clients
when starting the stream can help solve the problem. In audio flinger,
the client's audio attributes will be used to create MmapTrack.
Test: play multiple aaudio tracks, add log
Bug: 77279923
Change-Id: Ic1c536049e194a2bb7513425ee4828d52769d27f
media time and segment duration entries from 1st edit list entry only is
used for gapless playback, hence don't process the same from second edit
list entry.
Bug: 152372048
Test: atest android.media.cts.MediaMetadataRetrieverTest
atest android.media.cts.MediaMuxerTest
atest android.media.cts.MediaExtractorTest
Gapless playback files played as expected.
Change-Id: I79ce7c69c65f71440e0ba6552e150586fab64aac
Variable 'tag' in TimeCheck::TimeCheckThread::threadLoop
may end up being used w/o prior initialization.
Found by clang-tidy.
Bug: 152526318
Test: m
Change-Id: Ifc1efbee39007ea9cfba8083edbfdb763eafb8dc
Sample rate and channel counts should be the only settings that
triggers skip-cut-buffer update.
Bug: 150270199
Test: atest CtsMediaTestCases:DecoderTestAacDrc
Change-Id: Iecf54833d6b484374e6336fd31d8038a441e1c30
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
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