Blender VSE Python からmeta strip作成

VideoSequenceEditor

はじめに

Blender Video sequence editor のチャンネル数のマックスは32。

言い換えると strip は縦に32個までしか並べられない。

しかし、複数のstripを1つにするmeta strip を使えば入れ子状態にして任意個の映像や効果などが配置できる。

先日丁度meta strip化しないとならなくなったので調べた。

参照元

blender.stackexchange.com

コード

bpy.ops.sequencer.meta_make()
  • opsから行うしかなさそう
  • meta_make() は選択中のstripをmeta strip 化する

使用例

import bpy

context = bpy.context
scene = context.scene
sed = scene.sequence_editor
sequences = sed.sequences

# 全ての選択を解除する
bpy.ops.sequencer.select_all(action="DESELECT")

# 何かしらの strip を選択する
# 選択は例えば 下記のようにする
# img_strip = sequences.new_image(
#                                dir_name,                # ストリップの名前
#                                path,                    # ファイルパス
#                                i,                       # 読み込み先のチャンネル
#                                frame_start              # 開始フレーム
#                                )
# img_strip.select = True

# meta strip の作成
bpy.ops.sequencer.meta_make()

# 以降はmeta strip化にやるであろう処理

# 選択中 strip(=作成したmeta strip)を選択
act_strip = sed.active_strip
# Stripの名前を設定
act_strip.name = "meta_strip"
act_strip.blend_type= 'ALPHA_OVER'Code language: PHP (php)

結果

タイトルとURLをコピーしました