commit | baf724edb04bb5ba854bc5488e64470890aee3d7 | [log] [tgz] |
---|---|---|
author | Andy Hung <hunga@google.com> | Wed Dec 15 01:16:06 2021 +0000 |
committer | Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com> | Wed Dec 15 01:16:06 2021 +0000 |
tree | beeafbe80677d20be207eefcd890566350b2e21b | |
parent | 1bb0d687956b8c9c4c4caea427617d994b5361eb [diff] | |
parent | 7de0d15d9ab1c7bf8a93ac3571868c47c2c14f00 [diff] |
Merge "Support direct PCM track latency reporting" am: 7de0d15d9a Original change: https://android-review.googlesource.com/c/platform/frameworks/av/+/1340019 Change-Id: I333422b1f9e0a091e840abf6ffbdde84031245bb
diff --git a/services/audioflinger/PlaybackTracks.h b/services/audioflinger/PlaybackTracks.h index 0929055..04b1c6d 100644 --- a/services/audioflinger/PlaybackTracks.h +++ b/services/audioflinger/PlaybackTracks.h
@@ -183,6 +183,12 @@ } } + static bool checkServerLatencySupported( + audio_format_t format, audio_output_flags_t flags) { + return audio_is_linear_pcm(format) + && (flags & AUDIO_OUTPUT_FLAG_HW_AV_SYNC) == 0; + } + audio_output_flags_t getOutputFlags() const { return mFlags; } float getSpeed() const { return mSpeed; } protected:
diff --git a/services/audioflinger/Tracks.cpp b/services/audioflinger/Tracks.cpp index 616fd78..233865f 100644 --- a/services/audioflinger/Tracks.cpp +++ b/services/audioflinger/Tracks.cpp
@@ -713,8 +713,7 @@ thread->mFastTrackAvailMask &= ~(1 << i); } - mServerLatencySupported = thread->type() == ThreadBase::MIXER - || thread->type() == ThreadBase::DUPLICATING; + mServerLatencySupported = checkServerLatencySupported(format, flags); #ifdef TEE_SINK mTee.setId(std::string("_") + std::to_string(mThreadIoHandle) + "_" + std::to_string(mId) + "_T");