OpenShot Library | libopenshot
0.2.5
|
This class reads a special chunk-formatted file, which can be easily shared in a distributed environment. More...
#include <ChunkReader.h>
Public Member Functions | |
ChunkReader (std::string path, ChunkVersion chunk_version) | |
Constructor for ChunkReader. This automatically opens the chunk file or folder and loads frame 1, or it throws one of the following exceptions. More... | |
void | Close () |
Close the reader. More... | |
openshot::CacheMemory * | GetCache () |
Get the cache object used by this reader (always return NULL for this reader) More... | |
int64_t | GetChunkSize () |
Get the chunk size (number of frames to write in each chunk) More... | |
std::shared_ptr< openshot::Frame > | GetFrame (int64_t requested_frame) |
Get an openshot::Frame object for a specific frame number of this reader. More... | |
bool | IsOpen () |
Determine if reader is open or closed. More... | |
std::string | Json () const override |
Get and Set JSON methods. More... | |
Json::Value | JsonValue () const override |
Generate Json::Value for this object. More... | |
std::string | Name () |
Return the type name of the class. More... | |
void | Open () |
Open the reader. This is required before you can access frames or data from the reader. More... | |
void | SetChunkSize (int64_t new_size) |
Set the chunk size (number of frames to write in each chunk) More... | |
void | SetJson (const std::string value) |
Load JSON string into this object. More... | |
void | SetJsonValue (const Json::Value root) |
Load Json::Value into this object. More... | |
![]() | |
void | DisplayInfo () |
Display file information in the standard output stream (stdout) More... | |
openshot::ClipBase * | GetClip () |
Parent clip object of this reader (which can be unparented and NULL) More... | |
ReaderBase () | |
Constructor for the base reader, where many things are initialized. More... | |
void | SetClip (openshot::ClipBase *clip) |
Set parent clip object of this reader. More... | |
virtual | ~ReaderBase ()=default |
Additional Inherited Members | |
![]() | |
openshot::ReaderInfo | info |
Information about the current media file. More... | |
![]() | |
juce::CriticalSection | getFrameCriticalSection |
Section lock for multiple threads. More... | |
openshot::ClipBase * | parent |
juce::CriticalSection | processingCriticalSection |
This class reads a special chunk-formatted file, which can be easily shared in a distributed environment.
It stores the video in small "chunks", which are really just short video clips, a few seconds each. A ChunkReader only needs the part of the chunk that contains the frames it is looking for. For example, if you only need the end of a video, only the last few chunks might be needed to successfully access those openshot::Frame objects.
Definition at line 103 of file ChunkReader.h.
ChunkReader::ChunkReader | ( | std::string | path, |
ChunkVersion | chunk_version | ||
) |
Constructor for ChunkReader. This automatically opens the chunk file or folder and loads frame 1, or it throws one of the following exceptions.
path | The folder path / location of a chunk (chunks are stored as folders) |
chunk_version | Choose the video version / quality (THUMBNAIL, PREVIEW, or FINAL) |
Definition at line 36 of file ChunkReader.cpp.
|
virtual |
Close the reader.
Implements openshot::ReaderBase.
Definition at line 162 of file ChunkReader.cpp.
Referenced by ChunkReader(), and SetJsonValue().
|
inlinevirtual |
Get the cache object used by this reader (always return NULL for this reader)
Implements openshot::ReaderBase.
Definition at line 146 of file ChunkReader.h.
|
inline |
Get the chunk size (number of frames to write in each chunk)
Definition at line 139 of file ChunkReader.h.
|
virtual |
Get an openshot::Frame object for a specific frame number of this reader.
requested_frame | The frame number you want to retrieve |
Implements openshot::ReaderBase.
Definition at line 196 of file ChunkReader.cpp.
|
inlinevirtual |
Determine if reader is open or closed.
Implements openshot::ReaderBase.
Definition at line 154 of file ChunkReader.h.
|
overridevirtual |
Get and Set JSON methods.
Generate JSON string of this object
Implements openshot::ReaderBase.
Definition at line 259 of file ChunkReader.cpp.
|
overridevirtual |
Generate Json::Value for this object.
Implements openshot::ReaderBase.
Definition at line 266 of file ChunkReader.cpp.
Referenced by Json().
|
inlinevirtual |
Return the type name of the class.
Implements openshot::ReaderBase.
Definition at line 157 of file ChunkReader.h.
|
virtual |
Open the reader. This is required before you can access frames or data from the reader.
Implements openshot::ReaderBase.
Definition at line 148 of file ChunkReader.cpp.
Referenced by ChunkReader(), and SetJsonValue().
|
inline |
Set the chunk size (number of frames to write in each chunk)
new_size | The number of frames per chunk |
Definition at line 143 of file ChunkReader.h.
|
virtual |
Load JSON string into this object.
Implements openshot::ReaderBase.
Definition at line 282 of file ChunkReader.cpp.
|
virtual |
Load Json::Value into this object.
Implements openshot::ReaderBase.
Definition at line 298 of file ChunkReader.cpp.
Referenced by SetJson().