| Index: media/video/video_decode_accelerator.h
|
| diff --git a/media/video/video_decode_accelerator.h b/media/video/video_decode_accelerator.h
|
| index b7bc51152615fb367995eae12186dab8b6f9e2ed..950ac8d143e633b87aecfe666395ea1ee8174dad 100644
|
| --- a/media/video/video_decode_accelerator.h
|
| +++ b/media/video/video_decode_accelerator.h
|
| @@ -8,7 +8,6 @@
|
| #include <vector>
|
|
|
| #include "base/basictypes.h"
|
| -#include "base/memory/weak_ptr.h"
|
| #include "media/base/bitstream_buffer.h"
|
| #include "media/base/video_decoder_config.h"
|
| #include "media/video/picture.h"
|
| @@ -19,8 +18,7 @@ namespace media {
|
| // Video decoder interface.
|
| // This interface is extended by the various components that ultimately
|
| // implement the backend of PPB_VideoDecode_Dev.
|
| -class MEDIA_EXPORT VideoDecodeAccelerator
|
| - : public base::SupportsWeakPtr<VideoDecodeAccelerator> {
|
| +class MEDIA_EXPORT VideoDecodeAccelerator {
|
| public:
|
| virtual ~VideoDecodeAccelerator();
|
|
|
| @@ -44,15 +42,13 @@ class MEDIA_EXPORT VideoDecodeAccelerator
|
| };
|
|
|
| // Interface for collaborating with picture interface to provide memory for
|
| - // output picture and blitting them.
|
| + // output picture and blitting them. These callbacks will not be made unless
|
| + // Initialize() has returned successfully.
|
| // This interface is extended by the various layers that relay messages back
|
| // to the plugin, through the PPP_VideoDecode_Dev interface the plugin
|
| // implements.
|
| class MEDIA_EXPORT Client {
|
| public:
|
| - // Callback to notify client that decoder has been initialized.
|
| - virtual void NotifyInitializeDone() = 0;
|
| -
|
| // Callback to tell client how many and what size of buffers to provide.
|
| virtual void ProvidePictureBuffers(uint32 requested_num_of_buffers,
|
| const gfx::Size& dimensions,
|
| @@ -74,7 +70,9 @@ class MEDIA_EXPORT VideoDecodeAccelerator
|
| // Reset completion callback.
|
| virtual void NotifyResetDone() = 0;
|
|
|
| - // Callback to notify about decoding errors.
|
| + // Callback to notify about decoding errors. Note that errors in
|
| + // Initialize() will not be reported here, but will instead be indicated by
|
| + // a false return value there.
|
| virtual void NotifyError(Error error) = 0;
|
|
|
| protected:
|
| @@ -83,16 +81,16 @@ class MEDIA_EXPORT VideoDecodeAccelerator
|
|
|
| // Video decoder functions.
|
|
|
| - // Initializes the video decoder with specific configuration.
|
| + // Initializes the video decoder with specific configuration. Called once per
|
| + // decoder construction. This call is synchronous and returns true iff
|
| + // initialization is successful.
|
| // Parameters:
|
| // |profile| is the video stream's format profile.
|
| // |client| is the client of this video decoder. The provided pointer must
|
| // be valid until Destroy() is called.
|
| - //
|
| - // Returns true when command successfully accepted. Otherwise false.
|
| virtual bool Initialize(VideoCodecProfile profile, Client* client) = 0;
|
|
|
| - // Decodes given bitstream buffer that contains at most one frame. Once
|
| + // Decodes given bitstream buffer that contains at most one frame. Once
|
| // decoder is done with processing |bitstream_buffer| it will call
|
| // NotifyEndOfBitstreamBuffer() with the bitstream buffer id.
|
| // Parameters:
|
|
|