diff options
author | hclam@chromium.org <hclam@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2010-09-03 21:14:50 +0000 |
---|---|---|
committer | hclam@chromium.org <hclam@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2010-09-03 21:14:50 +0000 |
commit | d875cb215e77c638fcc849fc1d1557ea50a972bc (patch) | |
tree | 9bdd424d9e5e58f0bada746b8324c475a5363f3c /media/video/video_decode_engine.h | |
parent | 180fa67802de89d71d830b8871e7933a510b2644 (diff) | |
download | chromium_src-d875cb215e77c638fcc849fc1d1557ea50a972bc.zip chromium_src-d875cb215e77c638fcc849fc1d1557ea50a972bc.tar.gz chromium_src-d875cb215e77c638fcc849fc1d1557ea50a972bc.tar.bz2 |
Remove refcounting of VideoDecodeEngine
VideoDecodeEngine doesn't need refcounting, all decode engines live on one
thread so there isn't a problem posting task to a random thread. Also
the stop is asynchronous, we can always until the stop is done before we
destroy the object and doesn't need refcounting to destroy it.
TEST=media_unittests
Review URL: http://codereview.chromium.org/3125032
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@58539 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'media/video/video_decode_engine.h')
-rw-r--r-- | media/video/video_decode_engine.h | 8 |
1 files changed, 4 insertions, 4 deletions
diff --git a/media/video/video_decode_engine.h b/media/video/video_decode_engine.h index d2cf7b2..9c84f11 100644 --- a/media/video/video_decode_engine.h +++ b/media/video/video_decode_engine.h @@ -68,7 +68,7 @@ struct VideoCodecInfo { VideoStreamInfo stream_info_; }; -class VideoDecodeEngine : public base::RefCountedThreadSafe<VideoDecodeEngine> { +class VideoDecodeEngine { public: struct EventHandler { public: @@ -83,7 +83,6 @@ class VideoDecodeEngine : public base::RefCountedThreadSafe<VideoDecodeEngine> { virtual void OnFillBufferCallback(scoped_refptr<VideoFrame> frame) = 0; }; - VideoDecodeEngine() {} virtual ~VideoDecodeEngine() {} // Initialized the engine with specified configuration. |message_loop| could @@ -103,8 +102,9 @@ class VideoDecodeEngine : public base::RefCountedThreadSafe<VideoDecodeEngine> { // could be itself. ) then call EventHandler::OnFlushDone(). virtual void Flush() = 0; - // Used in openmax to InitialReadBuffers(). - virtual void Seek() = 0; // TODO(jiesun): Do we need this? + // This method is used as a signal for the decode engine to prefoll and + // issue read requests after Flush() us made. + virtual void Seek() = 0; // Buffer exchange method for input and output stream. // These functions and callbacks could be used in two scenarios for both |