Index: media/base/android/media_codec_decoder.h |
diff --git a/media/base/android/media_codec_decoder.h b/media/base/android/media_codec_decoder.h |
index a974eeaa0b12537462e273db8f51d1732c659ada..8680830efc5fcd2831ebdc37a8b4e973aa7c2fa7 100644 |
--- a/media/base/android/media_codec_decoder.h |
+++ b/media/base/android/media_codec_decoder.h |
@@ -234,6 +234,10 @@ class MediaCodecDecoder { |
// because their rendering is delayed (video). |
virtual void ReleaseDelayedBuffers() {} |
+ // Remove all references to the delayed buffers after the |
+ // |media_codec_bridge_| is deleted. |
+ virtual void ClearDelayedBuffers() {} |
+ |
#ifndef NDEBUG |
// For video, checks that access unit is the key frame or stand-alone EOS. |
virtual void VerifyUnitIsKeyFrame(const AccessUnit* unit) const {} |
@@ -259,6 +263,10 @@ class MediaCodecDecoder { |
// The queue of access units. |
AccessUnitQueue au_queue_; |
+ // Flag forces reconfiguration even if |media_codec_bridge_| exists. Currently |
+ // is set by video decoder when the video surface changes. |
+ bool needs_reconfigure_; |
+ |
private: |
enum DecoderState { |
kStopped = 0, |
@@ -266,6 +274,7 @@ class MediaCodecDecoder { |
kPrefetched, |
kRunning, |
kStopping, |
+ kInEmergencyStop, |
kError, |
}; |