Index: media/filters/source_buffer_range.cc |
diff --git a/media/filters/source_buffer_range.cc b/media/filters/source_buffer_range.cc |
index 4fad27dbceff01824060ffe30e2fb0b4f0ec14aa..8245a06a0328b5a68f187616f5ad4bb463ec9d25 100644 |
--- a/media/filters/source_buffer_range.cc |
+++ b/media/filters/source_buffer_range.cc |
@@ -341,6 +341,16 @@ int 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; |