summaryrefslogtreecommitdiffstats
path: root/media/libmedia/AudioRecord.cpp
diff options
context:
space:
mode:
authorEric Laurent <elaurent@google.com>2009-05-22 09:18:15 -0700
committerEric Laurent <elaurent@google.com>2009-05-26 07:44:28 -0700
commit4bc035a65cac177be9294e69f110497e3b6e34e6 (patch)
tree634b5bde8fc4cae5a7b77ee3cde01f04bc9ae7fc /media/libmedia/AudioRecord.cpp
parenta5f158bdde77f8d173d1f1c95d0f92405c519b0f (diff)
downloadframeworks_base-4bc035a65cac177be9294e69f110497e3b6e34e6.zip
frameworks_base-4bc035a65cac177be9294e69f110497e3b6e34e6.tar.gz
frameworks_base-4bc035a65cac177be9294e69f110497e3b6e34e6.tar.bz2
Fix issue 1846343 - part 1
This change is the first part of a fix for issue 1846343, : - Added new enum values for input sources in AudioRecord and MediaRecorder for voice uplink, downlink and uplink+downlink sources. - renamed streamType to inputSource in all native functions handling audio record. A second change is required in opencore author driver and android audio input to completely fix the issue.
Diffstat (limited to 'media/libmedia/AudioRecord.cpp')
-rw-r--r--media/libmedia/AudioRecord.cpp18
1 files changed, 12 insertions, 6 deletions
diff --git a/media/libmedia/AudioRecord.cpp b/media/libmedia/AudioRecord.cpp
index 1720af0..4c8b02a 100644
--- a/media/libmedia/AudioRecord.cpp
+++ b/media/libmedia/AudioRecord.cpp
@@ -50,7 +50,7 @@ AudioRecord::AudioRecord()
}
AudioRecord::AudioRecord(
- int streamType,
+ int inputSource,
uint32_t sampleRate,
int format,
int channelCount,
@@ -61,7 +61,7 @@ AudioRecord::AudioRecord(
int notificationFrames)
: mStatus(NO_INIT)
{
- mStatus = set(streamType, sampleRate, format, channelCount,
+ mStatus = set(inputSource, sampleRate, format, channelCount,
frameCount, flags, cbf, user, notificationFrames);
}
@@ -82,7 +82,7 @@ AudioRecord::~AudioRecord()
}
status_t AudioRecord::set(
- int streamType,
+ int inputSource,
uint32_t sampleRate,
int format,
int channelCount,
@@ -104,8 +104,8 @@ status_t AudioRecord::set(
return NO_INIT;
}
- if (streamType == DEFAULT_INPUT) {
- streamType = MIC_INPUT;
+ if (inputSource == DEFAULT_INPUT) {
+ inputSource = MIC_INPUT;
}
if (sampleRate == 0) {
@@ -157,7 +157,7 @@ status_t AudioRecord::set(
// open record channel
status_t status;
- sp<IAudioRecord> record = audioFlinger->openRecord(getpid(), streamType,
+ sp<IAudioRecord> record = audioFlinger->openRecord(getpid(), inputSource,
sampleRate, format,
channelCount,
frameCount,
@@ -201,6 +201,7 @@ status_t AudioRecord::set(
mMarkerReached = false;
mNewPosition = 0;
mUpdatePeriod = 0;
+ mInputSource = (uint8_t)inputSource;
return NO_ERROR;
}
@@ -242,6 +243,11 @@ int AudioRecord::frameSize() const
return channelCount()*((format() == AudioSystem::PCM_8_BIT) ? sizeof(uint8_t) : sizeof(int16_t));
}
+int AudioRecord::inputSource() const
+{
+ return (int)mInputSource;
+}
+
// -------------------------------------------------------------------------
status_t AudioRecord::start()