ドキュメンテーション:音声コマンド

音声コマンド

MARUI音声コマンドは、音声入力を使用してカスタムコマンドを実行することを可能にします。
HotKeyのように、自由にプログラムができ、あらゆるスピーチコマンドも保存することができます。

音声コマンドはPythonまたはMELスクリプトでプログラムすることができます。
音声コマンドエディタを使用すると便利です。

スピーチコマンドエディタ

音声コマンドエディタは、MARUI音声コマンドを作成、編集、保存、削除するための簡単なグラフィカルダイアログです。
MARUIシェルフタブの[Speech Commands]アイコンをクリックして、Mayaシェルフから開く場合:

Speech Command Editor

スピーチコマンドリスト

音声コマンドエディタの上部には、作成したすべての音声コマンドのリストがあります。
初めてスピーチコマンドエディタを開いたときには、このリストは空です。

スピーチコマンドの追加

新しいカスタムスピーチコマンドを追加するには、テキストフィールドに入力して[新規作成]ボタンを押します。
これにより、音声認識エンジンが自動的に更新され、新しいコマンドが認識されます。

音声コマンド/認識

これは、音声認識エンジンがコマンドを識別するために待機する音声フレーズです。これは、音声コマンドリストに表示される音声コマンドの名前でもあります。

コマンド/スクリプト

これは、音声コマンドが認識されたときに発行されるMELまたはPythonコマンドです。
それはMayaコマンド(例えば、move -relative 1 2 3)またはあなた自身のスクリプトです。
下のラジオボタンを使用して、スクリプトがPythonスクリプトのMELスクリプト内にあるかどうかを指定します。

音声コマンドのアップデート

音声コマンドを音声コマンドリストから選択し、テキストフィールドの値を変更して[選択項目の更新]を押すと、音声コマンドを更新できます。
これにより、更新されたコマンドで音声認識エンジンが自動的に更新されます。
Speech Commandsリストの右側にあるMove UpボタンとMove Downボタンを押して、リスト内の音声コマンドの順序を変更することもできます。

音声コマンドの削除

音声コマンドリストから音声コマンドを選択して[選択項目の削除]ボタンを押すと、音声コマンドを削除できます。
これにより、音声認識エンジンが自動的に更新され、削除されたコマンドは認識されなくなります。

音声コマンドの保存と読み込み 音声コマンド保存ファイル

音声コマンドエディタの下部には、保存と読み込みの2つのボタンがあります。
[保存]をクリックすると、現在の音声コマンドがコンピュータのハードドライブに保存されるので、次回MARUIを起動したときに使用できるようになります。
音声コマンドの保存ファイルの場所は、Mayaの環境設定フォルダにあります。
デフォルトでは、これは:
C:\Users\<your name>\Documents\maya\<maya version>\prefs\MARUI_Speech.mel
たとえば、 “Max”という名前のMayaバージョン2018の場合、このフォルダは次のようになります。
C:\Users\max\Documents\maya\2018\prefs\MARUI_Speech.mel
これは単純なMELスクリプトファイルなので、テキストエディタで編集して独自のスクリプトを含めることができます。
音声コマンド用のスクリプトを読み書きする方法については、以下のセクションを参照してください。

MARUIは起動時に保存された音声コマンドを自動的に読み込みます。

音声コマンドスクリプティング

音声コマンドの作成を自動化したい場合は、音声コマンドエディタがPythonまたはMELスクリプトを介して手動で許可するすべての操作を実行できます。
音声コマンドを作成、編集、保存、削除するコマンドはMARUI_Speechコマンドです。
次の例は、スクリプトを使用して音声コマンドを作成、編集、削除する方法を示しています。

~pp~// 音声コマンドの追加
MARUI_Speech -addElement -speechIdentifier “Execute MEL command” -command “myMELcommand()”;
MARUI_Speech -addElement -speechIdentifier “Execute Python command” -command “myPythonCommand()” -python 1;
//登録されている音声コマンドのリストの2番目の要素(0から始まるインデックスが1)を更新します。
MARUI_Speech -setElement 1 -speechIdentifier “New spoken command”;
//登録されている音声コマンドのリストから3番目の要素(0から始まるインデックスが2)を削除します。
MARUI_Speech -deleteElement 2;