Skip to main content

개요

revolution/laravel-voicevox는 Laravel에서 VOICEVOX를 다루기 위한 패키지입니다. HTTP를 통해 공식 엔진에 연결하는 클라이언트 모드와, VOICEVOX Core for PHP를 조합해 PHP FFI에서 직접 합성하는 네이티브 모드를 같은 Laravel 스타일로 다룰 수 있습니다.
FFI에 대한 사전 지식을 먼저 정리하고 싶다면 PHP FFI를, 코어 라이브러리 자체의 셋업은 VOICEVOX Core for PHP사용법을 참조하세요.

기능표

요구 사항

  • PHP 8.3+
  • Laravel 12+
  • ext-zip
  • 네이티브 모드 / 엔진 API를 사용하는 경우 ext-ffi
  • 로컬 CLI 환경
Laravel Cloud를 포함해 일반적인 웹 서버 환경에서는 FFI가 무효화된 경우가 많으므로, 네이티브 모드와 엔진 API는 로컬 CLI 전제로 생각하세요.

모드 목록

tap()이 잘 맞는 이유

이 패키지는 talk() / song() 직후에 Audio Query 오브젝트를 반환하며, generate() 이전에 조정 단계를 끼워 넣을 수 있습니다. 그래서 tap()을 사용하면 반환값을 바꾸지 않고 쿼리만 조정하는 작성 방식이 자연스럽습니다.
  • Talk에서는 speedScale이나 pitchScale 등을 조정할 수 있습니다.
  • Song에서는 sync()로 F0와 볼륨을 재계산할 수 있습니다.
  • generate()가 반환하는 VoicevoxResponse로 깔끔하게 체이닝할 수 있습니다.
tap() 자체의 사고방식은 tap() 헬퍼와 Tappable 트레이트에서 정리하고 있습니다. 이 패키지는 실용 예시로서 특히 이해하기 쉬운 케이스입니다.

문서

설치

클라이언트만의 도입, FFI를 사용하는 도입, 설정 파일 게시, 엔진 리소스 준비를 확인합니다.

클라이언트 Talk

공식 VOICEVOX 엔진을 사용한 텍스트 음성 합성을 시작합니다.

클라이언트 Song

ScoreNote를 조립하여 노래 합성을 실행합니다.

네이티브 Talk

PHP FFI와 VOICEVOX CORE로 로컬 합성합니다.

네이티브 Song

FFI를 통해 노래 모델을 직접 사용합니다.

VOICEVOX Core for PHP

코어 라이브러리의 셋업과 Pure PHP 측 사용법을 확인합니다.

참고 링크

마지막 수정일 2026년 7월 13일