
μμ¦ μΌμΈ μ 릴μ€, μ¬λμ΄ νλνλ λ§λ€μ§ μμ£ . μ£Όμ λ§ μ νλ©΄ λλ³Έμ AIκ° μ°κ³ , μλ§Β·νΈμ§Β·μ λ‘λκΉμ§ μλμΌλ‘ λλ μ±λμ΄ λΆμ© λμμ΄μ.
Β
μ΄ νλ¦μμ νμ
μΊμ€νΈ APIλ‘ μΌμΈ Β·λ¦΄μ€ λλ μ΄μ
κΉμ§ μλννλ λΆλ€μ΄ λ§μλ°μ. μ΄μ νμ
μΊμ€νΈλ CLIλ₯Ό 곡μμΌλ‘ μ§μν©λλ€. μ€μΉνλ©΄ castλΌλ λͺ
λ Ήμ΄ νλλ‘ λλ μ΄μ
μμ±μ μλμΌλ‘ λ§λ€ μ μμ΄μ.
Β
μ€λμ νμ μΊμ€νΈ CLIλ‘ μΌμΈ λλ μ΄μ μ μλννλ λ²μ, μ€μΉλΆν° λλ μμ°κΉμ§ μ 리νμ΄μ.
Β
μ΄λ° λΆλ€μκ² μΆμ²λ립λλ€
β μΌμΈ Β·μ€λμ€λΆ λ± μμ± μ½ν μΈ λ₯Ό λλμΌλ‘ λ§λλ μ μμ
β n8nΒ·Makeλ AI μμ΄μ νΈλ‘ μ½ν μΈ λ₯Ό μλννλ λΆ
β νλ‘κ·Έλλ°μ λͺ°λΌλ λ°λ³΅ μμ μ μ€μ΄κ³ μΆμ λΆ
Β
API 무λ£λ‘ μμνκΈ° β
Β
Β
CLIκ° λκ°μ?
CLIλ ν°λ―Έλμ λͺ λ Ήμ΄λ₯Ό μ λ ₯ν΄ νλ‘κ·Έλ¨μ μ€ννλ λ°©μμ΄μμ. νλ©΄μ λ²νΌ λμ ν μ€νΈ λͺ λ ΉμΌλ‘ μμ μ μν€λ κ±°μ£ . μ΄μ νμ μΊμ€νΈλ μ΄ CLIλ₯Ό 곡μμΌλ‘ μ§μν©λλ€. λͺ λ Ήμ΄ ν μ€λ‘ νμ μΊμ€νΈ μμ±μ λ§λ€ μ μλ€λ λ»μ΄μμ.
Β
μ°λ λ²μ κ°λ¨ν΄μ. μ€μΉν λ€ cast λͺ
λ Ήμ΄μ ν
μ€νΈλ§ μ μ΄μ£Όλ©΄ λ©λλ€. μμλ₯Ό νλ λ³Όκ²μ.
cast "μ€λμ μ£Όμ λ κΈλ¦¬ μΈνμ
λλ€" --out ep1.wav
μ΄ ν μ€λ‘ βμ€λμ μ£Όμ λ κΈλ¦¬ μΈνμ
λλ€βλ₯Ό μνλ λͺ©μλ¦¬λ‘ μ½λ ep1.wav μμ± νμΌμ΄ λ°λ‘ λ§λ€μ΄μ§λλ€. νλ©΄μ ν΄λ¦ν μΌλ, μ½λλ₯Ό μ§€ μΌλ μμ΄μ.
Β
Β
CLIλ‘ λ ν μ μλμ?
νμ μΊμ€νΈ CLIκ° κ³΅μ μ§μνλ κΈ°λ₯μ ν¬κ² λ€μ― κ°μ§μμ. λͺ λ Ήμ΄λ‘ μ 리νλ©΄ μ΄λ μ΅λλ€.
| νκ³ μΆμ κ² | λͺ λ Ήμ΄ |
|---|---|
| ν μ€νΈλ₯Ό μμ±μΌλ‘ λ§λ€κΈ° | cast "ν
μ€νΈ" --out a.wav |
| ν μ€νΈλ‘ μμ±Β·μλ§ λμμ λ§λ€κΈ° | cast "ν
μ€νΈ" --out a.wav --timestamps-out a.srt |
| μμ£Ό μ°λ λͺ©μ리·μ€μ κ³ μ ν΄λκΈ° | cast config set voice-id tc_xxx |
| λͺ©μ리 골λΌλ³΄κ³ 미리λ£κΈ° | cast voices pick |
| λ΄ λͺ©μλ¦¬λ‘ μ»€μ€ν 보μ΄μ€ λ§λ€κΈ° | cast voices clone sample.wav --name "λ΄ λ³΄μ΄μ€" |
Β
μ΄ μ€ μΌμΈ λλ μ΄μ μ λ§λ€ λ μ£Όλ‘ μ°λ 건 μμ± μμ±Β·μλ§ μμ±Β·κΈ°λ³Έκ° μ€μ μ΄μμ. μ΄ μ μΌλ‘ μ΄λ»κ² μλννλμ§ λ°λ‘ λ³Όκ²μ.
Β
Β
Β
μΌμΈ λλ μ΄μ , μ΄λ κ² μλνν μ μμ΅λλ€
λ§€μ£Ό κ°λ―Έλ‘μ΄ 30λ μ€νλ° λ¨μ± λͺ©μλ¦¬λ‘ κ²½μ λ΄μ€ μΌμΈ λ₯Ό μ¬λ¦¬λ μ±λμ΄ μλ€κ³ ν΄λ³Όκ²μ. μμλ§λ€ λ΄μ©μ λ¬λΌλ, λλ μ΄μ μ λ κ°μ λͺ©μλ¦¬λ‘ κ°μΌ “μ΄ μ±λλ΅λ€”λ λλμ΄ μ μ§λμ£ . μ΄ μ±λμ μ½ν μΈ λ₯Ό CLIλ‘ μλνμμΌλ³΄κ² μ΅λλ€.
Β
STEP 1μ±λ κΈ°λ³Έ λͺ©μ리 μ νκΈ°
μ±λμμ κ³μ μΈ AI λͺ©μ리λ μ²μμ ν λ²λ§ μ ν΄λλ©΄ λΌμ. μ΄κΈ° μΈν
μ΄λΌ λ§€λ² ν νμλ μμ΅λλ€.
μ΄μ λΆν° λ§λλ μμ±μ λͺ¨λ μ²μ μΈν
ν μ΄ λͺ©μλ¦¬λ‘ ν΅μΌλΌμ. μμμ΄ μμ νΈ μμ¬λ μ±λ ν€μ΄ νλ€λ¦¬μ§ μμ£ .
cast config set voice-id tc_xxxxxxxx
Β
STEP 2μνλ λλ³ΈμΌλ‘ μμ± μμ±νκΈ°
κ·Έλ€μλΆν°λ μμλ§λ€ λλ³Έλ§ λ°κΏ λͺ
λ Ήμ΄ ν μ€μ μ€ννλ©΄ λ©λλ€. μλ λͺ
λ Ήμ΄ ν μ€λ‘ λλ μ΄μ
μμ±(ep1.wav)κ³Ό μλ§(ep1.srt)μ΄ ν λ²μ μμ±λ©λλ€.
cast "μ€λ μ½μ€νΌλ 2,600μ μ ν볡νμ΅λλ€" --out ep1.wav --timestamps-out ep1.srt
λ€μ νΈλ λκ°μμ. λλ³Έλ§ λ³κ²½ν΄ κ°μ λͺ λ Ή ν μ€μ μ€ννλ©΄ λ©λλ€. λͺ©μ리λ μ΄λ―Έ μ ν΄λμΌλ λ§€λ² κ³ λ₯Ό νμκ° μκ³ μ. μμ ν νΈ λ§λλ κ² λͺ λ Ήμ΄ ν μ€λ‘ λλλ, μμ νΈμ λ§λ€μ΄λ λ§€λ² μμΌλ‘ ν΄λ¦νλ©° λ°λ³΅ν μΌμ΄ μμ΄μ.
Β
API 무λ£λ‘ μμνκΈ° β
Β
Β
κΈ°μ‘΄ μλνμ CLIλ₯Ό μ°λνλ©΄, λ λ¨μν΄μ Έμ
μ΄λ―Έ μλν μν¬νλ‘λ₯Ό λλ¦¬κ³ μλ€λ©΄, μμ± μμ± λ¨κ³λ₯Ό CLIλ‘ μ°λν΄ λ λ¨μνκ² μ²λ¦¬ν μ μμ΄μ. λͺ λ Ήμ΄λΌμ λ°λ‘ μ°λ μ½λλ₯Ό λΆμΌ νμκ° μκ±°λ μ. μ°λ νκ²½μ λ°λΌ μ΄λ κ² νλ©΄ λ©λλ€.
Β
n8nΒ·Make κ°μ μλν ν΄μ μ°κ³ μλ€λ©΄
μν¬νλ‘ ν λ¨κ³μμ castλ₯Ό μ€νν΄ μμ±μ λ§λ€κ³ , κ·Έ νμΌμ λ€μ λ¨κ³λ‘ λκΈ°λ©΄ λ©λλ€. μλ‘ μ½λλ₯Ό λΆμΌ νμκ° μμ΄μ.
AI μμ΄μ νΈ(ClaudeΒ·Cursor λ±)λ‘ μμ νλ€λ©΄
AIκ° λ³΅μ‘ν API μ½λλ₯Ό μ§κ² νλ λμ cast ν μ€λ§ μ€ννκ² νμΈμ. μ§€ κ² μ§§μ λ§νΌ μ€μλ μ€μ΄λλλ€. μ°Έκ³ λ‘ ClaudeΒ·Cursorμ© νμ
μΊμ€νΈ μ€ν¬μ΄ ‘AIμκ² μ¬μ©λ²μ μλ €μ£Όλ μͺ½’μ΄λΌλ©΄, CLIλ ‘AIκ° μ€μ λ‘ μ€ννλ λꡬ’μμ.
Β
Β
μ΄λ»κ² μμνλμ?
μ€μΉ ν λ², API ν€ μ°κ²° ν λ²μ΄λ©΄ μ€λΉκ° λλμ.
# μ€μΉ (Homebrew)
brew install neosapience/tap/cast
# API ν€ μ°κ²°
cast login
# 첫 μμ± λ§λ€κΈ°
cast "Hello, world!" --out hello.wav
API ν€λ νμ
μΊμ€νΈ API μ½μμμ 무λ£λ‘ λ°κΈλ°μ μ μμ΄μ. λ°κΈλ°μ cast loginμΌλ‘ μ°κ²°νλ©΄, μ λͺ
λ Ήμ΄λ₯Ό λ°λ‘ μΈ μ μμ΅λλ€.
Β
μΌμΈ μλν,
νμ
μΊμ€νΈ APIλ‘ μμν΄λ³΄μΈμ
CLIλ₯Ό νμ©νλ©΄ λͺ
λ Ήμ΄ ν μ€λ‘ μ¬λ¬λΆμ μ½ν
μΈ λ₯Ό μλνν΄λ³Ό μ μμ΄μ.
λ¬΄λ£ API ν€λ₯Ό λ°κΈλ°μ 첫 λλ μ΄μ
μ λ§λ€μ΄λ³΄μΈμ.(μ 30,000ν¬λ λ§ μ 곡)
FAQ. μμ£Ό 묻λ μ§λ¬Έ
Q. μ½λ©μ λͺ°λΌλ μΈ μ μλμ? οΌ
νλ‘κ·Έλλ° μΈμ΄λ λͺ°λΌλ λ©λλ€. μ²μμ ν λ² μ€μΉνκ³ API ν€λ₯Ό μ°κ²°ν΄λλ©΄, κ·Έλ€μλΆν°λ ν°λ―Έλμ cast "ν
μ€νΈ" --out νμΌλͺ
.wav ννλ‘ μ
λ ₯νκΈ°λ§ νλ©΄ μμ±μ΄ λμμ. μμ£Ό μ°λ μ€μ μ cast config setμΌλ‘ μ μ₯ν΄λλ©΄ λͺ
λ Ήμ΄ λ μ§§μμ§κ³ μ.
Q. APIΒ·SDKλ λκ° λ€λ₯Έκ°μ? οΌ
APIΒ·SDKλ μμ± κΈ°λ₯μ μ§μ λ§λ€μ΄ μ°λ μ¬λ£μ κ°κΉμμ. νκ²½μ κ°μΆκ³ μ½λλ₯Ό μμ±ν΄ νΈμΆλΆν° μ μ₯κΉμ§ μ§μ ν΅μ νμ£ . CLIλ κ·Έ κ³Όμ μ 미리 λ¬Άμ΄λ μμ±ν λꡬμ λλ€. μνκΈ°μ λμ (λͺ λ Ήμ΄)μ λ£κ³ λ²νΌλ§ λλ₯΄λ©΄ μμ±ν(μμ± νμΌ)μ΄ λμ€λ κ²μ²λΌ, λ§λ€ κ² μμ΄ μ€νλ§ νλ©΄ λΌμ. μμμλ CLIκ° κ°μ νμ μΊμ€νΈ APIλ₯Ό νΈμΆν©λλ€.
Q. νμ μΊμ€νΈ Claude μ€ν¬μ΄λ κ°μ 건κ°μ? οΌ
λ€λ¦ λλ€. μ€ν¬μ AI μμ΄μ νΈμκ² νμ μΊμ€νΈ μ¬μ©λ²μ μλ €μ£Όλ μ§μ ν¨ν€μ§μ΄κ³ , CLIλ μμ±μ μ€μ λ‘ λ§λ€μ΄λ΄λ μ€ν λꡬμμ. μ€ν¬μ΄ "무μμ ν μ§"λ₯Ό μλ΄νλ€λ©΄, CLIλ κ·Έκ±Έ "μ€μ μμ΄ μ€ν"νλ μν μ΄λΌ, ν¨κ» μΈ λ κ°μ₯ μ λ§μ΅λλ€.
Q. ν λ²μ λλμ μμ±μ λ³ννλ κ²λ κ°λ₯νκ°μ? οΌ
λ€. cast config setμΌλ‘ κΈ°λ³Έ μ€μ μ κ³ μ ν΄λλ©΄ λ§€λ² μ΅μ
μ μ§μ ν νμκ° μκ³ , κ°μ λͺ
λ Ή κ·μΉμ μ¬λ¬ ν
μ€νΈμ μ μ©ν΄ μμ±μ μλ°λΌ μμ±ν μ μμ΄μ. μλ§(SRTΒ·VTT)λ ν¨κ» λ°μ μ μμ΄ μΌμΈ Β·μ€λμ€λΆμ²λΌ μμ΄ λ§μ μμ
μ λ§μ΅λλ€.
Q. νμ μΊμ€νΈ APIλ λκ° μ’μκ°μ? οΌ
νμ μΊμ€νΈλ MRR κΈ°μ€ κ΅λ΄ 1μ μμ±Β·μμ μμ± AI κΈ°μ μ λλ€. ν΅μ¬ κ°μ μ μΈ κ°μ§μμ. β μμ°μ€λ¬μ β μ λ¬Έ μ±μ° λ Ήμκ³Ό ν μ€νΈ λ§₯λ½μ μ½λ Smart Emotionμ΄ κ²°ν©λΌ μμ°μ€λ¬μ΄ κ°μ ννμ λ λλ€. β‘ λ€μμ± β API κΈ°μ€ 500κ° μ΄μμ AI λͺ©μ리μ 37κ° μΈμ΄λ₯Ό κ°μ APIλ‘ νΈμΆν΄ κΈλ‘λ² μλΉμ€λ‘ κ·Έλλ‘ νμ₯λ©λλ€. β’ μμ μ± β μλ§ λͺ μ΄ λμ μ μνλ λΌμ΄λΈ νκ²½μμλ λ μ΄ν΄μ μμ΄ λμνλ κ² κ²μ¦λμ΅λλ€.





