Сделал скелет того, как примерно будет реализован сервис
This commit is contained in:
@@ -0,0 +1,13 @@
|
||||
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):
|
||||
key_prefix = f"{data.url}@{data.quality}@"
|
||||
s3 = S3ChunkUploadBackend(key_prefix)
|
||||
manager = YtDlpManager(data.url, s3)
|
||||
video_url = manager.download_video(data.quality)
|
||||
audio_url = manager.download_audio()
|
||||
return DownloadResponse(video=video_url, audio=audio_url)
|
||||
|
||||
Reference in New Issue
Block a user