* JapaneseIndex * JapaneseTutorial * JapaneseTechnicalNotes = Release notes Galatea Toolkit for Linux (2009-02) by Takuya Nishimoto (nishimoto [atmark] m.ieice.org) The important changes from Galatea for Linux IPA final version (galatea-linux-ipa) released in August, 2003 are as follows. == Platform * The target platform is Ubuntu Linux 8.10 (32bit Desktop). * The functions depending on distribution are not used. * The installer of .deb format for the Ubuntu Linux was made. * package : istc-galatea-morph, istc-galatea-engine, istc-galatea-dialog * installed files * /usr/local/{istc,istc-galatea-engine,istc-galatea-dialog} * /usr/local/bin/galatea-{runner,generate} * License: It is release for members of ISTC at present. Release as free software is planned after April 2009. * The JAVA environment that Galatea Dialog Studio uses is OpenJDK 6. * This uses /usr/share/java/js.jar as a JavaScript engine. This is changeable. == Engines * Each engine was updated. * SRM : http://julius.sourceforge.jp/ * We shifted from Julian 3.x to Julius 4.x. * SSM : http://sourceforge.jp/projects/galateatalk/ * The FSM was updated to v2.35. * The FSM depends on GLUT. It uses freeglut3 now. * A known problem: GLUT and 3D desktop cannot be used at the same time. * http://d.hatena.ne.jp/mscp/20081207/1228634104 == Runner and Project * The conventional galatea command became galatea-runner. * Temporary files are written in at the .galatea directory of the home directory. * The galatea-runner generates the configuration files of each engines from skeleton files dynamically. * A galatea-generate command to generate a project was introduced. * It is going to be expanded in future. * The skeleton files of the 'skel' directory are in ERB format, and embedding of the Ruby language is enabled. * The configuration files are generated using assigned values in system configuration (galatea.yml) and project setting (project.yml) dynamically. In other words the correspondency of configuration files / skeleton files / runner is Model-View-Controller. * galatea.yml and project.yml are written in ERB, and embedding of the ruby language is possible. With the values evaluated in ERB, the generation of the configuration files from a skeleton file is performed. * runner and generate use only a standard library of ruby1.8. * We finished confirmation with ruby1.9, but ruby1.8 is used as the default. == Galatea Dialog Studio * The malfunction in the IPA final version that a work load of the CPU became very high was revised. * Modified version is galatea-linux-v3.0a / gdm-src-1.0.1 of galatea-linux-ipa in sourceforge.jp. * DS was implemented as a submodule controlled by AgentManager. * DialogManager starts AgentManager (written in Perl) in the IPA-final version. The current DS is one of the Galatea submodules communicating by a Galatea protocol by standard input/output. The module name is DM. AgentManager starts DS. * The major version of DialogManager was changed in 2.x from 1.x with this change. * DialogManager for Linux changed a name in Galatea Dialog Studio (DS) from version 2.2. * We confirmed the execution with Windows XP unofficially. * DSが各サブモジュールと標準入出力で通信するか、DS からプロセスを起動するか、といったシステム構成は、 容易に切り替えることができます。 * 非公式 Windows 対応モードでは、DS がすべてのサブモジュールのプロセスを起動します。 * HTTP でドキュメントを取得するプロトコルで cookie に対応しました。 * Java 6 の機能を使用しています。 * これにより cookie でセッション管理する PHP や Ruby on Rails などとの互換性が高まりました。 * DS は多機能な GUI を導入しました。 * システムの状態確認、内部処理ログの選択的表示などが可能です。 * 現在の DS は SRM の Perl ラッパーを使用していません。 julius は DS から直接起動され、DS と julius はソケットで通信します。 また、音声認識の XML 文法は内部で Julius (Julian) 形式に変換され mkdfa によって変換されます。 これらの機能は Windows 環境でも同等に動作します。 なお SRM 以外のモジュールは従来どおり AgentManager によって起動されます。 * IPA 最終版から XML 音声認識文法のサポートが改善されています。 * IPA 最終版では Julius(Julian) 文法と直接対応する記述が可能でしたが、 現在は one-of などのサポートが強化されています。 また item タグで slot や value などの属性が使用可能です。 * Julius 文法に関する機能は単体で利用できます。 istc-galatea-dialog/files/tests/grammar/ にサンプルがあります。 * VoiceXML の audio タグに対応するオーディオ出力は JavaSound を使用しています。 == サブモジュール * AM-MCL は Ruby で再実装されました。 * FSM と SSM の統一的モデル切り替えなど、出力系の制御機能が追加されています。 * 頭と顔の自然な動きを実現するために、以下のモジュールが追加されました。 * FS-MCL : 複数の種類のエージェントの顔や背景の種類,連続的な動きなどを情報を管理するサブモジュールです。(Javaで実装) * FSM が提供する顔の自律運動機能は使用していません。 * PAR : 音声合成の出力開始と同期して,複数のコマンドを逐次実行するサブモジュールです。(Rubyで実装) * VoiceXML からは all-of タグで利用できます。 * DIM : ユーザとエージェントの発話状態に応じてまばたきやアイコンタクトの制御を行うためのモジュールです。(Rubyで実装) JapaneseIndex に戻る