summaryrefslogtreecommitdiffstats
path: root/media/libstagefright/AwesomePlayer.cpp
diff options
context:
space:
mode:
authorGlenn Kasten <gkasten@google.com>2011-07-25 09:26:22 -0700
committerGlenn Kasten <gkasten@google.com>2011-07-27 10:21:09 -0700
commitcd25fed09742235fac10953b9d4b77268c695063 (patch)
tree4495bebf5ca8342877e52b5b7db78a24e47db78e /media/libstagefright/AwesomePlayer.cpp
parent7fc25dd82dec8474139315b8e905f103c13406f5 (diff)
downloadframeworks_av-cd25fed09742235fac10953b9d4b77268c695063.zip
frameworks_av-cd25fed09742235fac10953b9d4b77268c695063.tar.gz
frameworks_av-cd25fed09742235fac10953b9d4b77268c695063.tar.bz2
Bug 4599730 Get audio channel count on MediaPlayer
Related changes: - Fix bug in get/setParameter* to recycle Parcels when done with them. Change-Id: Iaff05e91bbd99a14fccb79d816dd873359b6ae65
Diffstat (limited to 'media/libstagefright/AwesomePlayer.cpp')
-rw-r--r--media/libstagefright/AwesomePlayer.cpp17
1 files changed, 16 insertions, 1 deletions
diff --git a/media/libstagefright/AwesomePlayer.cpp b/media/libstagefright/AwesomePlayer.cpp
index 0098537..67f6c79 100644
--- a/media/libstagefright/AwesomePlayer.cpp
+++ b/media/libstagefright/AwesomePlayer.cpp
@@ -2238,7 +2238,22 @@ status_t AwesomePlayer::setCacheStatCollectFreq(const Parcel &request) {
}
status_t AwesomePlayer::getParameter(int key, Parcel *reply) {
- return OK;
+ switch (key) {
+ case KEY_PARAMETER_AUDIO_CHANNEL_COUNT:
+ {
+ int32_t channelCount;
+ if (mAudioTrack == 0 ||
+ !mAudioTrack->getFormat()->findInt32(kKeyChannelCount, &channelCount)) {
+ channelCount = 0;
+ }
+ reply->writeInt32(channelCount);
+ }
+ return OK;
+ default:
+ {
+ return ERROR_UNSUPPORTED;
+ }
+ }
}
bool AwesomePlayer::isStreamingHTTP() const {