14#define DBG FASTLED_DBG
16using fl::ByteStreamPtr;
17using fl::FileHandlePtr;
35 mImpl->setFade(fadeInTime, fadeOutTime);
48 FASTLED_WARN(
"Video::begin: mImpl is null, manually constructed videos "
49 "must include full parameters.");
53 mError =
"FileHandle is null";
68 mError =
"FileHandle is null";
77 mImpl->beginStream(bs);
106 return mImpl->durationMicros();
115 return mImpl->draw(now, frame);
135 return mImpl->timeScale();
144 return mImpl->pixelsPerFrame();
158 return mImpl->rewind();
162 if (!mFx->hasFixedFrameRate(&mFps)) {
163 FASTLED_WARN(
"VideoFxWrapper: Fx does not have a fixed frame rate, "
169 mVideo->beginStream(mByteStream);
175 Str out =
"video_fx_wrapper: ";
194 mVideo->setFade(fadeInTime, fadeOutTime);
const char * c_str() const
void draw(DrawContext context) override
bool begin(fl::FileHandlePtr h)
void pause(fl::u32 now) override
Str fxName() const override
size_t pixelsPerFrame() const
bool beginStream(fl::ByteStreamPtr s)
void setFade(fl::u32 fadeInTime, fl::u32 fadeOutTime)
void setTimeScale(float timeScale)
Video & operator=(const Video &)
void resume(fl::u32 now) override
int32_t durationMicros() const
void setFade(fl::u32 fadeInTime, fl::u32 fadeOutTime)
Str fxName() const override
ByteStreamMemoryPtr mByteStream
void draw(DrawContext context) override
~VideoFxWrapper() override
string & append(const BitsetFixed< N > &bs)
Defines the red, green, and blue (RGB) pixel struct.
Implements the FastLED namespace macros.
shared_ptr< T > make_shared(Args &&... args)
#define FASTLED_SMART_PTR(type)
Representation of an RGB pixel (Red, Green, Blue)