84e84a5dd3b6d9ee4cf032e8d6206c70969b7107 |
|
04-May-2018 |
Ray Essick <essick@google.com> |
collect more media metrics around audio new fields in the media metrics 'audiorecord' record for more detail length of time recorded, error conditions add new media metrics type 'audiopolicy' that describes attempts to get microphone access -- success, failure on contention, what type of access was requested, and (important for the contention) which programs are doing the requesting and holding of the microphones. whitelist the 'audiopolicy' metrics type with the media.metrics service. Bug: 78595399 Test: concurrent/serial recordings, dumpsys media.metrics Change-Id: Ia17860940d4c329b0215b4cf97c6dacacb6a8e32
/frameworks/av/media/libaudioclient/AudioRecord.cpp
|
b8ca98e81617f33e1b15a210c673b8f4c5a6de28 |
|
16-Apr-2018 |
Paul McLean <pmclean@google.com> |
Add retry mechanism to AudioRecord::restoreRecord_l(). This is analogous to similar code in AudioTrack::restoreTrack_l(). Bug: 77682459 Test: Connect USB headset. Start Skype call. Note input audio on DUT is heard on remote phone. Manually kill audio server, verify that input from USB headset is restored on DUT and heard on remote phone. Change-Id: Icbf624aba8a3fe6917b132d8c38c2812f9519ec6 (cherry picked from commit 782049413376ee1833a08ba02cc5ba6b5905792f)
/frameworks/av/media/libaudioclient/AudioRecord.cpp
|
de15b8c160c720c48b93796016801e7ae0b6bd2d |
|
31-Jan-2018 |
Ray Essick <essick@google.com> |
link media.metrics native strings to api-controlled java strings add comments to native media.metrics code pointing to how they are (and aren't) to be kept in synch with their java counterparts that are part of the public API (and therefore pretty much fixed). Bug: 72492234 Test: compilation Change-Id: Ic096545a5cdfb2160c6b66438d345d8e625384b9
/frameworks/av/media/libaudioclient/AudioRecord.cpp
|
653cc0ab6d5b714d1f26adcd08f9bc3269b62fa0 |
|
18-Jan-2018 |
jiabin <jiabin@google.com> |
Support query active microphones information in AudioRecord. This is part of device enumeration. With the new add API, developer could get the active microphones information for each channel. Bug: 64038649 Test: Run cts and check the print log. Change-Id: Ic63d86e533a30e40697da7522a5a81f7cfcea988
/frameworks/av/media/libaudioclient/AudioRecord.cpp
|
8839430158e22382f0f6450c9274071eca945989 |
|
24-Jan-2018 |
Ray Essick <essick@google.com> |
add getMetrics() apis for AudioTrack and AudioRecord add getMetrics() method to access media.metrics for AudioTrack and AudioRecord. Bug: 72179020 Bug: 72178968 Test: tweaked CTS Change-Id: Id69862887b8b58655f59057e06f96b20a8e7d332
/frameworks/av/media/libaudioclient/AudioRecord.cpp
|
734d186db7ec3d1f877001d71c71de6562ead7f7 |
|
09-Jan-2018 |
Ray Essick <essick@google.com> |
Metrics for AudioRecord Collect media metrics for audiorecord. Basic framework and initial set of metrics. Bug: 70569777 Test: recordings, observe stats Change-Id: I66fce1eec46cc13a93b106c2be34d23c138920de
/frameworks/av/media/libaudioclient/AudioRecord.cpp
|
724a1816e7bd503d7a1f491a90f76c8cf3ca6a16 |
|
07-Dec-2017 |
Eric Laurent <elaurent@google.com> |
add dump() method to AudioRecord Add a dump() method to AudioRecord. Can be used by dumpsys or tests. Test: run test_create_audiorecord Change-Id: I4b3133601eeff4d5447ca2c5b13a01ff3451b6c7
/frameworks/av/media/libaudioclient/AudioRecord.cpp
|
f14db3c3ebc1ea29b3eb5b7e9b944cabcb5f83ff |
|
08-Dec-2017 |
Eric Laurent <elaurent@google.com> |
Revert "Revert "refactor AudioRecord and AudioFlinger openRecord()"" This reverts commit 0aa3c6eba07f987fe84b5fa450274a8e730971e3. Bug: 70388312 Test: AudioRecord CTS, Audio smoke tests Change-Id: I45394bccf82b922aa2b68fee3e02afc280f6729c
/frameworks/av/media/libaudioclient/AudioRecord.cpp
|
0aa3c6eba07f987fe84b5fa450274a8e730971e3 |
|
08-Dec-2017 |
Eric Laurent <elaurent@google.com> |
Revert "refactor AudioRecord and AudioFlinger openRecord()" This reverts commit 3e1acc0c58b337dec4054d78c28b48b2e77e0784. bug: 70388312 Change-Id: I6782d6eceeece1bad998b02af26c0119da70a13d
/frameworks/av/media/libaudioclient/AudioRecord.cpp
|
3e1acc0c58b337dec4054d78c28b48b2e77e0784 |
|
02-Dec-2017 |
Eric Laurent <elaurent@google.com> |
refactor AudioRecord and AudioFlinger openRecord() Refactor the mechanism used by audio record tracks to query and attach to an input mixer/stream in audio flinger. This will: - reduce the number of binder transactions needed to create a record track - move sample rate, framecount and flags validations to audio server side - move audio session allocation to audio server side - prepare restriction of certain binder transactions to audioserver only Also: - renamed openRecord() to createRecord() for consistency with AudioTrack - make AudioRecord mStatus update consistent when calling default contructor + set() or constructor with arguments - make AudioClient, CreateTrackXXX and CreateRecordXXX classes derive from Parcelable - restore audio session ID validity check in AudioFlinger::createTrack() Test: CTS tests: AudioRecordTest, AudioRecordingConfigurationTest, AudioPreProcessingTest Test: manual test for capture use cases: camcorder, OK Google, VoIP calls Change-Id: I72edaa7ddef1da11c77df21e88378e3aa9012d58
/frameworks/av/media/libaudioclient/AudioRecord.cpp
|
fec2f93fae282ad10bbb5e3fcce9f60eff2cfb48 |
|
24-Oct-2017 |
jiabin <jiabin@google.com> |
Add AudioRouting interface in AudioRecorder. Bug: 64038649 Test: Run cts in RoutingTest Switching input device when using MediaRecorder Change-Id: I53f22974f8c3dacaef6044ea742e62951961c1fd
/frameworks/av/media/libaudioclient/AudioRecord.cpp
|
92197f86b1184133107ee66314467f4676850ab8 |
|
19-Sep-2017 |
Eric Laurent <elaurent@google.com> |
Fix various AAudio device selection issues am: ad2e7b902c am: 282ca69583 Change-Id: I051d56560608444c47b5a827ef921b878e8f4a4e
|
ad2e7b902c0432a0db40906a4b1f5b693ce439dd |
|
15-Sep-2017 |
Eric Laurent <elaurent@google.com> |
Fix various AAudio device selection issues Bug: 65292224 - Audio policy manager should not use an unavailable device when an explicit route is requested. This causes a device selection made by a client to become sticky after device disconnection. Bug: 64945845 - Remove spurious device change callback occuring after registering a new client to audio server by creating a specific configuration event for client registration. - Do not keep strong references to device callback interfaces in AudioTrack, AudioRecord and AudioSystem. - Do not update selected device in AudioTrack and AudioRecord when not active as the new device selection on the stream is because of other clients activity which is not relevant to an inactive client. Bug: 65693340 - Fix missing increment of SessionRoute ref count in getInputForAttr() for MMAP inputs Test: AAudio CTS tests Change-Id: I2a01b02e8b064d352004f6065495fd99aee55745
/frameworks/av/media/libaudioclient/AudioRecord.cpp
|
f89090e284b8ef61eb8cae68c657c8a60877b9fb |
|
14-Sep-2017 |
Andy Hung <hunga@google.com> |
Merge "AudioTrack, AudioRecord: Fix latency computation" into oc-mr1-dev am: 5deda0e784 am: c0e75a7d57 Change-Id: I1f95a6372752e2e47e7f022db0333517c387eadf
|
13969262f704ca27c82d60e3c7cf4b271e3b5918 |
|
12-Sep-2017 |
Andy Hung <hunga@google.com> |
AudioTrack, AudioRecord: Fix latency computation Force 64 bit arithmetic to avoid integer overflow on 32 bit platforms. Test: CTS AudioTrackTest Bug: 65536481 Change-Id: I774a7811fce08c7cbe59f0a062fd2c2d72220203
/frameworks/av/media/libaudioclient/AudioRecord.cpp
|
ff6900d8f991aac0b67b625f8a1d4d0461b4c50e |
|
02-Aug-2017 |
Ivan Lozano <ivanlozano@google.com> |
Generate IAudioRecord with AIDL. Use AIDL to generate the IAudioRecord interface rather than using a manually implemented interface. Bug: 64223827 Test: Ran the AudioNativeTest and CtsMediaTestCases CTS tests. Change-Id: Iade23c73253a97c358050bbd697ebe592b89a4c0
/frameworks/av/media/libaudioclient/AudioRecord.cpp
|
325b2997d92c4ba2c116b47e6c3d0d0045c5386b |
|
26-Jun-2017 |
TreeHugger Robot <treehugger-gerrit@google.com> |
Merge "Set initial audio device for AudioTrack and AudioRecord"
|
9ae8c597d9a0c8cedc4047fc4716d7361453f6ab |
|
23-Jun-2017 |
Eric Laurent <elaurent@google.com> |
Set initial audio device for AudioTrack and AudioRecord Bug: 62090113 Test: run AAudio test and verify a valid device is reported just after opening playback or capture streams in legacy mode. Change-Id: Ic8be42e1735690eb00c811ef0cb8b5abb36172d6
/frameworks/av/media/libaudioclient/AudioRecord.cpp
|
adbb75af4d3224194b9b772855db93fae19cf4ce |
|
16-Jun-2017 |
Phil Burk <philburk@google.com> |
AudioTrack: explain why FAST mixer denied Also for AudioRecord Bug: 62692443 Test: write_sine.cpp Change-Id: I5b281476af4703798129df66584d813b9a8db8bb Signed-off-by: Phil Burk <philburk@google.com>
/frameworks/av/media/libaudioclient/AudioRecord.cpp
|
ef44fb4115270883da829fea91174c8cc003b777 |
|
30-May-2017 |
Eric Laurent <elaurent@google.com> |
aaudio: fix device switch detection in legacy path am: fb00fc77f5 am: 0bbea62ed4 Change-Id: I80dfc949c206c1572f867f3ffedb6ff556a7b8f2
|
fb00fc77f59ed5ebec4d38bac666e6521b6c1de0 |
|
26-May-2017 |
Eric Laurent <elaurent@google.com> |
aaudio: fix device switch detection in legacy path Implement device switch detection on legacy path (AudioTrack and AudioRecord) based on audio routing callbacks forcing the stream state to disconnected. Bug: 33355262 Bug: 62090113 Test: tested with write_sine and input_monitor command line tools. Change-Id: I9e0421fee233964b1bf318acb640569196a00f13
/frameworks/av/media/libaudioclient/AudioRecord.cpp
|
6eba55b9663eb0bf50991ca5264ee94588557201 |
|
25-May-2017 |
Phil Burk <philburk@google.com> |
Merge "aaudio: allow AudioRecord to use FAST mode for TRANSFER_SYNC" into oc-dev am: cf423d268a am: e209c532b3 Change-Id: Ia8c8877b69d9343f73abca99e795c3f488f6c515
|
382d11ac489a917d3d009c3d05bc960f4af58176 |
|
23-May-2017 |
Phil Burk <philburk@google.com> |
aaudio: allow AudioRecord to use FAST mode for TRANSFER_SYNC Bug: 34093052 Test: loopback.cpp Change-Id: I3bf4ee6f58fad017a038edfd50475d5dd5a4fca5 Signed-off-by: Phil Burk <philburk@google.com>
/frameworks/av/media/libaudioclient/AudioRecord.cpp
|
75f79038715b4b1cf28e0457abfa84ccd17bb57e |
|
23-May-2017 |
Glenn Kasten <gkasten@google.com> |
Add TODOs for checking return value of wait Test: builds OK Change-Id: I750b73de54deeccbae846189fdf385e636d9e4cd
/frameworks/av/media/libaudioclient/AudioRecord.cpp
|
6d8018f0b7be9deec6b0acab10a0dca6e91d0fb8 |
|
21-Feb-2017 |
Glenn Kasten <gkasten@google.com> |
Improve audio logs and dumpsys media.audio_flinger Include mFrameCount in shared memory corrupt error log. Fix typo in log for primary audio interface. Include the new server frame count in logs for fast tracks. Always log when fast is successful for output tracks, as it helpful (was already there for input). Cleanup dumpsys for threads. Bug: 37153050 Test: builds OK, and logs contain more information Change-Id: I2b5b4d700e8eb7c261a3125fb03ddc00bf08537e (cherry picked from commit 1bfe09a0b1755a79abd32b41c0dd433b88fc260c)
/frameworks/av/media/libaudioclient/AudioRecord.cpp
|
1bfe09a0b1755a79abd32b41c0dd433b88fc260c |
|
21-Feb-2017 |
Glenn Kasten <gkasten@google.com> |
Improve audio logs and dumpsys media.audio_flinger Include mFrameCount in shared memory corrupt error log. Fix typo in log for primary audio interface. Include the new server frame count in logs for fast tracks. Always log when fast is successful for output tracks, as it helpful (was already there for input). Cleanup dumpsys for threads. Test: builds OK, and logs contain more information Change-Id: I2b5b4d700e8eb7c261a3125fb03ddc00bf08537e
/frameworks/av/media/libaudioclient/AudioRecord.cpp
|
d3bb645f0b7f567b033b8664499d685f8ec10628 |
|
06-Dec-2016 |
Glenn Kasten <gkasten@google.com> |
Re-format to decrease the maximum line length of files to 100 characters Test: compiles OK Change-Id: Ibe663032cd390ed2bcca6dc921d47732e6e15e21
/frameworks/av/media/libaudioclient/AudioRecord.cpp
|
20b9ef0b55c9150ae11057ab997ae61be2d496ef |
|
05-Dec-2016 |
Eric Laurent <elaurent@google.com> |
Add unique audio port IDs to AudioTrack and AudioRecord This will allow to track activity at the track level instead of at audio session level as only possible with current implementation. AudioTracks and AudioRecords will receive a unique audio port ID the first time they register to audio policy with getOutputForAttr()/getInputForAttr() and keep this ID for their lifetime. This CL is the first partial change and just updates the audio policy and audio flinger APIs used at track creation time. Test: basic regression test of audio playback and capture use cases Change-Id: I8d612e67738e120494f61e3f7c60bfd0b2c6a329
/frameworks/av/media/libaudioclient/AudioRecord.cpp
|
41cbae72e4e223c15ba2d85b3c27ed31d1bf5f86 |
|
12-Nov-2016 |
Glenn Kasten <gkasten@google.com> |
Merge "AudioRecord: fix AudioRecordThread crash upon exit"
|
e813ef9388e9f0b821c0a434521f0e194288c8ad |
|
01-Nov-2016 |
Kiran Kumar Krishna <kiran@motorola.com> |
AudioRecord: fix AudioRecordThread crash upon exit In case of error during openRecord_l(), there is a possibility that a newly created AudioRecordThread is resumed by requestExit() just after entering the Thread class _threadLoop() but before entering the class threadLoop(). In this case, processAudioBuffer() is executed once with mCblk == 0 and we assert. Test: test case at bug Bug: 29993798 Change-Id: I15d4f138218f6f01a020c4fc568a5b4831cb92a7
/frameworks/av/media/libaudioclient/AudioRecord.cpp
|
1f12a8ad958344c50733b948628ffa06db9c5bc6 |
|
08-Nov-2016 |
Andy Hung <hunga@google.com> |
Audio: Use uid_t for uids Test: Power manager shows correct uids for audio Bug: 32713790 Change-Id: If5337e17283268f74dc0f00cc66ece9153d680ef
/frameworks/av/media/libaudioclient/AudioRecord.cpp
|
538ec5e04f389cba637b030757be317fcb8677a8 |
|
02-Nov-2016 |
Marco Nelissen <marcone@google.com> |
Split libmedia into libmedia and libaudioclient This makes it so audioserver doesn't need to link against the entire libmedia, which has dependencies on camera, ICU, OpenGL and other things that aren't needed for audio. Test: build/boot Change-Id: I99ba1a3dc3b33ca9b3abd98e7519dbf228ee62af
/frameworks/av/media/libaudioclient/AudioRecord.cpp
|