OpenShot Library | libopenshot  0.1.9
Public Member Functions | List of all members
openshot::ImageReader Class Reference

This class uses the ImageMagick++ libraries, to open image files, and return openshot::Frame objects containing the image. More...

#include <ImageReader.h>

Inheritance diagram for openshot::ImageReader:
openshot::ReaderBase

Public Member Functions

void Close ()
 Close File. More...
 
CacheMemoryGetCache ()
 Get the cache object used by this reader (always returns NULL for this object) More...
 
std::shared_ptr< FrameGetFrame (int64_t requested_frame)
 
 ImageReader (string path)
 
 ImageReader (string path, bool inspect_reader)
 
bool IsOpen ()
 Determine if reader is open or closed. More...
 
string Json ()
 Get and Set JSON methods. More...
 
Json::Value JsonValue ()
 Generate Json::JsonValue for this object. More...
 
string Name ()
 Return the type name of the class. More...
 
void Open ()
 Open File - which is called by the constructor automatically. More...
 
void SetJson (string value)
 Load JSON string into this object. More...
 
void SetJsonValue (Json::Value root)
 Load Json::JsonValue into this object. More...
 
- Public Member Functions inherited from openshot::ReaderBase
void DisplayInfo ()
 Display file information in the standard output stream (stdout) More...
 
 ReaderBase ()
 Constructor for the base reader, where many things are initialized. More...
 
void SetMaxSize (int width, int height)
 Set Max Image Size (used for performance optimization) More...
 

Additional Inherited Members

- Public Attributes inherited from openshot::ReaderBase
ReaderInfo info
 Information about the current media file. More...
 
- Protected Attributes inherited from openshot::ReaderBase
CriticalSection getFrameCriticalSection
 Section lock for multiple threads. More...
 
int max_height
 The maximium image height needed by this clip (used for optimizations) More...
 
int max_width
 The maximum image width needed by this clip (used for optimizations) More...
 
CriticalSection processingCriticalSection
 

Detailed Description

This class uses the ImageMagick++ libraries, to open image files, and return openshot::Frame objects containing the image.

// Create a reader for a video
ImageReader r("MyAwesomeImage.jpeg");
r.Open(); // Open the reader
// Get frame number 1 from the video
std::shared_ptr<Frame> f = r.GetFrame(1);
// Now that we have an openshot::Frame object, lets have some fun!
f->Display(); // Display the frame on the screen
// Close the reader
r.Close();

Definition at line 67 of file ImageReader.h.

Constructor & Destructor Documentation

◆ ImageReader() [1/2]

ImageReader::ImageReader ( string  path)

Constructor for ImageReader. This automatically opens the media file and loads frame 1, or it throws one of the following exceptions.

Definition at line 32 of file ImageReader.cpp.

◆ ImageReader() [2/2]

ImageReader::ImageReader ( string  path,
bool  inspect_reader 
)

Constructor for ImageReader. This only opens the media file to inspect it's properties if inspect_reader=true. When not inspecting the media file, it's much faster, and useful when you are inflating the object using JSON after instantiating it.

Definition at line 39 of file ImageReader.cpp.

Member Function Documentation

◆ Close()

void ImageReader::Close ( )
virtual

Close File.

Implements openshot::ReaderBase.

Definition at line 102 of file ImageReader.cpp.

◆ GetCache()

CacheMemory* openshot::ImageReader::GetCache ( )
inlinevirtual

Get the cache object used by this reader (always returns NULL for this object)

Implements openshot::ReaderBase.

Definition at line 89 of file ImageReader.h.

◆ GetFrame()

std::shared_ptr< Frame > ImageReader::GetFrame ( int64_t  requested_frame)
virtual

Get an openshot::Frame object for a specific frame number of this reader. All numbers return the same Frame, since they all share the same image data.

Returns
The requested frame (containing the image)
Parameters
requested_frameThe frame number that is requested.

Implements openshot::ReaderBase.

Definition at line 116 of file ImageReader.cpp.

◆ IsOpen()

bool openshot::ImageReader::IsOpen ( )
inlinevirtual

Determine if reader is open or closed.

Implements openshot::ReaderBase.

Definition at line 99 of file ImageReader.h.

◆ Json()

string ImageReader::Json ( )
virtual

Get and Set JSON methods.

Generate JSON string of this object

Implements openshot::ReaderBase.

Definition at line 133 of file ImageReader.cpp.

◆ JsonValue()

Json::Value ImageReader::JsonValue ( )
virtual

Generate Json::JsonValue for this object.

Implements openshot::ReaderBase.

Definition at line 140 of file ImageReader.cpp.

◆ Name()

string openshot::ImageReader::Name ( )
inlinevirtual

Return the type name of the class.

Implements openshot::ReaderBase.

Definition at line 102 of file ImageReader.h.

◆ Open()

void ImageReader::Open ( )
virtual

Open File - which is called by the constructor automatically.

Implements openshot::ReaderBase.

Definition at line 49 of file ImageReader.cpp.

◆ SetJson()

void ImageReader::SetJson ( string  value)
virtual

Load JSON string into this object.

Implements openshot::ReaderBase.

Definition at line 152 of file ImageReader.cpp.

◆ SetJsonValue()

void ImageReader::SetJsonValue ( Json::Value  root)
virtual

Load Json::JsonValue into this object.

Implements openshot::ReaderBase.

Definition at line 175 of file ImageReader.cpp.


The documentation for this class was generated from the following files: