Blender V4.3
SEQ_add.hh
Go to the documentation of this file.
1/* SPDX-FileCopyrightText: 2004 Blender Authors
2 *
3 * SPDX-License-Identifier: GPL-2.0-or-later */
4
5#pragma once
6
11#include "BLI_utildefines.h"
12
13#include "DNA_scene_enums.h"
14
15struct ListBase;
16struct Main;
17struct Mask;
18struct MovieClip;
19struct Scene;
20struct Sequence;
21struct Stereo3dFormat;
22
31
32/* Api for adding new sequence strips. */
36 char name[64]; /* Strip name. */
38 char path[1024]; /* 1024 = FILE_MAX */
39 struct {
40 int len;
42 } image; /* Only for image strips. */
43 Scene *scene; /* Only for scene strips. */
44 MovieClip *clip; /* Only for clip strips. */
45 Mask *mask; /* Only for mask strips. */
46 struct {
47 int type;
48 int end_frame;
51 } effect; /* Only for effect strips. */
57 bool allow_invalid_file; /* Used by RNA API to create placeholder strips. */
58 double r_video_stream_start; /* For AV synchronization. Set by `SEQ_add_movie_strip`. */
60};
61
72 SeqLoadData *load_data, const char *name, const char *path, int start_frame, int channel);
84 Scene *scene,
85 ListBase *seqbase,
86 SeqLoadData *load_data);
98 Scene *scene,
99 ListBase *seqbase,
100 SeqLoadData *load_data);
101
112void SEQ_add_sound_av_sync(Main *bmain, Scene *scene, Sequence *seq, SeqLoadData *load_data);
121Sequence *SEQ_add_meta_strip(Scene *scene, ListBase *seqbase, SeqLoadData *load_data);
132 Scene *scene,
133 ListBase *seqbase,
134 SeqLoadData *load_data);
143Sequence *SEQ_add_scene_strip(Scene *scene, ListBase *seqbase, SeqLoadData *load_data);
152Sequence *SEQ_add_movieclip_strip(Scene *scene, ListBase *seqbase, SeqLoadData *load_data);
161Sequence *SEQ_add_mask_strip(Scene *scene, ListBase *seqbase, SeqLoadData *load_data);
170Sequence *SEQ_add_effect_strip(Scene *scene, ListBase *seqbase, SeqLoadData *load_data);
177void SEQ_add_image_set_directory(Sequence *seq, const char *dirpath);
186 Sequence *seq,
187 size_t strip_frame,
188 const char *filename);
195void SEQ_add_reload_new_file(Main *bmain, Scene *scene, Sequence *seq, bool lock_range);
197 Main *bmain, Scene *scene, Sequence *seq, bool *r_was_reloaded, bool *r_can_produce_frames);
#define ENUM_OPERATORS(_type, _max)
eSeqImageFitMethod
void SEQ_add_sound_av_sync(Main *bmain, Scene *scene, Sequence *seq, SeqLoadData *load_data)
Definition strip_add.cc:357
Sequence * SEQ_add_scene_strip(Scene *scene, ListBase *seqbase, SeqLoadData *load_data)
Definition strip_add.cc:124
Sequence * SEQ_add_movieclip_strip(Scene *scene, ListBase *seqbase, SeqLoadData *load_data)
Definition strip_add.cc:136
Sequence * SEQ_add_effect_strip(Scene *scene, ListBase *seqbase, SeqLoadData *load_data)
Definition strip_add.cc:160
void SEQ_add_load_data_init(SeqLoadData *load_data, const char *name, const char *path, int start_frame, int channel)
Definition strip_add.cc:56
Sequence * SEQ_add_mask_strip(Scene *scene, ListBase *seqbase, SeqLoadData *load_data)
Definition strip_add.cc:148
Sequence * SEQ_add_movie_strip(Main *bmain, Scene *scene, ListBase *seqbase, SeqLoadData *load_data)
Definition strip_add.cc:391
eSeqLoadFlags
Definition SEQ_add.hh:24
@ SEQ_LOAD_SOUND_MONO
Definition SEQ_add.hh:26
@ SEQ_LOAD_SOUND_CACHE
Definition SEQ_add.hh:25
@ SEQ_LOAD_SET_VIEW_TRANSFORM
Definition SEQ_add.hh:28
@ SEQ_LOAD_MOVIE_SYNC_FPS
Definition SEQ_add.hh:27
void SEQ_add_image_set_directory(Sequence *seq, const char *dirpath)
Definition strip_add.cc:188
void SEQ_add_reload_new_file(Main *bmain, Scene *scene, Sequence *seq, bool lock_range)
Definition strip_add.cc:525
Sequence * SEQ_add_meta_strip(Scene *scene, ListBase *seqbase, SeqLoadData *load_data)
Definition strip_add.cc:373
void SEQ_add_image_init_alpha_mode(Sequence *seq)
Definition strip_add.cc:200
void SEQ_add_image_load_file(Scene *scene, Sequence *seq, size_t strip_frame, const char *filename)
Definition strip_add.cc:193
void SEQ_add_movie_reload_if_needed(Main *bmain, Scene *scene, Sequence *seq, bool *r_was_reloaded, bool *r_can_produce_frames)
Definition strip_add.cc:699
Sequence * SEQ_add_image_strip(Main *bmain, Scene *scene, ListBase *seqbase, SeqLoadData *load_data)
Definition strip_add.cc:230
Sequence * SEQ_add_sound_strip(Main *bmain, Scene *scene, ListBase *seqbase, SeqLoadData *load_data)
Definition strip_add.cc:364
input_tx image(0, GPU_RGBA16F, Qualifier::WRITE, ImageType::FLOAT_2D, "preview_img") .compute_source("compositor_compute_preview.glsl") .do_static_compilation(true)
char views_format
Definition SEQ_add.hh:55
bool use_multiview
Definition SEQ_add.hh:54
Scene * scene
Definition SEQ_add.hh:43
eSeqImageFitMethod fit_method
Definition SEQ_add.hh:53
Sequence * seq1
Definition SEQ_add.hh:49
int channel
Definition SEQ_add.hh:35
bool adjust_playback_rate
Definition SEQ_add.hh:59
bool allow_invalid_file
Definition SEQ_add.hh:57
Stereo3dFormat * stereo3d_format
Definition SEQ_add.hh:56
Sequence * seq2
Definition SEQ_add.hh:50
int end_frame
Definition SEQ_add.hh:41
MovieClip * clip
Definition SEQ_add.hh:44
int start_frame
Definition SEQ_add.hh:34
Mask * mask
Definition SEQ_add.hh:45
eSeqLoadFlags flags
Definition SEQ_add.hh:52
double r_video_stream_start
Definition SEQ_add.hh:58