mirror of
https://github.com/linyqh/NarratoAI.git
synced 2025-12-11 18:42:49 +00:00
- 在 schema_v2.py 中添加了新的请求和响应模型 - 在 script.py 中实现了 /scripts/crop 和 /youtube/download 接口- 新增 video_service.py 和 youtube_service.py 服务模块 - 更新 utils.py 中的工具函数以支持新功能
43 lines
900 B
Python
43 lines
900 B
Python
from typing import Optional, List
|
|
from pydantic import BaseModel
|
|
|
|
|
|
class GenerateScriptRequest(BaseModel):
|
|
video_path: str
|
|
video_theme: Optional[str] = ""
|
|
custom_prompt: Optional[str] = ""
|
|
skip_seconds: Optional[int] = 0
|
|
threshold: Optional[int] = 30
|
|
vision_batch_size: Optional[int] = 5
|
|
vision_llm_provider: Optional[str] = "gemini"
|
|
|
|
|
|
class GenerateScriptResponse(BaseModel):
|
|
task_id: str
|
|
script: List[dict]
|
|
|
|
|
|
class CropVideoRequest(BaseModel):
|
|
video_origin_path: str
|
|
video_script: List[dict]
|
|
|
|
|
|
class CropVideoResponse(BaseModel):
|
|
task_id: str
|
|
subclip_videos: dict
|
|
|
|
|
|
class DownloadVideoRequest(BaseModel):
|
|
url: str
|
|
resolution: str
|
|
output_format: Optional[str] = "mp4"
|
|
rename: Optional[str] = None
|
|
|
|
|
|
class DownloadVideoResponse(BaseModel):
|
|
task_id: str
|
|
output_path: str
|
|
resolution: str
|
|
format: str
|
|
filename: str
|