diff options
| author | Eric Laurent <elaurent@google.com> | 2010-02-26 02:47:27 -0800 |
|---|---|---|
| committer | Eric Laurent <elaurent@google.com> | 2010-03-02 08:20:13 -0800 |
| commit | 47d0a9264fa5297db6333697ad750e6bc06822aa (patch) | |
| tree | 2b688202179ab906b44a413b8b27fd1a0ae9f75a /libs/audioflinger/AudioFlinger.cpp | |
| parent | 04218254ec1129e329cac71479b309cfb8a28d88 (diff) | |
| download | frameworks_base-47d0a9264fa5297db6333697ad750e6bc06822aa.zip frameworks_base-47d0a9264fa5297db6333697ad750e6bc06822aa.tar.gz frameworks_base-47d0a9264fa5297db6333697ad750e6bc06822aa.tar.bz2 | |
Issue 2071329: audio track is shorter than video track for video capture on sholes
Add API to retrieve number of frames dropped by audio input kernel driver.
Submitted on behalf of Masaki Sato <masaki.sato@motorola.com>
Diffstat (limited to 'libs/audioflinger/AudioFlinger.cpp')
| -rw-r--r-- | libs/audioflinger/AudioFlinger.cpp | 20 |
1 files changed, 20 insertions, 0 deletions
diff --git a/libs/audioflinger/AudioFlinger.cpp b/libs/audioflinger/AudioFlinger.cpp index 9d52882..2269352 100644 --- a/libs/audioflinger/AudioFlinger.cpp +++ b/libs/audioflinger/AudioFlinger.cpp @@ -618,6 +618,21 @@ size_t AudioFlinger::getInputBufferSize(uint32_t sampleRate, int format, int cha return mAudioHardware->getInputBufferSize(sampleRate, format, channelCount); } +unsigned int AudioFlinger::getInputFramesLost(int ioHandle) +{ + if (ioHandle == 0) { + return 0; + } + + Mutex::Autolock _l(mLock); + + RecordThread *recordThread = checkRecordThread_l(ioHandle); + if (recordThread != NULL) { + return recordThread->getInputFramesLost(); + } + return 0; +} + status_t AudioFlinger::setVoiceVolume(float value) { // check calling permissions @@ -3575,6 +3590,11 @@ void AudioFlinger::RecordThread::readInputParameters() mRsmpInIndex = mFrameCount; } +unsigned int AudioFlinger::RecordThread::getInputFramesLost() +{ + return mInput->getInputFramesLost(); +} + // ---------------------------------------------------------------------------- int AudioFlinger::openOutput(uint32_t *pDevices, |
