31 #ifndef OPENSHOT_BLUR_EFFECT_H 32 #define OPENSHOT_BLUR_EFFECT_H 34 #include "../EffectBase.h" 44 #include "../Exceptions.h" 46 #include "../KeyFrame.h" 47 #include "../ReaderBase.h" 48 #include "../FFmpegReader.h" 49 #include "../QtImageReader.h" 50 #include "../ChunkReader.h" 67 void init_effect_details();
70 int* initBoxes(
float sigma,
int n);
71 void boxBlurH(
unsigned char *scl,
unsigned char *tcl,
int w,
int h,
int r);
72 void boxBlurT(
unsigned char *scl,
unsigned char *tcl,
int w,
int h,
int r);
102 std::shared_ptr<Frame>
GetFrame(std::shared_ptr<Frame> frame, int64_t frame_number);
106 void SetJson(std::string value);
This abstract class is the base class, used by all effects in libopenshot.
This class adjusts the blur of an image, and can be animated with openshot::Keyframe curves over time...
std::string PropertiesJSON(int64_t requested_frame)
Json::Value JsonValue()
Generate Json::JsonValue for this object.
Keyframe iterations
Iterations keyframe. The # of blur iterations per pixel. 3 iterations = Gaussian. ...
Keyframe vertical_radius
Vertical blur radius keyframe. The size of the vertical blur operation in pixels. ...
void SetJsonValue(Json::Value root)
Load Json::JsonValue into this object.
Blur()
Blank constructor, useful when using Json to load the effect properties.
std::shared_ptr< Frame > GetFrame(std::shared_ptr< Frame > frame, int64_t frame_number)
This method is required for all derived classes of EffectBase, and returns a modified openshot::Frame...
This namespace is the default namespace for all code in the openshot library.
std::string Json()
Get and Set JSON methods.
void SetJson(std::string value)
Load JSON string into this object.
A Keyframe is a collection of Point instances, which is used to vary a number or property over time...
Keyframe sigma
Sigma keyframe. The amount of spread in the blur operation. Should be larger than radius...
Keyframe horizontal_radius
Horizontal blur radius keyframe. The size of the horizontal blur operation in pixels.