Index: talk/app/webrtc/java/src/org/webrtc/MediaCodecVideoDecoder.java |
diff --git a/talk/app/webrtc/java/src/org/webrtc/MediaCodecVideoDecoder.java b/talk/app/webrtc/java/src/org/webrtc/MediaCodecVideoDecoder.java |
index 5312fe39a891c8a91a1b92a092fd0f7b7937fe73..f6dcf15b3562d08e85d2735501e2d200c8af026f 100644 |
--- a/talk/app/webrtc/java/src/org/webrtc/MediaCodecVideoDecoder.java |
+++ b/talk/app/webrtc/java/src/org/webrtc/MediaCodecVideoDecoder.java |
@@ -32,9 +32,6 @@ import android.media.MediaCodecInfo; |
import android.media.MediaCodecInfo.CodecCapabilities; |
import android.media.MediaCodecList; |
import android.media.MediaFormat; |
-import android.opengl.EGLContext; |
-import android.opengl.GLES11Ext; |
-import android.opengl.GLES20; |
import android.os.Build; |
import android.view.Surface; |
@@ -65,7 +62,7 @@ public class MediaCodecVideoDecoder { |
} |
private static final int DEQUEUE_INPUT_TIMEOUT = 500000; // 500 ms timeout. |
- private Thread mediaCodecThread; |
+ private static Thread mediaCodecThread; |
private MediaCodec mediaCodec; |
private ByteBuffer[] inputBuffers; |
private ByteBuffer[] outputBuffers; |
@@ -173,6 +170,18 @@ public class MediaCodecVideoDecoder { |
return findDecoder(H264_MIME_TYPE, supportedH264HwCodecPrefixes) != null; |
} |
+ public static void printStackTrace() { |
+ if (mediaCodecThread != null) { |
+ StackTraceElement[] mediaCodecStackTraces = mediaCodecThread.getStackTrace(); |
+ if (mediaCodecStackTraces.length > 0) { |
+ Logging.d(TAG, "MediaCodecVideoDecoder stacks trace:"); |
+ for (StackTraceElement stackTrace : mediaCodecStackTraces) { |
+ Logging.d(TAG, stackTrace.toString()); |
+ } |
+ } |
+ } |
+ } |
+ |
private void checkOnMediaCodecThread() throws IllegalStateException { |
if (mediaCodecThread.getId() != Thread.currentThread().getId()) { |
throw new IllegalStateException( |