大規模語彙連続音声認識エンジン Julius をベースに、C# で利用できるようにしたカスタマイズしたライブラリです。
- 大規模語彙連続音声認識エンジン Julius
- Copyright (c) 1991-2020 Kawahara Lab., Kyoto University Copyright (c) 2005-2020 Julius project team, Lee Lab., Nagoya Institute of Technology Copyright (c) 1997-2000 Information-technology Promotion Agency, Japan Copyright (c) 2000-2005 Shikano Lab., Nara Institute of Science and Technology
- ライセンスは
JuliusSharp/julius/LICENSEに含まれています。
- Julius 日本語ディクテーションキット
- このリポジトリには含まれません。
- Copyright (c) 1991-2019 Kawahara Lab., Kyoto University Copyright (c) 2005-2019 Lee Lab., Nagoya Institute of Technology
- 利用許諾書
- NAudio
- あみたろの声素材工房(https://amitaro.net/) の音声素材
- あみたろの声素材工房のReadme は
Sample/Datas/amitaro-readme.txtに含まれています。
- あみたろの声素材工房のReadme は
今現在は、次のプラットフォームにのみ対応しています。
- Windows - x64
- Windows - Unity x64
| フォルダ / ファイル名 | 内容 |
| JuliusSharp | JuliusSharp ライブラリ本体のあるフォルダ |
| └ julius | 大規模語彙連続音声認識エンジン Julius 本体 |
| dictation-kit | Julius 日本語ディクテーションキット(ビルド過程で公式からクローンします。) |
| Sample | サンプルコードのあるフォルダ |
| Sample_x64.sln |
Windows x64 用のサンプルソリューション コンソールで動作し、ファイルから読み込んだサンプル音声をテキスト化します。 |
| Sample_Unity.sln |
Windows Unity 用のサンプルソリューション Unity で動作し、ファイルから読み込んだサンプル音声をテキスト化します。 |
- Windows
- VisualStudio 2022 ― サンプルに対応したワークロード
| ソリューション | 内容 | 必要なワークロード |
| Sample_x64.sln | Windows - x64 |
C++ によるデスクトップ開発 .NET デスクトップ開発 |
| Sample_Unity.sln | Windows - Unity x64 |
C++ によるデスクトップ開発 .NET デスクトップ開発 Unity によるゲーム開発 |
このリポジトリをクローンしたら、次の手順でセットアップを行ってください。
-
Julius 日本語ディクテーションキットをクローン
JuliusSharp/bin/dictation-kit-download.batを実行すると、dictation-kitフォルダに Julius 日本語ディクテーションキットがクローンされます。
※ Git LFS が必要です。 -
Unity サンプルをビルドする場合は、
UnityEngine.CoreModule.dllを配置
JuliusSharp/JuliusSharp/UnityDLLフォルダを作成し、UnityEngine.CoreModule.dllを配置してください。
| Debug | 最適化なし |
| Release | 最適化あり |
- ソリューションを VisualStudio2022 で開く
- Sample_x64 プロジェクトを
スタートアップ プロジェクトに設定 - ビルド
- ソリューションを VisualStudio2022 で開く
- UnitySetup プロジェクトを
スタートアップ プロジェクトに設定 - ビルド
Unity では下記のようにコピーに失敗してエラーになる場合があるので、Unity を終了して行ってください。
- Unity 起動
- Assets/Scenes/SampleScene.unity シーンを開いて実行
| dictation-kit | Julius 対応の日本語ディクテーションツールキットです。 |
| JuliusSharpBridge.dll |
C 言語で構築された Julius を C# での利用できるようにするための dll です。 サンプルをビルドすると以下のいづれかのフォルダに作成されます。 - _build/x64_Debug_dll - _build/x64_Release_dll |
| JuliusSharp.dll |
JuliusSharpBridge.dll を利用し、C# で使いやすくシステム化した dll です。 サンプルをビルドすると以下のいづれかのフォルダに作成されます。 - _build/x64_Debug_dll - _build/x64_Release_dll - _build/unity_Debug_dll - _build/unity_Release_dll |
JuliusSystem クラスがメインシステムで、このクラスを利用して音声認識を行います。
このクラスの使い方は Sample/x64/Program.cs を参照してください。
音声認識システムの挙動は、JuliusSharp.Start 関数に指定するオプションによって変更することができます。
| KitRoot |
ディクテーションキットのディレクトリパスを指定 サンプルではビルド時に以下の場所に配置されたものを利用しています。
|
||||
| Quality |
音声認識のクオリティを指定します。 クオリティごとに実行時に不要なリソース ( dictation-kit フォルダ以下のデータ ) もありますので、必要に応じて削除することも可能です。
|
||||
| Log |
ログの出力方法を指定します。
|
- サンプリング数 16KHz
- モノラル
※ サンプルで利用しているデータ(*.wav.raw)は ffmpeg で変換し、ヘッダーを除いてます。(ffmpeg はリポジトリに含まれません。)