summaryrefslogtreecommitdiffstats
path: root/media/libmedia/AudioTrack.cpp
diff options
context:
space:
mode:
authorGlenn Kasten <gkasten@google.com>2012-01-03 14:22:33 -0800
committerGlenn Kasten <gkasten@google.com>2012-01-13 15:25:14 -0800
commit4790bd8be850235e9c6f1acf1e1e6146ef2996b3 (patch)
tree1820560bc322ca1e67abee5d2a65c0539b72dbf5 /media/libmedia/AudioTrack.cpp
parent6a78cd85867c5f22e4e82259b81fab46088331ad (diff)
downloadframeworks_base-4790bd8be850235e9c6f1acf1e1e6146ef2996b3.zip
frameworks_base-4790bd8be850235e9c6f1acf1e1e6146ef2996b3.tar.gz
frameworks_base-4790bd8be850235e9c6f1acf1e1e6146ef2996b3.tar.bz2
AudioTrack and AudioFlinger send level cleanup
Add an API to control block for getting/setting send level. This allow us to make the mSendLevel field private. Document the lack of barriers. Use 0.0f to initialize floating-point values (for doc only). Change-Id: I59f83b00adeb89eeee227e7648625d9a835be7a4
Diffstat (limited to 'media/libmedia/AudioTrack.cpp')
-rw-r--r--media/libmedia/AudioTrack.cpp10
1 files changed, 5 insertions, 5 deletions
diff --git a/media/libmedia/AudioTrack.cpp b/media/libmedia/AudioTrack.cpp
index 9c650ad..3a938dd 100644
--- a/media/libmedia/AudioTrack.cpp
+++ b/media/libmedia/AudioTrack.cpp
@@ -215,7 +215,7 @@ status_t AudioTrack::set(
mVolume[LEFT] = 1.0f;
mVolume[RIGHT] = 1.0f;
- mSendLevel = 0;
+ mSendLevel = 0.0f;
mFrameCount = frameCount;
mNotificationFramesReq = notificationFrames;
mSessionId = sessionId;
@@ -499,14 +499,14 @@ void AudioTrack::getVolume(float* left, float* right)
status_t AudioTrack::setAuxEffectSendLevel(float level)
{
ALOGV("setAuxEffectSendLevel(%f)", level);
- if (level > 1.0f) {
+ if (level < 0.0f || level > 1.0f) {
return BAD_VALUE;
}
AutoMutex lock(mLock);
mSendLevel = level;
- mCblk->sendLevel = uint16_t(level * 0x1000);
+ mCblk->setSendLevel(level);
return NO_ERROR;
}
@@ -818,7 +818,7 @@ status_t AudioTrack::createTrack_l(
}
mCblk->volumeLR = (uint32_t(uint16_t(mVolume[RIGHT] * 0x1000)) << 16) | uint16_t(mVolume[LEFT] * 0x1000);
- mCblk->sendLevel = uint16_t(mSendLevel * 0x1000);
+ mCblk->setSendLevel(mSendLevel);
mAudioTrack->attachAuxEffect(mAuxEffectId);
mCblk->bufferTimeoutMs = MAX_STARTUP_TIMEOUT_MS;
mCblk->waitTimeMs = 0;
@@ -1311,7 +1311,7 @@ audio_track_cblk_t::audio_track_cblk_t()
: lock(Mutex::SHARED), cv(Condition::SHARED), user(0), server(0),
userBase(0), serverBase(0), buffers(0), frameCount(0),
loopStart(UINT_MAX), loopEnd(UINT_MAX), loopCount(0), volumeLR(0),
- sendLevel(0), flags(0)
+ mSendLevel(0), flags(0)
{
}