Blender
V3.3
|
#include "DNA_scene_types.h"
#include "DNA_sequence_types.h"
#include "BLI_listbase.h"
#include "BLI_math.h"
#include "BKE_movieclip.h"
#include "BKE_scene.h"
#include "BKE_sound.h"
#include "DNA_sound_types.h"
#include "IMB_imbuf.h"
#include "SEQ_channels.h"
#include "SEQ_iterator.h"
#include "SEQ_render.h"
#include "SEQ_sequencer.h"
#include "SEQ_time.h"
#include "SEQ_transform.h"
#include "sequencer.h"
#include "strip_time.h"
#include "utils.h"
Go to the source code of this file.
|
static |
Definition at line 93 of file strip_time.c.
References Sequence::endofs, Sequence::len, and Sequence::start.
Referenced by seq_update_sound_bounds_recursive(), and seq_update_sound_bounds_recursive_impl().
|
static |
Definition at line 88 of file strip_time.c.
References Sequence::start, and Sequence::startofs.
Referenced by seq_update_sound_bounds_recursive(), and seq_update_sound_bounds_recursive_impl().
Definition at line 52 of file strip_time.c.
References clamp_f(), Sequence::flag, fmodf, scene, SEQ_REVERSE_FRAMES, seq_time_playback_rate_factor_get(), SEQ_time_right_handle_frame_get(), SEQ_time_start_frame_get(), SEQ_time_strip_length_get(), SEQ_TYPE_EFFECT, Sequence::strobe, and Sequence::type.
Referenced by do_render_strip_uncached(), seq_cache_timeline_frame_to_frame_index(), seq_proxy_fetch(), SEQ_render_give_stripelem(), seq_render_movie_strip_custom_file_proxy(), and seq_speed_effect_target_frame_get().
Definition at line 184 of file strip_time.c.
References Sequence::anim_endofs, Sequence::anim_startofs, Sequence::enddisp, Sequence::endofs, Sequence::len, max_ii(), min_ii(), NULL, scene, Sequence::seq1, Sequence::seq2, SEQ_time_left_handle_frame_get(), SEQ_time_right_handle_frame_get(), Sequence::start, Sequence::startdisp, Sequence::startofs, and SWAP.
Referenced by SEQ_add_effect_strip(), SEQ_edit_sequence_swap(), and seq_time_update_effects_strip_range().
int SEQ_time_find_next_prev_edit | ( | Scene * | scene, |
int | timeline_frame, | ||
const short | side, | ||
const bool | do_skip_mute, | ||
const bool | do_center, | ||
const bool | do_unselected | ||
) |
Definition at line 235 of file strip_time.c.
References blender::math::abs(), channels(), ListBase::first, Sequence::flag, MAXFRAME, Sequence::next, NULL, scene, SELECT, SEQ_channels_displayed_get(), SEQ_editing_get(), SEQ_render_is_muted(), SEQ_SIDE_BOTH, SEQ_SIDE_LEFT, SEQ_SIDE_RIGHT, SEQ_time_left_handle_frame_get(), SEQ_time_right_handle_frame_get(), and Editing::seqbasep.
Referenced by strip_jump_internal().
void seq_time_gap_info_get | ( | const Scene * | scene, |
ListBase * | seqbase, | ||
const int | initial_frame, | ||
GapInfo * | r_gap_info | ||
) |
Definition at line 392 of file strip_time.c.
References GapInfo::gap_exists, GapInfo::gap_length, GapInfo::gap_start_frame, scene, SEQ_query_all_strips(), SEQ_timeline_boundbox(), strip_exists_at_frame(), rctf::xmax, and rctf::xmin.
Referenced by SEQ_edit_remove_gaps().
Definition at line 466 of file strip_time.c.
References scene, SEQ_time_left_handle_frame_get(), and SEQ_time_start_frame_get().
Referenced by draw_seq_background(), draw_seq_strip(), and SEQ_time_has_still_frames().
Definition at line 471 of file strip_time.c.
References scene, SEQ_time_right_handle_frame_get(), SEQ_time_start_frame_get(), and SEQ_time_strip_length_get().
Referenced by draw_seq_background(), draw_seq_strip(), draw_seq_strip_thumbnail(), SEQ_render_thumbnails(), and SEQ_time_has_still_frames().
Definition at line 477 of file strip_time.c.
References scene, SEQ_time_has_left_still_frames(), and SEQ_time_has_right_still_frames().
Definition at line 506 of file strip_time.c.
References Sequence::seq1, Sequence::seq2, Sequence::start, Sequence::startdisp, and Sequence::startofs.
Referenced by check_seq_need_thumbnails(), do_adjustment_impl(), draw_cache_view(), draw_color_strip_band(), draw_effect_inputs_highlight(), draw_seq_background(), draw_seq_handle(), draw_seq_strip(), draw_seq_strip_thumbnail(), draw_seq_strips(), draw_seq_text_get_overlay_string(), draw_sequence_extensions_overlay(), drawmeta_contents(), effect_input_get(), find_nearest_seq(), find_neighboring_sequence(), find_next_prev_sequence(), flushTransSeq(), get_default_fac_fade(), overlap_description_get(), query_lower_channel_strips(), query_right_side_strips(), select_active_side(), select_active_side_range(), select_grouped_time_overlap(), select_linked_time(), SEQ_add_reload_new_file(), seq_cache_cleanup_sequence(), seq_cache_free_temp_cache(), seq_cache_thumbnail_cleanup(), seq_cmp_time_startdisp_channel(), seq_disk_cache_invalidate(), seq_edit_split_effect_intersect_check(), SEQ_edit_strip_split(), seq_effect_speed_rebuild_map(), seq_frame_apply_snap(), seq_meta_stack_alloc(), SEQ_proxy_rebuild(), seq_rectf(), seq_relations_check_depend(), SEQ_relations_check_scene_recursion(), SEQ_render_thumbnail_first_frame_get(), SEQ_render_thumbnail_next_frame_get(), SEQ_render_thumbnails_base_set(), SEQ_render_thumbnails_guaranteed_set_frame_step_get(), seq_snap_source_points_build(), seq_snap_target_points_build(), SEQ_sound_update_bounds(), seq_speed_effect_target_frame_get(), seq_time_effect_range_set(), SEQ_time_find_next_prev_edit(), SEQ_time_has_left_still_frames(), SEQ_time_right_handle_frame_set(), SEQ_time_speed_factor_set(), SEQ_time_strip_intersects_frame(), SEQ_time_update_meta_strip_range(), SEQ_timeline_expand_boundbox(), SEQ_transform_fix_single_image_seq_offsets(), seq_transform_handle_overwrite_split(), seq_transform_handle_overwrite_trim(), SEQ_transform_offset_after_frame(), SEQ_transform_seqbase_shuffle_ex(), SEQ_transform_test_overlap_seq_seq(), SEQ_transform_translate_sequence(), seq_update_meta_disp_range(), seq_view_collection_rect_timeline(), SeqToTransData(), SeqTransInfo(), sequence_handle_size_get_clamped(), sequencer_add_movie_clamp_sound_strip_length(), sequencer_add_movie_multiple_strips(), sequencer_add_sound_multiple_strips(), sequencer_all_free_anim_ibufs(), sequencer_box_select_exec(), sequencer_draw_get_transform_preview_frame(), sequencer_export_subtitles_exec(), sequencer_meta_make_exec(), sequencer_paste_exec(), sequencer_select_linked_handle(), sequencer_select_side_exec(), sequencer_select_side_of_frame(), sequencer_select_side_of_frame_exec(), sequencer_separate_images_exec(), sequencer_set_range_to_strips_exec(), sequencer_slip_apply_limits(), sequencer_snap_exec(), sequencer_split_exec(), sequencer_thumbnail_closest_guaranteed_frame_get(), sequencer_thumbnail_ghash_init(), shuffle_seq_test_overlap(), shuffle_seq_time_offset_get(), and swap_sequence().
Definition at line 524 of file strip_time.c.
References scene, seq_sequence_lookup_effects_by_seq(), seq_sequence_lookup_meta_by_seq(), SEQ_time_right_handle_frame_get(), seq_time_update_effects_strip_range(), SEQ_time_update_meta_strip_range(), Sequence::start, Sequence::startdisp, and Sequence::startofs.
Referenced by flushTransSeq(), SEQ_add_reload_new_file(), seq_edit_split_handle_strip_offsets(), seq_split_set_left_hold_offset(), SEQ_transform_fix_single_image_seq_offsets(), seq_transform_handle_overwrite_trim(), seq_update_meta_disp_range(), sequencer_add_movie_clamp_sound_strip_length(), and sequencer_snap_exec().
|
static |
Definition at line 34 of file strip_time.c.
References Sequence::flag, float(), RenderData::frs_sec, RenderData::frs_sec_base, Sequence::media_playback_rate, Scene::r, scene, and SEQ_AUTO_PLAYBACK_RATE.
Referenced by seq_time_playback_rate_factor_get().
Definition at line 47 of file strip_time.c.
References scene, seq_time_media_playback_rate_factor_get(), and Sequence::speed_factor.
Referenced by seq_give_frame_index(), and SEQ_time_strip_length_get().
Definition at line 515 of file strip_time.c.
References Sequence::enddisp, Sequence::endofs, scene, Sequence::seq1, Sequence::seq2, SEQ_time_strip_length_get(), and Sequence::start.
Referenced by check_seq_need_thumbnails(), do_adjustment_impl(), do_versions_sequencer_speed_effect_recursive(), draw_cache_view(), draw_color_strip_band(), draw_effect_inputs_highlight(), draw_seq_background(), draw_seq_handle(), draw_seq_strip(), draw_seq_strip_thumbnail(), draw_seq_strips(), draw_seq_text_get_overlay_string(), draw_sequence_extensions_overlay(), drawmeta_contents(), find_nearest_seq(), find_neighboring_sequence(), find_next_prev_sequence(), flushTransSeq(), overlap_description_get(), query_lower_channel_strips(), select_grouped_time_overlap(), select_linked_time(), SEQ_add_reload_new_file(), seq_cache_cleanup_sequence(), seq_cache_free_temp_cache(), seq_disk_cache_invalidate(), seq_edit_split_effect_intersect_check(), SEQ_edit_strip_split(), seq_effect_speed_rebuild_map(), seq_frame_apply_snap(), seq_get_text_strip_cb(), seq_give_frame_index(), seq_meta_stack_alloc(), SEQ_proxy_rebuild(), seq_rectf(), seq_relations_check_depend(), SEQ_render_thumbnails(), SEQ_render_thumbnails_base_set(), SEQ_render_thumbnails_guaranteed_set_frame_step_get(), seq_snap_source_points_build(), seq_snap_target_points_build(), SEQ_sound_update_bounds(), seq_speed_effect_target_frame_get(), seq_time_effect_range_set(), SEQ_time_find_next_prev_edit(), SEQ_time_has_right_still_frames(), SEQ_time_left_handle_frame_set(), SEQ_time_strip_intersects_frame(), SEQ_time_update_meta_strip_range(), SEQ_timeline_expand_boundbox(), SEQ_transform_fix_single_image_seq_offsets(), seq_transform_handle_overwrite_split(), seq_transform_handle_overwrite_trim(), SEQ_transform_seqbase_shuffle_ex(), SEQ_transform_test_overlap_seq_seq(), SEQ_transform_translate_sequence(), seq_update_meta_disp_range(), seq_view_collection_rect_timeline(), SeqToTransData(), SeqTransInfo(), sequence_handle_size_get_clamped(), sequencer_add_movie_clamp_sound_strip_length(), sequencer_add_movie_multiple_strips(), sequencer_add_sound_multiple_strips(), sequencer_all_free_anim_ibufs(), sequencer_box_select_exec(), sequencer_draw_get_transform_preview_frame(), sequencer_export_subtitles_exec(), sequencer_generic_invoke_xy_guess_channel(), sequencer_meta_make_exec(), sequencer_select_side_of_frame(), sequencer_select_side_of_frame_exec(), sequencer_separate_images_exec(), sequencer_set_range_to_strips_exec(), sequencer_slip_apply_limits(), sequencer_split_exec(), shuffle_seq_test_overlap(), shuffle_seq_time_offset_get(), and swap_sequence().
Definition at line 539 of file strip_time.c.
References Sequence::enddisp, Sequence::endofs, scene, seq_sequence_lookup_effects_by_seq(), seq_sequence_lookup_meta_by_seq(), SEQ_time_left_handle_frame_get(), SEQ_time_strip_length_get(), seq_time_update_effects_strip_range(), SEQ_time_update_meta_strip_range(), and Sequence::start.
Referenced by flushTransSeq(), SEQ_add_effect_strip(), SEQ_add_reload_new_file(), seq_edit_split_handle_strip_offsets(), seq_split_set_right_hold_offset(), SEQ_transform_fix_single_image_seq_offsets(), seq_transform_handle_overwrite_trim(), seq_update_meta_disp_range(), sequencer_add_image_strip_exec(), sequencer_add_movie_clamp_sound_strip_length(), and sequencer_snap_exec().
Definition at line 313 of file strip_time.c.
References StripAnim::anim, Sequence::anims, BKE_movieclip_get_fps(), BLI_listbase_is_empty(), Sequence::clip, ListBase::first, RenderData::frs_sec, RenderData::frs_sec_base, IMB_anim_get_fps(), NULL, Scene::r, scene, Sequence::scene, seq_open_anim_file(), SEQ_TYPE_MOVIE, SEQ_TYPE_MOVIECLIP, SEQ_TYPE_SCENE, and Sequence::type.
Definition at line 445 of file strip_time.c.
References Sequence::endofs, scene, seq_sequence_lookup_effects_by_seq(), seq_sequence_lookup_meta_by_seq(), SEQ_time_left_handle_frame_get(), seq_time_update_effects_strip_range(), SEQ_time_update_meta_strip_range(), SEQ_TYPE_SOUND_RAM, Sequence::speed_factor, Sequence::start, Sequence::startofs, and Sequence::type.
Definition at line 494 of file strip_time.c.
References Sequence::start.
Referenced by draw_seq_background(), draw_seq_strip(), draw_seq_strips(), draw_sequence_extensions_overlay(), SEQ_add_image_load_file(), seq_cache_frame_index_to_timeline_frame(), seq_cache_timeline_frame_to_frame_index(), SEQ_get_seqbase_from_sequence(), seq_give_frame_index(), SEQ_time_has_left_still_frames(), SEQ_time_has_right_still_frames(), and transseq_backup().
Definition at line 499 of file strip_time.c.
References scene, seq_sequence_lookup_effects_by_seq(), seq_sequence_lookup_meta_by_seq(), seq_time_update_effects_strip_range(), SEQ_time_update_meta_strip_range(), and Sequence::start.
bool SEQ_time_strip_intersects_frame | ( | const Scene * | scene, |
const Sequence * | seq, | ||
const int | timeline_frame | ||
) |
Definition at line 437 of file strip_time.c.
References scene, SEQ_time_left_handle_frame_get(), and SEQ_time_right_handle_frame_get().
Referenced by query_strips_at_frame(), SEQ_get_topmost_sequence(), SEQ_relations_free_imbuf(), sequencer_all_free_anim_ibufs(), sequencer_select_side_of_frame_exec(), and strip_exists_at_frame().
Definition at line 484 of file strip_time.c.
References Sequence::len, scene, seq_time_playback_rate_factor_get(), SEQ_TYPE_SOUND_RAM, and Sequence::type.
Referenced by draw_seq_background(), draw_seq_strip(), draw_seq_strips(), draw_sequence_extensions_overlay(), get_default_fac_fade(), SEQ_edit_sequence_swap(), seq_effect_speed_rebuild_map(), seq_give_frame_index(), seq_speed_effect_target_frame_get(), seq_split_set_left_hold_offset(), seq_split_set_right_hold_offset(), SEQ_time_has_right_still_frames(), SEQ_time_right_handle_frame_get(), SEQ_time_right_handle_frame_set(), and SEQ_time_update_meta_strip_range().
Definition at line 555 of file strip_time.c.
References Sequence::enddisp, Sequence::endofs, offset, scene, seq_sequence_lookup_effects_by_seq(), seq_sequence_lookup_meta_by_seq(), seq_time_update_effects_strip_range(), SEQ_time_update_meta_strip_range(), Sequence::startdisp, and Sequence::startofs.
Referenced by SEQ_transform_translate_sequence().
void seq_time_update_effects_strip_range | ( | const Scene * | scene, |
SeqCollection * | effects | ||
) |
Definition at line 216 of file strip_time.c.
References NULL, scene, SEQ_ITERATOR_FOREACH, seq_sequence_lookup_effects_by_seq(), and seq_time_effect_range_set().
Referenced by SEQ_time_left_handle_frame_set(), SEQ_time_right_handle_frame_set(), SEQ_time_speed_factor_set(), SEQ_time_start_frame_set(), seq_time_translate_handles(), SEQ_time_update_meta_strip_range(), and SEQ_transform_translate_sequence().
Definition at line 147 of file strip_time.c.
References Sequence::anim_endofs, Sequence::anim_startofs, BLI_listbase_is_empty(), Sequence::enddisp, Sequence::endofs, Sequence::len, LISTBASE_FOREACH, max, max_ii(), MAXFRAME, min, min_ii(), NULL, scene, seq_sequence_lookup_effects_by_seq(), seq_sequence_lookup_meta_by_seq(), SEQ_time_left_handle_frame_get(), SEQ_time_right_handle_frame_get(), SEQ_time_strip_length_get(), seq_time_update_effects_strip_range(), seq_update_sound_bounds_recursive(), Sequence::seqbase, Sequence::start, Sequence::startdisp, and Sequence::startofs.
Referenced by seq_add_generic_update(), SEQ_time_left_handle_frame_set(), SEQ_time_right_handle_frame_set(), SEQ_time_speed_factor_set(), SEQ_time_start_frame_set(), seq_time_translate_handles(), SEQ_transform_translate_sequence(), and version_fix_seq_meta_range().
Definition at line 373 of file strip_time.c.
References scene, SEQ_timeline_expand_boundbox(), and SEQ_timeline_init_boundbox().
Referenced by draw_timeline_seq_display(), and seq_time_gap_info_get().
Definition at line 354 of file strip_time.c.
References LISTBASE_FOREACH, NULL, scene, SEQ_time_left_handle_frame_get(), SEQ_time_right_handle_frame_get(), rctf::xmax, rctf::xmin, and rctf::ymax.
Referenced by displayed_channel_range_get(), SEQ_timeline_boundbox(), sequencer_main_clamp_view(), and sequencer_view_all_exec().
Definition at line 346 of file strip_time.c.
References RenderData::efra, Scene::r, scene, RenderData::sfra, rctf::xmax, rctf::xmin, rctf::ymax, and rctf::ymin.
Referenced by SEQ_timeline_boundbox(), and sequencer_view_all_exec().
Definition at line 140 of file strip_time.c.
References metaseq_end(), metaseq_start(), scene, and seq_update_sound_bounds_recursive_impl().
Referenced by SEQ_sound_update_bounds_all(), and SEQ_time_update_meta_strip_range().
|
static |
Definition at line 98 of file strip_time.c.
References Sequence::anim_startofs, BKE_sound_move_scene_sound(), ELEM, Sequence::endofs, ListBase::first, Sequence::len, max_ii(), metaseq_end(), metaseq_start(), min_ii(), Sequence::next, NULL, bSound::offset_time, scene, Sequence::scene_sound, SEQ_TYPE_META, SEQ_TYPE_SCENE, SEQ_TYPE_SOUND_RAM, Sequence::seqbase, Sequence::sound, Sequence::start, Sequence::startofs, and Sequence::type.
Referenced by seq_update_sound_bounds_recursive().
|
static |
Definition at line 379 of file strip_time.c.
References scene, SEQ_ITERATOR_FOREACH, and SEQ_time_strip_intersects_frame().
Referenced by seq_time_gap_info_get().