Welcome to mirror list, hosted at ThFree Co, Russian Federation.

git.blender.org/blender.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorFĂ©lix <Miadim>2021-03-20 01:55:39 +0300
committerRichard Antalik <richardantalik@gmail.com>2021-03-20 03:40:53 +0300
commitbfad8deb0be0d014b5e05c7e1af564acb3d494d1 (patch)
treee035210f0f0d4c3cd1a19870ea5d1183aa8ae825 /source/blender/sequencer
parent4158405c0b9d32dd0c6cc1844bc06561b8513766 (diff)
VSE: Add new_meta RNA API function
This function can be used to create empty meta strip, which is not straightforward when using operators. Very useful for import/export scripts. Reviewed By: ISS Differential Revision: https://developer.blender.org/D10661
Diffstat (limited to 'source/blender/sequencer')
-rw-r--r--source/blender/sequencer/SEQ_add.h3
-rw-r--r--source/blender/sequencer/intern/strip_add.c26
2 files changed, 29 insertions, 0 deletions
diff --git a/source/blender/sequencer/SEQ_add.h b/source/blender/sequencer/SEQ_add.h
index 7d728b25a30..983f5ab1391 100644
--- a/source/blender/sequencer/SEQ_add.h
+++ b/source/blender/sequencer/SEQ_add.h
@@ -79,6 +79,9 @@ struct Sequence *SEQ_add_sound_strip(struct Main *bmain,
struct Scene *scene,
struct ListBase *seqbase,
struct SeqLoadData *load_data);
+struct Sequence *SEQ_add_meta_strip(struct Scene *scene,
+ struct ListBase *seqbase,
+ struct SeqLoadData *load_data);
struct Sequence *SEQ_add_movie_strip(struct Main *bmain,
struct Scene *scene,
struct ListBase *seqbase,
diff --git a/source/blender/sequencer/intern/strip_add.c b/source/blender/sequencer/intern/strip_add.c
index 54e71ff0698..aab522da659 100644
--- a/source/blender/sequencer/intern/strip_add.c
+++ b/source/blender/sequencer/intern/strip_add.c
@@ -413,6 +413,32 @@ Sequence *SEQ_add_sound_strip(Main *UNUSED(bmain),
#endif // WITH_AUDASPACE
/**
+ * Add meta strip.
+ *
+ * \param scene: Scene where strips will be added
+ * \param seqbase: ListBase where strips will be added
+ * \param load_data: SeqLoadData with information necessary to create strip
+ * \return created strip
+ */
+
+Sequence *SEQ_add_meta_strip(Scene *scene, ListBase *seqbase, SeqLoadData *load_data)
+{
+ /* Allocate sequence. */
+ Sequence *seqm = SEQ_sequence_alloc(
+ seqbase, load_data->start_frame, load_data->channel, SEQ_TYPE_META);
+
+ /* Set name. */
+ seq_add_set_name(seqm, load_data);
+
+ /* Set frames start and length. */
+ seqm->start = load_data->start_frame;
+ seqm->len = 1;
+ SEQ_time_update_sequence(scene, seqm);
+
+ return seqm;
+}
+
+/**
* Add movie strip.
*
* \param main: Main reference