FastLED 3.9.15
Loading...
Searching...
No Matches

◆ begin()

bool fl::JpegDecoder::Impl::begin ( fl::filebuf_ptr stream)
inline

Definition at line 71 of file jpeg.cpp.hpp.

71 {
72 if (!mDriver) {
73 setError("Driver not initialized");
74 return false;
75 }
76
78 mHasError = false;
79 mErrorMessage.clear();
80 mProgress = 0.0f;
81
82 // Configure progressive settings
83 fl::third_party::TJpgProgressiveConfig mDriverconfig;
84 mDriverconfig.max_mcus_per_tick = progressive_mConfig.max_mcus_per_tick;
85 mDriverconfig.max_time_per_tick_ms = progressive_mConfig.max_time_per_tick_ms;
86 mDriver->setProgressiveConfig(mDriverconfig);
87
88 // Set scale based on quality setting
89 mDriver->setScale(getScale());
90
91 if (!mDriver->beginDecodingStream(stream, mConfig.format)) {
92 fl::string err;
93 if (mDriver->hasError(&err)) {
94 setError(err);
95 } else {
96 setError("Failed to begin JPEG decoding");
97 }
98 return false;
99 }
100
102 return true;
103 }
void setError(const fl::string &message)
Definition jpeg.cpp.hpp:47
fl::string mErrorMessage
Definition jpeg.cpp.hpp:44
JpegDecoder::State mState
Definition jpeg.cpp.hpp:42
ProgressiveConfig progressive_mConfig
Definition jpeg.cpp.hpp:41
fl::third_party::TJpgInstanceDecoderPtr mDriver
Definition jpeg.cpp.hpp:39
fl::u8 getScale() const
Definition jpeg.cpp.hpp:53

References begin(), getScale(), fl::third_party::TJpgProgressiveConfig::max_mcus_per_tick, fl::third_party::TJpgProgressiveConfig::max_time_per_tick_ms, mConfig, mDriver, mErrorMessage, mHasError, mProgress, mState, fl::JpegDecoder::NotStarted, progressive_mConfig, and setError().

Referenced by begin().

+ Here is the call graph for this function:
+ Here is the caller graph for this function: