Blender V5.0
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
10
11#include "BLI_utildefines.h"
12
13#include "DNA_scene_enums.h"
14
15struct ListBase;
16struct Main;
17struct Mask;
18struct MovieClip;
19struct Scene;
20struct Strip;
21struct Stereo3dFormat;
22
23namespace blender::seq {
24
33
34
35struct LoadData {
38 char name[64]; /* Strip name, including file extension. */
40 char path[/*FILE_MAX*/ 1024];
41 struct {
42 int count; /* Number of images in this strip, 1 if not an image sequence. */
43 int length;
44 } image; /* Only for image strips. */
45 Scene *scene; /* Only for scene strips. */
46 MovieClip *clip; /* Only for clip strips. */
47 Mask *mask; /* Only for mask strips. */
48 struct {
49 int type;
50 int length;
53 } effect; /* Only for effect strips. */
59 bool allow_invalid_file; /* Used by RNA API to create placeholder strips. */
60 double r_video_stream_start; /* For AV synchronization. Set by `seq::add_movie_strip`. */
63};
64
75 LoadData *load_data, const char *name, const char *path, int start_frame, int channel);
86Strip *add_image_strip(Main *bmain, Scene *scene, ListBase *seqbase, LoadData *load_data);
97Strip *add_sound_strip(Main *bmain, Scene *scene, ListBase *seqbase, LoadData *load_data);
98
109void add_sound_av_sync(Main *bmain, Scene *scene, Strip *strip, LoadData *load_data);
128Strip *add_movie_strip(Main *bmain, Scene *scene, ListBase *seqbase, LoadData *load_data);
171void add_image_set_directory(Strip *strip, const char *dirpath);
179void add_image_load_file(Scene *scene, Strip *strip, size_t strip_frame, const char *filename);
185void add_image_init_alpha_mode(Main *bmain, Scene *scene, Strip *strip);
186void add_reload_new_file(Main *bmain, Scene *scene, Strip *strip, bool lock_range);
188 Main *bmain, Scene *scene, Strip *strip, bool *r_was_reloaded, bool *r_can_produce_frames);
189
190} // namespace blender::seq
#define ENUM_OPERATORS(_type, _max)
eSeqImageFitMethod
float4 load_data(StoredFloat4 data)
void add_movie_reload_if_needed(Main *bmain, Scene *scene, Strip *strip, bool *r_was_reloaded, bool *r_can_produce_frames)
Definition strip_add.cc:706
Strip * add_effect_strip(Scene *scene, ListBase *seqbase, LoadData *load_data)
Definition strip_add.cc:166
void add_image_load_file(Scene *scene, Strip *strip, size_t strip_frame, const char *filename)
Definition strip_add.cc:202
void add_image_set_directory(Strip *strip, const char *dirpath)
Definition strip_add.cc:197
Strip * add_sound_strip(Main *, Scene *, ListBase *, LoadData *)
Definition strip_add.cc:374
void add_sound_av_sync(Main *, Scene *, Strip *, LoadData *)
Definition strip_add.cc:367
Strip * add_meta_strip(Scene *scene, ListBase *seqbase, LoadData *load_data)
Definition strip_add.cc:383
void add_reload_new_file(Main *bmain, Scene *scene, Strip *strip, const bool lock_range)
Definition strip_add.cc:538
Strip * add_scene_strip(Scene *scene, ListBase *seqbase, LoadData *load_data)
Definition strip_add.cc:131
void add_image_init_alpha_mode(Main *bmain, Scene *scene, Strip *strip)
Definition strip_add.cc:208
Strip * add_image_strip(Main *bmain, Scene *scene, ListBase *seqbase, LoadData *load_data)
Definition strip_add.cc:239
Strip * add_movieclip_strip(Scene *scene, ListBase *seqbase, LoadData *load_data)
Definition strip_add.cc:143
@ SEQ_LOAD_SOUND_MONO
Definition SEQ_add.hh:28
@ SEQ_LOAD_SET_VIEW_TRANSFORM
Definition SEQ_add.hh:30
@ SEQ_LOAD_SOUND_CACHE
Definition SEQ_add.hh:27
@ SEQ_LOAD_MOVIE_SYNC_FPS
Definition SEQ_add.hh:29
Strip * add_mask_strip(Scene *scene, ListBase *seqbase, LoadData *load_data)
Definition strip_add.cc:155
Strip * add_movie_strip(Main *bmain, Scene *scene, ListBase *seqbase, LoadData *load_data)
Definition strip_add.cc:401
void add_load_data_init(LoadData *load_data, const char *name, const char *path, const int start_frame, const int channel)
Definition strip_add.cc:62
const char * name
eSeqImageFitMethod fit_method
Definition SEQ_add.hh:55
Stereo3dFormat * stereo3d_format
Definition SEQ_add.hh:58
double r_video_stream_start
Definition SEQ_add.hh:60