refactor(main.py): simplify render video logic and improve filename handling

This commit is contained in:
2025-09-08 08:40:38 +02:00
parent f9272e76eb
commit 34179e5922

View File

@@ -1892,7 +1892,7 @@ class VideoEditor:
print(" N: Next video") print(" N: Next video")
print(" n: Previous video") print(" n: Previous video")
print(" Enter: Render video (overwrites if '_edited_' in name)") 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(" X: Cancel render")
print(" Q/ESC: Quit") print(" Q/ESC: Quit")
print() print()
@@ -2041,21 +2041,23 @@ class VideoEditor:
if len(self.video_files) > 1: if len(self.video_files) > 1:
self.next_video() self.next_video()
else: else:
# n - Create _edited_edited file
directory = self.video_path.parent directory = self.video_path.parent
base_name = self.video_path.stem base_name = self.video_path.stem
extension = self.video_path.suffix extension = self.video_path.suffix
# Create _edited_edited filename # Remove any existing _edited_ suffix to get clean base name
if "_edited_" in base_name: clean_base = base_name.replace("_edited", "")
# 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}"
output_path = str(directory / new_name) # Find next available number
success = self.render_video(output_path) 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 elif key == 13: # Enter
# Only overwrite if file already contains "_edited_" in name # Only overwrite if file already contains "_edited_" in name
print(f"DEBUG: Checking if '{self.video_path.stem}' contains '_edited_'") print(f"DEBUG: Checking if '{self.video_path.stem}' contains '_edited_'")