diff options
author | hclam@chromium.org <hclam@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2009-07-29 21:49:49 +0000 |
---|---|---|
committer | hclam@chromium.org <hclam@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2009-07-29 21:49:49 +0000 |
commit | 38259a7a83545e07681d921564468844c7b03337 (patch) | |
tree | ceddb850f76be8ee565d9cc2d3d34d7ae445a1d7 /media/base/pipeline_impl.h | |
parent | 6b33da129646087bbc173a72c84e0690e91740de (diff) | |
download | chromium_src-38259a7a83545e07681d921564468844c7b03337.zip chromium_src-38259a7a83545e07681d921564468844c7b03337.tar.gz chromium_src-38259a7a83545e07681d921564468844c7b03337.tar.bz2 |
BufferedDataSource to support server without range request support
This patch will enable BufferedDataSource to support servers with
no range request support. It will start a probe request of 1 byte
size besides the regular request. If the server does not support
range request, we will turn on the is_streamed flag of FFmpeg and
will not do any seeking.
BUG=17628
TEST=test_shell_tests --gtest_filter=BufferedDataSource.*
Review URL: http://codereview.chromium.org/160076
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@21999 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'media/base/pipeline_impl.h')
-rw-r--r-- | media/base/pipeline_impl.h | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/media/base/pipeline_impl.h b/media/base/pipeline_impl.h index 02c8bce..e83822d 100644 --- a/media/base/pipeline_impl.h +++ b/media/base/pipeline_impl.h @@ -81,6 +81,7 @@ class PipelineImpl : public Pipeline, public FilterHost { virtual int64 GetBufferedBytes() const; virtual int64 GetTotalBytes() const; virtual void GetVideoSize(size_t* width_out, size_t* height_out) const; + virtual bool IsStreaming() const; virtual PipelineError GetError() const; private: @@ -129,6 +130,7 @@ class PipelineImpl : public Pipeline, public FilterHost { virtual void SetTotalBytes(int64 total_bytes); virtual void SetBufferedBytes(int64 buffered_bytes); virtual void SetVideoSize(size_t width, size_t height); + virtual void SetStreaming(bool streamed); // Method called during initialization to insert a mime type into the // |rendered_mime_types_| set. @@ -267,6 +269,10 @@ class PipelineImpl : public Pipeline, public FilterHost { size_t video_width_; size_t video_height_; + // Sets by the filters to indicate whether the data source is a streaming + // source. + bool streaming_; + // Current volume level (from 0.0f to 1.0f). This value is set immediately // via SetVolume() and a task is dispatched on the message loop to notify the // filters. |