Blender
V3.3
|
#include <math.h>
#include <stdlib.h>
#include <string.h>
#include "MEM_guardedalloc.h"
#include "BLI_listbase.h"
#include "BLI_math.h"
#include "BLI_path_util.h"
#include "BLI_rect.h"
#include "BLI_string.h"
#include "BLI_threads.h"
#include "BLI_utildefines.h"
#include "DNA_anim_types.h"
#include "DNA_packedFile_types.h"
#include "DNA_scene_types.h"
#include "DNA_sequence_types.h"
#include "DNA_space_types.h"
#include "DNA_vfont_types.h"
#include "BKE_fcurve.h"
#include "BKE_lib_id.h"
#include "BKE_main.h"
#include "IMB_colormanagement.h"
#include "IMB_imbuf.h"
#include "IMB_imbuf_types.h"
#include "IMB_metadata.h"
#include "BLI_math_color_blend.h"
#include "RNA_access.h"
#include "RNA_prototypes.h"
#include "RE_pipeline.h"
#include "SEQ_channels.h"
#include "SEQ_effects.h"
#include "SEQ_proxy.h"
#include "SEQ_relations.h"
#include "SEQ_render.h"
#include "SEQ_time.h"
#include "SEQ_utils.h"
#include "BLF_api.h"
#include "effects.h"
#include "render.h"
#include "strip_time.h"
#include "utils.h"
Go to the source code of this file.
Classes | |
struct | WipeZone |
struct | RenderGaussianBlurEffectInitData |
struct | RenderGaussianBlurEffectThread |
Macros | |
#define | INDEX(_x, _y) (((_y) * (x) + (_x)) * 4) |
#define | INDEX(_x, _y) (((_y) * (x) + (_x)) * 4) |
#define | INDEX(_x, _y) (((_y) * (x) + (_x)) * 4) |
#define | INDEX(_x, _y) (((_y) * (x) + (_x)) * 4) |
Functions | |
Sequence Effect Factory | |
static struct SeqEffectHandle | get_sequence_effect_impl (int seq_type) |
static void | init_noop (Sequence *UNUSED(seq)) |
static void | load_noop (Sequence *UNUSED(seq)) |
static void | free_noop (Sequence *UNUSED(seq), const bool UNUSED(do_id_user)) |
static int | num_inputs_default (void) |
static void | copy_effect_default (Sequence *dst, Sequence *src, const int UNUSED(flag)) |
static void | free_effect_default (Sequence *seq, const bool UNUSED(do_id_user)) |
static int | early_out_noop (Sequence *UNUSED(seq), float UNUSED(fac)) |
static int | early_out_fade (Sequence *UNUSED(seq), float fac) |
static int | early_out_mul_input2 (Sequence *UNUSED(seq), float fac) |
static int | early_out_mul_input1 (Sequence *UNUSED(seq), float fac) |
static void | get_default_fac_noop (const Scene *UNUSED(scene), Sequence *UNUSED(seq), float UNUSED(timeline_frame), float *fac) |
static void | get_default_fac_fade (const Scene *scene, Sequence *seq, float timeline_frame, float *fac) |
static struct ImBuf * | init_execution (const SeqRenderData *context, ImBuf *ibuf1, ImBuf *ibuf2, ImBuf *ibuf3) |
Internal Utilities | |
static void | slice_get_byte_buffers (const SeqRenderData *context, const ImBuf *ibuf1, const ImBuf *ibuf2, const ImBuf *ibuf3, const ImBuf *out, int start_line, unsigned char **rect1, unsigned char **rect2, unsigned char **rect3, unsigned char **rect_out) |
static void | slice_get_float_buffers (const SeqRenderData *context, const ImBuf *ibuf1, const ImBuf *ibuf2, const ImBuf *ibuf3, const ImBuf *out, int start_line, float **rect1, float **rect2, float **rect3, float **rect_out) |
Alpha Over Effect | |
static void | init_alpha_over_or_under (Sequence *seq) |
static void | do_alphaover_effect_byte (float fac, int x, int y, unsigned char *rect1, unsigned char *rect2, unsigned char *out) |
static void | do_alphaover_effect_float (float fac, int x, int y, float *rect1, float *rect2, float *out) |
static void | do_alphaover_effect (const SeqRenderData *context, Sequence *UNUSED(seq), float UNUSED(timeline_frame), float fac, ImBuf *ibuf1, ImBuf *ibuf2, ImBuf *UNUSED(ibuf3), int start_line, int total_lines, ImBuf *out) |
Alpha Under Effect | |
static void | do_alphaunder_effect_byte (float fac, int x, int y, unsigned char *rect1, unsigned char *rect2, unsigned char *out) |
static void | do_alphaunder_effect_float (float fac, int x, int y, float *rect1, float *rect2, float *out) |
static void | do_alphaunder_effect (const SeqRenderData *context, Sequence *UNUSED(seq), float UNUSED(timeline_frame), float fac, ImBuf *ibuf1, ImBuf *ibuf2, ImBuf *UNUSED(ibuf3), int start_line, int total_lines, ImBuf *out) |
Cross Effect | |
static void | do_cross_effect_byte (float fac, int x, int y, unsigned char *rect1, unsigned char *rect2, unsigned char *out) |
static void | do_cross_effect_float (float fac, int x, int y, float *rect1, float *rect2, float *out) |
static void | do_cross_effect (const SeqRenderData *context, Sequence *UNUSED(seq), float UNUSED(timeline_frame), float fac, ImBuf *ibuf1, ImBuf *ibuf2, ImBuf *UNUSED(ibuf3), int start_line, int total_lines, ImBuf *out) |
Color Add Effect | |
static void | do_add_effect_byte (float fac, int x, int y, unsigned char *rect1, unsigned char *rect2, unsigned char *out) |
static void | do_add_effect_float (float fac, int x, int y, float *rect1, float *rect2, float *out) |
static void | do_add_effect (const SeqRenderData *context, Sequence *UNUSED(seq), float UNUSED(timeline_frame), float fac, ImBuf *ibuf1, ImBuf *ibuf2, ImBuf *UNUSED(ibuf3), int start_line, int total_lines, ImBuf *out) |
Color Subtract Effect | |
static void | do_sub_effect_byte (float fac, int x, int y, unsigned char *rect1, unsigned char *rect2, unsigned char *out) |
static void | do_sub_effect_float (float fac, int x, int y, float *rect1, float *rect2, float *out) |
static void | do_sub_effect (const SeqRenderData *context, Sequence *UNUSED(seq), float UNUSED(timeline_frame), float fac, ImBuf *ibuf1, ImBuf *ibuf2, ImBuf *UNUSED(ibuf3), int start_line, int total_lines, ImBuf *out) |
Multiply Effect | |
static void | do_mul_effect_byte (float fac, int x, int y, unsigned char *rect1, unsigned char *rect2, unsigned char *out) |
static void | do_mul_effect_float (float fac, int x, int y, float *rect1, float *rect2, float *out) |
static void | do_mul_effect (const SeqRenderData *context, Sequence *UNUSED(seq), float UNUSED(timeline_frame), float fac, ImBuf *ibuf1, ImBuf *ibuf2, ImBuf *UNUSED(ibuf3), int start_line, int total_lines, ImBuf *out) |
Color Mix Effect | |
static void | init_colormix_effect (Sequence *seq) |
static void | do_colormix_effect (const SeqRenderData *context, Sequence *seq, float UNUSED(timeline_frame), float UNUSED(fac), ImBuf *ibuf1, ImBuf *ibuf2, ImBuf *UNUSED(ibuf3), int start_line, int total_lines, ImBuf *out) |
Transform Effect | |
static void | init_transform_effect (Sequence *seq) |
static int | num_inputs_transform (void) |
static void | free_transform_effect (Sequence *seq, const bool UNUSED(do_id_user)) |
static void | copy_transform_effect (Sequence *dst, Sequence *src, const int UNUSED(flag)) |
static void | transform_image (int x, int y, int start_line, int total_lines, ImBuf *ibuf1, ImBuf *out, float scale_x, float scale_y, float translate_x, float translate_y, float rotate, int interpolation) |
static void | do_transform_effect (const SeqRenderData *context, Sequence *seq, float UNUSED(timeline_frame), float UNUSED(fac), ImBuf *ibuf1, ImBuf *UNUSED(ibuf2), ImBuf *UNUSED(ibuf3), int start_line, int total_lines, ImBuf *out) |
Solid Color Effect | |
static void | init_solid_color (Sequence *seq) |
static int | num_inputs_color (void) |
static void | free_solid_color (Sequence *seq, const bool UNUSED(do_id_user)) |
static void | copy_solid_color (Sequence *dst, Sequence *src, const int UNUSED(flag)) |
static int | early_out_color (Sequence *UNUSED(seq), float UNUSED(fac)) |
static ImBuf * | do_solid_color (const SeqRenderData *context, Sequence *seq, float UNUSED(timeline_frame), float UNUSED(fac), ImBuf *ibuf1, ImBuf *ibuf2, ImBuf *ibuf3) |
Multi-Camera Effect | |
static int | num_inputs_multicam (void) |
static int | early_out_multicam (Sequence *UNUSED(seq), float UNUSED(fac)) |
static ImBuf * | do_multicam (const SeqRenderData *context, Sequence *seq, float timeline_frame, float UNUSED(fac), ImBuf *UNUSED(ibuf1), ImBuf *UNUSED(ibuf2), ImBuf *UNUSED(ibuf3)) |
Adjustment Effect | |
static int | num_inputs_adjustment (void) |
static int | early_out_adjustment (Sequence *UNUSED(seq), float UNUSED(fac)) |
static ImBuf * | do_adjustment_impl (const SeqRenderData *context, Sequence *seq, float timeline_frame) |
static ImBuf * | do_adjustment (const SeqRenderData *context, Sequence *seq, float timeline_frame, float UNUSED(fac), ImBuf *UNUSED(ibuf1), ImBuf *UNUSED(ibuf2), ImBuf *UNUSED(ibuf3)) |
Speed Effect | |
static void | init_speed_effect (Sequence *seq) |
static void | load_speed_effect (Sequence *seq) |
static int | num_inputs_speed (void) |
static void | free_speed_effect (Sequence *seq, const bool UNUSED(do_id_user)) |
static void | copy_speed_effect (Sequence *dst, Sequence *src, const int UNUSED(flag)) |
static int | early_out_speed (Sequence *UNUSED(seq), float UNUSED(fac)) |
static FCurve * | seq_effect_speed_speed_factor_curve_get (Scene *scene, Sequence *seq) |
void | seq_effect_speed_rebuild_map (Scene *scene, Sequence *seq) |
static void | seq_effect_speed_frame_map_ensure (Scene *scene, Sequence *seq) |
float | seq_speed_effect_target_frame_get (Scene *scene, Sequence *seq_speed, float timeline_frame, int input) |
static float | speed_effect_interpolation_ratio_get (Scene *scene, Sequence *seq_speed, float timeline_frame) |
static ImBuf * | do_speed_effect (const SeqRenderData *context, Sequence *seq, float timeline_frame, float fac, ImBuf *ibuf1, ImBuf *ibuf2, ImBuf *ibuf3) |
Over-Drop Effect | |
static void | do_overdrop_effect (const SeqRenderData *context, Sequence *UNUSED(seq), float UNUSED(timeline_frame), float fac, ImBuf *ibuf1, ImBuf *ibuf2, ImBuf *UNUSED(ibuf3), int start_line, int total_lines, ImBuf *out) |
Text Effect | |
static void | init_text_effect (Sequence *seq) |
void | SEQ_effect_text_font_unload (TextVars *data, const bool do_id_user) |
void | SEQ_effect_text_font_load (TextVars *data, const bool do_id_user) |
static void | free_text_effect (Sequence *seq, const bool do_id_user) |
static void | load_text_effect (Sequence *seq) |
static void | copy_text_effect (Sequence *dst, Sequence *src, const int flag) |
static int | num_inputs_text (void) |
static int | early_out_text (Sequence *seq, float UNUSED(fac)) |
static ImBuf * | do_text_effect (const SeqRenderData *context, Sequence *seq, float UNUSED(timeline_frame), float UNUSED(fac), ImBuf *ibuf1, ImBuf *ibuf2, ImBuf *ibuf3) |
Public Sequencer Effect API | |
struct SeqEffectHandle | SEQ_effect_handle_get (Sequence *seq) |
struct SeqEffectHandle | seq_effect_get_sequence_blend (Sequence *seq) |
int | SEQ_effect_get_num_inputs (int seq_type) |
Drop Effect | |
#define | XOFF 8 |
#define | YOFF 8 |
static void | do_drop_effect_byte (float fac, int x, int y, unsigned char *rect2i, unsigned char *rect1i, unsigned char *outi) |
static void | do_drop_effect_float (float fac, int x, int y, float *rect2i, float *rect1i, float *outi) |
Glow Effect | |
enum | { GlowR = 0 , GlowG = 1 , GlowB = 2 , GlowA = 3 } |
static ImBuf * | prepare_effect_imbufs (const SeqRenderData *context, ImBuf *ibuf1, ImBuf *ibuf2, ImBuf *ibuf3) |
static void | RVBlurBitmap2_float (float *map, int width, int height, float blur, int quality) |
static void | RVAddBitmaps_float (float *a, float *b, float *c, int width, int height) |
static void | RVIsolateHighlights_float (const float *in, float *out, int width, int height, float threshold, float boost, float clamp) |
static void | init_glow_effect (Sequence *seq) |
static int | num_inputs_glow (void) |
static void | free_glow_effect (Sequence *seq, const bool UNUSED(do_id_user)) |
static void | copy_glow_effect (Sequence *dst, Sequence *src, const int UNUSED(flag)) |
static void | do_glow_effect_byte (Sequence *seq, int render_size, float fac, int x, int y, unsigned char *rect1, unsigned char *UNUSED(rect2), unsigned char *out) |
static void | do_glow_effect_float (Sequence *seq, int render_size, float fac, int x, int y, float *rect1, float *UNUSED(rect2), float *out) |
static ImBuf * | do_glow_effect (const SeqRenderData *context, Sequence *seq, float UNUSED(timeline_frame), float fac, ImBuf *ibuf1, ImBuf *ibuf2, ImBuf *ibuf3) |
Blend Mode Effect | |
typedef void(* | IMB_blend_func_byte) (unsigned char *dst, const unsigned char *src1, const unsigned char *src2) |
typedef void(* | IMB_blend_func_float) (float *dst, const float *src1, const float *src2) |
BLI_INLINE void | apply_blend_function_byte (float fac, int x, int y, unsigned char *rect1, unsigned char *rect2, unsigned char *out, IMB_blend_func_byte blend_function) |
BLI_INLINE void | apply_blend_function_float (float fac, int x, int y, float *rect1, float *rect2, float *out, IMB_blend_func_float blend_function) |
static void | do_blend_effect_float (float fac, int x, int y, float *rect1, float *rect2, int btype, float *out) |
static void | do_blend_effect_byte (float fac, int x, int y, unsigned char *rect1, unsigned char *rect2, int btype, unsigned char *out) |
static void | do_blend_mode_effect (const SeqRenderData *context, Sequence *seq, float UNUSED(timeline_frame), float fac, ImBuf *ibuf1, ImBuf *ibuf2, ImBuf *UNUSED(ibuf3), int start_line, int total_lines, ImBuf *out) |
Wipe Effect | |
typedef struct WipeZone | WipeZone |
static void | precalc_wipe_zone (WipeZone *wipezone, WipeVars *wipe, int xo, int yo) |
static float | in_band (float width, float dist, int side, int dir) |
static float | check_zone (WipeZone *wipezone, int x, int y, Sequence *seq, float fac) |
static void | init_wipe_effect (Sequence *seq) |
static int | num_inputs_wipe (void) |
static void | free_wipe_effect (Sequence *seq, const bool UNUSED(do_id_user)) |
static void | copy_wipe_effect (Sequence *dst, Sequence *src, const int UNUSED(flag)) |
static void | do_wipe_effect_byte (Sequence *seq, float fac, int x, int y, unsigned char *rect1, unsigned char *rect2, unsigned char *out) |
static void | do_wipe_effect_float (Sequence *seq, float fac, int x, int y, float *rect1, float *rect2, float *out) |
static ImBuf * | do_wipe_effect (const SeqRenderData *context, Sequence *seq, float UNUSED(timeline_frame), float fac, ImBuf *ibuf1, ImBuf *ibuf2, ImBuf *ibuf3) |
Gaussian Blur | |
typedef struct RenderGaussianBlurEffectInitData | RenderGaussianBlurEffectInitData |
typedef struct RenderGaussianBlurEffectThread | RenderGaussianBlurEffectThread |
static void | init_gaussian_blur_effect (Sequence *seq) |
static int | num_inputs_gaussian_blur (void) |
static void | free_gaussian_blur_effect (Sequence *seq, const bool UNUSED(do_id_user)) |
static void | copy_gaussian_blur_effect (Sequence *dst, Sequence *src, const int UNUSED(flag)) |
static int | early_out_gaussian_blur (Sequence *seq, float UNUSED(fac)) |
static float * | make_gaussian_blur_kernel (float rad, int size) |
static void | do_gaussian_blur_effect_byte_x (Sequence *seq, int start_line, int x, int y, int frame_width, int UNUSED(frame_height), const unsigned char *rect, unsigned char *out) |
static void | do_gaussian_blur_effect_byte_y (Sequence *seq, int start_line, int x, int y, int UNUSED(frame_width), int frame_height, const unsigned char *rect, unsigned char *out) |
static void | do_gaussian_blur_effect_float_x (Sequence *seq, int start_line, int x, int y, int frame_width, int UNUSED(frame_height), float *rect, float *out) |
static void | do_gaussian_blur_effect_float_y (Sequence *seq, int start_line, int x, int y, int UNUSED(frame_width), int frame_height, float *rect, float *out) |
static void | do_gaussian_blur_effect_x_cb (const SeqRenderData *context, Sequence *seq, ImBuf *ibuf, int start_line, int total_lines, ImBuf *out) |
static void | do_gaussian_blur_effect_y_cb (const SeqRenderData *context, Sequence *seq, ImBuf *ibuf, int start_line, int total_lines, ImBuf *out) |
static void | render_effect_execute_init_handle (void *handle_v, int start_line, int tot_line, void *init_data_v) |
static void * | render_effect_execute_do_x_thread (void *thread_data_v) |
static void * | render_effect_execute_do_y_thread (void *thread_data_v) |
static ImBuf * | do_gaussian_blur_effect (const SeqRenderData *context, Sequence *seq, float UNUSED(timeline_frame), float UNUSED(fac), ImBuf *ibuf1, ImBuf *UNUSED(ibuf2), ImBuf *UNUSED(ibuf3)) |
typedef void(* IMB_blend_func_byte) (unsigned char *dst, const unsigned char *src1, const unsigned char *src2) |
typedef struct RenderGaussianBlurEffectInitData RenderGaussianBlurEffectInitData |
typedef struct RenderGaussianBlurEffectThread RenderGaussianBlurEffectThread |
BLI_INLINE void apply_blend_function_byte | ( | float | fac, |
int | x, | ||
int | y, | ||
unsigned char * | rect1, | ||
unsigned char * | rect2, | ||
unsigned char * | out, | ||
IMB_blend_func_byte | blend_function | ||
) |
Definition at line 1092 of file effects.c.
References usdtokens::out(), x, and y.
Referenced by do_blend_effect_byte().
BLI_INLINE void apply_blend_function_float | ( | float | fac, |
int | x, | ||
int | y, | ||
float * | rect1, | ||
float * | rect2, | ||
float * | out, | ||
IMB_blend_func_float | blend_function | ||
) |
Definition at line 1118 of file effects.c.
References usdtokens::out(), x, and y.
Referenced by do_blend_effect_float().
Definition at line 647 of file effects.c.
References gamma_tabs_init, gamtabs(), and makeGammaTables().
Referenced by gammacross_init_execution().
Definition at line 1424 of file effects.c.
References blender::math::abs(), angle(), WipeZone::angle, KDL::asin(), DO_CLOCK_WIPE, DO_DOUBLE_WIPE, DO_IRIS_WIPE, DO_SINGLE_WIPE, WipeVars::edgeWidth, Sequence::effectdata, fabsf, WipeZone::flip, float(), WipeVars::forward, KDL::hypot(), hypotf, if(), in_band(), M_PI, min_ff(), min_ii(), output, WipeZone::pythangle, width, WipeZone::width, WipeVars::wipetype, x, WipeZone::xo, y, and WipeZone::yo.
Referenced by do_wipe_effect_byte(), and do_wipe_effect_float().
Definition at line 3460 of file effects.c.
References Sequence::effectdata, MEM_dupallocN, and src.
|
static |
Definition at line 2796 of file effects.c.
References Sequence::effectdata, MEM_dupallocN, and src.
Definition at line 2210 of file effects.c.
References Sequence::effectdata, MEM_dupallocN, and src.
Definition at line 2335 of file effects.c.
References Sequence::effectdata, MEM_dupallocN, and src.
Definition at line 2573 of file effects.c.
References Sequence::effectdata, MEM_dupallocN, NULL, src, and v.
Definition at line 3292 of file effects.c.
References data, Sequence::effectdata, LIB_ID_CREATE_NO_USER_REFCOUNT, MEM_dupallocN, SEQ_effect_text_font_load(), and src.
Definition at line 1861 of file effects.c.
References Sequence::effectdata, MEM_dupallocN, and src.
Definition at line 1663 of file effects.c.
References Sequence::effectdata, MEM_dupallocN, and src.
|
static |
Definition at line 807 of file effects.c.
References blender::compositor::context, do_add_effect_byte(), do_add_effect_float(), NULL, usdtokens::out(), slice_get_byte_buffers(), and slice_get_float_buffers().
|
static |
Definition at line 762 of file effects.c.
References min_ii(), usdtokens::out(), x, and y.
Referenced by do_add_effect().
|
static |
Definition at line 786 of file effects.c.
References usdtokens::out(), x, and y.
Referenced by do_add_effect().
|
static |
Definition at line 2508 of file effects.c.
References blender::compositor::context, do_adjustment_impl(), NULL, and usdtokens::out().
|
static |
Definition at line 2469 of file effects.c.
References Editing::channels, channels(), clamp_i(), blender::compositor::context, Sequence::machine, NULL, SEQ_find_metastrip_by_sequence(), SEQ_get_channels_by_seq(), SEQ_get_seqbase_by_seq(), seq_render_give_ibuf_seqbase(), SEQ_time_left_handle_frame_get(), SEQ_time_right_handle_frame_get(), and Editing::seqbase.
Referenced by do_adjustment().
|
static |
Definition at line 277 of file effects.c.
References blender::compositor::context, do_alphaover_effect_byte(), do_alphaover_effect_float(), NULL, usdtokens::out(), slice_get_byte_buffers(), and slice_get_float_buffers().
|
static |
Definition at line 207 of file effects.c.
References usdtokens::out(), premul_float_to_straight_uchar(), straight_uchar_to_premul_float(), x, and y.
Referenced by do_alphaover_effect(), and do_overdrop_effect().
|
static |
Definition at line 245 of file effects.c.
References usdtokens::out(), x, and y.
Referenced by do_alphaover_effect(), and do_overdrop_effect().
|
static |
Definition at line 398 of file effects.c.
References blender::compositor::context, do_alphaunder_effect_byte(), do_alphaunder_effect_float(), NULL, usdtokens::out(), slice_get_byte_buffers(), and slice_get_float_buffers().
|
static |
Definition at line 312 of file effects.c.
References usdtokens::out(), premul_float_to_straight_uchar(), straight_uchar_to_premul_float(), x, and y.
Referenced by do_alphaunder_effect().
|
static |
Definition at line 358 of file effects.c.
References usdtokens::out(), x, and y.
Referenced by do_alphaunder_effect().
|
static |
Definition at line 1216 of file effects.c.
References apply_blend_function_byte(), blend_color_add_byte(), blend_color_burn_byte(), blend_color_color_byte(), blend_color_darken_byte(), blend_color_difference_byte(), blend_color_dodge_byte(), blend_color_exclusion_byte(), blend_color_hardlight_byte(), blend_color_hue_byte(), blend_color_lighten_byte(), blend_color_linearburn_byte(), blend_color_linearlight_byte(), blend_color_luminosity_byte(), blend_color_mul_byte(), blend_color_overlay_byte(), blend_color_pinlight_byte(), blend_color_saturation_byte(), blend_color_screen_byte(), blend_color_softlight_byte(), blend_color_sub_byte(), blend_color_vividlight_byte(), usdtokens::out(), SEQ_TYPE_ADD, SEQ_TYPE_BLEND_COLOR, SEQ_TYPE_COLOR_BURN, SEQ_TYPE_DARKEN, SEQ_TYPE_DIFFERENCE, SEQ_TYPE_DODGE, SEQ_TYPE_EXCLUSION, SEQ_TYPE_HARD_LIGHT, SEQ_TYPE_HUE, SEQ_TYPE_LIGHTEN, SEQ_TYPE_LIN_LIGHT, SEQ_TYPE_LINEAR_BURN, SEQ_TYPE_MUL, SEQ_TYPE_OVERLAY, SEQ_TYPE_PIN_LIGHT, SEQ_TYPE_SATURATION, SEQ_TYPE_SCREEN, SEQ_TYPE_SOFT_LIGHT, SEQ_TYPE_SUB, SEQ_TYPE_VALUE, SEQ_TYPE_VIVID_LIGHT, x, and y.
Referenced by do_blend_mode_effect(), and do_colormix_effect().
|
static |
Definition at line 1144 of file effects.c.
References apply_blend_function_float(), blend_color_add_float(), blend_color_burn_float(), blend_color_color_float(), blend_color_darken_float(), blend_color_difference_float(), blend_color_dodge_float(), blend_color_exclusion_float(), blend_color_hardlight_float(), blend_color_hue_float(), blend_color_lighten_float(), blend_color_linearburn_float(), blend_color_linearlight_float(), blend_color_luminosity_float(), blend_color_mul_float(), blend_color_overlay_float(), blend_color_pinlight_float(), blend_color_saturation_float(), blend_color_screen_float(), blend_color_softlight_float(), blend_color_sub_float(), blend_color_vividlight_float(), usdtokens::out(), SEQ_TYPE_ADD, SEQ_TYPE_BLEND_COLOR, SEQ_TYPE_COLOR_BURN, SEQ_TYPE_DARKEN, SEQ_TYPE_DIFFERENCE, SEQ_TYPE_DODGE, SEQ_TYPE_EXCLUSION, SEQ_TYPE_HARD_LIGHT, SEQ_TYPE_HUE, SEQ_TYPE_LIGHTEN, SEQ_TYPE_LIN_LIGHT, SEQ_TYPE_LINEAR_BURN, SEQ_TYPE_MUL, SEQ_TYPE_OVERLAY, SEQ_TYPE_PIN_LIGHT, SEQ_TYPE_SATURATION, SEQ_TYPE_SCREEN, SEQ_TYPE_SOFT_LIGHT, SEQ_TYPE_SUB, SEQ_TYPE_VALUE, SEQ_TYPE_VIVID_LIGHT, x, and y.
Referenced by do_blend_mode_effect(), and do_colormix_effect().
|
static |
Definition at line 1293 of file effects.c.
References Sequence::blend_mode, blender::compositor::context, do_blend_effect_byte(), do_blend_effect_float(), NULL, usdtokens::out(), slice_get_byte_buffers(), and slice_get_float_buffers().
|
static |
Definition at line 1339 of file effects.c.
References blender::compositor::context, data, do_blend_effect_byte(), do_blend_effect_float(), Sequence::effectdata, NULL, usdtokens::out(), slice_get_byte_buffers(), and slice_get_float_buffers().
|
static |
Definition at line 479 of file effects.c.
References blender::compositor::context, do_cross_effect_byte(), do_cross_effect_float(), NULL, usdtokens::out(), slice_get_byte_buffers(), and slice_get_float_buffers().
|
static |
Definition at line 433 of file effects.c.
References usdtokens::out(), x, and y.
Referenced by do_cross_effect().
|
static |
Definition at line 457 of file effects.c.
References usdtokens::out(), x, and y.
Referenced by do_cross_effect().
|
static |
Definition at line 928 of file effects.c.
References MAX2, min_ii(), usdtokens::out(), x, XOFF, y, and YOFF.
Referenced by do_overdrop_effect().
|
static |
Definition at line 962 of file effects.c.
References MAX2, min_ii(), usdtokens::out(), x, XOFF, y, and YOFF.
Referenced by do_overdrop_effect().
|
static |
Definition at line 727 of file effects.c.
References blender::compositor::context, do_gammacross_effect_byte(), do_gammacross_effect_float(), NULL, usdtokens::out(), slice_get_byte_buffers(), and slice_get_float_buffers().
|
static |
Definition at line 668 of file effects.c.
References gammaCorrect(), invGammaCorrect(), usdtokens::out(), premul_float_to_straight_uchar(), straight_uchar_to_premul_float(), x, and y.
Referenced by do_gammacross_effect().
|
static |
Definition at line 697 of file effects.c.
References gammaCorrect(), invGammaCorrect(), usdtokens::out(), x, and y.
Referenced by do_gammacross_effect().
|
static |
Definition at line 3152 of file effects.c.
References blender::compositor::context, IMB_freeImBuf(), IMB_processor_apply_threaded(), init_data(), NULL, usdtokens::out(), prepare_effect_imbufs(), render_effect_execute_do_x_thread(), render_effect_execute_do_y_thread(), and render_effect_execute_init_handle().
|
static |
Definition at line 2837 of file effects.c.
References data, Sequence::effectdata, INDEX, make_gaussian_blur_kernel(), MEM_freeN, usdtokens::out(), x, and y.
Referenced by do_gaussian_blur_effect_x_cb().
|
static |
Definition at line 2887 of file effects.c.
References data, Sequence::effectdata, INDEX, make_gaussian_blur_kernel(), MEM_freeN, usdtokens::out(), x, and y.
Referenced by do_gaussian_blur_effect_y_cb().
|
static |
Definition at line 2935 of file effects.c.
References data, Sequence::effectdata, INDEX, madd_v4_v4fl(), make_gaussian_blur_kernel(), MEM_freeN, mul_v4_v4fl(), usdtokens::out(), x, and y.
Referenced by do_gaussian_blur_effect_x_cb().
|
static |
Definition at line 2976 of file effects.c.
References data, Sequence::effectdata, INDEX, madd_v4_v4fl(), make_gaussian_blur_kernel(), MEM_freeN, mul_v4_v4fl(), usdtokens::out(), x, and y.
Referenced by do_gaussian_blur_effect_y_cb().
|
static |
Definition at line 3017 of file effects.c.
References blender::compositor::context, do_gaussian_blur_effect_byte_x(), do_gaussian_blur_effect_float_x(), NULL, usdtokens::out(), ImBuf::rect, ImBuf::rect_float, slice_get_byte_buffers(), and slice_get_float_buffers().
Referenced by render_effect_execute_do_x_thread().
|
static |
Definition at line 3056 of file effects.c.
References blender::compositor::context, do_gaussian_blur_effect_byte_y(), do_gaussian_blur_effect_float_y(), NULL, usdtokens::out(), ImBuf::rect, ImBuf::rect_float, slice_get_byte_buffers(), and slice_get_float_buffers().
Referenced by render_effect_execute_do_y_thread().
|
static |
Definition at line 2269 of file effects.c.
References blender::compositor::context, do_glow_effect_byte(), do_glow_effect_float(), NULL, usdtokens::out(), prepare_effect_imbufs(), ImBuf::rect, and ImBuf::rect_float.
|
static |
Definition at line 2215 of file effects.c.
References GlowVars::bNoComp, GlowVars::dDist, GlowVars::dQuality, Sequence::effectdata, GlowVars::fBoost, GlowVars::fClamp, GlowVars::fMini, IB_PROFILE_SRGB, IMB_buffer_byte_from_float(), IMB_buffer_float_from_byte(), IMB_buffer_float_premultiply(), IMB_buffer_float_unpremultiply(), MEM_freeN, MEM_mallocN, usdtokens::out(), RVAddBitmaps_float(), RVBlurBitmap2_float(), RVIsolateHighlights_float(), x, and y.
Referenced by do_glow_effect().
|
static |
Definition at line 2248 of file effects.c.
References GlowVars::bNoComp, GlowVars::dDist, GlowVars::dQuality, Sequence::effectdata, GlowVars::fBoost, GlowVars::fClamp, GlowVars::fMini, usdtokens::out(), RVAddBitmaps_float(), RVBlurBitmap2_float(), RVIsolateHighlights_float(), x, and y.
Referenced by do_glow_effect().
|
static |
Definition at line 1052 of file effects.c.
References blender::compositor::context, do_mul_effect_byte(), do_mul_effect_float(), NULL, usdtokens::out(), slice_get_byte_buffers(), and slice_get_float_buffers().
|
static |
Definition at line 1002 of file effects.c.
References usdtokens::out(), x, and y.
Referenced by do_mul_effect().
|
static |
Definition at line 1029 of file effects.c.
References usdtokens::out(), x, and y.
Referenced by do_mul_effect().
|
static |
Definition at line 2421 of file effects.c.
References Editing::channels, channels(), blender::compositor::context, Sequence::machine, Sequence::multicam_source, NULL, usdtokens::out(), SEQ_get_channels_by_seq(), SEQ_get_seqbase_by_seq(), seq_render_give_ibuf_seqbase(), and Editing::seqbase.
|
static |
Definition at line 2729 of file effects.c.
References blender::compositor::context, do_alphaover_effect_byte(), do_alphaover_effect_float(), do_drop_effect_byte(), do_drop_effect_float(), NULL, usdtokens::out(), slice_get_byte_buffers(), slice_get_float_buffers(), x, and y.
|
static |
Definition at line 2345 of file effects.c.
References SolidColorVars::col, color, blender::compositor::context, Sequence::effectdata, if(), usdtokens::out(), prepare_effect_imbufs(), R_IMF_PLANES_RGB, x, and y.
|
static |
Definition at line 2699 of file effects.c.
References blender::compositor::context, Sequence::effectdata, SpeedControlVars::flags, get_sequence_effect_impl(), IMB_dupImBuf(), NULL, usdtokens::out(), seq_render_effect_execute_threaded(), SEQ_SPEED_USE_INTERPOLATION, SEQ_TYPE_CROSS, and speed_effect_interpolation_ratio_get().
|
static |
Definition at line 889 of file effects.c.
References blender::compositor::context, do_sub_effect_byte(), do_sub_effect_float(), NULL, usdtokens::out(), slice_get_byte_buffers(), and slice_get_float_buffers().
|
static |
Definition at line 842 of file effects.c.
References max_ii(), usdtokens::out(), x, and y.
Referenced by do_sub_effect().
|
static |
Definition at line 866 of file effects.c.
References max_ff(), usdtokens::out(), x, and y.
Referenced by do_sub_effect().
|
static |
Definition at line 3317 of file effects.c.
References BLF_BOLD, BLF_boundbox_ex(), BLF_buffer(), BLF_buffer_col(), BLF_descender(), BLF_disable(), BLF_draw_buffer(), BLF_enable(), BLF_height_max(), BLF_ITALIC, blf_mono_font_render, BLF_position(), BLF_size(), BLF_width_max(), BLF_WORD_WRAP, BLF_wordwrap(), BLI_rcti_size_x(), blender::compositor::context, data, Sequence::effectdata, height, IMB_colormanagement_display_get_named(), IMB_rectfill_area_replace(), max_ii(), NULL, usdtokens::out(), prepare_effect_imbufs(), SEQ_effect_text_font_load(), SEQ_FONT_NOT_LOADED, SEQ_RENDER_SIZE_SCENE, SEQ_rendersize_to_scale_factor(), SEQ_TEXT_ALIGN_X_CENTER, SEQ_TEXT_ALIGN_X_LEFT, SEQ_TEXT_ALIGN_X_RIGHT, SEQ_TEXT_ALIGN_Y_BOTTOM, SEQ_TEXT_ALIGN_Y_CENTER, SEQ_TEXT_ALIGN_Y_TOP, SEQ_TEXT_BOLD, SEQ_TEXT_BOX, SEQ_TEXT_ITALIC, SEQ_TEXT_SHADOW, width, blender::bke::image::partial_update::wrap(), x, and y.
|
static |
Definition at line 1917 of file effects.c.
References blender::compositor::context, DEG2RADF, Sequence::effectdata, if(), usdtokens::out(), SEQ_RENDER_SIZE_SCENE, SEQ_rendersize_to_scale_factor(), transform(), transform_image(), x, and y.
|
static |
Definition at line 1788 of file effects.c.
References blender::compositor::context, do_wipe_effect_byte(), do_wipe_effect_float(), usdtokens::out(), prepare_effect_imbufs(), ImBuf::rect, and ImBuf::rect_float.
|
static |
Definition at line 1668 of file effects.c.
References check_zone(), Sequence::effectdata, NULL, usdtokens::out(), precalc_wipe_zone(), premul_float_to_straight_uchar(), straight_uchar_to_premul_float(), x, and y.
Referenced by do_wipe_effect().
|
static |
Definition at line 1734 of file effects.c.
References check_zone(), Sequence::effectdata, NULL, usdtokens::out(), precalc_wipe_zone(), x, and y.
Referenced by do_wipe_effect().
Definition at line 2464 of file effects.c.
References EARLY_NO_INPUT.
Definition at line 2340 of file effects.c.
References EARLY_NO_INPUT.
Definition at line 3475 of file effects.c.
References EARLY_DO_EFFECT, EARLY_USE_INPUT_1, and EARLY_USE_INPUT_2.
Definition at line 2801 of file effects.c.
References data, EARLY_DO_EFFECT, EARLY_USE_INPUT_1, and Sequence::effectdata.
Definition at line 3494 of file effects.c.
References EARLY_DO_EFFECT, and EARLY_USE_INPUT_2.
Definition at line 3486 of file effects.c.
References EARLY_DO_EFFECT, and EARLY_USE_INPUT_1.
Definition at line 2416 of file effects.c.
References EARLY_NO_INPUT.
Definition at line 3470 of file effects.c.
References EARLY_DO_EFFECT.
Definition at line 2581 of file effects.c.
References EARLY_DO_EFFECT.
Definition at line 3306 of file effects.c.
References data, EARLY_NO_INPUT, EARLY_USE_INPUT_1, Sequence::effectdata, and SEQ_TEXT_SHADOW.
Definition at line 3465 of file effects.c.
References Sequence::effectdata, and MEM_SAFE_FREE.
Definition at line 2791 of file effects.c.
References Sequence::effectdata, and MEM_SAFE_FREE.
Definition at line 2205 of file effects.c.
References Sequence::effectdata, and MEM_SAFE_FREE.
Definition at line 2330 of file effects.c.
References Sequence::effectdata, and MEM_SAFE_FREE.
Definition at line 2564 of file effects.c.
References Sequence::effectdata, if(), MEM_freeN, MEM_SAFE_FREE, and v.
Definition at line 3275 of file effects.c.
References data, Sequence::effectdata, MEM_freeN, NULL, and SEQ_effect_text_font_unload().
Definition at line 1856 of file effects.c.
References Sequence::effectdata, and MEM_SAFE_FREE.
Definition at line 1658 of file effects.c.
References Sequence::effectdata, and MEM_SAFE_FREE.
Definition at line 567 of file effects.c.
References Freestyle::c, color_domain_table, floorf, gamfactor_table, gamma_range_table, inv_color_step, powf, RE_GAMMA_TABLE_SIZE, UNLIKELY, and valid_gamma.
Referenced by do_gammacross_effect_byte(), and do_gammacross_effect_float().
|
static |
Definition at line 716 of file effects.c.
References build_gammatabs(), blender::compositor::context, usdtokens::out(), and prepare_effect_imbufs().
Definition at line 613 of file effects.c.
References Freestyle::a, gamtab, igamtab1, pow(), powf, and sqrtf.
Referenced by build_gammatabs().
|
static |
Definition at line 3510 of file effects.c.
References float(), scene, SEQ_time_left_handle_frame_get(), and SEQ_time_strip_length_get().
|
static |
Definition at line 3519 of file effects.c.
References blender::compositor::context, usdtokens::out(), and prepare_effect_imbufs().
Referenced by do_speed_effect(), and SEQ_effect_get_num_inputs().
This function calculates the blur band for the wipe effects.
Definition at line 1398 of file effects.c.
References width.
Referenced by check_zone().
Definition at line 198 of file effects.c.
References Sequence::seq1, and Sequence::seq2.
Definition at line 1326 of file effects.c.
References data, Sequence::effectdata, MEM_callocN, MEM_freeN, and SEQ_TYPE_OVERLAY.
|
static |
Definition at line 2777 of file effects.c.
References Sequence::effectdata, MEM_callocN, and MEM_freeN.
Definition at line 2181 of file effects.c.
References GlowVars::bNoComp, GlowVars::dDist, GlowVars::dQuality, Sequence::effectdata, GlowVars::fBoost, GlowVars::fClamp, GlowVars::fMini, MEM_callocN, and MEM_freeN.
Definition at line 2311 of file effects.c.
References SolidColorVars::col, Sequence::effectdata, MEM_callocN, and MEM_freeN.
Definition at line 2536 of file effects.c.
References Sequence::effectdata, MEM_callocN, MEM_freeN, SEQ_SPEED_STRETCH, and v.
Definition at line 3197 of file effects.c.
References BLI_strncpy(), copy_v4_fl(), data, Sequence::effectdata, MEM_callocN, MEM_freeN, NULL, SEQ_TEXT_ALIGN_X_CENTER, and SEQ_TEXT_ALIGN_Y_CENTER.
Definition at line 1826 of file effects.c.
References Sequence::effectdata, MEM_callocN, MEM_freeN, and transform().
Definition at line 1644 of file effects.c.
References Sequence::effectdata, MEM_callocN, and MEM_freeN.
Definition at line 593 of file effects.c.
References Freestyle::c, color_domain_table, floorf, inv_color_step, inv_gamfactor_table, inv_gamma_range_table, powf, RE_GAMMA_TABLE_SIZE, UNLIKELY, and valid_inv_gamma.
Referenced by do_gammacross_effect_byte(), and do_gammacross_effect_float().
Definition at line 2553 of file effects.c.
References Sequence::effectdata, NULL, and v.
Definition at line 3286 of file effects.c.
References data, Sequence::effectdata, and SEQ_effect_text_font_load().
Definition at line 2811 of file effects.c.
References MEM_mallocN, R_FILTER_GAUSS, RE_filter_value(), size(), and sum().
Referenced by do_gaussian_blur_effect_byte_x(), do_gaussian_blur_effect_byte_y(), do_gaussian_blur_effect_float_x(), and do_gaussian_blur_effect_float_y().
Definition at line 531 of file effects.c.
References color_domain_table, color_step, float(), gamfactor_table, gamma_range_table, inv_color_step, inv_gamfactor_table, inv_gamma_range_table, pow(), RE_GAMMA_TABLE_SIZE, valid_gamma, and valid_inv_gamma.
Referenced by build_gammatabs().
|
static |
|
static |
Definition at line 1385 of file effects.c.
References WipeVars::angle, WipeZone::angle, WipeVars::edgeWidth, fabsf, WipeZone::flip, WipeZone::pythangle, sqrtf, tanf, WipeZone::width, WipeZone::xo, and WipeZone::yo.
Referenced by do_wipe_effect_byte(), and do_wipe_effect_float().
|
static |
Definition at line 131 of file effects.c.
References blender::compositor::context, IB_rect, IB_rectfloat, IMB_allocImBuf(), IMB_colormanagement_assign_float_colorspace(), IMB_metadata_copy(), IMB_rect_from_float(), ColorManagedColorspaceSettings::name, NULL, usdtokens::out(), ImBuf::rect, ImBuf::rect_float, scene, seq_imbuf_to_sequencer_space(), Scene::sequencer_colorspace_settings, x, and y.
Referenced by do_gaussian_blur_effect(), do_glow_effect(), do_solid_color(), do_text_effect(), do_wipe_effect(), gammacross_init_execution(), and get_sequence_effect_impl().
Definition at line 3127 of file effects.c.
References RenderGaussianBlurEffectThread::context, do_gaussian_blur_effect_x_cb(), RenderGaussianBlurEffectThread::ibuf, NULL, RenderGaussianBlurEffectThread::out, RenderGaussianBlurEffectThread::seq, RenderGaussianBlurEffectThread::start_line, and RenderGaussianBlurEffectThread::tot_line.
Referenced by do_gaussian_blur_effect().
Definition at line 3139 of file effects.c.
References RenderGaussianBlurEffectThread::context, do_gaussian_blur_effect_y_cb(), RenderGaussianBlurEffectThread::ibuf, NULL, RenderGaussianBlurEffectThread::out, RenderGaussianBlurEffectThread::seq, RenderGaussianBlurEffectThread::start_line, and RenderGaussianBlurEffectThread::tot_line.
Referenced by do_gaussian_blur_effect().
|
static |
Definition at line 3110 of file effects.c.
References RenderGaussianBlurEffectThread::context, RenderGaussianBlurEffectThread::ibuf, init_data(), RenderGaussianBlurEffectThread::out, RenderGaussianBlurEffectThread::seq, RenderGaussianBlurEffectThread::start_line, and RenderGaussianBlurEffectThread::tot_line.
Referenced by do_gaussian_blur_effect().
Definition at line 2138 of file effects.c.
References Freestyle::a, usdtokens::b(), Freestyle::c, GlowA, GlowB, GlowG, GlowR, height, min_ff(), width, x, and y.
Referenced by do_glow_effect_byte(), and do_glow_effect_float().
|
static |
Definition at line 1982 of file effects.c.
References copy_v4_v4(), exp(), filter(), float(), height, M_PI, madd_v4_v4fl(), map, MEM_freeN, MEM_mallocN, NULL, swap(), width, x, y, and zero_v4().
Referenced by do_glow_effect_byte(), and do_glow_effect_float().
|
static |
Definition at line 2153 of file effects.c.
References blender::math::clamp(), GlowA, GlowB, GlowG, GlowR, height, min_ff(), usdtokens::out(), threshold, width, x, and y.
Referenced by do_glow_effect_byte(), and do_glow_effect_float().
int SEQ_effect_get_num_inputs | ( | int | seq_type | ) |
Definition at line 3741 of file effects.c.
References count, SeqEffectHandle::execute, SeqEffectHandle::execute_slice, get_sequence_effect_impl(), SeqEffectHandle::init_execution, and SeqEffectHandle::num_inputs.
Referenced by draw_seq_handle(), draw_seq_strips(), SEQ_add_effect_strip(), seq_collection_extract_effects(), SEQ_edit_sequence_swap(), seq_edit_split_operation_permitted_check(), seq_effect_add_properties_poll(), seq_effect_find_selected(), seq_render_effect_strip_impl(), seq_transform_handle_overwrite_trim(), SEQ_transform_sequence_can_be_translated(), SEQ_transform_single_image_check(), sequencer_add_effect_strip_invoke(), sequencer_change_effect_type_exec(), sequencer_reassign_inputs_exec(), and sequencer_swap_exec().
struct SeqEffectHandle seq_effect_get_sequence_blend | ( | Sequence * | seq | ) |
Definition at line 3519 of file effects.c.
Referenced by seq_get_early_out_for_blend_mode(), and seq_render_strip_stack_apply_effect().
struct SeqEffectHandle SEQ_effect_handle_get | ( | Sequence * | seq | ) |
Definition at line 3519 of file effects.c.
Referenced by SEQ_add_effect_strip(), seq_dupli(), seq_render_effect_strip_impl(), seq_sequence_free_ex(), seq_speed_effect_target_frame_get(), seq_update_effectdata_cb(), and sequencer_change_effect_type_exec().
Definition at line 2622 of file effects.c.
References Sequence::effectdata, if(), NULL, scene, seq_effect_speed_rebuild_map(), and v.
Referenced by seq_speed_effect_target_frame_get().
Build frame map when speed in mode SEQ_SPEED_MULTIPLY is animated. This is, because target_frame
value is integrated over time.
Definition at line 2591 of file effects.c.
References CLAMP, Sequence::effectdata, evaluate_fcurve(), if(), MEM_freeN, MEM_mallocN, NULL, scene, Sequence::seq1, seq_effect_speed_speed_factor_curve_get(), SEQ_time_left_handle_frame_get(), SEQ_time_right_handle_frame_get(), SEQ_time_strip_length_get(), and v.
Referenced by seq_effect_speed_frame_map_ensure(), SEQ_relations_free_imbuf(), and sequence_invalidate_cache().
Definition at line 2586 of file effects.c.
References Scene::id, id_data_find_fcurve(), NULL, and scene.
Referenced by seq_effect_speed_rebuild_map(), and seq_speed_effect_target_frame_get().
Definition at line 3245 of file effects.c.
References BKE_id_full_name_get(), BLF_load(), BLF_load_mem(), BLI_assert, BLI_path_abs(), BLI_thread_is_main(), data, FILE_MAX, VFont::filepath, VFont::id, ID_BLEND_PATH_FROM_GLOBAL, id_us_plus(), MAX_ID_FULL_NAME, NULL, VFont::packedfile, pf, and STRNCPY.
Referenced by copy_text_effect(), do_text_effect(), and load_text_effect().
Definition at line 3227 of file effects.c.
References BLF_unload_id(), data, id_us_min(), and NULL.
Referenced by free_text_effect().
float seq_speed_effect_target_frame_get | ( | struct Scene * | scene, |
struct Sequence * | seq, | ||
float | timeline_frame, | ||
int | input | ||
) |
Override timeline_frame when rendering speed effect input.
Definition at line 2632 of file effects.c.
References ceil(), CLAMP, Sequence::effectdata, SpeedControlVars::flags, SpeedControlVars::frameMap, input, NULL, scene, Sequence::seq1, SEQ_effect_handle_get(), seq_effect_speed_frame_map_ensure(), seq_effect_speed_speed_factor_curve_get(), seq_give_frame_index(), SEQ_SPEED_FRAME_NUMBER, SEQ_SPEED_LENGTH, SEQ_SPEED_MULTIPLY, SEQ_SPEED_STRETCH, SEQ_SPEED_USE_INTERPOLATION, SEQ_time_left_handle_frame_get(), SEQ_time_right_handle_frame_get(), SEQ_time_strip_length_get(), SpeedControlVars::speed_control_type, SpeedControlVars::speed_fader, SpeedControlVars::speed_fader_frame_number, SpeedControlVars::speed_fader_length, and Sequence::start.
Referenced by seq_render_effect_strip_impl(), and speed_effect_interpolation_ratio_get().
|
static |
Definition at line 68 of file effects.c.
References blender::compositor::context, offset, usdtokens::out(), and ImBuf::rect.
Referenced by do_add_effect(), do_alphaover_effect(), do_alphaunder_effect(), do_blend_mode_effect(), do_colormix_effect(), do_cross_effect(), do_gammacross_effect(), do_gaussian_blur_effect_x_cb(), do_gaussian_blur_effect_y_cb(), do_mul_effect(), do_overdrop_effect(), and do_sub_effect().
|
static |
Definition at line 93 of file effects.c.
References blender::compositor::context, offset, usdtokens::out(), and ImBuf::rect_float.
Referenced by do_add_effect(), do_alphaover_effect(), do_alphaunder_effect(), do_blend_mode_effect(), do_colormix_effect(), do_cross_effect(), do_gammacross_effect(), do_gaussian_blur_effect_x_cb(), do_gaussian_blur_effect_y_cb(), do_mul_effect(), do_overdrop_effect(), and do_sub_effect().
|
static |
Definition at line 2690 of file effects.c.
References blender::math::floor(), scene, and seq_speed_effect_target_frame_get().
Referenced by do_speed_effect().
|
static |
Definition at line 1866 of file effects.c.
References bicubic_interpolation(), bilinear_interpolation(), Freestyle::c, cosf, nearest_interpolation(), usdtokens::out(), rotate(), sinf, x, and y.
Referenced by do_transform_effect().
|
static |
Definition at line 525 of file effects.c.
Referenced by gammaCorrect(), invGammaCorrect(), and makeGammaTables().
|
static |
Definition at line 526 of file effects.c.
Referenced by makeGammaTables(), and ui_draw_gradient().
|
static |
Definition at line 522 of file effects.c.
Referenced by gammaCorrect(), and makeGammaTables().
|
static |
Definition at line 521 of file effects.c.
Referenced by gammaCorrect(), and makeGammaTables().
|
static |
Definition at line 517 of file effects.c.
Referenced by build_gammatabs().
|
static |
|
static |
|
static |
Definition at line 527 of file effects.c.
Referenced by gammaCorrect(), invGammaCorrect(), and makeGammaTables().
|
static |
Definition at line 524 of file effects.c.
Referenced by invGammaCorrect(), and makeGammaTables().
|
static |
Definition at line 523 of file effects.c.
Referenced by invGammaCorrect(), and makeGammaTables().
|
static |
Definition at line 528 of file effects.c.
Referenced by gammaCorrect(), and makeGammaTables().
|
static |
Definition at line 529 of file effects.c.
Referenced by invGammaCorrect(), and makeGammaTables().