Вынес uploader_backend в отдельный сущность

This commit is contained in:
Viner Abubakirov
2026-02-23 19:32:33 +05:00
parent 03567b0c74
commit a1200efb82
7 changed files with 42 additions and 9 deletions

View File

@@ -1,13 +1,22 @@
import os
from app.core.config import settings
from app.core.uploader import uploader_backend
from app.utils.youtube import YtDlpManager
from app.utils.uploader import S3ChunkUploadBackend
from app.schemas import DownloadRequest, DownloadResponse
class YouTubeService:
@staticmethod
def download(data: DownloadRequest):
s3 = S3ChunkUploadBackend("")
manager = YtDlpManager(str(data.url), s3)
s3.key_prefix = f"{manager.id}@{data.quality}@"
manager = YtDlpManager(str(data.url), uploader_backend)
uploader_backend.key_prefix = f"{manager.id}@{data.quality}@"
video_url = manager.download_video(data.quality)
audio_url = manager.download_audio()
return DownloadResponse(video=video_url, audio=audio_url)
class Files:
@staticmethod
def list():
return [f for f in os.listdir(settings.MEDIA_DIR) if os.path.isfile(f)]