uPiper
uPiper integrates Piper-plus neural text-to-speech synthesis into Unity, enabling high-quality multilingual voice generation with support for Japanese, English, Chinese, Spanish, French, Portuguese, and Korean. Features include prosody-aware synthesis for natural intonation, custom dictionary support for technical terms, GPU-accelerated inference via Unity AI Inference Engine, and phoneme conversion across all platforms.
com.ayutaz.upiper 
Install via UPM
Add to Unity Package Manager using this URL
https://www.pkglnk.dev/upiper.git?path=Assets/uPiper README Markdown
Copy this to your project's README.md
## Installation
Add **uPiper** to your Unity project via Package Manager:
1. Open **Window > Package Manager**
2. Click **+** > **Add package from git URL**
3. Enter:
```
https://www.pkglnk.dev/upiper.git?path=Assets%2FuPiper
```
[](https://www.pkglnk.dev/pkg/upiper)Dependencies (2)
README
uPiper
English | 日本語
piper-plusのUnityプラグイン - 高品質なニューラル音声合成エンジン
目次
機能
- 高品質な音声合成(piper-plusベース)
- 多言語対応(日本語、英語、中国語、スペイン語、フランス語、ポルトガル語、韓国語)
| 言語 | G2Pバックエンド |
|---|---|
| 日本語 | DotNetG2P.Japanese (MeCab辞書) |
| 英語 | DotNetG2P.English (Flite LTS) |
| 中国語 | DotNetG2P.Chinese (44K文字辞書) |
| スペイン語 | DotNetG2P.Spanish |
| フランス語 | DotNetG2P.French |
| ポルトガル語 | DotNetG2P.Portuguese |
| 韓国語 | DotNetG2P.Korean |
- Unity AI Inference Engineによる高速推論
- DotNetG2Pパッケージによる高精度な多言語音素化(全プラットフォーム対応)
- GPU推論サポート(GPUCompute/GPUPixel)
- Prosody(韻律)サポート: より自然なイントネーションの音声合成
- カスタム辞書: 技術用語・固有名詞の読み変換
対応モデル
| モデル名 | 言語 | Prosody対応 | 説明 |
|---|---|---|---|
| multilingual-test-medium | 多言語(6言語: ja/en/zh/es/fr/pt) | Yes | 多言語対応モデル(Prosody対応) |
Requirements
- Unity 6000.0.58f2
- Unity AI Inference Engine (com.unity.ai.inference) 2.2.2
インストール
OpenUPM経由(推奨)
openupm-cliを使用する場合
openupm add com.ayutaz.upiper
manifest.jsonを直接編集する場合
Packages/manifest.json に以下のscoped registryを追加してください:
{
"scopedRegistries": [
{
"name": "package.openupm.com",
"url": "https://package.openupm.com",
"scopes": [
"com.ayutaz.upiper"
]
}
],
"dependencies": {
"com.ayutaz.upiper": "1.4.0"
}
}
Git URL経由
ステップ1: パッケージのインストール
- Unity Editorで
Window > Package Managerを開く +ボタンからAdd package from git URL...を選択- 以下のURLを入力:
https://github.com/ayutaz/uPiper.git?path=Assets/uPiper
ステップ2: 必要なデータのインポート
Package Managerからインストール後、必ず以下の手順でデータをインポートしてください:
- Package Managerで「In Project」を選択
- 「uPiper」パッケージを選択
- 「Samples」セクションを展開
- 以下のサンプルをインポート:
- MeCab Dictionary Data (必須) - 日本語音声合成用MeCab辞書
- CMU Pronouncing Dictionary (必須) - 英語音声合成用辞書
- Voice Models (推奨) - 高品質音声モデル
- Basic TTS Demo (オプション) - デモシーン
ステップ3: データのセットアップ
サンプルをインポートした後:
- メニューから
uPiper > Setup > Install from Samplesを実行 - インストールダイアログで「Install」をクリック
- セットアップが完了するまで待つ
ステップ4: 動作確認
- メニューから
uPiper > Setup > Check Setup Statusを実行 - すべての項目が「✓ Installed」になっていることを確認
- Basic TTS Demoシーンを開いて動作確認
⚠️ 重要: 辞書データをインポートしないとTTS機能は動作しません
パッケージファイルからのインストール
Releasesから最新のパッケージファイルをダウンロード:
- Unity Package (.unitypackage): レガシー形式、全てのUnityバージョンで使用可能
- UPM Package (.tgz): Unity Package Manager用、Unity 2019.3以降
トラブルシューティング
Samplesが1つしか表示されない場合
- Unity Editorを再起動
- Package Managerで「Refresh」ボタンをクリック
辞書ファイルが見つからないエラー
uPiper > Setup > Install from Samplesを実行したか確認uPiper > Setup > Check Setup Statusで状態を確認
日本語が文字化けする場合
- Basic TTS Demoに含まれるNotoSansJP-Regular SDFフォントを使用
UIボタンがクリックできない場合(Input Manager使用時)
- プロジェクト設定で「Active Input Handling」を確認
- Edit > Project Settings > Player > Active Input Handling
- 「Input Manager」に設定されている場合、EventSystemAutoSetupコンポーネントが自動的に対応
- 詳細は
Samples~/BasicTTSDemo/BasicTTSDemo_README.mdを参照
サポートプラットフォーム
- ✅ Windows (x64)
- ✅ macOS (Apple Silicon/Intel)
- ✅ Linux (x64)
- ✅ Android (ARM64/ARMv7/x86/x86_64)
- ✅ iOS (ARM64, iOS 11.0+)
- ✅ WebGL (WebGPU / WebGL2)
WebGL: WebGPU対応ブラウザではGPUComputeによる高速推論、WebGL2環境ではGPUPixelに自動フォールバックします。 デモページ
GPU推論の使用
uPiperはGPU推論をサポートしており、より高速な音声生成が可能です:
var config = new PiperConfig
{
Backend = InferenceBackend.Auto, // 自動選択
AllowFallbackToCPU = true, // GPU失敗時にCPUフォールバック
GPUSettings = new GPUInferenceSettings
{
MaxBatchSize = 4,
UseFloat16 = true,
MaxMemoryMB = 512
}
};
InferenceBackend.Auto の選択ロジック
InferenceBackend.Autoを指定した場合、プラットフォームに応じて最適なバックエンドが自動選択されます:
| プラットフォーム | 自動選択されるバックエンド | 理由 |
|---|---|---|
| Windows/Linux | GPUPixel | VITSモデルとの互換性が良好 |
| macOS | CPU | MetalはUnity.InferenceEngineで問題があるため |
| iOS/Android | GPUPixel | モバイルGPUに最適化 |
| WebGL (WebGPU) | GPUCompute | WebGPU Compute Shaderによる高速推論 |
| WebGL (WebGL2) | GPUPixel | WebGL2フォールバック |
注意: デスクトップ環境ではGPUComputeはVITSモデルで音声が正しく生成されない問題があるため、GPUPixelまたはCPUの使用を推奨します。WebGPU環境ではGPUComputeが正常に動作します。
詳細はGPU推論ガイドを参照してください。
詳細ドキュメント
ライセンス
このプロジェクトは Apache License 2.0 の下でライセンスされています。詳細は LICENSE ファイルを参照してください。
サードパーティライセンス
フォント
- Noto Sans Japanese: SIL Open Font License, Version 1.1
- Copyright 2014-2021 Adobe (http://www.adobe.com/)
- TextMeshProでの日本語表示に使用
- 詳細は
Assets/Fonts/LICENSE.txtを参照
No comments yet. Be the first!