refactor(main.py): simplify video rendering process by reusing existing method and reducing redundant code

This commit is contained in:
2025-09-08 00:38:51 +02:00
parent 6efbfa0c11
commit 56d6e04b48

View File

@@ -2032,37 +2032,15 @@ class VideoEditor:
print(f"DEBUG: Created temp file: {temp_path}") print(f"DEBUG: Created temp file: {temp_path}")
print("Rendering to temporary file first...") print("Rendering to temporary file first...")
# Start render and wait for completion # Use existing render method
if not self.render_video(temp_path): success = self.render_video(temp_path)
success = False
else:
print("Waiting for render to complete...")
# Wait for the render thread to complete
while self.render_thread and self.render_thread.is_alive():
# Process progress updates from the render thread
self.update_render_progress()
time.sleep(0.1) # Small delay to avoid busy waiting
# Check if render was successful by looking at the final progress update # Wait for render to complete using existing logic
try: while self.render_thread and self.render_thread.is_alive():
# Get the last progress update to check if it completed successfully self.update_render_progress()
while True: self.display_current_frame() # Show the progress bar
update_type, text, progress, fps = self.render_progress_queue.get_nowait() cv2.waitKey(1) # Update the display
if update_type == "complete": time.sleep(0.1)
print(f"Render completed: {text}")
success = True
break
elif update_type == "error":
print(f"Render failed: {text}")
success = False
break
elif update_type == "cancelled":
print("Render was cancelled")
success = False
break
except queue.Empty:
# No more updates, assume it completed
success = True
if success: if success:
print("Replacing original file...") print("Replacing original file...")