From 34179e59220966ffa85ce4803e5504396f9519d0 Mon Sep 17 00:00:00 2001 From: PhatPhuckDave Date: Mon, 8 Sep 2025 08:40:38 +0200 Subject: [PATCH] refactor(main.py): simplify render video logic and improve filename handling --- croppa/main.py | 24 +++++++++++++----------- 1 file changed, 13 insertions(+), 11 deletions(-) diff --git a/croppa/main.py b/croppa/main.py index 2f8af86..765c066 100644 --- a/croppa/main.py +++ b/croppa/main.py @@ -1892,7 +1892,7 @@ class VideoEditor: print(" N: Next video") print(" n: Previous video") print(" Enter: Render video (overwrites if '_edited_' in name)") - print(" n: Render video as _edited_edited") + print(" n: Render video") print(" X: Cancel render") print(" Q/ESC: Quit") print() @@ -2041,21 +2041,23 @@ class VideoEditor: if len(self.video_files) > 1: self.next_video() else: - # n - Create _edited_edited file directory = self.video_path.parent base_name = self.video_path.stem extension = self.video_path.suffix - # Create _edited_edited filename - if "_edited_" in base_name: - # If already edited, create _edited_edited - new_name = f"{base_name}_edited{extension}" - else: - # If not edited, create _edited_edited - new_name = f"{base_name}_edited_edited{extension}" + # Remove any existing _edited_ suffix to get clean base name + clean_base = base_name.replace("_edited", "") - output_path = str(directory / new_name) - success = self.render_video(output_path) + # Find next available number + counter = 1 + while True: + new_name = f"{clean_base}_edited_{counter:05d}{extension}" + output_path = directory / new_name + if not output_path.exists(): + break + counter += 1 + + success = self.render_video(str(output_path)) elif key == 13: # Enter # Only overwrite if file already contains "_edited_" in name print(f"DEBUG: Checking if '{self.video_path.stem}' contains '_edited_'")