diff options
author | Campbell Barton <ideasman42@gmail.com> | 2013-01-06 14:15:19 +0400 |
---|---|---|
committer | Campbell Barton <ideasman42@gmail.com> | 2013-01-06 14:15:19 +0400 |
commit | 2e29310724e00291e1138bebccb0965a676f626f (patch) | |
tree | 48a57f7366330100e760127d1bb932578b904917 /io_sequencer_edl/import_edl.py | |
parent | 8a83ea85304be70b0445d32c0f511f7169e136f4 (diff) |
fixes to EDL import
- allow editmode 'a1', 'a2', 'a3'... etc
- allow editmode 'none'
- accept black as 'bl', 'bw', 'blk', 'black'
- black was being imported as grey
- add global frame offset option for importing
- fix error naming strips
- if a reel has an extension, match with the extension stripped as well --- so foobar.mov will find foobar.avi file.
Diffstat (limited to 'io_sequencer_edl/import_edl.py')
-rw-r--r-- | io_sequencer_edl/import_edl.py | 22 |
1 files changed, 15 insertions, 7 deletions
diff --git a/io_sequencer_edl/import_edl.py b/io_sequencer_edl/import_edl.py index 65e4db4a..24faaef7 100644 --- a/io_sequencer_edl/import_edl.py +++ b/io_sequencer_edl/import_edl.py @@ -89,7 +89,7 @@ def replace_ext(path, ext): return path[:path.rfind(".") + 1] + ext -def load_edl(scene, filename, reel_files, reel_offsets): +def load_edl(scene, filename, reel_files, reel_offsets, global_offset): """ reel_files - key:reel <--> reel:filename """ @@ -123,7 +123,10 @@ def load_edl(scene, filename, reel_files, reel_offsets): prev_edit = None for edit in edits: print(edit) - frame_offset = reel_offsets[edit.reel] + if edit.reel.lower() in parse_edl.BLACK_ID: + frame_offset = 0 + else: + frame_offset = reel_offsets[edit.reel] src_start = int(edit.srcIn) + frame_offset src_end = int(edit.srcOut) + frame_offset @@ -133,6 +136,10 @@ def load_edl(scene, filename, reel_files, reel_offsets): rec_end = int(edit.recOut) + 1 rec_length = rec_end - rec_start + # apply global offset + rec_start += global_offset + rec_end += global_offset + # print src_length, rec_length, src_start if edit.m2 is not None: @@ -148,16 +155,17 @@ def load_edl(scene, filename, reel_files, reel_offsets): strip = None final_strips = [] - if edit.reel.lower() == "bw": + if edit.reel.lower() in parse_edl.BLACK_ID: strip = sequence_editor.sequences.new_effect( - name="Wipe", + name="Color", type='COLOR', start_frame=rec_start, + end_frame=rec_start + max(1, rec_length), channel=track + 1) strip_list.append(strip) - - strip.frame_duration = rec_length # for color its simple final_strips.append(strip) + strip.color = 0.0, 0.0, 0.0 + else: path_full = reel_files[edit.reel] path_dironly, path_fileonly = os.path.split(path_full) @@ -272,7 +280,7 @@ def load_edl(scene, filename, reel_files, reel_offsets): if final_strips: for strip in final_strips: # strip.frame_duration = length - final_strip.name = edit.as_name() + strip.name = edit.as_name() edit.custom_data[:] = final_strips # track = not track prev_edit = edit |