|
Gnash
0.8.11dev
|
Abstract base class for embedded video decoders. More...
#include <VideoDecoder.h>
Public Member Functions | |
| virtual | ~VideoDecoder () |
| virtual void | push (const EncodedVideoFrame &buffer)=0 |
| Push an encoded video frame into the decoder. More... | |
| virtual std::unique_ptr< image::GnashImage > | pop ()=0 |
| Pop a decoded frame from the decoder. THIS METHOD MAY BLOCK. More... | |
| virtual bool | peek ()=0 |
| Check whether a decoded frame is ready to be popped. More... | |
| virtual int | width () const =0 |
| Get the width in pixels of the Video. More... | |
| virtual int | height () const =0 |
| Get the height in pixels of the Video. More... | |
Abstract base class for embedded video decoders.
This very simple design allows, but does not require, the use of threads in an implementation. A user of this class push a frame into the decoder and can subsequently pop a decoded frame. Since the pop() call may block, it is advisable to first call peek() to see if there is a frame ready to be popped.
|
pure virtual |
Get the height in pixels of the Video.
Implemented in gnash::media::gst::VideoDecoderGst, gnash::media::ffmpeg::VideoDecoderFfmpeg, and gnash::media::haiku::VideoDecoderHaiku.
|
pure virtual |
Check whether a decoded frame is ready to be popped.
This method will never block.
Implemented in gnash::media::gst::VideoDecoderGst, gnash::media::ffmpeg::VideoDecoderFfmpeg, and gnash::media::haiku::VideoDecoderHaiku.
|
pure virtual |
Pop a decoded frame from the decoder. THIS METHOD MAY BLOCK.
Implemented in gnash::media::gst::VideoDecoderGst, gnash::media::ffmpeg::VideoDecoderFfmpeg, and gnash::media::haiku::VideoDecoderHaiku.
|
pure virtual |
Push an encoded video frame into the decoder.
| buffer | the video frame to decode |
Implemented in gnash::media::gst::VideoDecoderGst, gnash::media::ffmpeg::VideoDecoderFfmpeg, and gnash::media::haiku::VideoDecoderHaiku.
Referenced by gnash::Video::display().
|
pure virtual |
Get the width in pixels of the Video.
Implemented in gnash::media::gst::VideoDecoderGst, gnash::media::ffmpeg::VideoDecoderFfmpeg, and gnash::media::haiku::VideoDecoderHaiku.
1.8.12