Base Video Decoder. More...
#include <deBaseVideoDecoder.h>
Public Member Functions | |
Constructors and Destructors | |
| deBaseVideoDecoder (decBaseFileReader *file) | |
| Creates a new video stream object. | |
| virtual | ~deBaseVideoDecoder () |
| Cleans up the video stream object. | |
Management | |
| decBaseFileReader * | GetFile () const |
| Retrieves the file. | |
| virtual int | GetWidth () const =0 |
| Retrieves the width in pixels. | |
| virtual int | GetHeight () const =0 |
| Retrieves the height in pixels. | |
| virtual int | GetPixelFormat () const =0 |
| Retrieves the pixel format. | |
| virtual int | GetFrameCount () const =0 |
| Retrieves the number of frames. | |
| virtual int | GetFrameRate () const =0 |
| Retrieves the frame rate. | |
| virtual const decColorMatrix3 & | GetColorConversionMatrix () const =0 |
| Retrieves the color conversion matrix. | |
| virtual bool | DecodeFrame (int frame, void *buffer1, int size1, void *buffer2, int size2)=0 |
| Decodes a frame measured from the beginning. | |
Base Video Decoder.
Video decoders allow to decode video data from a file reader. The decoding can be done over time. The file reader is held open as long as the decoder exists. The video informations are provided using virtual functions. Although possible to do different the same values have to be returned during the entire lifetime of the decoder since modules expect this values to be unchangable. The position is measured in frames from the beginning of the file and behaves like a file pointer.
| deBaseVideoDecoder::deBaseVideoDecoder | ( | decBaseFileReader * | file ) |
Creates a new video stream object.
| virtual deBaseVideoDecoder::~deBaseVideoDecoder | ( | ) | [virtual] |
Cleans up the video stream object.
| virtual bool deBaseVideoDecoder::DecodeFrame | ( | int | frame, |
| void * | buffer1, | ||
| int | size1, | ||
| void * | buffer2, | ||
| int | size2 | ||
| ) | [pure virtual] |
Decodes a frame measured from the beginning.
Returns true if the frame has been decoded into the provided buffer. False is returned if the decoding failed or if the requested frame can not be decoded in a reasonable time (skipping). An error is signaled using the engine error signaling and false returned. Depending on the pixel format one or two buffers are provided. The first buffer is always used and is of size width/height. The second buffer is only provided if one of the reduced pixel formats is used. In this case the first buffer contains 1 color plane and the second 2 color planes with half or quarter size. Otherwise the first buffer contains all three color planes. In all cases the color planes are interleaved.
| virtual const decColorMatrix3& deBaseVideoDecoder::GetColorConversionMatrix | ( | ) | const [pure virtual] |
Retrieves the color conversion matrix.
| decBaseFileReader* deBaseVideoDecoder::GetFile | ( | ) | const [inline] |
Retrieves the file.
| virtual int deBaseVideoDecoder::GetFrameCount | ( | ) | const [pure virtual] |
Retrieves the number of frames.
| virtual int deBaseVideoDecoder::GetFrameRate | ( | ) | const [pure virtual] |
Retrieves the frame rate.
| virtual int deBaseVideoDecoder::GetHeight | ( | ) | const [pure virtual] |
Retrieves the height in pixels.
| virtual int deBaseVideoDecoder::GetPixelFormat | ( | ) | const [pure virtual] |
Retrieves the pixel format.
| virtual int deBaseVideoDecoder::GetWidth | ( | ) | const [pure virtual] |
Retrieves the width in pixels.
1.7.2