diff options
author | fischman@chromium.org <fischman@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2012-05-30 02:17:53 +0000 |
---|---|---|
committer | fischman@chromium.org <fischman@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2012-05-30 02:17:53 +0000 |
commit | 08a78639c036ebe4152a9e901a7bfdb41beda7d0 (patch) | |
tree | e588230a7f66fd9469fd85f7874d8cb84fd9aa5b /media/tools/seek_tester | |
parent | efcde1301756eb49e85640e488d350f7bdf46df2 (diff) | |
download | chromium_src-08a78639c036ebe4152a9e901a7bfdb41beda7d0.zip chromium_src-08a78639c036ebe4152a9e901a7bfdb41beda7d0.tar.gz chromium_src-08a78639c036ebe4152a9e901a7bfdb41beda7d0.tar.bz2 |
Track buffered byte ranges correctly in media::Pipeline.
Previously, the interaction was:
BufferedDataSource: hey Pipeline, I just read byte X
Pipeline: cool story bro! I'll just pretend you've read every single byte from 0 to X.
Now the interaction is:
BufferedDataSource: hey Pipeline, I just read bytes X-Y
Pipeline: neato! I'll just add that range to my list of buffered ranges.
The most noticeable outcome of this change is that seeking in a media format that requires reading a seek index from the end of the file (e.g. WebM w/ CUES at the end) no longer results in an almost-instant claim of having buffered the entire video just because a seek was completed (esp. dramatic when viewing a very large file, such as a multi-hour video).
BUG=103513,127355
TEST=besides unittests, this allows a cleaned-up version of http/tests/media/video-buffered.html to be un-SKIPped!
Review URL: https://chromiumcodereview.appspot.com/10451049
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@139452 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'media/tools/seek_tester')
-rw-r--r-- | media/tools/seek_tester/seek_tester.cc | 3 |
1 files changed, 1 insertions, 2 deletions
diff --git a/media/tools/seek_tester/seek_tester.cc b/media/tools/seek_tester/seek_tester.cc index b14628c..901c1bd 100644 --- a/media/tools/seek_tester/seek_tester.cc +++ b/media/tools/seek_tester/seek_tester.cc @@ -26,12 +26,11 @@ class DemuxerHostImpl : public media::DemuxerHost { public: // DataSourceHost 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 implementation. virtual void SetDuration(base::TimeDelta duration) OVERRIDE {} - virtual void SetCurrentReadPosition(int64 offset) OVERRIDE {} virtual void OnDemuxerError(media::PipelineStatus error) OVERRIDE {} }; |