Index: media/filters/chunk_demuxer.cc |
diff --git a/media/filters/chunk_demuxer.cc b/media/filters/chunk_demuxer.cc |
index 49836a129e580d085c1ca956ac27d7c5ac3bea90..e7525b4191891c5b1c34d53b023cffb21eb9f611 100644 |
--- a/media/filters/chunk_demuxer.cc |
+++ b/media/filters/chunk_demuxer.cc |
@@ -157,6 +157,10 @@ Ranges<TimeDelta> ChunkDemuxerStream::GetBufferedRanges( |
return range.IntersectionWith(valid_time_range); |
} |
+TimeDelta ChunkDemuxerStream::GetHighestPresentationTimestamp() const { |
+ return stream_->GetHighestPresentationTimestamp(); |
+} |
+ |
TimeDelta ChunkDemuxerStream::GetBufferedDuration() const { |
return stream_->GetBufferedDuration(); |
} |
@@ -593,6 +597,17 @@ Ranges<TimeDelta> ChunkDemuxer::GetBufferedRanges(const std::string& id) const { |
return itr->second->GetBufferedRanges(duration_, state_ == ENDED); |
} |
+base::TimeDelta ChunkDemuxer::GetHighestPresentationTimestamp( |
+ const std::string& id) const { |
+ base::AutoLock auto_lock(lock_); |
+ DCHECK(!id.empty()); |
+ |
+ MediaSourceStateMap::const_iterator itr = source_state_map_.find(id); |
+ |
+ DCHECK(itr != source_state_map_.end()); |
+ return itr->second->GetHighestPresentationTimestamp(); |
+} |
+ |
bool ChunkDemuxer::EvictCodedFrames(const std::string& id, |
base::TimeDelta currentMediaTime, |
size_t newDataSize) { |