| Index: media/base/pipeline_impl.h
|
| diff --git a/media/base/pipeline_impl.h b/media/base/pipeline_impl.h
|
| index 57f8aebda2d75c85118f2cadd3b97ffe70bc3475..ad7340eb8d590e75444d6bfbbaae584deb63b649 100644
|
| --- a/media/base/pipeline_impl.h
|
| +++ b/media/base/pipeline_impl.h
|
| @@ -208,8 +208,8 @@ class MEDIA_EXPORT PipelineImpl : public Pipeline, public FilterHost {
|
| virtual void SetCurrentReadPosition(int64 offset) OVERRIDE;
|
| virtual int64 GetCurrentReadPosition() OVERRIDE;
|
|
|
| - // Callback executed by filters upon completing initialization.
|
| - void OnFilterInitialize();
|
| + // Callbacks executed by filters upon completing initialization.
|
| + void OnFilterInitialize(PipelineStatus status);
|
|
|
| // Callback executed by filters upon completing Play(), Pause(), or Stop().
|
| void OnFilterStateTransition();
|
| @@ -233,8 +233,9 @@ class MEDIA_EXPORT PipelineImpl : public Pipeline, public FilterHost {
|
| // InitializeTask() performs initialization in multiple passes. It is executed
|
| // as a result of calling Start() or InitializationComplete() that advances
|
| // initialization to the next state. It works as a hub of state transition for
|
| - // initialization.
|
| - void InitializeTask();
|
| + // initialization. One stage communicates its status to the next through
|
| + // |last_stage_status|.
|
| + void InitializeTask(PipelineStatus last_stage_status);
|
|
|
| // Stops and destroys all filters, placing the pipeline in the kStopped state.
|
| void StopTask(const PipelineStatusCB& stop_callback);
|
| @@ -286,6 +287,10 @@ class MEDIA_EXPORT PipelineImpl : public Pipeline, public FilterHost {
|
| // MessageLoop.
|
| bool PrepareFilter(scoped_refptr<Filter> filter);
|
|
|
| + // DiscardFilter() undoes PrepareFilter's work. Returns false in case of
|
| + // error or unknown |filter|.
|
| + bool DiscardFilter(scoped_refptr<Filter> filter);
|
| +
|
| // The following initialize methods are used to select a specific type of
|
| // Filter object from FilterCollection and initialize it asynchronously.
|
| void InitializeDemuxer();
|
|
|