Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(293)

Unified Diff: media/base/pipeline.h

Issue 10451049: Track buffered byte ranges correctly in media::Pipeline. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: . Created 8 years, 7 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: media/base/pipeline.h
diff --git a/media/base/pipeline.h b/media/base/pipeline.h
index 73359c2537ebe840a37d07ed740ac9ab6f64f9b3..1b2aed777c821bd6f8b964d5b92163f4e43dae5a 100644
--- a/media/base/pipeline.h
+++ b/media/base/pipeline.h
@@ -219,6 +219,9 @@ class MEDIA_EXPORT Pipeline
// Get the total number of bytes that are buffered on the client and ready to
// be played.
+ // TODO(fischman): this interface is only needed so WMPI can provide
+ // bytesLoaded() which is only present so that HTMLMediaElement can decide
+ // whether progress has been made. Bogus! http://webk.it/86113
int64 GetBufferedBytes() const;
// Get the total size of the media file. If the size has not yet been
@@ -299,7 +302,7 @@ class MEDIA_EXPORT Pipeline
// DataSourceHost (by way of DemuxerHost) implementation.
virtual void SetTotalBytes(int64 total_bytes) OVERRIDE;
- virtual void SetBufferedBytes(int64 buffered_bytes) OVERRIDE;
+ virtual void AddBufferedByteRange(int64 start, int64 end) OVERRIDE;
virtual void SetNetworkActivity(bool is_downloading_data) OVERRIDE;
// DemuxerHost implementaion.
@@ -423,8 +426,8 @@ class MEDIA_EXPORT Pipeline
// caller.
base::TimeDelta GetCurrentTime_Locked() const;
- // Update internal records of which time ranges are buffered.
- void UpdateBufferedTimeRanges_Locked();
+ // Compute the time corresponding to a byte offset.
+ base::TimeDelta TimeForByteOffset_Locked(int64 byte_offset) const;
// Initiates a Stop() on |demuxer_| & |pipeline_filter_|. |callback|
// is called once both objects have been stopped.
@@ -477,7 +480,7 @@ class MEDIA_EXPORT Pipeline
bool playback_rate_change_pending_;
// Amount of available buffered data. Set by filters.
scherkus (not reviewing) 2012/05/29 18:13:29 s/filters/data source/? technically it's the demu
Ami GONE FROM CHROMIUM 2012/05/29 20:45:44 Just removed that part of the comment (pointers to
- int64 buffered_bytes_;
+ Ranges<int64> buffered_byte_ranges_;
// Approximate time ranges of buffered media.
Ranges<base::TimeDelta> buffered_time_ranges_;

Powered by Google App Engine
This is Rietveld 408576698