|
Blender V4.3
|
#include <cmath>#include <cstdlib>#include <cstring>#include "MEM_guardedalloc.h"#include "BLI_array.hh"#include "BLI_math_rotation.h"#include "BLI_math_vector.hh"#include "BLI_math_vector_types.hh"#include "BLI_path_utils.hh"#include "BLI_rect.h"#include "BLI_string.h"#include "BLI_task.hh"#include "BLI_threads.h"#include "BLI_utildefines.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.hh"#include "BKE_lib_id.hh"#include "BKE_main.hh"#include "IMB_colormanagement.hh"#include "IMB_imbuf.hh"#include "IMB_imbuf_types.hh"#include "IMB_interp.hh"#include "IMB_metadata.hh"#include "BLI_math_color_blend.h"#include "RNA_prototypes.hh"#include "RE_pipeline.h"#include "SEQ_channels.hh"#include "SEQ_effects.hh"#include "SEQ_proxy.hh"#include "SEQ_relations.hh"#include "SEQ_render.hh"#include "SEQ_time.hh"#include "SEQ_utils.hh"#include "BLF_api.hh"#include "effects.hh"#include "render.hh"Go to the source code of this file.
Classes | |
| struct | WipeZone |
| struct | JFACoord |
Functions | |
Sequence Effect Factory | |
| static SeqEffectHandle | get_sequence_effect_impl (int seq_type) |
| static void | init_noop (Sequence *) |
| static void | load_noop (Sequence *) |
| static void | free_noop (Sequence *, const bool) |
| static int | num_inputs_default () |
| static void | copy_effect_default (Sequence *dst, const Sequence *src, const int) |
| static void | free_effect_default (Sequence *seq, const bool) |
| static StripEarlyOut | early_out_noop (const Sequence *, float) |
| static StripEarlyOut | early_out_fade (const Sequence *, float fac) |
| static StripEarlyOut | early_out_mul_input2 (const Sequence *, float fac) |
| static StripEarlyOut | early_out_mul_input1 (const Sequence *, float fac) |
| static void | get_default_fac_noop (const Scene *, const Sequence *, float, float *fac) |
| static void | get_default_fac_fade (const Scene *scene, const Sequence *seq, float timeline_frame, float *fac) |
| static ImBuf * | init_execution (const SeqRenderData *context, ImBuf *ibuf1, ImBuf *ibuf2) |
Internal Utilities | |
| static void | slice_get_byte_buffers (const SeqRenderData *context, const ImBuf *ibuf1, const ImBuf *ibuf2, const ImBuf *out, int start_line, uchar **rect1, uchar **rect2, uchar **rect_out) |
| static void | slice_get_float_buffers (const SeqRenderData *context, const ImBuf *ibuf1, const ImBuf *ibuf2, const ImBuf *out, int start_line, float **rect1, float **rect2, float **rect_out) |
| static float4 | load_premul_pixel (const uchar *ptr) |
| static float4 | load_premul_pixel (const float *ptr) |
| static void | store_premul_pixel (const float4 &pix, uchar *dst) |
| static void | store_premul_pixel (const float4 &pix, float *dst) |
| static void | store_opaque_black_pixel (uchar *dst) |
| static void | store_opaque_black_pixel (float *dst) |
Glow Effect | |
| static ImBuf * | prepare_effect_imbufs (const SeqRenderData *context, ImBuf *ibuf1, ImBuf *ibuf2, bool uninitialized_pixels=true) |
| static void | glow_blur_bitmap (const float4 *src, float4 *map, int width, int height, float blur, int quality) |
| static void | blur_isolate_highlights (const float4 *in, float4 *out, int width, int height, float threshold, float boost, float clamp) |
| static void | init_glow_effect (Sequence *seq) |
| static int | num_inputs_glow () |
| static void | free_glow_effect (Sequence *seq, const bool) |
| static void | copy_glow_effect (Sequence *dst, const Sequence *src, const int) |
| static void | do_glow_effect_byte (Sequence *seq, int render_size, float fac, int x, int y, uchar *rect1, uchar *, uchar *out) |
| static void | do_glow_effect_float (Sequence *seq, int render_size, float fac, int x, int y, float *rect1, float *, float *out) |
| static ImBuf * | do_glow_effect (const SeqRenderData *context, Sequence *seq, float, float fac, ImBuf *ibuf1, ImBuf *ibuf2) |
Alpha Over Effect | |
| static void | init_alpha_over_or_under (Sequence *seq) |
| static bool | alpha_opaque (uchar alpha) |
| static bool | alpha_opaque (float alpha) |
| template<typename T > | |
| static void | do_alphaover_effect (float fac, int width, int height, const T *src1, const T *src2, T *dst) |
| static void | do_alphaover_effect (const SeqRenderData *context, Sequence *, float, float fac, const ImBuf *ibuf1, const ImBuf *ibuf2, int start_line, int total_lines, ImBuf *out) |
Alpha Under Effect | |
| template<typename T > | |
| static void | do_alphaunder_effect (float fac, int width, int height, const T *src1, const T *src2, T *dst) |
| static void | do_alphaunder_effect (const SeqRenderData *context, Sequence *, float, float fac, const ImBuf *ibuf1, const ImBuf *ibuf2, int start_line, int total_lines, ImBuf *out) |
Cross Effect | |
| static void | do_cross_effect_byte (float fac, int x, int y, uchar *rect1, uchar *rect2, uchar *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 *, float, float fac, const ImBuf *ibuf1, const ImBuf *ibuf2, int start_line, int total_lines, ImBuf *out) |
Gamma Cross | |
| static float | gammaCorrect (float c) |
| static float | invGammaCorrect (float c) |
| template<typename T > | |
| static void | do_gammacross_effect (float fac, int width, int height, const T *src1, const T *src2, T *dst) |
| static void | do_gammacross_effect (const SeqRenderData *context, Sequence *, float, float fac, const ImBuf *ibuf1, const ImBuf *ibuf2, int start_line, int total_lines, ImBuf *out) |
Color Add Effect | |
| static void | do_add_effect_byte (float fac, int x, int y, uchar *rect1, uchar *rect2, uchar *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 *, float, float fac, const ImBuf *ibuf1, const ImBuf *ibuf2, int start_line, int total_lines, ImBuf *out) |
Color Subtract Effect | |
| static void | do_sub_effect_byte (float fac, int x, int y, uchar *rect1, uchar *rect2, uchar *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 *, float, float fac, const ImBuf *ibuf1, const ImBuf *ibuf2, int start_line, int total_lines, ImBuf *out) |
Multiply Effect | |
| static void | do_mul_effect_byte (float fac, int x, int y, uchar *rect1, uchar *rect2, uchar *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 *, float, float fac, const ImBuf *ibuf1, const ImBuf *ibuf2, int start_line, int total_lines, ImBuf *out) |
Blend Mode Effect | |
| template<typename T , typename Func > | |
| static void | apply_blend_function (float fac, int width, int height, const T *src1, T *src2, T *dst, Func blend_function) |
| static void | do_blend_effect_float (float fac, int x, int y, const float *rect1, float *rect2, int btype, float *out) |
| static void | do_blend_effect_byte (float fac, int x, int y, const uchar *rect1, uchar *rect2, int btype, uchar *out) |
| static void | do_blend_mode_effect (const SeqRenderData *context, Sequence *seq, float, float fac, const ImBuf *ibuf1, const ImBuf *ibuf2, 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, float, const ImBuf *ibuf1, const ImBuf *ibuf2, int start_line, int total_lines, ImBuf *out) |
Wipe Effect | |
| static WipeZone | precalc_wipe_zone (const WipeVars *wipe, int xo, int yo) |
| static float | in_band (float width, float dist, int side, int dir) |
| static float | check_zone (const WipeZone *wipezone, int x, int y, float fac) |
| static void | init_wipe_effect (Sequence *seq) |
| static int | num_inputs_wipe () |
| static void | free_wipe_effect (Sequence *seq, const bool) |
| static void | copy_wipe_effect (Sequence *dst, const Sequence *src, const int) |
| template<typename T > | |
| static void | do_wipe_effect (const Sequence *seq, float fac, int width, int height, const T *rect1, const T *rect2, T *out) |
| static ImBuf * | do_wipe_effect (const SeqRenderData *context, Sequence *seq, float, float fac, ImBuf *ibuf1, ImBuf *ibuf2) |
Transform Effect | |
| static void | init_transform_effect (Sequence *seq) |
| static int | num_inputs_transform () |
| static void | free_transform_effect (Sequence *seq, const bool) |
| static void | copy_transform_effect (Sequence *dst, const Sequence *src, const int) |
| static void | transform_image (int x, int y, int start_line, int total_lines, const ImBuf *ibuf, 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, float, const ImBuf *ibuf1, const ImBuf *, int start_line, int total_lines, ImBuf *out) |
Solid Color Effect | |
| static void | init_solid_color (Sequence *seq) |
| static int | num_inputs_color () |
| static void | free_solid_color (Sequence *seq, const bool) |
| static void | copy_solid_color (Sequence *dst, const Sequence *src, const int) |
| static StripEarlyOut | early_out_color (const Sequence *, float) |
| static ImBuf * | do_solid_color (const SeqRenderData *context, Sequence *seq, float, float, ImBuf *ibuf1, ImBuf *ibuf2) |
Multi-Camera Effect | |
| static int | num_inputs_multicam () |
| static StripEarlyOut | early_out_multicam (const Sequence *, float) |
| static ImBuf * | do_multicam (const SeqRenderData *context, Sequence *seq, float timeline_frame, float, ImBuf *, ImBuf *) |
Adjustment Effect | |
| static int | num_inputs_adjustment () |
| static StripEarlyOut | early_out_adjustment (const Sequence *, float) |
| 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, ImBuf *, ImBuf *) |
Speed Effect | |
| static void | init_speed_effect (Sequence *seq) |
| static void | load_speed_effect (Sequence *seq) |
| static int | num_inputs_speed () |
| static void | free_speed_effect (Sequence *seq, const bool) |
| static void | copy_speed_effect (Sequence *dst, const Sequence *src, const int) |
| static StripEarlyOut | early_out_speed (const Sequence *, float) |
| 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) |
Over-Drop Effect | |
| static void | do_overdrop_effect (const SeqRenderData *context, Sequence *, float, float fac, const ImBuf *ibuf1, const ImBuf *ibuf2, int start_line, int total_lines, ImBuf *out) |
Gaussian Blur | |
| static void | init_gaussian_blur_effect (Sequence *seq) |
| static int | num_inputs_gaussian_blur () |
| static void | free_gaussian_blur_effect (Sequence *seq, const bool) |
| static void | copy_gaussian_blur_effect (Sequence *dst, const Sequence *src, const int) |
| static StripEarlyOut | early_out_gaussian_blur (const Sequence *seq, float) |
| static Array< float > | make_gaussian_blur_kernel (float rad, int size) |
| template<typename T > | |
| static void | gaussian_blur_x (const Span< float > gaussian, int half_size, int start_line, int width, int height, int, const T *rect, T *dst) |
| template<typename T > | |
| static void | gaussian_blur_y (const Span< float > gaussian, int half_size, int start_line, int width, int height, int frame_height, const T *rect, T *dst) |
| static ImBuf * | do_gaussian_blur_effect (const SeqRenderData *context, Sequence *seq, float, float, ImBuf *ibuf1, ImBuf *) |
Public Sequencer Effect API | |
| SeqEffectHandle | SEQ_effect_handle_get (Sequence *seq) |
| 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, uchar *rect2i, uchar *rect1i, uchar *outi) |
| static void | do_drop_effect_float (float fac, int x, int y, float *rect2i, float *rect1i, float *outi) |
Text Effect | |
| constexpr uint16_t | JFA_INVALID = 0xFFFF |
| 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, const Sequence *src, const int flag) |
| static int | num_inputs_text () |
| static StripEarlyOut | early_out_text (const Sequence *seq, float) |
| static void | text_gaussian_blur_x (const Span< float > gaussian, int half_size, int start_line, int width, int height, const uchar *rect, uchar *dst, const rcti &shadow_rect) |
| static void | text_gaussian_blur_y (const Span< float > gaussian, int half_size, int start_line, int width, int height, const uchar *rect, uchar *dst, const rcti &shadow_rect) |
| static void | clamp_rect (int width, int height, rcti &r_rect) |
| static void | initialize_shadow_alpha (int width, int height, int2 offset, const rcti &shadow_rect, const uchar *input, Array< uchar > &r_shadow_mask) |
| static void | composite_shadow (int width, const rcti &shadow_rect, const float4 &shadow_color, const Array< uchar > &shadow_mask, uchar *output) |
| static void | draw_text_shadow (const SeqRenderData *context, const TextVars *data, int line_height, const rcti &rect, ImBuf *out) |
| static void | jump_flooding_pass (Span< JFACoord > input, MutableSpan< JFACoord > output, int2 size, IndexRange x_range, IndexRange y_range, int step_size) |
| static rcti | draw_text_outline (const SeqRenderData *context, const TextVars *data, int font, ColorManagedDisplay *display, int x, int y, int line_height, const rcti &rect, ImBuf *out) |
| static void | fill_rect_alpha_under (const ImBuf *ibuf, const float col[4], int x1, int y1, int x2, int y2) |
| static ImBuf * | do_text_effect (const SeqRenderData *context, Sequence *seq, float, float, ImBuf *, ImBuf *) |
| #define XOFF 8 |
Definition at line 660 of file effects.cc.
Referenced by do_drop_effect_byte(), and do_drop_effect_float().
| #define YOFF 8 |
Definition at line 661 of file effects.cc.
Referenced by do_drop_effect_byte(), and do_drop_effect_float().
|
static |
Definition at line 225 of file effects.cc.
|
static |
Definition at line 220 of file effects.cc.
Referenced by do_alphaover_effect(), and do_alphaunder_effect().
|
static |
Definition at line 819 of file effects.cc.
References T.
Referenced by do_blend_effect_byte(), and do_blend_effect_float().
|
static |
Definition at line 1679 of file effects.cc.
References blender::math::min(), and blender::threading::parallel_for().
Referenced by do_glow_effect_byte(), and do_glow_effect_float().
Definition at line 1113 of file effects.cc.
References angle(), WipeZone::angle, atan2f, WipeZone::clockWidth, DO_CLOCK_WIPE, DO_DOUBLE_WIPE, DO_IRIS_WIPE, DO_SINGLE_WIPE, fabsf, WipeZone::flip, float, WipeZone::forward, hypotf, in_band(), M_PI, min_ff(), min_ii(), output, WipeZone::pythangle, WipeZone::type, WipeZone::width, x, WipeZone::xo, y, and WipeZone::yo.
Referenced by do_wipe_effect().
Definition at line 2708 of file effects.cc.
References blender::math::clamp(), rcti::xmax, rcti::xmin, rcti::ymax, and rcti::ymin.
Referenced by draw_text_shadow().
|
static |
Definition at line 2737 of file effects.cc.
References col, load_premul_pixel(), blender::threading::parallel_for(), store_premul_pixel(), rcti::xmax, rcti::xmin, rcti::ymax, and rcti::ymin.
Referenced by draw_text_shadow().
Definition at line 3193 of file effects.cc.
References Sequence::effectdata, and MEM_dupallocN.
Referenced by get_sequence_effect_impl().
Definition at line 2311 of file effects.cc.
References Sequence::effectdata, and MEM_dupallocN.
Referenced by get_sequence_effect_impl().
Definition at line 1738 of file effects.cc.
References Sequence::effectdata, and MEM_dupallocN.
Referenced by get_sequence_effect_impl().
Definition at line 1875 of file effects.cc.
References Sequence::effectdata, and MEM_dupallocN.
Referenced by get_sequence_effect_impl().
Definition at line 2100 of file effects.cc.
References Sequence::effectdata, MEM_dupallocN, and v.
Referenced by get_sequence_effect_impl().
Definition at line 2614 of file effects.cc.
References Sequence::effectdata, flag, LIB_ID_CREATE_NO_USER_REFCOUNT, MEM_dupallocN, SEQ_effect_text_font_load(), and TextVars::text_blf_id.
Referenced by get_sequence_effect_impl().
Definition at line 1467 of file effects.cc.
References Sequence::effectdata, and MEM_dupallocN.
Referenced by get_sequence_effect_impl().
Definition at line 1343 of file effects.cc.
References Sequence::effectdata, and MEM_dupallocN.
Referenced by get_sequence_effect_impl().
|
static |
Definition at line 549 of file effects.cc.
References do_add_effect_byte(), do_add_effect_float(), slice_get_byte_buffers(), and slice_get_float_buffers().
Referenced by get_sequence_effect_impl().
|
static |
Definition at line 505 of file effects.cc.
References int, min_ii(), x, and y.
Referenced by do_add_effect().
|
static |
Definition at line 2036 of file effects.cc.
References do_adjustment_impl().
Referenced by get_sequence_effect_impl().
|
static |
Definition at line 1997 of file effects.cc.
References Editing::channels, clamp_i(), do_adjustment_impl(), Sequence::machine, 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(), and do_adjustment_impl().
|
static |
Definition at line 262 of file effects.cc.
References do_alphaover_effect(), slice_get_byte_buffers(), and slice_get_float_buffers().
|
static |
Definition at line 232 of file effects.cc.
References alpha_opaque(), col, load_premul_pixel(), and store_premul_pixel().
Referenced by do_alphaover_effect(), do_overdrop_effect(), and get_sequence_effect_impl().
|
static |
Definition at line 324 of file effects.cc.
References do_alphaunder_effect(), slice_get_byte_buffers(), and slice_get_float_buffers().
|
static |
Definition at line 296 of file effects.cc.
References alpha_opaque(), col, load_premul_pixel(), and store_premul_pixel().
Referenced by do_alphaunder_effect(), and get_sequence_effect_impl().
|
static |
Definition at line 908 of file effects.cc.
References apply_blend_function(), 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(), 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, and SEQ_TYPE_VIVID_LIGHT.
Referenced by do_blend_mode_effect(), and do_colormix_effect().
|
static |
Definition at line 836 of file effects.cc.
References apply_blend_function(), 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(), 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, and SEQ_TYPE_VIVID_LIGHT.
Referenced by do_blend_mode_effect(), and do_colormix_effect().
|
static |
Definition at line 980 of file effects.cc.
References Sequence::blend_mode, do_blend_effect_byte(), do_blend_effect_float(), slice_get_byte_buffers(), and slice_get_float_buffers().
Referenced by get_sequence_effect_impl().
|
static |
Definition at line 1023 of file effects.cc.
References do_blend_effect_byte(), do_blend_effect_float(), Sequence::effectdata, ColorMixVars::factor, slice_get_byte_buffers(), and slice_get_float_buffers().
Referenced by get_sequence_effect_impl().
|
static |
Definition at line 401 of file effects.cc.
References do_cross_effect_byte(), do_cross_effect_float(), slice_get_byte_buffers(), and slice_get_float_buffers().
Referenced by get_sequence_effect_impl().
|
static |
Definition at line 356 of file effects.cc.
Referenced by do_cross_effect().
|
static |
Definition at line 663 of file effects.cc.
References int, min_ii(), x, XOFF, and YOFF.
Referenced by do_overdrop_effect().
|
static |
Definition at line 696 of file effects.cc.
References min_ii(), x, XOFF, and YOFF.
Referenced by do_overdrop_effect().
|
static |
Definition at line 473 of file effects.cc.
References do_gammacross_effect(), slice_get_byte_buffers(), and slice_get_float_buffers().
|
static |
Definition at line 452 of file effects.cc.
References col, gammaCorrect(), invGammaCorrect(), load_premul_pixel(), and store_premul_pixel().
Referenced by do_gammacross_effect(), and get_sequence_effect_impl().
|
static |
Definition at line 2413 of file effects.cc.
References ImBufFloatBuffer::data, Sequence::effectdata, ImBuf::float_buffer, int, make_gaussian_blur_kernel(), blender::threading::parallel_for(), and prepare_effect_imbufs().
Referenced by get_sequence_effect_impl().
|
static |
Definition at line 1810 of file effects.cc.
References ImBuf::byte_buffer, ImBufByteBuffer::data, ImBufFloatBuffer::data, do_glow_effect_byte(), do_glow_effect_float(), ImBuf::float_buffer, and prepare_effect_imbufs().
Referenced by get_sequence_effect_impl().
|
static |
Definition at line 1743 of file effects.cc.
References blur_isolate_highlights(), GlowVars::bNoComp, blender::Array< T, InlineBufferCapacity, Allocator >::data(), GlowVars::dDist, GlowVars::dQuality, Sequence::effectdata, GlowVars::fBoost, GlowVars::fClamp, blender::IndexRange::first(), GlowVars::fMini, glow_blur_bitmap(), IB_PROFILE_SRGB, IMB_buffer_byte_from_float(), IMB_colormanagement_transform_from_byte_threaded(), blender::threading::parallel_for(), blender::IndexRange::size(), x, and y.
Referenced by do_glow_effect().
|
static |
Definition at line 1786 of file effects.cc.
References blur_isolate_highlights(), GlowVars::bNoComp, GlowVars::dDist, GlowVars::dQuality, Sequence::effectdata, GlowVars::fBoost, GlowVars::fClamp, GlowVars::fMini, glow_blur_bitmap(), x, and y.
Referenced by do_glow_effect().
|
static |
Definition at line 785 of file effects.cc.
References do_mul_effect_byte(), do_mul_effect_float(), slice_get_byte_buffers(), and slice_get_float_buffers().
Referenced by get_sequence_effect_impl().
|
static |
Definition at line 1950 of file effects.cc.
References Editing::channels, Sequence::machine, Sequence::multicam_source, SEQ_get_channels_by_seq(), SEQ_get_seqbase_by_seq(), seq_render_give_ibuf_seqbase(), and Editing::seqbase.
Referenced by get_sequence_effect_impl().
|
static |
Definition at line 2255 of file effects.cc.
References do_alphaover_effect(), do_drop_effect_byte(), do_drop_effect_float(), slice_get_byte_buffers(), and slice_get_float_buffers().
Referenced by get_sequence_effect_impl().
|
static |
Definition at line 1885 of file effects.cc.
References Sequence::effectdata, blender::threading::parallel_for(), and prepare_effect_imbufs().
Referenced by get_sequence_effect_impl().
|
static |
Definition at line 2226 of file effects.cc.
References Sequence::effectdata, get_sequence_effect_impl(), IMB_dupImBuf(), seq_render_effect_execute_threaded(), SEQ_SPEED_USE_INTERPOLATION, SEQ_TYPE_CROSS, and speed_effect_interpolation_ratio_get().
Referenced by get_sequence_effect_impl().
|
static |
Definition at line 627 of file effects.cc.
References do_sub_effect_byte(), do_sub_effect_float(), slice_get_byte_buffers(), and slice_get_float_buffers().
Referenced by get_sequence_effect_impl().
|
static |
Definition at line 581 of file effects.cc.
References int, max_ii(), x, and y.
Referenced by do_sub_effect().
|
static |
Definition at line 604 of file effects.cc.
References max_ff(), x, and y.
Referenced by do_sub_effect().
|
static |
Definition at line 3058 of file effects.cc.
References BLF_BOLD, BLF_boundbox(), 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_WORD_WRAP, BLF_wordwrap(), BLI_rcti_size_x(), BLI_rcti_translate(), draw_text_outline(), draw_text_shadow(), Sequence::effectdata, fill_rect_alpha_under(), IMB_colormanagement_display_get_named(), ResultBLF::lines, 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_OUTLINE, SEQ_TEXT_SHADOW, TextVars::text_blf_id, x, rcti::xmax, rcti::xmin, y, rcti::ymax, and rcti::ymin.
Referenced by get_sequence_effect_impl().
|
static |
Definition at line 1543 of file effects.cc.
References DEG2RADF, Sequence::effectdata, SEQ_RENDER_SIZE_SCENE, SEQ_rendersize_to_scale_factor(), and transform_image().
Referenced by get_sequence_effect_impl().
|
static |
Definition at line 1395 of file effects.cc.
References ImBuf::byte_buffer, ImBufByteBuffer::data, ImBufFloatBuffer::data, do_wipe_effect(), ImBuf::float_buffer, and prepare_effect_imbufs().
|
static |
Definition at line 1349 of file effects.cc.
References check_zone(), col, Sequence::effectdata, blender::IndexRange::first(), load_premul_pixel(), blender::threading::parallel_for(), precalc_wipe_zone(), store_opaque_black_pixel(), and store_premul_pixel().
Referenced by do_wipe_effect(), and get_sequence_effect_impl().
|
static |
Definition at line 2895 of file effects.cc.
References BLF_buffer(), BLF_buffer_col(), BLF_draw_buffer(), BLF_position(), BLI_rcti_pad(), clamp_i(), blender::Array< T, InlineBufferCapacity, Allocator >::data(), int, blender::threading::parallel_for(), rcti::xmax, rcti::xmin, rcti::ymax, and rcti::ymin.
Referenced by do_text_effect().
|
static |
Definition at line 2765 of file effects.cc.
References BLI_rcti_pad(), BLI_rcti_translate(), clamp_rect(), composite_shadow(), cosf, blender::Array< T, InlineBufferCapacity, Allocator >::data(), blender::IndexRange::first(), initialize_shadow_alpha(), int, make_gaussian_blur_kernel(), blender::threading::parallel_for(), sinf, blender::IndexRange::size(), text_gaussian_blur_x(), text_gaussian_blur_y(), rcti::ymax, and rcti::ymin.
Referenced by do_text_effect().
|
static |
Definition at line 1992 of file effects.cc.
References NoInput.
Referenced by get_sequence_effect_impl().
|
static |
Definition at line 1880 of file effects.cc.
References NoInput.
Referenced by get_sequence_effect_impl().
|
static |
Definition at line 3208 of file effects.cc.
References DoEffect, UseInput1, and UseInput2.
Referenced by get_sequence_effect_impl().
|
static |
Definition at line 2316 of file effects.cc.
References DoEffect, Sequence::effectdata, and UseInput1.
Referenced by get_sequence_effect_impl().
|
static |
Definition at line 3227 of file effects.cc.
References DoEffect, and UseInput2.
Referenced by get_sequence_effect_impl().
|
static |
Definition at line 3219 of file effects.cc.
References DoEffect, and UseInput1.
Referenced by get_sequence_effect_impl().
|
static |
Definition at line 1945 of file effects.cc.
References NoInput.
Referenced by get_sequence_effect_impl().
|
static |
Definition at line 3203 of file effects.cc.
References DoEffect.
Referenced by get_sequence_effect_impl().
|
static |
Definition at line 2108 of file effects.cc.
References DoEffect.
Referenced by get_sequence_effect_impl().
|
static |
Definition at line 2628 of file effects.cc.
References Sequence::effectdata, NoInput, SEQ_TEXT_OUTLINE, SEQ_TEXT_SHADOW, and UseInput1.
Referenced by get_sequence_effect_impl().
|
static |
Definition at line 3024 of file effects.cc.
References ImBuf::byte_buffer, blender::math::clamp(), col, ImBufByteBuffer::data, load_premul_pixel(), store_premul_pixel(), straight_to_premul_v4(), ImBuf::x, and ImBuf::y.
Referenced by do_text_effect().
|
static |
Definition at line 3198 of file effects.cc.
References Sequence::effectdata, and MEM_SAFE_FREE.
Referenced by get_sequence_effect_impl().
|
static |
Definition at line 2306 of file effects.cc.
References Sequence::effectdata, and MEM_SAFE_FREE.
Referenced by get_sequence_effect_impl().
|
static |
Definition at line 1733 of file effects.cc.
References Sequence::effectdata, and MEM_SAFE_FREE.
Referenced by get_sequence_effect_impl().
|
static |
Definition at line 3186 of file effects.cc.
Referenced by get_sequence_effect_impl().
|
static |
Definition at line 1870 of file effects.cc.
References Sequence::effectdata, and MEM_SAFE_FREE.
Referenced by get_sequence_effect_impl().
|
static |
Definition at line 2091 of file effects.cc.
References Sequence::effectdata, MEM_freeN(), MEM_SAFE_FREE, and v.
Referenced by get_sequence_effect_impl().
|
static |
Definition at line 2597 of file effects.cc.
References Sequence::effectdata, MEM_freeN(), and SEQ_effect_text_font_unload().
Referenced by get_sequence_effect_impl().
|
static |
Definition at line 1462 of file effects.cc.
References Sequence::effectdata, and MEM_SAFE_FREE.
Referenced by get_sequence_effect_impl().
|
static |
Definition at line 1338 of file effects.cc.
References Sequence::effectdata, and MEM_SAFE_FREE.
Referenced by get_sequence_effect_impl().
Definition at line 438 of file effects.cc.
References UNLIKELY.
Referenced by do_gammacross_effect().
|
static |
Definition at line 2347 of file effects.cc.
References blender::math::max(), and blender::math::min().
|
static |
Definition at line 2381 of file effects.cc.
References blender::math::max(), blender::math::min(), and x.
|
static |
Definition at line 3243 of file effects.cc.
References blender::math::clamp(), float, SEQ_time_left_handle_frame_get(), and SEQ_time_strip_length_get().
Referenced by get_sequence_effect_impl().
Definition at line 3235 of file effects.cc.
Referenced by get_sequence_effect_impl().
|
static |
Definition at line 3259 of file effects.cc.
References SeqEffectHandle::copy, copy_effect_default(), copy_gaussian_blur_effect(), copy_glow_effect(), copy_solid_color(), copy_speed_effect(), copy_text_effect(), copy_transform_effect(), copy_wipe_effect(), do_add_effect(), do_adjustment(), do_alphaover_effect(), do_alphaunder_effect(), do_blend_mode_effect(), do_colormix_effect(), do_cross_effect(), do_gammacross_effect(), do_gaussian_blur_effect(), do_glow_effect(), do_mul_effect(), do_multicam(), do_overdrop_effect(), do_solid_color(), do_speed_effect(), do_sub_effect(), do_text_effect(), do_transform_effect(), do_wipe_effect(), SeqEffectHandle::early_out, early_out_adjustment(), early_out_color(), early_out_fade(), early_out_gaussian_blur(), early_out_mul_input1(), early_out_mul_input2(), early_out_multicam(), early_out_noop(), early_out_speed(), early_out_text(), SeqEffectHandle::execute, SeqEffectHandle::execute_slice, SeqEffectHandle::free, free_effect_default(), free_gaussian_blur_effect(), free_glow_effect(), free_noop(), free_solid_color(), free_speed_effect(), free_text_effect(), free_transform_effect(), free_wipe_effect(), SeqEffectHandle::get_default_fac, get_default_fac_fade(), get_default_fac_noop(), SeqEffectHandle::init, init_alpha_over_or_under(), init_colormix_effect(), init_execution(), SeqEffectHandle::init_execution, init_gaussian_blur_effect(), init_glow_effect(), init_noop(), init_solid_color(), init_speed_effect(), init_text_effect(), init_transform_effect(), init_wipe_effect(), SeqEffectHandle::load, load_noop(), load_speed_effect(), load_text_effect(), SeqEffectHandle::multithreaded, SeqEffectHandle::num_inputs, num_inputs_adjustment(), num_inputs_color(), num_inputs_default(), num_inputs_gaussian_blur(), num_inputs_glow(), num_inputs_multicam(), num_inputs_speed(), num_inputs_text(), num_inputs_transform(), num_inputs_wipe(), SEQ_TYPE_ADD, SEQ_TYPE_ADJUSTMENT, SEQ_TYPE_ALPHAOVER, SEQ_TYPE_ALPHAUNDER, SEQ_TYPE_BLEND_COLOR, SEQ_TYPE_COLOR, SEQ_TYPE_COLOR_BURN, SEQ_TYPE_COLORMIX, SEQ_TYPE_CROSS, SEQ_TYPE_DARKEN, SEQ_TYPE_DIFFERENCE, SEQ_TYPE_DODGE, SEQ_TYPE_EXCLUSION, SEQ_TYPE_GAMCROSS, SEQ_TYPE_GAUSSIAN_BLUR, SEQ_TYPE_GLOW, SEQ_TYPE_HARD_LIGHT, SEQ_TYPE_HUE, SEQ_TYPE_LIGHTEN, SEQ_TYPE_LIN_LIGHT, SEQ_TYPE_LINEAR_BURN, SEQ_TYPE_MUL, SEQ_TYPE_MULTICAM, SEQ_TYPE_OVERDROP, SEQ_TYPE_OVERLAY, SEQ_TYPE_PIN_LIGHT, SEQ_TYPE_SATURATION, SEQ_TYPE_SCREEN, SEQ_TYPE_SOFT_LIGHT, SEQ_TYPE_SPEED, SEQ_TYPE_SUB, SEQ_TYPE_TEXT, SEQ_TYPE_TRANSFORM, SEQ_TYPE_VALUE, SEQ_TYPE_VIVID_LIGHT, SEQ_TYPE_WIPE, and SeqEffectHandle::supports_mask.
Referenced by do_speed_effect(), SEQ_effect_get_num_inputs(), seq_effect_get_sequence_blend(), and SEQ_effect_handle_get().
|
static |
Definition at line 1607 of file effects.cc.
References exp(), filter(), float, M_PI, blender::math::max(), blender::math::min(), and blender::threading::parallel_for().
Referenced by do_glow_effect_byte(), and do_glow_effect_float().
This function calculates the blur band for the wipe effects.
Definition at line 1087 of file effects.cc.
References float.
Referenced by check_zone().
|
static |
Definition at line 211 of file effects.cc.
References Sequence::seq1, and Sequence::seq2.
Referenced by get_sequence_effect_impl().
|
static |
Definition at line 1010 of file effects.cc.
References data, Sequence::effectdata, MEM_callocN, MEM_freeN(), and SEQ_TYPE_OVERLAY.
Referenced by get_sequence_effect_impl().
|
static |
Definition at line 3253 of file effects.cc.
References prepare_effect_imbufs().
Referenced by get_sequence_effect_impl().
|
static |
Definition at line 2292 of file effects.cc.
References Sequence::effectdata, MEM_callocN, and MEM_freeN().
Referenced by get_sequence_effect_impl().
|
static |
Definition at line 1709 of file effects.cc.
References GlowVars::bNoComp, GlowVars::dDist, GlowVars::dQuality, Sequence::effectdata, GlowVars::fBoost, GlowVars::fClamp, GlowVars::fMini, MEM_callocN, and MEM_freeN().
Referenced by get_sequence_effect_impl().
|
static |
Definition at line 3182 of file effects.cc.
Referenced by get_sequence_effect_impl().
|
static |
Definition at line 1851 of file effects.cc.
References SolidColorVars::col, Sequence::effectdata, MEM_callocN, and MEM_freeN().
Referenced by get_sequence_effect_impl().
|
static |
Definition at line 2063 of file effects.cc.
References Sequence::effectdata, MEM_callocN, MEM_freeN(), SEQ_SPEED_STRETCH, and v.
Referenced by get_sequence_effect_impl().
|
static |
Definition at line 2500 of file effects.cc.
References copy_v4_fl(), data, DEG2RADF, Sequence::effectdata, MEM_callocN, MEM_freeN(), SEQ_TEXT_ALIGN_X_CENTER, SEQ_TEXT_ALIGN_Y_CENTER, STRNCPY, and TextVars::text_font.
Referenced by get_sequence_effect_impl().
|
static |
Definition at line 1432 of file effects.cc.
References Sequence::effectdata, MEM_callocN, MEM_freeN(), and transform().
Referenced by get_sequence_effect_impl().
|
static |
Definition at line 1324 of file effects.cc.
References Sequence::effectdata, MEM_callocN, and MEM_freeN().
Referenced by get_sequence_effect_impl().
|
static |
Definition at line 2716 of file effects.cc.
References blender::math::clamp(), blender::threading::parallel_for(), x, rcti::xmax, rcti::xmin, rcti::ymax, and rcti::ymin.
Referenced by draw_text_shadow().
Definition at line 446 of file effects.cc.
References sqrtf_signed().
Referenced by do_gammacross_effect().
|
static |
Definition at line 2849 of file effects.cc.
References blender::math::distance_squared(), JFA_INVALID, blender::threading::parallel_for(), JFACoord::x, x, and JFACoord::y.
Referenced by blender::compositor::jump_flooding().
|
static |
Definition at line 3184 of file effects.cc.
Referenced by get_sequence_effect_impl().
Definition at line 116 of file effects.cc.
References ptr.
Definition at line 109 of file effects.cc.
References ptr, and straight_uchar_to_premul_float().
Referenced by composite_shadow(), do_alphaover_effect(), do_alphaunder_effect(), do_gammacross_effect(), do_wipe_effect(), and fill_rect_alpha_under().
|
static |
Definition at line 2080 of file effects.cc.
References Sequence::effectdata, and v.
Referenced by get_sequence_effect_impl().
|
static |
Definition at line 2608 of file effects.cc.
References Sequence::effectdata, and SEQ_effect_text_font_load().
Referenced by get_sequence_effect_impl().
Definition at line 2325 of file effects.cc.
References R_FILTER_GAUSS, RE_filter_value(), size(), and sum().
Referenced by do_gaussian_blur_effect(), and draw_text_shadow().
|
static |
No effect inputs for adjustment, we use #give_ibuf_seq.
Definition at line 1987 of file effects.cc.
Referenced by get_sequence_effect_impl().
|
static |
Definition at line 1865 of file effects.cc.
Referenced by get_sequence_effect_impl().
|
static |
Definition at line 3188 of file effects.cc.
Referenced by get_sequence_effect_impl().
|
static |
Definition at line 2301 of file effects.cc.
Referenced by get_sequence_effect_impl().
|
static |
Definition at line 1728 of file effects.cc.
Referenced by get_sequence_effect_impl().
|
static |
No effect inputs for multi-camera, we use #give_ibuf_seq.
Definition at line 1940 of file effects.cc.
Referenced by get_sequence_effect_impl().
|
static |
Definition at line 2086 of file effects.cc.
Referenced by get_sequence_effect_impl().
|
static |
Definition at line 2623 of file effects.cc.
Referenced by get_sequence_effect_impl().
|
static |
Definition at line 1457 of file effects.cc.
Referenced by get_sequence_effect_impl().
|
static |
Definition at line 1333 of file effects.cc.
Referenced by get_sequence_effect_impl().
Definition at line 1069 of file effects.cc.
References WipeVars::angle, WipeVars::edgeWidth, fabsf, WipeZone::flip, float, WipeVars::forward, int, M_PI, sqrtf, tanf, and WipeVars::wipetype.
Referenced by do_wipe_effect().
|
static |
Definition at line 153 of file effects.cc.
References ImBuf::byte_buffer, ImBufByteBuffer::data, ImBufFloatBuffer::data, ImBuf::float_buffer, IB_rect, IB_rectfloat, IB_uninitialized_pixels, IMB_allocImBuf(), IMB_colormanagement_assign_float_colorspace(), IMB_metadata_copy(), IMB_rect_from_float(), and seq_imbuf_to_sequencer_space().
Referenced by do_gaussian_blur_effect(), do_glow_effect(), do_solid_color(), do_text_effect(), do_wipe_effect(), and init_execution().
Definition at line 3467 of file effects.cc.
References count, SeqEffectHandle::execute, SeqEffectHandle::execute_slice, get_sequence_effect_impl(), SeqEffectHandle::init_execution, and SeqEffectHandle::num_inputs.
Referenced by ED_sequencer_can_select_handle(), must_render_strip(), query_snap_targets_timeline(), SEQ_add_effect_strip(), 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_render_preprocess_ibuf(), seq_transform_handle_overwrite_trim(), SEQ_transform_sequence_can_be_translated(), sequencer_add_effect_strip_invoke(), sequencer_change_effect_type_exec(), sequencer_reassign_inputs_exec(), sequencer_swap_exec(), and version_set_seq_single_frame_content().
| SeqEffectHandle seq_effect_get_sequence_blend | ( | Sequence * | seq | ) |
Definition at line 3445 of file effects.cc.
References Sequence::blend_mode, Sequence::flag, get_sequence_effect_impl(), SeqEffectHandle::load, SEQ_EFFECT_NOT_LOADED, and Sequence::type.
Referenced by seq_get_early_out_for_blend_mode(), and seq_render_strip_stack_apply_effect().
| SeqEffectHandle SEQ_effect_handle_get | ( | Sequence * | seq | ) |
Definition at line 3430 of file effects.cc.
References Sequence::flag, get_sequence_effect_impl(), SeqEffectHandle::load, SEQ_EFFECT_NOT_LOADED, SEQ_TYPE_EFFECT, and Sequence::type.
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 2149 of file effects.cc.
References Sequence::effectdata, 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 2118 of file effects.cc.
References CLAMP, Sequence::effectdata, evaluate_fcurve(), MEM_freeN(), MEM_mallocN, 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 2113 of file effects.cc.
References id_data_find_fcurve().
Referenced by seq_effect_speed_rebuild_map(), and seq_speed_effect_target_frame_get().
| void SEQ_effect_text_font_load | ( | TextVars * | data, |
| const bool | do_id_user ) |
Definition at line 2553 of file effects.cc.
References BKE_id_full_name_get(), BLF_load(), BLF_load_mem(), BLI_path_abs(), BLI_thread_is_main(), FILE_MAX, VFont::filepath, VFont::id, ID_BLEND_PATH_FROM_GLOBAL, id_us_plus(), MAX_ID_FULL_NAME, VFont::packedfile, pf, and STRNCPY.
Referenced by copy_text_effect(), do_text_effect(), and load_text_effect().
| void SEQ_effect_text_font_unload | ( | TextVars * | data, |
| const bool | do_id_user ) |
Definition at line 2535 of file effects.cc.
References BLF_unload_id(), and id_us_min().
Referenced by free_text_effect().
| float seq_speed_effect_target_frame_get | ( | Scene * | scene, |
| Sequence * | seq_speed, | ||
| float | timeline_frame, | ||
| int | input ) |
Override timeline_frame when rendering speed effect input.
Definition at line 2159 of file effects.cc.
References ceil(), CLAMP, Sequence::effectdata, round_fl_to_int(), 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(), Sequence::start, and Sequence::startofs.
Referenced by seq_render_effect_strip_impl(), and speed_effect_interpolation_ratio_get().
|
static |
Definition at line 71 of file effects.cc.
References ImBuf::byte_buffer, and ImBufByteBuffer::data.
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_mul_effect(), do_overdrop_effect(), and do_sub_effect().
|
static |
Definition at line 90 of file effects.cc.
References ImBufFloatBuffer::data, and ImBuf::float_buffer.
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_mul_effect(), do_overdrop_effect(), and do_sub_effect().
|
static |
Definition at line 2217 of file effects.cc.
References floor(), and seq_speed_effect_target_frame_get().
Referenced by do_speed_effect().
|
static |
Definition at line 139 of file effects.cc.
|
static |
Definition at line 131 of file effects.cc.
Referenced by do_wipe_effect().
Definition at line 126 of file effects.cc.
Definition at line 121 of file effects.cc.
References premul_float_to_straight_uchar().
Referenced by composite_shadow(), do_alphaover_effect(), do_alphaunder_effect(), do_gammacross_effect(), do_wipe_effect(), and fill_rect_alpha_under().
|
static |
Definition at line 2645 of file effects.cc.
References blender::math::max(), blender::math::min(), rcti::xmax, and rcti::xmin.
Referenced by draw_text_shadow().
|
static |
Definition at line 2677 of file effects.cc.
References blender::math::max(), blender::math::min(), x, rcti::xmax, rcti::xmin, rcti::ymax, and rcti::ymin.
Referenced by draw_text_shadow().
|
static |
Definition at line 1472 of file effects.cc.
References cosf, blender::imbuf::interpolate_bilinear_border_byte(), blender::imbuf::interpolate_bilinear_border_fl(), blender::imbuf::interpolate_cubic_bspline_byte(), blender::imbuf::interpolate_cubic_bspline_fl(), blender::imbuf::interpolate_nearest_border_byte(), blender::imbuf::interpolate_nearest_border_fl(), sinf, and x.
Referenced by do_transform_effect().
|
constexpr |
Definition at line 2842 of file effects.cc.
Referenced by jump_flooding_pass().