diff --git a/webrtc/api/java/jni/androidmediacodeccommon.h b/webrtc/api/java/jni/androidmediacodeccommon.h index e9eb24514e..4926f4d98b 100644 --- a/webrtc/api/java/jni/androidmediacodeccommon.h +++ b/webrtc/api/java/jni/androidmediacodeccommon.h @@ -54,7 +54,7 @@ enum { kMaxPendingFramesVp8 = 1 }; // Maximum amount of pending frames for VP9 decoder. enum { kMaxPendingFramesVp9 = 1 }; // Maximum amount of pending frames for H.264 decoder. -enum { kMaxPendingFramesH264 = 8 }; +enum { kMaxPendingFramesH264 = 3 }; // Maximum amount of decoded frames for which per-frame logging is enabled. enum { kMaxDecodedLogFrames = 10 }; // Maximum amount of encoded frames for which per-frame logging is enabled. diff --git a/webrtc/api/java/src/org/webrtc/MediaCodecVideoDecoder.java b/webrtc/api/java/src/org/webrtc/MediaCodecVideoDecoder.java index e8470c408f..02235fe3c7 100644 --- a/webrtc/api/java/src/org/webrtc/MediaCodecVideoDecoder.java +++ b/webrtc/api/java/src/org/webrtc/MediaCodecVideoDecoder.java @@ -619,8 +619,9 @@ public class MediaCodecVideoDecoder { TimeStamps timeStamps = decodeStartTimeMs.remove(); long decodeTimeMs = SystemClock.elapsedRealtime() - timeStamps.decodeStartTimeMs; if (decodeTimeMs > MAX_DECODE_TIME_MS) { - Logging.e(TAG, "Very high decode time: " + decodeTimeMs + "ms." - + " Might be caused by resuming H264 decoding after a pause."); + Logging.e(TAG, "Very high decode time: " + decodeTimeMs + "ms" + + ". Q size: " + decodeStartTimeMs.size() + + ". Might be caused by resuming H264 decoding after a pause."); decodeTimeMs = MAX_DECODE_TIME_MS; } return new DecodedOutputBuffer(result,