File size: 2,006 Bytes
a2749f3
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
#!/bin/bash
# YouTube Script Extractor ์‹คํ–‰ ์Šคํฌ๋ฆฝํŠธ

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

# ์ฒซ ์‹คํ–‰: .env ํŒŒ์ผ์ด ์—†์œผ๋ฉด ์ž๋™ ์„ค์ •
if [ ! -f .env ]; then
    echo "=== YouTube Script Extractor ์ดˆ๊ธฐ ์„ค์ • ==="
    echo ""

    read -p "OpenAI API Key๋ฅผ ์ž…๋ ฅํ•˜์„ธ์š” (sk-...): " api_key
    if [ -n "$api_key" ]; then
        cat > .env << EOF
OPENAI_API_KEY=$api_key
DEFAULT_MODE=api
DEFAULT_MODEL=base
PORT=8000
EOF
        echo ""
        echo ".env ํŒŒ์ผ์ด ์ƒ์„ฑ๋˜์—ˆ์Šต๋‹ˆ๋‹ค."
    else
        cp .env.example .env
        echo ".env.example์„ ๋ณต์‚ฌํ–ˆ์Šต๋‹ˆ๋‹ค. ๋‚˜์ค‘์— .env ํŒŒ์ผ์„ ์ง์ ‘ ์ˆ˜์ •ํ•ด์ฃผ์„ธ์š”."
    fi
    echo ""
fi

# ffmpeg ์ฒดํฌ
if ! command -v ffmpeg &>/dev/null; then
    echo "ffmpeg์ด ํ•„์š”ํ•ฉ๋‹ˆ๋‹ค. ์„ค์น˜ํ•ฉ๋‹ˆ๋‹ค..."
    brew install ffmpeg || { echo "ffmpeg ์„ค์น˜ ์‹คํŒจ. 'brew install ffmpeg'์„ ์ง์ ‘ ์‹คํ–‰ํ•ด์ฃผ์„ธ์š”."; exit 1; }
    echo ""
fi

# Python ์˜์กด์„ฑ ์ฒดํฌ
if ! python3 -c "import yt_dlp" 2>/dev/null; then
    echo "Python ์˜์กด์„ฑ์„ ์„ค์น˜ํ•ฉ๋‹ˆ๋‹ค..."
    python3 -m pip install -r requirements.txt || { echo "์„ค์น˜ ์‹คํŒจ. python3์™€ pip์ด ์„ค์น˜๋˜์–ด ์žˆ๋Š”์ง€ ํ™•์ธํ•ด์ฃผ์„ธ์š”."; exit 1; }
    echo ""
fi

# ์‹คํ–‰ ๋ชจ๋“œ ์„ ํƒ
case "${1:-}" in
    web|w)
        echo "์›น ์„œ๋ฒ„๋ฅผ ์‹œ์ž‘ํ•ฉ๋‹ˆ๋‹ค..."
        python3 web.py
        ;;
    "")
        # URL ์—†์ด ์‹คํ–‰ํ•˜๋ฉด ์›น ์„œ๋ฒ„
        echo "์›น ์„œ๋ฒ„๋ฅผ ์‹œ์ž‘ํ•ฉ๋‹ˆ๋‹ค..."
        python3 web.py
        ;;
    http*|www.*)
        # URL์ด ์ฃผ์–ด์ง€๋ฉด CLI ๋ชจ๋“œ
        python3 cli.py "$@"
        ;;
    *)
        echo "์‚ฌ์šฉ๋ฒ•:"
        echo "  ./run                       ์›น ์„œ๋ฒ„ ์‹œ์ž‘"
        echo "  ./run web                   ์›น ์„œ๋ฒ„ ์‹œ์ž‘"
        echo "  ./run <YouTube URL>         CLI๋กœ ์Šคํฌ๋ฆฝํŠธ ์ถ”์ถœ"
        echo ""
        echo "CLI ์˜ต์…˜:"
        echo "  ./run <URL> --mode local    ๋กœ์ปฌ Whisper ์‚ฌ์šฉ"
        echo "  ./run <URL> --format srt    SRT๋งŒ ์ƒ์„ฑ"
        ;;
esac