From ac0ae9e5b2d06037df03fe58590e9083b684f2e7 Mon Sep 17 00:00:00 2001 From: Paul Kocialkowski Date: Sat, 12 Nov 2022 20:01:59 +0100 Subject: capture-pipeline: Refactor processing and name handling Signed-off-by: Paul Kocialkowski --- capture-pipeline | 107 +++++++++++++++++++------------------------------------ 1 file changed, 37 insertions(+), 70 deletions(-) diff --git a/capture-pipeline b/capture-pipeline index 44c532d..b0a1687 100755 --- a/capture-pipeline +++ b/capture-pipeline @@ -81,34 +81,19 @@ def audio_source_base(sequence, shot): return base def audio_source_name(sequence, shot, take): - base = audio_source_base(sequence, shot) - suffix = audio_source_suffix(shot) name = shot_name(shot) - index = 1 - - path = os.path.join(base, name + suffix) - if os.path.isfile(path): - return name if "index" in take: - index = take["index"] + name += "-" + str(take["index"]) - name += "-" + str(index) - path = os.path.join(base, name + suffix) - if os.path.isfile(path): - return name - - return None + return name def audio_source_path(sequence, shot, take): base = audio_source_base(sequence, shot) name = audio_source_name(sequence, shot, take) suffix = audio_source_suffix(shot) - if name: - return os.path.join(base, name + suffix) - - return None + return os.path.join(base, name + suffix) def audio_output_suffix(shot): extension = settings_item_entry(shot, "audio-extension") or settings_item_entry(shot, "audio-output-extension") @@ -124,7 +109,6 @@ def audio_output_base(sequence, shot): return base def audio_output_name(sequence, shot, take, part): - base = audio_output_base(sequence, shot) name = shot_name(shot) + "-" part_name_part = part_name(part) @@ -145,24 +129,20 @@ def audio_output_prepare(sequence, shot, take, part): except: os.makedirs(base, exist_ok = True) - if name: - if name in sequence["audio-registry"]: - if sequence["audio-registry"][name]["count"] > 1: - sequence["audio-registry"][name]["index"] += 1 + if name in sequence["audio-registry"]: + if sequence["audio-registry"][name]["count"] > 1: + sequence["audio-registry"][name]["index"] += 1 def audio_output_path(sequence, shot, take, part): base = audio_output_base(sequence, shot) name = audio_output_name(sequence, shot, take, part) suffix = audio_output_suffix(shot) - if name: - if name in sequence["audio-registry"]: - if sequence["audio-registry"][name]["count"] > 1: - name += "-" + str(sequence["audio-registry"][name]["index"]) - - return os.path.join(base, name + suffix) + if name in sequence["audio-registry"]: + if sequence["audio-registry"][name]["count"] > 1: + name += "-" + str(sequence["audio-registry"][name]["index"]) - return None + return os.path.join(base, name + suffix) def audio_ffmpeg_command(sequence, shot, take, part): source_path = audio_source_path(sequence, shot, take) @@ -269,34 +249,20 @@ def video_source_base(sequence, shot): return base def video_source_name(sequence, shot, take): - base = video_source_base(sequence, shot) - suffix = video_source_suffix(shot) name = shot_name(shot) - index = 1 - - path = os.path.join(base, name + suffix) - if os.path.isfile(path): - return name if "index" in take: index = take["index"] + name += "-" + str(index) - name += "-" + str(index) - path = os.path.join(base, name + suffix) - if os.path.isfile(path): - return name - - return None + return name def video_source_path(sequence, shot, take): base = video_source_base(sequence, shot) name = video_source_name(sequence, shot, take) suffix = video_source_suffix(shot) - if name: - return os.path.join(base, name + suffix) - - return None + return os.path.join(base, name + suffix) def video_output_suffix(shot): extension = settings_item_entry(shot, "video-extension") or settings_item_entry(shot, "video-output-extension") @@ -312,7 +278,6 @@ def video_output_base(sequence, shot): return base def video_output_name(sequence, shot, take, part): - base = video_output_base(sequence, shot) name = shot_name(shot) + "-" part_name_part = part_name(part) @@ -333,24 +298,20 @@ def video_output_prepare(sequence, shot, take, part): except: os.makedirs(base, exist_ok = True) - if name: - if name in sequence["video-registry"]: - if sequence["video-registry"][name]["count"] > 1: - sequence["video-registry"][name]["index"] += 1 + if name in sequence["video-registry"]: + if sequence["video-registry"][name]["count"] > 1: + sequence["video-registry"][name]["index"] += 1 def video_output_path(sequence, shot, take, part): base = video_output_base(sequence, shot) name = video_output_name(sequence, shot, take, part) suffix = video_output_suffix(shot) - if name: - if name in sequence["video-registry"]: - if sequence["video-registry"][name]["count"] > 1: - name += "-" + str(sequence["video-registry"][name]["index"]) - - return os.path.join(base, name + suffix) + if name in sequence["video-registry"]: + if sequence["video-registry"][name]["count"] > 1: + name += "-" + str(sequence["video-registry"][name]["index"]) - return None + return os.path.join(base, name + suffix) def video_ffmpeg_command(sequence, shot, take, part): source_path = video_source_path(sequence, shot, take) @@ -554,21 +515,27 @@ def shot_register(sequence, shot): def sequence_process(sequence): if "label" in sequence: - label = sequence["label"] + print("# sequence: " + sequence["label"] + "\n") - print("# sequence: " + label + "\n") + for shot in sequence["shots"]: + shot_process(sequence, shot) - shots = sequence["shots"] + print("") - for shot in shots: +def sequence_register(sequence): + for shot in sequence["shots"]: shot_register(sequence, shot) - for shot in shots: - shot_process(sequence, shot) +# capture - print("") +def capture_process(sequences): + for sequence in sequences: + sequence_register(sequence) -def main(): + for sequence in sequences: + sequence_process(sequence) + +def capture_main(): global settings if len(sys.argv) < 2: @@ -578,11 +545,11 @@ def main(): stream = open(path, 'r') data = yaml.load(stream, Loader = yaml.SafeLoader) + stream.close() settings = data["settings"] - for sequence in data["sequences"]: - sequence_process(sequence) + capture_process(data["sequences"]) if __name__ == "__main__": - main() + capture_main() -- cgit v1.2.3