31 #ifndef OPENSHOT_READER_BASE_H 32 #define OPENSHOT_READER_BASE_H 47 #include <QGraphicsItem> 48 #include <QGraphicsScene> 49 #include <QGraphicsPixmapItem> 120 virtual void Close() = 0;
134 virtual std::shared_ptr<openshot::Frame> GetFrame(int64_t number) = 0;
137 virtual bool IsOpen() = 0;
140 virtual std::string Name() = 0;
143 virtual std::string Json()
const = 0;
144 virtual void SetJson(
const std::string value) = 0;
145 virtual Json::Value JsonValue()
const = 0;
146 virtual void SetJsonValue(
const Json::Value root) = 0;
149 virtual void Open() = 0;
Header file for Fraction class.
Header file for ClipBase class.
int width
The width of the video (in pixesl)
float duration
Length of time (in seconds)
This abstract class is the base class, used by all readers in libopenshot.
bool has_video
Determines if this file has a video stream.
Header file for CacheMemory class.
int64_t file_size
Size of file (in bytes)
int audio_bit_rate
The bit rate of the audio stream (in bytes)
bool has_audio
Determines if this file has an audio stream.
Header file for Frame class.
int audio_stream_index
The index of the audio stream.
int64_t video_length
The number of frames in the video stream.
juce::CriticalSection processingCriticalSection
int height
The height of the video (in pixels)
openshot::Fraction video_timebase
The video timebase determines how long each frame stays on the screen.
Header file for JSON class.
This class represents a fraction.
Header file for ZeroMQ-based Logger class.
std::map< std::string, std::string > metadata
An optional map/dictionary of metadata for this reader.
This struct contains info about a media file, such as height, width, frames per second, etc...
openshot::ChannelLayout channel_layout
The channel layout (mono, stereo, 5 point surround, etc...)
juce::CriticalSection getFrameCriticalSection
Section lock for multiple threads.
Header file for ChannelLayout class.
All cache managers in libopenshot are based on this CacheBase class.
bool has_single_image
Determines if this file only contains a single image.
ChannelLayout
This enumeration determines the audio channel layout (such as stereo, mono, 5 point surround...
This abstract class is the base class, used by all clips in libopenshot.
openshot::ReaderInfo info
Information about the current media file.
openshot::Fraction audio_timebase
The audio timebase determines how long each audio packet should be played.
std::string vcodec
The name of the video codec used to encode / decode the video stream.
openshot::ClipBase * clip
Pointer to the parent clip instance (if any)
This namespace is the default namespace for all code in the openshot library.
int pixel_format
The pixel format (i.e. YUV420P, RGB24, etc...)
openshot::Fraction display_ratio
The ratio of width to height of the video stream (i.e. 640x480 has a ratio of 4/3) ...
int video_bit_rate
The bit rate of the video stream (in bytes)
openshot::Fraction pixel_ratio
The pixel ratio of the video stream as a fraction (i.e. some pixels are not square) ...
int channels
The number of audio channels used in the audio stream.
int video_stream_index
The index of the video stream.
openshot::Fraction fps
Frames per second, as a fraction (i.e. 24/1 = 24 fps)
std::string acodec
The name of the audio codec used to encode / decode the video stream.
int sample_rate
The number of audio samples per second (44100 is a common sample rate)