== Sequencer ==

Made Multicam-Editing really work:
* added a panel within N-keys, so that one can start/stop playback
  and cut between cameras directly from the panel
* made "active_strip" RNA editable, to make that work correctly
  (is usefull anyways :) )
This commit is contained in:
2010-05-02 17:36:38 +00:00
parent d750c07d67
commit 31cfad9fda
3 changed files with 58 additions and 3 deletions

View File

@@ -20,6 +20,7 @@
import bpy
from bpy.props import *
class SequencerCrossfadeSounds(bpy.types.Operator):
'''Do crossfading volume animation of two selected sound strips.'''
@@ -71,12 +72,52 @@ class SequencerCrossfadeSounds(bpy.types.Operator):
return {'CANCELLED'}
class SequencerCutMulticam(bpy.types.Operator):
'''Cut multicam strip and select camera.'''
bl_idname = "sequencer.cut_multicam"
bl_label = "Cut multicam"
bl_options = {'REGISTER', 'UNDO'}
camera = IntProperty(name="Camera",
default=1, min=1, max=32, soft_min=1, soft_max=32)
def poll(self, context):
if context.scene and context.scene.sequence_editor and context.scene.sequence_editor.active_strip:
return context.scene.sequence_editor.active_strip.type == 'MULTICAM'
else:
return False
def execute(self, context):
camera = self.properties.camera
s = context.scene.sequence_editor.active_strip
if not s.selected:
s.selected = True
cfra = context.scene.frame_current
bpy.ops.sequencer.cut(frame=cfra,type='HARD',side='RIGHT')
for s in context.scene.sequence_editor.sequences:
if s.selected and s.type == 'MULTICAM' and s.frame_final_start <= cfra and cfra < s.frame_final_end:
context.scene.sequence_editor.active_strip = s
context.scene.sequence_editor.active_strip.multicam_source = camera
return {'FINISHED'}
def register():
bpy.types.register(SequencerCrossfadeSounds)
register = bpy.types.register
register(SequencerCrossfadeSounds)
register(SequencerCutMulticam)
def unregister():
bpy.types.unregister(SequencerCrossfadeSounds)
unregister = bpy.types.unregister
unregister(SequencerCrossfadeSounds)
unregister(SequencerCutMulticam)
if __name__ == "__main__":
register()