perf(8502): 并行生图(6并发)+超时重试;视频URL直连预览/下载;路径隔离
This commit is contained in:
@@ -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
|
||||
|
||||
Reference in New Issue
Block a user