FastLED 3.9.15
Loading...
Searching...
No Matches
fl::third_party::SoftwareMpeg1Decoder Class Reference

Detailed Description

Definition at line 31 of file software_decoder.h.

#include <software_decoder.h>

+ Inheritance diagram for fl::third_party::SoftwareMpeg1Decoder:
+ Collaboration diagram for fl::third_party::SoftwareMpeg1Decoder:

Classes

struct  Mpeg1DecoderData
 

Public Member Functions

 SoftwareMpeg1Decoder (const Mpeg1Config &config) FL_NOEXCEPT
 
 ~SoftwareMpeg1Decoder ()
 
bool begin (fl::filebuf_ptr stream) FL_NOEXCEPT override
 
DecodeResult decode () FL_NOEXCEPT override
 
void end () FL_NOEXCEPT override
 
int getAudioSampleRate () const FL_NOEXCEPT override
 
Frame getCurrentFrame () FL_NOEXCEPT override
 
fl::u32 getCurrentFrameIndex () const FL_NOEXCEPT override
 
fl::u32 getFrameCount () const FL_NOEXCEPT override
 
fl::u16 getFrameRate () const FL_NOEXCEPT
 
fl::u16 getHeight () const FL_NOEXCEPT
 
fl::u16 getWidth () const FL_NOEXCEPT
 
bool hasAudio () const FL_NOEXCEPT override
 
bool hasError (fl::string *msg=nullptr) const FL_NOEXCEPT override
 
bool hasMoreFrames () const FL_NOEXCEPT override
 
bool isReady () const FL_NOEXCEPT override
 
bool seek (fl::u32 frameIndex) FL_NOEXCEPT override
 
void setAudioCallback (AudioFrameCallback callback) FL_NOEXCEPT override
 
- Public Member Functions inherited from fl::IDecoder
virtual ~IDecoder () FL_NOEXCEPT=default
 

Static Public Member Functions

static void audioDecodeCallback (fl::third_party::plm_t *plm, fl::third_party::plm_samples_t *samples, void *user) FL_NOEXCEPT
 
static void videoDecodeCallback (fl::third_party::plm_t *plm, fl::third_party::plm_frame_t *frame, void *user) FL_NOEXCEPT
 

Private Member Functions

void allocateFrameBuffers () FL_NOEXCEPT
 
void cleanupDecoder () FL_NOEXCEPT
 
bool decodeFrame () FL_NOEXCEPT
 
bool decodeNextFrame () FL_NOEXCEPT
 
bool decodePictureHeader () FL_NOEXCEPT
 
bool initializeDecoder () FL_NOEXCEPT
 
bool parseSequenceHeader () FL_NOEXCEPT
 
void setError (const fl::string &message) FL_NOEXCEPT
 

Private Attributes

Mpeg1Config config_
 
fl::shared_ptr< FramecurrentFrame_
 
fl::u8 currentFrameIndex_ = 0
 
Mpeg1DecoderDatadecoderData_
 
bool endOfStream_ = false
 
fl::string errorMessage_
 
fl::vector< fl::shared_ptr< Frame > > frameBuffer_
 
bool hasError_ = false
 
fl::u8 lastDecodedIndex_ = 0
 
bool ready_ = false
 
fl::filebuf_ptr stream_
 

The documentation for this class was generated from the following files: