Decrease the amount of maximum outstanding frames for Android HW H.264 decoder.

BUG=b/28150902
R=pbos@webrtc.org, sakal@webrtc.org

Review URL: https://codereview.webrtc.org/2088353002 .

Cr-Commit-Position: refs/heads/master@{#13302}
diff --git a/webrtc/api/java/jni/androidmediacodeccommon.h b/webrtc/api/java/jni/androidmediacodeccommon.h
index e9eb245..4926f4d 100644
--- a/webrtc/api/java/jni/androidmediacodeccommon.h
+++ b/webrtc/api/java/jni/androidmediacodeccommon.h
@@ -54,7 +54,7 @@
 // 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 e8470c4..02235fe 100644
--- a/webrtc/api/java/src/org/webrtc/MediaCodecVideoDecoder.java
+++ b/webrtc/api/java/src/org/webrtc/MediaCodecVideoDecoder.java
@@ -619,8 +619,9 @@
           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,