|
OpenShot Library | libopenshot
0.2.5
|
This class represents a clip (used to arrange readers on the timeline) More...
#include <Clip.h>
Public Member Functions | |
| void | AddEffect (openshot::EffectBase *effect) |
| Add an effect to the clip. More... | |
| Clip () | |
| Default Constructor. More... | |
| Clip (openshot::ReaderBase *new_reader) | |
| Constructor with reader. More... | |
| Clip (std::string path) | |
| Constructor with filepath (reader is automatically created... by guessing file extensions) More... | |
| void | Close () |
| Close the internal reader. More... | |
| std::list< openshot::EffectBase * > | Effects () |
| Return the list of effects on the timeline. More... | |
| float | End () const |
| Override End() method. More... | |
| void | End (float value) |
| Set end position (in seconds) of clip (trim end of video) More... | |
| std::shared_ptr< openshot::Frame > | GetFrame (int64_t requested_frame) |
| Get an openshot::Frame object for a specific frame number of this timeline. More... | |
| std::string | Json () const override |
| Get and Set JSON methods. More... | |
| Json::Value | JsonValue () const override |
| Generate Json::Value for this object. More... | |
| void | Open () |
| Open the internal reader. More... | |
| std::string | PropertiesJSON (int64_t requested_frame) const override |
| openshot::ReaderBase * | Reader () |
| Get the current reader. More... | |
| void | Reader (openshot::ReaderBase *new_reader) |
| Set the current reader. More... | |
| void | RemoveEffect (openshot::EffectBase *effect) |
| Remove an effect from the clip. 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... | |
| bool | Waveform () |
| Waveform property. More... | |
| void | Waveform (bool value) |
| Set the waveform property of this clip. More... | |
| virtual | ~Clip () |
| Destructor. More... | |
Public Member Functions inherited from openshot::ClipBase | |
| ClipBase () | |
| Constructor for the base clip. More... | |
| float | Duration () const |
| Get the length of this clip (in seconds) More... | |
| float | End () const |
| Get end position (in seconds) of clip (trim end of video) More... | |
| void | End (float value) |
| Set end position (in seconds) of clip (trim end of video) More... | |
| std::string | Id () const |
| Get basic properties. More... | |
| void | Id (std::string value) |
| Set basic properties. More... | |
| int | Layer () const |
| Get layer of clip on timeline (lower number is covered by higher numbers) More... | |
| 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) |
| float | Position () const |
| Get position on timeline (in seconds) More... | |
| void | Position (float value) |
More... | |
| float | Start () const |
| Get start position (in seconds) of clip (trim start of video) More... | |
| void | Start (float value) |
| Set start position (in seconds) of clip (trim start of video) More... | |
| virtual | ~ClipBase ()=default |
Public Attributes | |
| openshot::Keyframe | alpha |
| Curve representing the alpha (1 to 0) More... | |
| openshot::AnchorType | anchor |
| The anchor determines what parent a clip should snap to. More... | |
| openshot::Keyframe | channel_filter |
| Audio channel filter and mappings. More... | |
| openshot::Keyframe | channel_mapping |
| A number representing an audio channel to output (only works when filtering a channel) More... | |
| openshot::GravityType | crop_gravity |
| Cropping needs to have a gravity to determine what side we are cropping. More... | |
| openshot::Keyframe | crop_height |
| Curve representing height in percent (0.0=0%, 1.0=100%) More... | |
| openshot::Keyframe | crop_width |
| Curve representing width in percent (0.0=0%, 1.0=100%) More... | |
| openshot::Keyframe | crop_x |
| Curve representing X offset in percent (-1.0=-100%, 0.0=0%, 1.0=100%) More... | |
| openshot::Keyframe | crop_y |
| Curve representing Y offset in percent (-1.0=-100%, 0.0=0%, 1.0=100%) More... | |
| openshot::FrameDisplayType | display |
| The format to display the frame number (if any) More... | |
| openshot::GravityType | gravity |
| The gravity of a clip determines where it snaps to its parent. More... | |
| openshot::Keyframe | has_audio |
| Override has_video and has_audio properties of clip (and their readers) More... | |
| openshot::Keyframe | has_video |
| An optional override to determine if this clip has video (-1=undefined, 0=no, 1=yes) More... | |
| openshot::Keyframe | location_x |
| Curve representing the relative X position in percent based on the gravity (-1 to 1) More... | |
| openshot::Keyframe | location_y |
| Curve representing the relative Y position in percent based on the gravity (-1 to 1) More... | |
| openshot::VolumeMixType | mixing |
| What strategy should be followed when mixing audio with other clips. More... | |
| openshot::Keyframe | perspective_c1_x |
| Curves representing X for coordinate 1. More... | |
| openshot::Keyframe | perspective_c1_y |
| Curves representing Y for coordinate 1. More... | |
| openshot::Keyframe | perspective_c2_x |
| Curves representing X for coordinate 2. More... | |
| openshot::Keyframe | perspective_c2_y |
| Curves representing Y for coordinate 2. More... | |
| openshot::Keyframe | perspective_c3_x |
| Curves representing X for coordinate 3. More... | |
| openshot::Keyframe | perspective_c3_y |
| Curves representing Y for coordinate 3. More... | |
| openshot::Keyframe | perspective_c4_x |
| Curves representing X for coordinate 4. More... | |
| openshot::Keyframe | perspective_c4_y |
| Curves representing Y for coordinate 4. More... | |
| openshot::Keyframe | rotation |
| Curve representing the rotation (0 to 360) More... | |
| openshot::ScaleType | scale |
| The scale determines how a clip should be resized to fit its parent. More... | |
| openshot::Keyframe | scale_x |
| Curve representing the horizontal scaling in percent (0 to 1) More... | |
| openshot::Keyframe | scale_y |
| Curve representing the vertical scaling in percent (0 to 1) More... | |
| openshot::Keyframe | shear_x |
| Curve representing X shear angle in degrees (-45.0=left, 45.0=right) More... | |
| openshot::Keyframe | shear_y |
| Curve representing Y shear angle in degrees (-45.0=down, 45.0=up) More... | |
| openshot::Keyframe | time |
| Curve representing the frames over time to play (used for speed and direction of video) More... | |
| openshot::Keyframe | volume |
| Curve representing the volume (0 to 1) More... | |
| openshot::Color | wave_color |
| Curve representing the color of the audio wave form. More... | |
Protected Attributes | |
| juce::CriticalSection | getFrameCriticalSection |
| Section lock for multiple threads. 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... | |
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... | |
This class represents a clip (used to arrange readers on the timeline)
Each image, video, or audio file is represented on a layer as a clip. A clip has many properties that affect how it behaves on the timeline, such as its size, position, transparency, rotation, speed, volume, etc...
| Clip::Clip | ( | std::string | path | ) |
| Clip::Clip | ( | openshot::ReaderBase * | new_reader | ) |
| void Clip::AddEffect | ( | openshot::EffectBase * | effect | ) |
Add an effect to the clip.
| effect | Add an effect to the clip. An effect can modify the audio or video of an openshot::Frame. |
Definition at line 991 of file Clip.cpp.
Referenced by SetJsonValue().
| void Clip::Close | ( | ) |
|
inline |
| float Clip::End | ( | ) | const |
|
inline |
| std::shared_ptr< Frame > Clip::GetFrame | ( | int64_t | requested_frame | ) |
Get an openshot::Frame object for a specific frame number of this timeline.
| requested_frame | The frame number that is requested |
Definition at line 295 of file Clip.cpp.
Referenced by openshot::Timeline::GetFrame().
|
overridevirtual |
|
overridevirtual |
Generate Json::Value for this object.
Implements openshot::ClipBase.
Definition at line 743 of file Clip.cpp.
Referenced by Json().
| void Clip::Open | ( | ) |
|
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.
| ReaderBase * Clip::Reader | ( | ) |
| void Clip::Reader | ( | openshot::ReaderBase * | new_reader | ) |
Set the current reader.
| new_reader | The reader to be used by this clip |
Definition at line 219 of file Clip.cpp.
Referenced by openshot::Timeline::ClearAllCache().
| void Clip::RemoveEffect | ( | openshot::EffectBase * | effect | ) |
|
virtual |
Load JSON string into this object.
Implements openshot::ClipBase.
|
virtual |
Load Json::Value into this object.
Implements openshot::ClipBase.
Definition at line 815 of file Clip.cpp.
Referenced by SetJson(), and openshot::Timeline::SetJsonValue().
|
inline |
|
inline |
| openshot::Keyframe openshot::Clip::alpha |
Curve representing the alpha (1 to 0)
Definition at line 218 of file Clip.h.
Referenced by JsonValue(), PropertiesJSON(), and SetJsonValue().
| openshot::AnchorType openshot::Clip::anchor |
The anchor determines what parent a clip should snap to.
Definition at line 145 of file Clip.h.
Referenced by JsonValue(), and SetJsonValue().
| openshot::Keyframe openshot::Clip::channel_filter |
Audio channel filter and mappings.
A number representing an audio channel to filter (clears all other channels)
Definition at line 248 of file Clip.h.
Referenced by JsonValue(), PropertiesJSON(), and SetJsonValue().
| openshot::Keyframe openshot::Clip::channel_mapping |
A number representing an audio channel to output (only works when filtering a channel)
Definition at line 249 of file Clip.h.
Referenced by JsonValue(), PropertiesJSON(), and SetJsonValue().
| openshot::GravityType openshot::Clip::crop_gravity |
| openshot::Keyframe openshot::Clip::crop_height |
Curve representing height in percent (0.0=0%, 1.0=100%)
Definition at line 231 of file Clip.h.
Referenced by JsonValue(), PropertiesJSON(), and SetJsonValue().
| openshot::Keyframe openshot::Clip::crop_width |
Curve representing width in percent (0.0=0%, 1.0=100%)
Definition at line 230 of file Clip.h.
Referenced by JsonValue(), PropertiesJSON(), and SetJsonValue().
| openshot::Keyframe openshot::Clip::crop_x |
Curve representing X offset in percent (-1.0=-100%, 0.0=0%, 1.0=100%)
Definition at line 232 of file Clip.h.
Referenced by JsonValue(), PropertiesJSON(), and SetJsonValue().
| openshot::Keyframe openshot::Clip::crop_y |
Curve representing Y offset in percent (-1.0=-100%, 0.0=0%, 1.0=100%)
Definition at line 233 of file Clip.h.
Referenced by JsonValue(), PropertiesJSON(), and SetJsonValue().
| openshot::FrameDisplayType openshot::Clip::display |
The format to display the frame number (if any)
Definition at line 146 of file Clip.h.
Referenced by JsonValue(), PropertiesJSON(), and SetJsonValue().
|
protected |
| openshot::GravityType openshot::Clip::gravity |
The gravity of a clip determines where it snaps to its parent.
Definition at line 143 of file Clip.h.
Referenced by JsonValue(), PropertiesJSON(), and SetJsonValue().
| openshot::Keyframe openshot::Clip::has_audio |
Override has_video and has_audio properties of clip (and their readers)
An optional override to determine if this clip has audio (-1=undefined, 0=no, 1=yes)
Definition at line 252 of file Clip.h.
Referenced by GetFrame(), JsonValue(), PropertiesJSON(), and SetJsonValue().
| openshot::Keyframe openshot::Clip::has_video |
An optional override to determine if this clip has video (-1=undefined, 0=no, 1=yes)
Definition at line 253 of file Clip.h.
Referenced by GetFrame(), JsonValue(), PropertiesJSON(), and SetJsonValue().
| openshot::Keyframe openshot::Clip::location_x |
Curve representing the relative X position in percent based on the gravity (-1 to 1)
Definition at line 214 of file Clip.h.
Referenced by JsonValue(), PropertiesJSON(), and SetJsonValue().
| openshot::Keyframe openshot::Clip::location_y |
Curve representing the relative Y position in percent based on the gravity (-1 to 1)
Definition at line 215 of file Clip.h.
Referenced by JsonValue(), PropertiesJSON(), and SetJsonValue().
| openshot::VolumeMixType openshot::Clip::mixing |
What strategy should be followed when mixing audio with other clips.
Definition at line 147 of file Clip.h.
Referenced by JsonValue(), PropertiesJSON(), and SetJsonValue().
| openshot::Keyframe openshot::Clip::perspective_c1_x |
Curves representing X for coordinate 1.
Definition at line 238 of file Clip.h.
Referenced by JsonValue(), and SetJsonValue().
| openshot::Keyframe openshot::Clip::perspective_c1_y |
Curves representing Y for coordinate 1.
Definition at line 239 of file Clip.h.
Referenced by JsonValue(), and SetJsonValue().
| openshot::Keyframe openshot::Clip::perspective_c2_x |
Curves representing X for coordinate 2.
Definition at line 240 of file Clip.h.
Referenced by JsonValue(), and SetJsonValue().
| openshot::Keyframe openshot::Clip::perspective_c2_y |
Curves representing Y for coordinate 2.
Definition at line 241 of file Clip.h.
Referenced by JsonValue(), and SetJsonValue().
| openshot::Keyframe openshot::Clip::perspective_c3_x |
Curves representing X for coordinate 3.
Definition at line 242 of file Clip.h.
Referenced by JsonValue(), and SetJsonValue().
| openshot::Keyframe openshot::Clip::perspective_c3_y |
Curves representing Y for coordinate 3.
Definition at line 243 of file Clip.h.
Referenced by JsonValue(), and SetJsonValue().
| openshot::Keyframe openshot::Clip::perspective_c4_x |
Curves representing X for coordinate 4.
Definition at line 244 of file Clip.h.
Referenced by JsonValue(), and SetJsonValue().
| openshot::Keyframe openshot::Clip::perspective_c4_y |
Curves representing Y for coordinate 4.
Definition at line 245 of file Clip.h.
Referenced by JsonValue(), and SetJsonValue().
| openshot::Keyframe openshot::Clip::rotation |
Curve representing the rotation (0 to 360)
Definition at line 219 of file Clip.h.
Referenced by JsonValue(), PropertiesJSON(), and SetJsonValue().
| openshot::ScaleType openshot::Clip::scale |
The scale determines how a clip should be resized to fit its parent.
Definition at line 144 of file Clip.h.
Referenced by JsonValue(), PropertiesJSON(), and SetJsonValue().
| openshot::Keyframe openshot::Clip::scale_x |
Curve representing the horizontal scaling in percent (0 to 1)
Definition at line 212 of file Clip.h.
Referenced by JsonValue(), PropertiesJSON(), and SetJsonValue().
| openshot::Keyframe openshot::Clip::scale_y |
Curve representing the vertical scaling in percent (0 to 1)
Definition at line 213 of file Clip.h.
Referenced by JsonValue(), PropertiesJSON(), and SetJsonValue().
| openshot::Keyframe openshot::Clip::shear_x |
Curve representing X shear angle in degrees (-45.0=left, 45.0=right)
Definition at line 236 of file Clip.h.
Referenced by JsonValue(), PropertiesJSON(), and SetJsonValue().
| openshot::Keyframe openshot::Clip::shear_y |
Curve representing Y shear angle in degrees (-45.0=down, 45.0=up)
Definition at line 237 of file Clip.h.
Referenced by JsonValue(), PropertiesJSON(), and SetJsonValue().
| openshot::Keyframe openshot::Clip::time |
Curve representing the frames over time to play (used for speed and direction of video)
Definition at line 222 of file Clip.h.
Referenced by End(), GetFrame(), JsonValue(), PropertiesJSON(), and SetJsonValue().
| openshot::Keyframe openshot::Clip::volume |
Curve representing the volume (0 to 1)
Definition at line 223 of file Clip.h.
Referenced by JsonValue(), PropertiesJSON(), and SetJsonValue().
| openshot::Color openshot::Clip::wave_color |
Curve representing the color of the audio wave form.
Definition at line 226 of file Clip.h.
Referenced by JsonValue(), PropertiesJSON(), and SetJsonValue().
1.8.18