audio: allow standby for direct track

Delay standby for offload track use case is not suitable for direct
track in PCM format, because player torn down doesn't necessarily happen.

To avoid AP looping infinitely, allow standby right after direct track
in PCM format is paused.

Bug: 27746493

Change-Id: Id0026ac9891a12acc4affa446b2bc841559fcc28
diff --git a/services/audioflinger/Threads.cpp b/services/audioflinger/Threads.cpp
index e2932f1..35ce317 100644
--- a/services/audioflinger/Threads.cpp
+++ b/services/audioflinger/Threads.cpp
@@ -4996,6 +4996,10 @@
     bool trackPaused = false;
     bool trackStopped = false;
 
+    if ((mType == DIRECT) && audio_is_linear_pcm(mFormat) && !usesHwAvSync()) {
+        return !mStandby;
+    }
+
     // do not put the HAL in standby when paused. AwesomePlayer clear the offloaded AudioTrack
     // after a timeout and we will enter standby then.
     if (mTracks.size() > 0) {