PATCH: Fixed old .ts files still being present after stream end

This commit is contained in:
2025-03-03 21:41:50 +00:00
parent 0ba21a7666
commit 43f3b54e22
2 changed files with 11 additions and 6 deletions

View File

@@ -50,12 +50,6 @@ def combine_ts_stream(stream_path, vods_path, vod_file_name):
subprocess.run(vod_command)
# Remove ts files
for ts_file in ts_files:
remove(f"{stream_path}/{ts_file}")
# Remove m3u8 file
remove(f"{stream_path}/index.m3u8")
@shared_task
def convert_image_to_png(image_path, png_path):
"""

View File

@@ -81,6 +81,9 @@ def end_user_stream(stream_key, user_id, username):
FROM streams
WHERE user_id = ?""", (user_id,))
# Remove HLS files, even if user is not streaming
remove_hls_files(path_manager.get_stream_path(username))
# If user is not streaming, just return
if not stream_info:
print(f"User {username} (ID: {user_id}) is not streaming", flush=True)
@@ -194,6 +197,14 @@ def generate_thumbnail(stream_file: str, thumbnail_file: str) -> None:
except subprocess.CalledProcessError as e:
print(f"No information available for {stream_file}, aborting thumbnail generation")
def remove_hls_files(stream_path: str) -> None:
"""
Removes all hls files in a stream directory
"""
for file in os.listdir(stream_path):
if file.endswith(".ts") or file.endswith(".m3u8"):
os.remove(os.path.join(stream_path, file))
def get_stream_tags(user_id: int) -> Optional[List[str]]:
"""
Given a stream return tags associated with the user's stream