Blender  V2.93
Functions
strip_edit.c File Reference
#include "DNA_scene_types.h"
#include "DNA_sequence_types.h"
#include "BLI_listbase.h"
#include "BLI_math.h"
#include "BLI_string.h"
#include "BLT_translation.h"
#include "BKE_main.h"
#include "BKE_movieclip.h"
#include "BKE_scene.h"
#include "BKE_sound.h"
#include "strip_time.h"
#include "SEQ_add.h"
#include "SEQ_edit.h"
#include "SEQ_effects.h"
#include "SEQ_relations.h"
#include "SEQ_sequencer.h"
#include "SEQ_time.h"
#include "SEQ_transform.h"
#include "SEQ_utils.h"

Go to the source code of this file.

Functions

int SEQ_edit_sequence_swap (Sequence *seq_a, Sequence *seq_b, const char **error_str)
 
static void seq_update_muting_recursive (ListBase *seqbasep, Sequence *metaseq, int mute)
 
void SEQ_edit_update_muting (Editing *ed)
 
static void sequencer_flag_users_for_removal (Scene *scene, ListBase *seqbase, Sequence *seq)
 
void SEQ_edit_flag_for_removal (Scene *scene, ListBase *seqbase, Sequence *seq)
 
void SEQ_edit_remove_flagged_sequences (Scene *scene, ListBase *seqbase)
 
static bool seq_exists_in_seqbase (Sequence *seq, ListBase *seqbase)
 
bool SEQ_edit_move_strip_to_meta (Scene *scene, Sequence *src_seq, Sequence *dst_seqm, const char **error_str)
 
static void seq_split_set_left_hold_offset (Sequence *seq, int timeline_frame)
 
static void seq_split_set_right_hold_offset (Sequence *seq, int timeline_frame)
 
static void seq_split_set_right_offset (Sequence *seq, int timeline_frame)
 
static void seq_split_set_left_offset (Sequence *seq, int timeline_frame)
 
SequenceSEQ_edit_strip_split (Main *bmain, Scene *scene, ListBase *seqbase, Sequence *seq, const int timeline_frame, const eSeqSplitMethod method)
 
bool SEQ_edit_remove_gaps (Scene *scene, ListBase *seqbase, const int initial_frame, const bool remove_all_gaps)
 

Function Documentation

◆ SEQ_edit_flag_for_removal()

void SEQ_edit_flag_for_removal ( Scene scene,
ListBase seqbase,
Sequence seq 
)

◆ SEQ_edit_move_strip_to_meta()

bool SEQ_edit_move_strip_to_meta ( Scene scene,
Sequence src_seq,
Sequence dst_seqm,
const char **  error_str 
)

◆ SEQ_edit_remove_flagged_sequences()

void SEQ_edit_remove_flagged_sequences ( Scene scene,
ListBase seqbase 
)

◆ SEQ_edit_remove_gaps()

bool SEQ_edit_remove_gaps ( Scene scene,
ListBase seqbase,
const int  initial_frame,
const bool  remove_all_gaps 
)

Find gap after initial_frame and move strips on right side to close the gap

Parameters
sceneScene in which strips are located
seqbaseListBase in which strips are located
initial_frameframe on timeline from where gaps are searched for
remove_all_gapsremove all gaps instead of one gap
Returns
true if gap is removed, otherwise false

Definition at line 406 of file strip_edit.c.

References GapInfo::gap_exists, GapInfo::gap_length, GapInfo::gap_start_frame, scene, seq_time_gap_info_get(), and SEQ_transform_offset_after_frame().

Referenced by sequencer_gap_remove_exec().

◆ SEQ_edit_sequence_swap()

int SEQ_edit_sequence_swap ( Sequence seq_a,
Sequence seq_b,
const char **  error_str 
)

◆ SEQ_edit_strip_split()

Sequence* SEQ_edit_strip_split ( Main bmain,
Scene scene,
ListBase seqbase,
Sequence seq,
const int  timeline_frame,
const eSeqSplitMethod  method 
)

Split Sequence at timeline_frame in two.

Parameters
bmainMain in which Sequence is located
sceneScene in which Sequence is located
seqbaseListBase in which Sequence is located
seqSequence to be split
timeline_frameframe at which seq is split.
methodaffects type of offset to be applied to resize Sequence
Returns
The newly created sequence strip. This is always Sequence on right side.

Definition at line 357 of file strip_edit.c.

References Sequence::enddisp, NULL, scene, SEQ_add_reload_new_file(), SEQ_DUPE_ANIM, SEQ_DUPE_UNIQUE_NAME, SEQ_sequence_dupli_recursive(), SEQ_SPLIT_HARD, seq_split_set_left_hold_offset(), seq_split_set_left_offset(), seq_split_set_right_hold_offset(), seq_split_set_right_offset(), SEQ_SPLIT_SOFT, and SEQ_time_update_sequence().

Referenced by sequencer_split_exec().

◆ SEQ_edit_update_muting()

void SEQ_edit_update_muting ( Editing ed)

◆ seq_exists_in_seqbase()

static bool seq_exists_in_seqbase ( Sequence seq,
ListBase seqbase 
)
static

Definition at line 207 of file strip_edit.c.

References LISTBASE_FOREACH, SEQ_TYPE_META, and Sequence::seqbase.

Referenced by SEQ_edit_move_strip_to_meta().

◆ seq_split_set_left_hold_offset()

static void seq_split_set_left_hold_offset ( Sequence seq,
int  timeline_frame 
)
static

◆ seq_split_set_left_offset()

static void seq_split_set_left_offset ( Sequence seq,
int  timeline_frame 
)
static

◆ seq_split_set_right_hold_offset()

static void seq_split_set_right_hold_offset ( Sequence seq,
int  timeline_frame 
)
static

◆ seq_split_set_right_offset()

static void seq_split_set_right_offset ( Sequence seq,
int  timeline_frame 
)
static

◆ seq_update_muting_recursive()

static void seq_update_muting_recursive ( ListBase seqbasep,
Sequence metaseq,
int  mute 
)
static

◆ sequencer_flag_users_for_removal()

static void sequencer_flag_users_for_removal ( Scene scene,
ListBase seqbase,
Sequence seq 
)
static