8#ifndef META_OCEAN_MEDIA_MOVIE_FRAME_PROVIDER_H
9#define META_OCEAN_MEDIA_MOVIE_FRAME_PROVIDER_H
28class MovieFrameProvider;
60 ET_REQUESTED_FRAME_FAILED
138 explicit MovieFrameProvider(
const bool enabled =
true,
const unsigned int maximalFrameStorage = 150u,
const unsigned int maximalQueueStorage = 50u);
149 inline bool isEnabled()
const;
196 inline double duration()
const;
208 inline const FrameType& frameType()
const;
222 inline size_t frameCapacity()
const;
262 inline void removeFrameCallback(
const FrameCallback& callback);
276 inline void removeEventCallback(
const EventCallback& callback);
417 bool handlePreviewFrame(
const Frame& frame,
unsigned int index,
const unsigned int previewWidth,
const unsigned int previewHeight);
438 bool enabled_ =
false;
441 bool released_ =
false;
456 double mediaDuration_ = 0.0;
459 double mediaFrameFrequency_ = 0.0;
462 double mediaFrameTime_ = 0.0;
465 unsigned int actualFrameNumber_ = 0u;
468 unsigned int estimatedFrameNumber_ = 0u;
471 unsigned int currentFrameNumber_ = 0u;
474 unsigned int maximalQueueSize_ = 0u;
501 unsigned int preferredPreviewWidth_ = 0u;
504 unsigned int preferredPreviewHeight_ = 100u;
516 unsigned int frameRequestIndex_ = (
unsigned int)(-1);
525 double frameRequestTimeout_ = 1.0;
This class implements a container for callback functions.
Definition Callback.h:3456
This class implements an extended callbacks object and is also thread-safe.
Definition Callback.h:4124
void addCallback(const T &callback)
Adds a new callback object.
Definition Callback.h:4304
void removeCallback(const T &callback)
Removes a callback object.
Definition Callback.h:4329
This class implements Ocean's image class.
Definition Frame.h:1808
Definition of a frame type composed by the frame dimension, pixel format and pixel origin.
Definition Frame.h:30
PixelFormat
Definition of all pixel formats available in the Ocean framework.
Definition Frame.h:183
unsigned int width() const
Returns the width of the frame format in pixel.
Definition Frame.h:3170
PixelOrigin
Defines different types of frame origin positions.
Definition Frame.h:1046
unsigned int height() const
Returns the height of the frame in pixel.
Definition Frame.h:3175
This class implements a recursive lock object.
Definition Lock.h:31
This template class implements a object reference with an internal reference counter.
Definition base/ObjectRef.h:58
This class implements a data storage map that stores the data elements in a ring manner.
Definition RingMap.h:32
size_t capacity() const
Returns the capacity of this storage container.
Definition RingMap.h:287
This class implements a scoped lock object for recursive lock objects.
Definition Lock.h:135
This class implements a subscription object which can be used unique subscriptions to e....
Definition ScopedSubscription.h:28
This class implements a thread.
Definition Thread.h:115
This class implements a timestamp.
Definition Timestamp.h:36
std::vector< FrameRef > FrameRefs
Definition of a vector holding frame references.
Definition Frame.h:1783
std::pair< Index32, Index32 > IndexPair32
Definition of a pair holding 32 bit indices.
Definition Base.h:138
std::shared_ptr< AnyCamera > SharedAnyCamera
Definition of a shared pointer holding an AnyCamera object with Scalar precision.
Definition AnyCamera.h:60
The namespace covering the entire Ocean framework.
Definition Accessor.h:15