OpenShot Library | libopenshot
0.3.3
|
This class adjusts the saturation of color on a frame's image. More...
#include <effects/Saturation.h>
Public Member Functions | |
std::shared_ptr< openshot::Frame > | GetFrame (int64_t frame_number) override |
This method is required for all derived classes of ClipBase, and returns a new openshot::Frame object. All Clip keyframes and effects are resolved into pixels. More... | |
std::shared_ptr< openshot::Frame > | GetFrame (std::shared_ptr< openshot::Frame > frame, int64_t frame_number) override |
This method is required for all derived classes of ClipBase, and returns a modified openshot::Frame object. More... | |
std::string | Json () const override |
Generate JSON string of this object. More... | |
Json::Value | JsonValue () const override |
Generate Json::Value for this object. More... | |
std::string | PropertiesJSON (int64_t requested_frame) const override |
Saturation () | |
Blank constructor, useful when using Json to load the effect properties. More... | |
Saturation (Keyframe saturation, Keyframe saturation_R, Keyframe saturation_G, Keyframe saturation_B) | |
void | SetJson (const std::string value) override |
Load JSON string into this object. More... | |
void | SetJsonValue (const Json::Value root) override |
Load Json::Value into this object. More... | |
Public Member Functions inherited from openshot::EffectBase | |
Json::Value | BasePropertiesJSON (int64_t requested_frame) const |
Generate JSON object of base properties (recommended to be used by all effects) More... | |
int | constrain (int color_value) |
Constrain a color value from 0 to 255. More... | |
void | DisplayInfo (std::ostream *out=&std::cout) |
Display effect information in the standard output stream (stdout) More... | |
virtual std::string | GetVisibleObjects (int64_t frame_number) const |
Get the indexes and IDs of all visible objects in the given frame. More... | |
void | InitEffectInfo () |
virtual std::string | Json (int64_t requested_frame) const |
Json::Value | JsonInfo () const |
Generate JSON object of meta data / info. More... | |
int | Order () const |
Get the order that this effect should be executed. More... | |
void | Order (int new_order) |
Set the order that this effect should be executed. More... | |
openshot::ClipBase * | ParentClip () |
Parent clip object of this effect (which can be unparented and NULL) More... | |
void | ParentClip (openshot::ClipBase *new_clip) |
Set parent clip object of this effect. More... | |
std::string | ParentClipId () const |
Return the ID of this effect's parent clip. More... | |
virtual void | SetJson (int64_t requested_frame, const std::string value) |
void | SetParentEffect (std::string parentEffect_id) |
Set the parent effect from which this properties will be set to. More... | |
virtual | ~EffectBase ()=default |
Public Member Functions inherited from openshot::ClipBase | |
ClipBase () | |
Constructor for the base clip. More... | |
virtual void | End (float value) |
Set end position (in seconds) of clip (trim end of video) More... | |
void | Id (std::string value) |
void | Layer (int value) |
Set layer of clip on timeline (lower number is covered by higher numbers) More... | |
bool | operator< (ClipBase &a) |
bool | operator<= (ClipBase &a) |
bool | operator> (ClipBase &a) |
bool | operator>= (ClipBase &a) |
void | Position (float value) |
More... | |
void | Start (float value) |
Set start position (in seconds) of clip (trim start of video) More... | |
virtual | ~ClipBase ()=default |
Public Attributes | |
Keyframe | saturation |
Overall color saturation: 0.0 = greyscale, 1.0 = normal, 2.0 = double saturation. More... | |
Keyframe | saturation_B |
Blue color saturation. More... | |
Keyframe | saturation_G |
Green color saturation. More... | |
Keyframe | saturation_R |
Red color saturation. More... | |
Public Attributes inherited from openshot::EffectBase | |
EffectInfoStruct | info |
Information about the current effect. More... | |
EffectBase * | parentEffect |
Parent effect (which properties will set this effect properties) More... | |
std::map< int, std::shared_ptr< openshot::TrackedObjectBase > > | trackedObjects |
Map of Tracked Object's by their indices (used by Effects that track objects on clips) More... | |
Additional Inherited Members | |
Protected Member Functions inherited from openshot::ClipBase | |
Json::Value | add_property_choice_json (std::string name, int value, int selected_value) const |
Generate JSON choice for a property (dropdown properties) More... | |
Json::Value | add_property_json (std::string name, float value, std::string type, std::string memo, const Keyframe *keyframe, float min_value, float max_value, bool readonly, int64_t requested_frame) const |
Generate JSON for a property. More... | |
Protected Attributes inherited from openshot::EffectBase | |
openshot::ClipBase * | clip |
Pointer to the parent clip instance (if any) More... | |
Protected Attributes inherited from openshot::ClipBase | |
float | end |
The position in seconds to end playing (used to trim the ending of a clip) More... | |
std::string | id |
ID Property for all derived Clip and Effect classes. More... | |
int | layer |
The layer this clip is on. Lower clips are covered up by higher clips. More... | |
float | position |
The position on the timeline where this clip should start playing. More... | |
std::string | previous_properties |
This string contains the previous JSON properties. More... | |
float | start |
The position in seconds to start playing (used to trim the beginning of a clip) More... | |
openshot::TimelineBase * | timeline |
Pointer to the parent timeline instance (if any) More... | |
This class adjusts the saturation of color on a frame's image.
This can be animated by passing in a Keyframe. Animating the color saturation can create some very cool effects.
Definition at line 42 of file Saturation.h.
Saturation::Saturation | ( | ) |
Blank constructor, useful when using Json to load the effect properties.
Definition at line 19 of file Saturation.cpp.
Saturation::Saturation | ( | Keyframe | saturation, |
Keyframe | saturation_R, | ||
Keyframe | saturation_G, | ||
Keyframe | saturation_B | ||
) |
Default constructor, which takes four curves (one common curve and one curve per color), to adjust the color saturation over time.
saturation | The curve to adjust the saturation of the frame's image (0.0 = greyscale, 1.0 = normal, 2.0 = double saturation) |
saturation_R | The curve to adjust red saturation of the frame's image (0.0 = greyscale, 1.0 = normal, 2.0 = double saturation) |
saturation_G | The curve to adjust green saturation of the frame's image (0.0 = greyscale, 1.0 = normal, 2.0 = double saturation) |
saturation_B | The curve to adjust blue saturation of the frame's image (0.0 = greyscale, 1.0 = normal, 2.0 = double saturation) |
Definition at line 25 of file Saturation.cpp.
|
inlineoverridevirtual |
This method is required for all derived classes of ClipBase, and returns a new openshot::Frame object. All Clip keyframes and effects are resolved into pixels.
frame_number | The frame number (starting at 1) of the clip or effect on the timeline. |
Implements openshot::ClipBase.
Definition at line 71 of file Saturation.h.
Referenced by GetFrame().
|
overridevirtual |
This method is required for all derived classes of ClipBase, and returns a modified openshot::Frame object.
The frame object is passed into this method and used as a starting point (pixels and audio). All Clip keyframes and effects are resolved into pixels.
frame | The frame object that needs the clip or effect applied to it |
frame_number | The frame number (starting at 1) of the clip or effect on the timeline. |
Implements openshot::ClipBase.
Definition at line 48 of file Saturation.cpp.
|
overridevirtual |
Generate JSON string of this object.
Reimplemented from openshot::EffectBase.
Definition at line 151 of file Saturation.cpp.
|
overridevirtual |
Generate Json::Value for this object.
Reimplemented from openshot::EffectBase.
Definition at line 158 of file Saturation.cpp.
Referenced by Json().
|
overridevirtual |
Get all properties for a specific frame (perfect for a UI to display the current state of all properties at any time)
Implements openshot::ClipBase.
Definition at line 207 of file Saturation.cpp.
|
overridevirtual |
Load JSON string into this object.
Reimplemented from openshot::EffectBase.
Definition at line 173 of file Saturation.cpp.
|
overridevirtual |
Load Json::Value into this object.
Reimplemented from openshot::EffectBase.
Definition at line 190 of file Saturation.cpp.
Referenced by SetJson().
Keyframe openshot::Saturation::saturation |
Overall color saturation: 0.0 = greyscale, 1.0 = normal, 2.0 = double saturation.
Definition at line 49 of file Saturation.h.
Referenced by GetFrame(), JsonValue(), PropertiesJSON(), and SetJsonValue().
Keyframe openshot::Saturation::saturation_B |
Blue color saturation.
Definition at line 52 of file Saturation.h.
Referenced by GetFrame(), JsonValue(), PropertiesJSON(), and SetJsonValue().
Keyframe openshot::Saturation::saturation_G |
Green color saturation.
Definition at line 51 of file Saturation.h.
Referenced by GetFrame(), JsonValue(), PropertiesJSON(), and SetJsonValue().
Keyframe openshot::Saturation::saturation_R |
Red color saturation.
Definition at line 50 of file Saturation.h.
Referenced by GetFrame(), JsonValue(), PropertiesJSON(), and SetJsonValue().