Blender
V3.3
|
#include "DNA_scene_types.h"
#include "DNA_sequence_types.h"
#include "BLI_listbase.h"
#include "BLI_math.h"
#include "BLI_string.h"
#include "BLI_string_utf8.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 "utils.h"
#include "SEQ_add.h"
#include "SEQ_animation.h"
#include "SEQ_edit.h"
#include "SEQ_effects.h"
#include "SEQ_iterator.h"
#include "SEQ_relations.h"
#include "SEQ_render.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.
void SEQ_edit_flag_for_removal | ( | struct Scene * | scene, |
struct ListBase * | seqbase, | ||
struct Sequence * | seq | ||
) |
Flag seq and its users (effects) for removal.
Definition at line 163 of file strip_edit.c.
References Sequence::flag, LISTBASE_FOREACH, NULL, scene, SEQ_FLAG_DELETE, SEQ_TYPE_META, Sequence::seqbase, sequencer_flag_users_for_removal(), and Sequence::type.
Referenced by SEQ_edit_strip_split(), seq_transform_handle_overwrite(), seq_transform_handle_overwrite_split(), sequencer_delete_exec(), sequencer_meta_separate_exec(), and sequencer_separate_images_exec().
bool SEQ_edit_move_strip_to_meta | ( | struct Scene * | scene, |
struct Sequence * | src_seq, | ||
struct Sequence * | dst_seqm, | ||
const char ** | error_str | ||
) |
Move sequence to meta sequence.
scene | Scene containing the editing |
src_seq | Sequence to move |
dst_seqm | Target Meta sequence |
error_str | Error message |
Definition at line 213 of file strip_edit.c.
References N_, scene, SEQ_collection_append_strip(), SEQ_collection_create(), SEQ_collection_expand(), SEQ_collection_free(), SEQ_edit_move_strip_to_seqbase(), SEQ_editing_get(), SEQ_exists_in_seqbase(), SEQ_get_seqbase_by_seq(), SEQ_ITERATOR_FOREACH, SEQ_query_strip_effect_chain(), SEQ_TYPE_META, Sequence::seqbase, Editing::seqbase, and Sequence::type.
bool SEQ_edit_move_strip_to_seqbase | ( | struct Scene * | scene, |
ListBase * | seqbase, | ||
struct Sequence * | seq, | ||
ListBase * | dst_seqbase | ||
) |
Move sequence to seqbase.
scene | Scene containing the editing |
seqbase | seqbase where seq is located |
seq | Sequence to move |
dst_seqbase | Target seqbase |
Definition at line 195 of file strip_edit.c.
References BLI_addtail(), BLI_remlink(), scene, SEQ_relations_invalidate_cache_preprocessed(), SEQ_transform_seqbase_shuffle(), and SEQ_transform_test_overlap().
Referenced by SEQ_edit_move_strip_to_meta().
Remove all flagged sequences, return true if sequence is removed.
Definition at line 180 of file strip_edit.c.
References BLI_remlink(), LISTBASE_FOREACH_MUTABLE, scene, SEQ_FLAG_DELETE, SEQ_free_animdata(), SEQ_LOOKUP_TAG_INVALID, SEQ_sequence_free(), SEQ_sequence_lookup_tag(), and SEQ_TYPE_META.
Referenced by SEQ_edit_strip_split(), seq_transform_handle_overwrite(), seq_transform_handle_overwrite_split(), sequencer_delete_exec(), sequencer_meta_separate_exec(), and sequencer_separate_images_exec().
bool SEQ_edit_remove_gaps | ( | struct Scene * | scene, |
struct ListBase * | seqbase, | ||
int | initial_frame, | ||
bool | remove_all_gaps | ||
) |
Find gap after initial_frame and move strips on right side to close the gap
scene | Scene in which strips are located |
seqbase | ListBase in which strips are located |
initial_frame | frame on timeline from where gaps are searched for |
remove_all_gaps | remove all gaps instead of one gap |
Definition at line 490 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().
Definition at line 516 of file strip_edit.c.
References BLI_str_utf8_invalid_strip(), BLI_strncpy_utf8(), MAX_NAME, Sequence::name, scene, SEQ_LOOKUP_TAG_INVALID, and SEQ_sequence_lookup_tag().
Referenced by seq_add_set_name(), and SEQ_sequence_base_unique_name_recursive().
int SEQ_edit_sequence_swap | ( | Scene * | scene, |
Sequence * | seq_a, | ||
Sequence * | seq_b, | ||
const char ** | error_str | ||
) |
Definition at line 40 of file strip_edit.c.
References Sequence::blend_mode, Sequence::blend_opacity, BLI_strncpy(), Sequence::endofs, Sequence::machine, N_, Sequence::name, Sequence::next, Sequence::prev, scene, SEQ_effect_get_num_inputs(), seq_time_effect_range_set(), SEQ_time_strip_length_get(), SEQ_TYPE_EFFECT, SEQ_TYPE_SOUND_RAM, Sequence::start, Sequence::startofs, SWAP, and Sequence::type.
Referenced by sequencer_swap_data_exec().
|
static |
Definition at line 349 of file strip_edit.c.
References scene, Sequence::seq1, Sequence::seq2, Sequence::seq3, seq_edit_split_effect_intersect_check(), SEQ_TYPE_EFFECT, and Sequence::type.
Referenced by seq_edit_split_operation_permitted_check().
|
static |
Definition at line 309 of file strip_edit.c.
References scene, SEQ_time_left_handle_frame_get(), and SEQ_time_right_handle_frame_get().
Referenced by seq_edit_split_effect_inputs_intersect(), seq_edit_split_handle_strip_offsets(), seq_edit_split_operation_permitted_check(), and SEQ_edit_strip_split().
|
static |
Definition at line 317 of file strip_edit.c.
References scene, SEQ_add_reload_new_file(), seq_edit_split_effect_intersect_check(), SEQ_SPLIT_HARD, seq_split_set_left_hold_offset(), seq_split_set_right_hold_offset(), SEQ_SPLIT_SOFT, SEQ_time_left_handle_frame_set(), and SEQ_time_right_handle_frame_set().
Referenced by SEQ_edit_strip_split().
|
static |
Definition at line 381 of file strip_edit.c.
References ELEM, scene, seq_edit_split_effect_inputs_intersect(), seq_edit_split_effect_intersect_check(), SEQ_effect_get_num_inputs(), SEQ_ITERATOR_FOREACH, SEQ_TYPE_CROSS, SEQ_TYPE_EFFECT, SEQ_TYPE_GAMCROSS, SEQ_TYPE_WIPE, and Sequence::type.
Referenced by SEQ_edit_strip_split().
Sequence* SEQ_edit_strip_split | ( | struct Main * | bmain, |
struct Scene * | scene, | ||
struct ListBase * | seqbase, | ||
struct Sequence * | seq, | ||
int | timeline_frame, | ||
eSeqSplitMethod | method, | ||
const char ** | r_error | ||
) |
Split Sequence at timeline_frame in two.
bmain | Main in which Sequence is located |
scene | Scene in which Sequence is located |
seqbase | ListBase in which Sequence is located |
seq | Sequence to be split |
timeline_frame | frame at which seq is split. |
method | affects type of offset to be applied to resize Sequence |
Definition at line 409 of file strip_edit.c.
References BLI_addtail(), BLI_movelisttolist(), BLI_remlink(), ListBase::first, Sequence::next, NULL, scene, SEQ_animation_backup_original(), SEQ_animation_duplicate(), SEQ_animation_restore_original(), SEQ_collection_append_strip(), SEQ_collection_create(), SEQ_collection_expand(), SEQ_collection_free(), SEQ_DUPE_ALL, SEQ_edit_flag_for_removal(), SEQ_edit_remove_flagged_sequences(), seq_edit_split_effect_intersect_check(), seq_edit_split_handle_strip_offsets(), seq_edit_split_operation_permitted_check(), SEQ_ensure_unique_name(), SEQ_ITERATOR_FOREACH, SEQ_query_strip_effect_chain(), SEQ_sequence_base_dupli_recursive(), SEQ_time_left_handle_frame_get(), and SEQ_time_right_handle_frame_get().
Referenced by seq_transform_handle_overwrite_split(), and sequencer_split_exec().
Definition at line 123 of file strip_edit.c.
References Editing::channels, ListBase::last, Editing::metastack, NULL, MetaStack::parseq, seq_update_muting_recursive(), and Editing::seqbase.
Referenced by SEQ_eval_sequences().
|
static |
Definition at line 285 of file strip_edit.c.
References Sequence::anim_startofs, Sequence::endofs, offset, scene, SEQ_time_left_handle_frame_set(), SEQ_time_strip_length_get(), Sequence::speed_factor, Sequence::start, and Sequence::startofs.
Referenced by seq_edit_split_handle_strip_offsets().
|
static |
Definition at line 262 of file strip_edit.c.
References Sequence::anim_endofs, Sequence::endofs, offset, scene, SEQ_time_right_handle_frame_set(), SEQ_time_strip_length_get(), Sequence::speed_factor, Sequence::start, and Sequence::startofs.
Referenced by seq_edit_split_handle_strip_offsets().
|
static |
Definition at line 93 of file strip_edit.c.
References BKE_sound_mute_scene_sound(), Sequence::channels, channels(), ELEM, ListBase::first, Sequence::next, Sequence::scene_sound, SEQ_render_is_muted(), SEQ_TYPE_META, SEQ_TYPE_SCENE, SEQ_TYPE_SOUND_RAM, Sequence::seqbase, and Sequence::type.
Referenced by SEQ_edit_update_muting().
|
static |
Definition at line 138 of file strip_edit.c.
References Scene::ed, LISTBASE_FOREACH, SequenceModifierData::mask_sequence, SequenceModifierData::next, NULL, scene, SEQ_FLAG_DELETE, SEQ_relation_is_effect_of_strip(), SEQ_TYPE_META, and Editing::seqbase.
Referenced by SEQ_edit_flag_for_removal().