OSDN Git Service

Only pass the surface to the video decoder.
authorAndreas Huber <andih@google.com>
Fri, 16 Nov 2012 19:15:44 +0000 (11:15 -0800)
committerAndreas Huber <andih@google.com>
Fri, 16 Nov 2012 19:15:44 +0000 (11:15 -0800)
Change-Id: Ice0cfc0021fdd9fe053be6ee324cbc64226ed122

cmds/stagefright/SimplePlayer.cpp

index 7636906..eb3296e 100644 (file)
@@ -297,9 +297,11 @@ status_t SimplePlayer::onPrepare() {
         AString mime;
         CHECK(format->findString("mime", &mime));
 
+        bool isVideo = !strncasecmp(mime.c_str(), "video/", 6);
+
         if (!haveAudio && !strncasecmp(mime.c_str(), "audio/", 6)) {
             haveAudio = true;
-        } else if (!haveVideo && !strncasecmp(mime.c_str(), "video/", 6)) {
+        } else if (!haveVideo && isVideo) {
             haveVideo = true;
         } else {
             continue;
@@ -320,7 +322,7 @@ status_t SimplePlayer::onPrepare() {
 
         err = state->mCodec->configure(
                 format,
-                mNativeWindow->getSurfaceTextureClient(),
+                isVideo ? mNativeWindow->getSurfaceTextureClient() : NULL,
                 NULL /* crypto */,
                 0 /* flags */);