perf(8502): 并行生图(6并发)+超时重试;视频URL直连预览/下载;路径隔离

This commit is contained in:
Tony Zhang
2025-12-17 12:21:22 +08:00
parent ebcf165c3f
commit 1e210ffccf
12 changed files with 1168 additions and 201 deletions

View File

@@ -697,8 +697,12 @@ def generate_voiceover_volcengine_long(
# 生成每段音频
chunk_files = []
# Keep temp artifacts near output_path when provided to avoid cross-project collisions
base_tmp_dir = Path(output_path).parent if output_path else config.TEMP_DIR
base_tmp_dir.mkdir(parents=True, exist_ok=True)
for i, chunk in enumerate(chunks):
chunk_path = str(config.TEMP_DIR / f"vo_chunk_{i}_{int(time.time())}.mp3")
import uuid
chunk_path = str(base_tmp_dir / f"vo_chunk_{i}_{int(time.time() * 1000)}_{uuid.uuid4().hex[:8]}.mp3")
try:
path = generate_voiceover_volcengine(
text=chunk,
@@ -723,13 +727,14 @@ def generate_voiceover_volcengine_long(
return chunk_files[0]
# 创建合并文件列表
concat_list = config.TEMP_DIR / f"concat_audio_{os.getpid()}.txt"
import uuid
concat_list = base_tmp_dir / f"concat_audio_{int(time.time() * 1000)}_{uuid.uuid4().hex[:8]}.txt"
with open(concat_list, "w") as f:
for cf in chunk_files:
f.write(f"file '{cf}'\n")
if not output_path:
output_path = str(config.TEMP_DIR / f"vo_volc_merged_{int(time.time())}.mp3")
output_path = str(base_tmp_dir / f"vo_volc_merged_{int(time.time() * 1000)}_{uuid.uuid4().hex[:8]}.mp3")
# FFmpeg 合并
import subprocess