Index: media/filters/source_buffer_range.cc |
diff --git a/media/filters/source_buffer_range.cc b/media/filters/source_buffer_range.cc |
index d930632c37976626cb1a3a0b2dcdf784dfbd2d2e..13e996d6480dfa770221f5302fdea173a28d537c 100644 |
--- a/media/filters/source_buffer_range.cc |
+++ b/media/filters/source_buffer_range.cc |
@@ -346,6 +346,16 @@ size_t SourceBufferRange::GetRemovalGOP( |
return bytes_removed; |
} |
+bool SourceBufferRange::FirstGOPEarlierThanMediaTime( |
+ DecodeTimestamp media_time) const { |
+ if (keyframe_map_.size() == 1u) |
+ return (GetEndTimestamp() < media_time); |
+ |
+ KeyframeMap::const_iterator second_gop = keyframe_map_.begin(); |
+ ++second_gop; |
+ return second_gop->first <= media_time; |
+} |
+ |
bool SourceBufferRange::FirstGOPContainsNextBufferPosition() const { |
if (!HasNextBufferPosition()) |
return false; |