[Durian-svn] [5134] script to make markers based on avi locations

campbell institute at blender.org
Tue Jun 15 16:53:54 CEST 2010


Revision: 5134
          https://blenderinstitute.dyndns.org/durian-svn/?do=log&project=durian&path=/&rev=5134
Author:   campbell
Date:     2010-06-15 16:53:54 +0200 (Tue, 15 Jun 2010)
Log Message:
-----------
script to make markers based on avi locations

Added Paths:
-----------
    pro/scripts/utilities/sequencer_movie_marker_gen.py

Added: pro/scripts/utilities/sequencer_movie_marker_gen.py
===================================================================
--- pro/scripts/utilities/sequencer_movie_marker_gen.py	                        (rev 0)
+++ pro/scripts/utilities/sequencer_movie_marker_gen.py	2010-06-15 14:53:54 UTC (rev 5134)
@@ -0,0 +1,52 @@
+import bpy
+import os
+
+frames = set()
+data = []
+
+for s in bpy.context.scene.sequence_editor.sequences:
+    
+    if s.type != 'MOVIE':
+        continue
+
+    filename = s.filepath
+
+    filename = os.path.basename(filename)
+    filename, ext = os.path.splitext(filename)
+    
+    # cleanup
+    filename = filename.split("_layout")[0]
+    filename = filename.split("_comp")[0]
+    filename = filename.split("_overlay")[0]
+    
+    start = s.frame_final_start
+    end = s.frame_final_end
+    chan = s.channel
+    
+    frames.add(start)
+    frames.add(end)
+
+    data.append((start, end, chan, filename))
+
+frames_info = []
+
+for frame in sorted(frames):
+    
+    frame_active = []
+    for start, end, chan, filename in data:
+        if frame >= start and frame < end:
+            frame_active.append((chan, filename))
+    frame_active.sort()
+    frame_active.reverse()
+    frame_active_str = ", ".join([filename for chan, filename in frame_active])
+    
+    frames_info.append((frame, frame_active_str))
+    
+    
+for marker in bpy.context.scene.timeline_markers:
+    marker.selected = marker.name.startswith(" ")
+    
+for frame, info in frames_info:
+    marker = bpy.context.scene.timeline_markers.add(name=" " + info)
+    marker.frame = frame
+    marker.selected = True



More information about the Durian-svn mailing list