summaryrefslogtreecommitdiffstats
path: root/media
diff options
context:
space:
mode:
authorGlenn Kasten <gkasten@google.com>2014-05-02 21:59:52 +0000
committerAndroid (Google) Code Review <android-gerrit@google.com>2014-05-02 21:59:52 +0000
commit0a9aa4f5539482061dfe4dfa6128ef3696557818 (patch)
tree8c35d32339aef06d77648a8fa7961d058e8356f9 /media
parentad3770a20daf1265a088404edbd2ca340166e9ef (diff)
parentc4b88a8d0f524666bf0f390075c334d047a104f2 (diff)
downloadframeworks_av-0a9aa4f5539482061dfe4dfa6128ef3696557818.zip
frameworks_av-0a9aa4f5539482061dfe4dfa6128ef3696557818.tar.gz
frameworks_av-0a9aa4f5539482061dfe4dfa6128ef3696557818.tar.bz2
Merge "Fix bug for direct track with PCM != 16-bit"
Diffstat (limited to 'media')
-rw-r--r--media/libmedia/AudioTrack.cpp3
1 files changed, 2 insertions, 1 deletions
diff --git a/media/libmedia/AudioTrack.cpp b/media/libmedia/AudioTrack.cpp
index 8daf08b..dc4f90e 100644
--- a/media/libmedia/AudioTrack.cpp
+++ b/media/libmedia/AudioTrack.cpp
@@ -1005,7 +1005,8 @@ status_t AudioTrack::createTrack_l(size_t epoch)
sp<IAudioTrack> track = audioFlinger->createTrack(mStreamType,
mSampleRate,
// AudioFlinger only sees 16-bit PCM
- mFormat == AUDIO_FORMAT_PCM_8_BIT ?
+ mFormat == AUDIO_FORMAT_PCM_8_BIT &&
+ !(mFlags & AUDIO_OUTPUT_FLAG_DIRECT) ?
AUDIO_FORMAT_PCM_16_BIT : mFormat,
mChannelMask,
&temp,