summaryrefslogtreecommitdiffstats
path: root/services
diff options
context:
space:
mode:
authorGlenn Kasten <gkasten@google.com>2013-08-29 17:12:44 -0700
committerAndroid Git Automerger <android-git-automerger@android.com>2013-08-29 17:12:44 -0700
commit30c296c153447f5c2bb5251928bf4d3c4e28e552 (patch)
treeadd654497b6e4ad0a66066a96ab1afd9e480327a /services
parentec9ad1b0947f5d6b465281312dbe92f096a8f881 (diff)
parent3ae0a58a83d092d96672295c8a62908478f28a9b (diff)
downloadframeworks_av-30c296c153447f5c2bb5251928bf4d3c4e28e552.zip
frameworks_av-30c296c153447f5c2bb5251928bf4d3c4e28e552.tar.gz
frameworks_av-30c296c153447f5c2bb5251928bf4d3c4e28e552.tar.bz2
am 3ae0a58a: am 9841f636: Merge "Add AudioFlinger::PlaybackThread::Track::getTimestamp()" into klp-dev
* commit '3ae0a58a83d092d96672295c8a62908478f28a9b': Add AudioFlinger::PlaybackThread::Track::getTimestamp()
Diffstat (limited to 'services')
-rw-r--r--services/audioflinger/PlaybackTracks.h1
-rw-r--r--services/audioflinger/Tracks.cpp13
2 files changed, 13 insertions, 1 deletions
diff --git a/services/audioflinger/PlaybackTracks.h b/services/audioflinger/PlaybackTracks.h
index 43fb946..2f37dbb 100644
--- a/services/audioflinger/PlaybackTracks.h
+++ b/services/audioflinger/PlaybackTracks.h
@@ -60,6 +60,7 @@ public:
void setMainBuffer(int16_t *buffer) { mMainBuffer = buffer; }
int16_t *mainBuffer() const { return mMainBuffer; }
int auxEffectId() const { return mAuxEffectId; }
+ virtual status_t getTimestamp(AudioTimestamp& timestamp);
// implement FastMixerState::VolumeProvider interface
virtual uint32_t getVolumeLR();
diff --git a/services/audioflinger/Tracks.cpp b/services/audioflinger/Tracks.cpp
index fd7be30..392707b 100644
--- a/services/audioflinger/Tracks.cpp
+++ b/services/audioflinger/Tracks.cpp
@@ -285,7 +285,7 @@ status_t AudioFlinger::TrackHandle::setParameters(const String8& keyValuePairs)
status_t AudioFlinger::TrackHandle::getTimestamp(AudioTimestamp& timestamp)
{
- return INVALID_OPERATION;
+ return mTrack->getTimestamp(timestamp);
}
status_t AudioFlinger::TrackHandle::onTransact(
@@ -725,6 +725,17 @@ status_t AudioFlinger::PlaybackThread::Track::setParameters(const String8& keyVa
}
}
+status_t AudioFlinger::PlaybackThread::Track::getTimestamp(AudioTimestamp& timestamp)
+{
+ sp<ThreadBase> thread = mThread.promote();
+ if (thread == 0) {
+ return false;
+ }
+ Mutex::Autolock _l(thread->mLock);
+ PlaybackThread *playbackThread = (PlaybackThread *)thread.get();
+ return INVALID_OPERATION;
+}
+
status_t AudioFlinger::PlaybackThread::Track::attachAuxEffect(int EffectId)
{
status_t status = DEAD_OBJECT;