#!/bin/bash
# 音乐生成入口
# 用法: ./music.sh --output-dir /abs/path --name 中文名 "描述" [--lyrics "歌词"] [--instrumental]
set -euo pipefail

OUTPUT_DIR=""
NAME=""
PROMPT=""
LYRICS=""
INSTRUMENTAL=false

while [ $# -gt 0 ]; do
    case "$1" in
        --output-dir) OUTPUT_DIR="$2"; shift 2 ;;
        --name) NAME="$2"; shift 2 ;;
        --lyrics) LYRICS="$2"; shift 2 ;;
        --instrumental) INSTRUMENTAL=true; shift ;;
        *)
            if [ -z "$PROMPT" ]; then
                PROMPT="$1"
            fi
            shift
            ;;
    esac
done

if [ -z "$OUTPUT_DIR" ] || [ -z "$NAME" ] || [ -z "$PROMPT" ]; then
    echo "用法: ./music.sh --output-dir <绝对路径> --name <中文名> \"描述\" [--lyrics \"歌词\"] [--instrumental]"
    echo "示例: ./music.sh --output-dir /root/.openclaw/workspace --name 开场音乐 \"epic opening\" --instrumental"
    exit 1
fi

SCRIPT_DIR="$(cd "$(dirname "$0")" && pwd)"

ARGS=()
ARGS+=("music")
ARGS+=("$PROMPT")
ARGS+=(--output-dir "$OUTPUT_DIR")
ARGS+=(--name "$NAME")
[ -n "$LYRICS" ] && ARGS+=(--lyrics "$LYRICS")
[ "$INSTRUMENTAL" = true ] && ARGS+=(--instrumental)

python3 "$SCRIPT_DIR/generate.py" "${ARGS[@]}"
