From 20e5e977e3bfd0e41e36b94884547ebea7fe36ee Mon Sep 17 00:00:00 2001 From: Dylan De Faoite Date: Thu, 18 Dec 2025 14:22:37 +0000 Subject: [PATCH] MOVE clip creation logic out of CLI entry point --- rewind/clip.py | 9 ++------- rewind/video.py | 7 ++++++- 2 files changed, 8 insertions(+), 8 deletions(-) diff --git a/rewind/clip.py b/rewind/clip.py index 0d18b55..8cbfa75 100755 --- a/rewind/clip.py +++ b/rewind/clip.py @@ -1,14 +1,9 @@ #!/usr/bin/env python3 from datetime import datetime -from rewind.video import combine_last_x_ts_files +from rewind.video import clip import obsws_python as obs import sys, argparse -def create_recording(seconds: int) -> None: - output_file_name = f"{datetime.now().strftime('%Y-%m-%d %H:%M:%S')}.mp4" - combine_last_x_ts_files(seconds, output_file_name) - print(f"Created clip: {output_file_name}") - def build_parser() -> argparse.ArgumentParser: parser = argparse.ArgumentParser( prog="rewind", @@ -32,7 +27,7 @@ def main(argv=None) -> int: args = parser.parse_args(argv) if args.command == "save": - create_recording(args.seconds) + clip(args.seconds) else: parser.error("Unknown command") diff --git a/rewind/video.py b/rewind/video.py index e0ac8a3..e919f46 100644 --- a/rewind/video.py +++ b/rewind/video.py @@ -1,4 +1,4 @@ -import os, subprocess +import os, subprocess, datetime from rewind.paths import load_state @@ -28,6 +28,11 @@ def combine_last_x_ts_files(seconds: float, output_file: str) -> None: os.remove("file_list.txt") +def clip(seconds_from_end: float, output_file: str) -> None: + output_file_name = f"{datetime.now().strftime('%Y-%m-%d %H:%M:%S')}.mp4" + combine_last_x_ts_files(seconds_from_end, output_file_name) + print(f"Created clip: {output_file_name}") + def get_duration(file_path: str) -> float: result = subprocess.run( ["ffprobe", "-v", "error", "-show_entries",