OSDN Git Service

Disable vorbis-auto-looping if the audio sink used is not realtime, i.e. recording.
authorAndreas Huber <andih@google.com>
Thu, 18 Aug 2011 17:53:23 +0000 (10:53 -0700)
committerAndreas Huber <andih@google.com>
Thu, 18 Aug 2011 17:53:23 +0000 (10:53 -0700)
Change-Id: I982e740e8488ff8717ca5f081db9def55aabc9ec
related-to-bug: 5179033

media/libstagefright/AwesomePlayer.cpp

index 99242ab..7b28588 100644 (file)
@@ -820,7 +820,12 @@ void AwesomePlayer::onStreamDone() {
         return;
     }
 
-    if (mFlags & (LOOPING | AUTO_LOOPING)) {
+    if ((mFlags & LOOPING)
+            || ((mFlags & AUTO_LOOPING)
+                && (mAudioSink == NULL || mAudioSink->realtime()))) {
+        // Don't AUTO_LOOP if we're being recorded, since that cannot be
+        // turned off and recording would go on indefinitely.
+
         seekTo_l(0);
 
         if (mVideoSource != NULL) {