Audio presentation selection for AudioTrack native
Bug: 63901775
Test: make
Change-Id: I63c9bdef880c7c387fd05f093b8d1094307a2754
Signed-off-by: Previr Rangroo <prang@dolby.com>
diff --git a/media/libaudioclient/AudioTrack.cpp b/media/libaudioclient/AudioTrack.cpp
index a3c66fe..5e7cda7 100644
--- a/media/libaudioclient/AudioTrack.cpp
+++ b/media/libaudioclient/AudioTrack.cpp
@@ -29,6 +29,7 @@
#include <utils/Log.h>
#include <private/media/AudioTrackShared.h>
#include <media/IAudioFlinger.h>
+#include <media/AudioParameter.h>
#include <media/AudioPolicyHelper.h>
#include <media/AudioResamplerPublic.h>
#include <media/MediaAnalyticsItem.h>
@@ -2342,6 +2343,17 @@
return mAudioTrack->setParameters(keyValuePairs);
}
+status_t AudioTrack::selectPresentation(int presentationId, int programId)
+{
+ AutoMutex lock(mLock);
+ AudioParameter param = AudioParameter();
+ param.addInt(String8(AudioParameter::keyPresentationId), presentationId);
+ param.addInt(String8(AudioParameter::keyProgramId), programId);
+ ALOGV("PresentationId/ProgramId[%s]",param.toString().string());
+
+ return mAudioTrack->setParameters(param.toString());
+}
+
VolumeShaper::Status AudioTrack::applyVolumeShaper(
const sp<VolumeShaper::Configuration>& configuration,
const sp<VolumeShaper::Operation>& operation)