Spaces:
Sleeping
Sleeping
| from pathlib import Path | |
| import subprocess | |
| def compress(TWITCH_ID: str) -> str: | |
| file = f"{TWITCH_ID}.tar.lz4" | |
| subprocess.Popen(["tar", "-clvf", file, TWITCH_ID]).communicate() | |
| return file | |
| def upload(file: str, prefix: str = "frames/"): | |
| subprocess.Popen( | |
| [ | |
| "rclone", | |
| "--config", | |
| "rclone.conf", | |
| "copy", | |
| file, | |
| f"r2:lol-highlights-eu/{prefix}/", | |
| ] | |
| ).communicate() | |
| def download(file: str, out_folder: str = "."): | |
| if not Path(file).exists(): | |
| print( | |
| subprocess.Popen( | |
| [ | |
| "rclone", | |
| "--config", | |
| "rclone.conf", | |
| "copy", | |
| f"r2:lol-highlights-eu/{file}", | |
| out_folder, | |
| ] | |
| ).communicate() | |
| ) | |
| return file | |
| def list_files(directory: str) -> list[str]: | |
| out, _ = subprocess.Popen( | |
| [ | |
| "rclone", | |
| "--config", | |
| "rclone.conf", | |
| "ls", | |
| "--exclude", | |
| "*.jpg", | |
| f"r2:lol-highlights-eu/{directory}", | |
| ], | |
| stdout=subprocess.PIPE, | |
| ).communicate() | |
| out = [x.strip().split(" ")[-1] for x in out.decode("utf-8").split("\n") if len(x)] | |
| return out | |
| def decompress(file: str): | |
| subprocess.Popen(["tar", "-xvf", file]).communicate() | |
| def download_frames_and_unpack(filename: str): | |
| download(f"frames/{filename}") | |
| decompress(filename) | |
| Path(filename).unlink() | |