#!/bin/bash
# DSH 侧驱动：三首战场纯音乐（生成走本机脚本 -> GPU API；分离走 ssh -> GPU 机 Demucs）
set -u
cd /home/zyw/Downloads
SSH=~/Downloads/ssh_exec.sh
OUT="/home/zyw/Downloads/dl-hub/18-YuE2音乐生成/战场纯音乐-三风格"
mkdir -p "$OUT"

gen() {  # tag stylefile seed
  echo "===== 生成 $1 (seed=$3) $(date +%T) ====="
  python3 yue2-run.py --cot off --sem-mx 9000 --attn sdpa --seed "$3" \
    --lyrics-file yue2-battle/lyrics-instrumental.txt \
    --style "$(cat yue2-battle/$2)" --tag "$1" --outdir "$OUT" 2>&1 | tail -4
}

sep() {  # tag
  echo "===== Demucs 分离 $1 $(date +%T) ====="
  $SSH "bash /home/zyw/yue2-demucs.sh $1" 2>&1 | grep -E "源文件|rms=|能量比|SEP_DONE|FAIL|Error" | tail -8
}

echo "########## 1/3 中国古风 ##########"
sep battle-cn-guofeng

echo "########## 2/3 哥萨克风 ##########"
gen battle-cossack style-cossack.txt 222222
sep battle-cossack

echo "########## 3/3 8bit 电子风 ##########"
gen battle-8bit style-8bit.txt 333333
sep battle-8bit

echo "===== 回传纯器乐轨到下载中心 ====="
for t in battle-cn-guofeng battle-cossack battle-8bit; do
  for ext in flac mp3; do
    curl -s --noproxy '*' -m 120 -o "$OUT/${t}-instrumental.$ext" \
      "http://192.168.31.31:8189/view?filename=${t}-instrumental.${ext}&subfolder=YuE2_battle&type=output"
    printf "  %-38s %s 字节\n" "${t}-instrumental.${ext}" "$(stat -c%s "$OUT/${t}-instrumental.$ext")"
  done
done
echo "ALL_DONE $(date +%T)"
