feat(music-lab): video.py — Windows에 style/background_mode/tracks 전달 + orchestrator 파라미터 wiring
This commit is contained in:
@@ -24,7 +24,10 @@ class VideoGenerationError(Exception):
|
||||
|
||||
def generate(*, pipeline_id: int, audio_path: str, cover_path: str,
|
||||
genre: str, duration_sec: int, resolution: str = "1920x1080",
|
||||
style: str = "visualizer") -> dict:
|
||||
style: str = "essential",
|
||||
background_mode: str = "static",
|
||||
background_path: str | None = None,
|
||||
tracks: list[dict] | None = None) -> dict:
|
||||
"""원격 Windows GPU 서버 호출. 다운/실패 시 즉시 예외."""
|
||||
if not ENCODER_URL:
|
||||
raise VideoGenerationError(
|
||||
@@ -35,6 +38,7 @@ def generate(*, pipeline_id: int, audio_path: str, cover_path: str,
|
||||
nas_audio = _container_to_nas(audio_path)
|
||||
nas_cover = _container_to_nas(cover_path)
|
||||
nas_output = _container_to_nas(out_path)
|
||||
nas_bg = _container_to_nas(background_path) if background_path else None
|
||||
|
||||
payload = {
|
||||
"cover_path_nas": nas_cover,
|
||||
@@ -43,9 +47,13 @@ def generate(*, pipeline_id: int, audio_path: str, cover_path: str,
|
||||
"resolution": resolution,
|
||||
"duration_sec": duration_sec,
|
||||
"style": style,
|
||||
"background_mode": background_mode,
|
||||
"background_path_nas": nas_bg,
|
||||
"tracks": tracks or [],
|
||||
}
|
||||
|
||||
logger.info("Windows 인코더 호출: pipeline=%d audio=%s", pipeline_id, audio_path)
|
||||
logger.info("Windows 인코더 호출: pipeline=%d audio=%s style=%s bg_mode=%s",
|
||||
pipeline_id, audio_path, style, background_mode)
|
||||
try:
|
||||
with httpx.Client(timeout=ENCODER_TIMEOUT_S) as client:
|
||||
resp = client.post(f"{ENCODER_URL}/encode_video", json=payload)
|
||||
|
||||
Reference in New Issue
Block a user