JP2005204052A - 外部機器の制御方法、外部機器の制御装置およびプログラム - Google Patents

外部機器の制御方法、外部機器の制御装置およびプログラム Download PDF

Info

Publication number
JP2005204052A
JP2005204052A JP2004008103A JP2004008103A JP2005204052A JP 2005204052 A JP2005204052 A JP 2005204052A JP 2004008103 A JP2004008103 A JP 2004008103A JP 2004008103 A JP2004008103 A JP 2004008103A JP 2005204052 A JP2005204052 A JP 2005204052A
Authority
JP
Japan
Prior art keywords
remote control
plug
external device
management process
display
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP2004008103A
Other languages
English (en)
Other versions
JP4362768B2 (ja
Inventor
Tatsuya Umeo
達也 梅尾
Takao Yamamoto
孝郎 山本
Masaaki Okabayashi
昌明 岡林
Hideo Miyamori
秀生 宮森
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Yamaha Corp
Original Assignee
Yamaha Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Yamaha Corp filed Critical Yamaha Corp
Priority to JP2004008103A priority Critical patent/JP4362768B2/ja
Priority to EP05100018.0A priority patent/EP1555772A3/en
Priority to US11/030,830 priority patent/US20050159832A1/en
Priority to CNB200510004314XA priority patent/CN100342341C/zh
Publication of JP2005204052A publication Critical patent/JP2005204052A/ja
Priority to US12/505,384 priority patent/US8935444B2/en
Application granted granted Critical
Publication of JP4362768B2 publication Critical patent/JP4362768B2/ja
Priority to US12/855,554 priority patent/US20100306667A1/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Landscapes

  • Selective Calling Equipment (AREA)
  • Circuit For Audible Band Transducer (AREA)
  • Electrophonic Musical Instruments (AREA)
  • User Interface Of Digital Computer (AREA)

Abstract

【課題】 音楽ソフトウエアにプラグイン可能な遠隔制御ソフトウエアがパーソナルコンピュータに多数インストールされている場合に、これら関連するソフトウエアを相互に連携させつつ動作させる。
【解決手段】 音楽ソフトウエア・ウィンドウ200のトラック表示部220には、複数のトラックの名称、出力ポート等の情報が表示される。起動ボタン部222には各トラック毎の起動ボタンが表示される。何れかの起動ボタンがマウスでクリックされると、当該出力ポートから出力される演奏情報を受信する外部機器の遠隔操作を行う遠隔制御ソフトウエアが認識され、当該遠隔制御ソフトウエアの状態を設定するパネルウィンドウがディスプレイに表示される。
【選択図】 図3

Description

本発明は、ミキサ、音源等の遠隔制御に用いて好適な外部機器の制御方法、外部機器の制御装置およびプログラムに関する。
パーソナルコンピュータ等にインストールされるシーケンサ等の音楽ソフトウエアにおいては、外部の音源装置等に対してMIDI信号を送信することができる。そして、外部の音源装置においてはこのMIDI信号に基づいて楽音信号が合成され、合成された楽音信号はミキサ等を介して他の音声信号とミキシングされ、そのミキシング結果が録音装置に録音される。このような使用方法においては、音源装置またはミキサ等の外部機器もパーソナルコンピュータ上で遠隔制御できれば便利であるから、各外部機器のメーカによって、パーソナルコンピュータ上でこれら外部機器を制御する遠隔制御ソフトウエアが提供されている(非特許文献1)。
これら遠隔制御ソフトウエアにおいては、パーソナルコンピュータのメモリ空間内に制御対象の外部機器内のメモリと同等のメモリ空間(パラメータメモリ)が確保され、遠隔制御ソフトウエアの設定ウィンドウには、当該外部機器における表示画面や操作パネルを模擬した画像が表示される。そして、ユーザは、操作パネル画像に表示される操作子をマウス等によって操作することができ、その操作結果に基づいてパラメータメモリ内の対応する動作パラメータが更新される。これにより、外部機器の動作のうちのメモリ内のパラメータ編集に係る動作がパーソナルコンピュータ上でエミュレートされる。そして、パーソナルコンピュータと外部機器との間においては、動作パラメータの更新内容が逐次交換され、これによって両者の動作パラメータの同一性が維持される。
また、遠隔制御ソフトウエアにおいては、現在の動作パラメータをハードディスク等の記録媒体に「設定ファイル」としてセーブすることができ、また、過去に記憶された「設定ファイル」をロードすることによって外部機器の過去の状態を再現することもできる。また、上述した音楽ソフトウエアがプラグイン機能を備えている場合には、外部機器の遠隔制御ソフトウエアを該音楽ソフトウエアのプラグインとして実装することができる。かかる場合には、音楽ソフトウエアのメニュー画面から各種遠隔制御ソフトウエアのパラメータ編集画面を開くことができる。
「Studio Manager for DM2000 V1.1 取扱説明書」ヤマハ株式会社, 2002年1月
ところで、一般的にパーソナルコンピュータにおいては、ソフトウエアの多重プラグインが可能である。例えば、第1のソフトウエア(音楽ソフトウエア)に第2のソフトウエアをプラグインし、この第2のソフトウエアに第3のソフトウエアをプラグインすることも考えられる。かかる場合には第1のソフトウエアと第3のソフトウエアとは直接的にはプラグインされている関係には無いため、両ソフトウエア間でプロセス間通信を行うことは困難であった。
例えば、第3のソフトウエアが外部機器の遠隔制御ソフトウエアであった場合に、その設定ウィンドウの表示を第1のソフトウエアから第3のソフトウエアに指令することができなかった。また、遠隔制御ソフトウエアは一般的にMIDIポートを介して外部機器を制御するが、第1のソフトウエアから遠隔制御ソフトウエアに対して制御用のMIDIポート等を割り当てることもできなかった。同様に、遠隔制御ソフトウエアが使用しているMIDIポートを第1のソフトウエアに対して通知することもできなかった。
この発明は上述した事情に鑑みてなされたものであり、関連するソフトウエアを相互に連携させつつ動作させることができる外部機器の制御方法、外部機器の制御装置およびプログラムを提供することを目的としている。
上記課題を解決するため本発明にあっては、下記構成を具備することを特徴とする。なお、括弧内は例示である。
請求項1記載の外部機器の制御方法にあっては、各々が異なる外部機器を制御する複数の遠隔制御プロセスと、これら遠隔制御プロセスを管理する管理プロセスとが通信可能に設定され、さらに該管理プロセスと所定のアプリケーションプロセスとが通信可能に設定されたコンピュータ上で実行される外部機器の制御方法であって、前記アプリケーションプロセスは、複数の外部機器に対応する複数の操作部(起動ボタン部222の各ボタン)を有する前記アプリケーションプロセスの画面をディスプレイ上に表示する第1の表示過程と、何れかの前記操作部に対応する操作を検出すると、前記管理プロセスに対し、操作が検出された操作部に対応する外部機器の前記遠隔制御プロセスに遠隔操作画面を表示させる表示指令を発行させる発行指令を送信する過程とを実行し、前記管理プロセスは、前記アプリケーションプロセスからの前記発行指令に応じて、当該遠隔制御プロセスに遠隔操作画面を表示させる表示指令を発行し、当該遠隔制御プロセスに送信する過程を実行し、前記遠隔制御プロセスは、前記管理プロセスからの表示指令に応じて、遠隔操作を行う遠隔操作画面(パネルウィンドウ500)を前記ディスプレイ上に表示する第2の表示過程を実行することを特徴とする。
また、請求項2記載の外部機器の制御方法にあっては、各々が異なる外部機器を制御する複数の遠隔制御プロセス(リモート制御プラグインのプロセス)と、これら遠隔制御プロセスを管理する管理プロセス(ワークスペース・プログラム)とが通信可能に設定され、さらに該管理プロセスと所定のアプリケーションプロセス(音楽ソフトウエアのプロセス)とが通信可能に設定されたコンピュータ上で実行される前記外部機器の制御方法であって、前記管理プロセスは、前記アプリケーションプロセスから利用可能な複数の第1群のリソース(MIDI出力ポート)を示す情報を受け取る過程と、該第1群のリソースの中から、当該管理プロセスが管理している遠隔制御プロセスのためのリソースを第2群のリソースとして確保する過程と、前記各遠隔制御プロセスに対して、前記第2群のリソースの中から既に他の遠隔制御プロセスに使用されているリソースを除いた一または複数の第3群のリソースを示す情報を、前記各遠隔制御プロセスに対して割当可能なリソースとして通知する過程と、前記各遠隔制御プロセスから当該遠隔制御プロセスの使用している一または複数の第4群のリソースを示す情報を受け取る過程とを実行することを特徴とする。
また、請求項3記載の外部機器の制御方法にあっては、各々が異なる外部機器を制御する複数の遠隔制御プロセスと、これら遠隔制御プロセスを管理する管理プロセスとが通信可能に設定され、さらに該管理プロセスと所定のアプリケーションプロセスとが通信可能に設定されたコンピュータ上で実行される外部機器の制御方法であって、前記アプリケーションプロセスは、複数トラックの各々についてリソース(MIDI出力ポート)を設定する過程と、再生された複数トラックの演奏情報を、各々設定されたリソースに従って出力する過程と、前記管理プロセスから、前記各遠隔制御プロセスが使用している一または複数の第1群のリソースを示す情報を受け取る過程と、複数トラックの何れかのトラックについて遠隔操作画面の表示が指示されたのに応じ、当該トラックに設定されたリソースと前記管理プロセスから受け取った情報とに基づいて当該トラックの演奏情報が供給されている外部機器を判別し、前記管理プロセスに対し、判別された外部機器に対応する遠隔制御プロセスである指定遠隔制御プロセスに前記遠隔操作画面を表示させる表示指令を発行させる発行指令を送信する過程とを実行し、前記管理プロセスは、前記各遠隔制御プロセスから当該遠隔制御プロセスの使用している第1群のリソースを示す情報を受け取る過程と、前記アプリケーションプロセスからの前記発行指令に応じて、前記指定遠隔制御プロセスに対して前記遠隔操作画面を表示させる表示指令を発行し、前記指定遠隔制御プロセスに送信する過程とを実行し、前記遠隔制御プロセスは、前記管理プロセスからの前記表示指令に応じて、遠隔操作を行う前記遠隔操作画面をディスプレイ上に表示する遠隔操作画面表示過程を実行することを特徴とする。
また、請求項4記載の外部機器の制御方法にあっては、各々が異なる外部機器を制御する複数の遠隔制御プロセス(リモート制御プラグインのプロセス)と、これら遠隔制御プロセスを管理する管理プロセス(ワークスペース・プログラム)とが通信可能に設定され、さらに該管理プロセスと所定のアプリケーションプロセス(音楽ソフトウエアのプロセス)とが通信可能に設定されたコンピュータ上で実行される前記外部機器の制御方法であって、前記アプリケーションプロセスは、前記管理プロセスに対して、該管理プロセスが管理している何れかの前記遠隔制御プロセスにおいて実行すべき動作を指定する(パネルウィンドウの表示を指示する)動作指令を発行させる発行指令を送信する過程を実行し、前記管理プロセスは、前記アプリケーションプロセスからの前記発行指令に応じて、当該遠隔制御プロセスに前記実行すべき動作を指定する動作指令を発行して前記遠隔制御プロセスに転送する過程を実行し、前記遠隔制御プロセスは、前記管理プロセスからの動作指令に基づいて、前記実行すべき動作(パネルウィンドウを表示する)を実行することを有することを特徴とする。
さらに、請求項5記載の構成にあっては、請求項4記載の外部機器の制御方法において、前記アプリケーションプロセスは、さらに、所定のセーブ指示操作を検出すると、前記管理プロセスに対し、現在の状態の情報を要求する要求指令を送信する過程と、該要求指令に応じて前記管理プロセスから供給された現在の状態の情報に対して、該アプリケーションプロセスにおいて保有するデータを結合し、この結合結果を一のファイルとして記録媒体に記録する過程とを実行し、前記管理プロセスは、さらに、前記アプリケーションプロセスからの前記要求指令に応答して、前記各遠隔制御プロセスから当該遠隔制御プロセスの最新の状態に対応する第1のパラメータを収集する過程と、当該管理プロセスの最新の状態に対応する第2のパラメータと収集された前記第1のパラメータとを結合し、この結合結果を前記アプリケーションソフトに対して前記現在の状態の情報として供給する過程とを実行することを特徴とする。
さらに、請求項6記載の構成にあっては、請求項4記載の外部機器の制御方法において、前記アプリケーションプロセスは、さらに、所定のロード指示操作を検出すると、前記管理プロセスおよび前記複数の遠隔制御プロセスの状態を規定する設定データを含む一のファイルを読み出す過程と、前記管理プロセスに対して、前記設定データを供給する過程とを実行し、前記管理プロセスは、さらに、前記設定データにパラメータが規定されている遠隔制御プロセスを起動する過程と、これら起動された遠隔制御プロセスに対して、前記設定データに規定されているパラメータを供給する過程とを実行することを特徴とする。
さらに、請求項7記載の構成にあっては、請求項4記載の外部機器の制御方法において、前記実行すべき動作には、前記遠隔制御プロセスと該遠隔制御プロセスが制御している外部機器とがその現在の状態を相互に一致させる同期化動作、または、前記遠隔制御プロセスが前記外部機器の遠隔操作を行うための遠隔操作画面をディスプレイ上に表示させる表示動作のうちの少なくとも一方の動作が含まれることを特徴とする。
さらに、請求項8記載の構成にあっては、請求項1ないし7の何れかに記載の外部機器の制御方法において、前記各遠隔制御プロセスは、前記アプリケーションプロセスにより直接管理されることも可能であることを特徴とする。
さらに、請求項9記載の構成にあっては、請求項1ないし7の何れかに記載の外部機器の制御方法において、前記管理プロセスは、前記コンピュータの記憶装置に記憶されている遠隔制御プログラムに基き、当該管理プロセスで管理する遠隔制御プロセスを登録する過程を実行することを特徴とする。
また、請求項10記載の外部機器の制御装置にあっては、請求項1ないし9の何れかに記載の外部機器の制御方法を実行することを特徴とする。
1 請求項1記載のプログラムにあっては、請求項1ないし9の何れかに記載の外部機器の制御方法を処理装置に実行させることを特徴とする。
このように、アプリケーションプロセスの画面における所定の操作に応じて、管理プロセスに対し、該管理プロセスが管理している遠隔制御プロセスに対して遠隔操作画面を表示させる指示を出す構成によれば、アプリケーションプロセスの画面上から遠隔制御プロセスの画面表示を指示することができる。
また、前記管理プロセスが第1群のリソースの中から、当該管理プロセスが管理している遠隔制御プロセスのためのリソースを第2群のリソースとして確保し、各遠隔制御プロセスに対して、第2群のリソースの中から既に他の遠隔制御プロセスに使用されているリソースを除いた一または複数の第3群のリソースを示す情報を通知する構成によれば、各遠隔制御プロセスは、管理プロセスがまとめて確保した第2群のリソースのなかから当該遠隔制御プロセスが使用するリソースを選択することができ、遠隔制御プロセスとアプリケーションプログラムとの間の通信量を減らすことができ、かつ、遠隔制御プロセスではリソース設定の処理のレスポンスを向上させることができる。
また、アプリケーションプロセスが管理プロセスから第1群のリソースを示す情報を受け取り、管理プロセスに対して表示指令を発行させる発行指令を送信する構成によれば、アプリケーションプロセスは、管理プロセスから、該管理プロセスが管理している遠隔制御プロセスの使用しているリソースの情報を得ることができる。
また、アプリケーションプロセスが管理プロセスに発行指令を送信し、管理プロセスが該発行指令に応じて、遠隔制御プロセスに動作指令を発行する構成によれば、アプリケーションプロセスは、管理プロセスに対して、該管理プロセスの管理している遠隔制御プロセスに対して所定の動作を行わせることができる。ここで、各遠隔制御プロセスが受け取る動作指令は、当該遠隔制御プロセスがアプリケーションプロセスにより直接管理されている場合にアプリケーションプロセスから受け取る動作指令と同じものであり、従来の遠隔制御プロセスをそのまま使用することができる。
さらに、アプリケーションプロセスがセーブ指示操作を検出すると、管理プロセスに対して要求指令を送信する構成によれば、アプリケーションプロセスは、遠隔制御プロセスを直接管理している場合に該遠隔制御プロセスから現在の状態の情報を入手するのと同じ手順で、複数の遠隔制御プロセスを管理する管理プロセスから現在の状態の情報を入手することができる。すなわち、アプリケーションプロセスは、現在の状態の情報の入手に関し、管理プロセスが複数の遠隔制御プロセスを管理していることを意識しなくても良い。
さらに、アプリケーションプロセスがロード指示操作を検出すると、管理プロセスおよび複数の遠隔制御プロセスの状態を規定する設定データを含む一のファイルを読み出し、管理プロセスに対して、該設定データを供給する構成によれば、アプリケーションプロセスは、遠隔制御プロセスを直接管理している場合に該遠隔制御プロセスに対して設定データを送信して該遠隔制御プロセスの設定を行うのと同じ手順で、複数の遠隔制御プロセスを管理する管理プロセスに対してその設定データを供給することができる。すなわち、アプリケーションプロセスは、設定データに基づくプロセスの設定に関し、管理プロセスが複数の遠隔制御プロセスを管理していることを意識しなくても良い。
さらに、各遠隔制御プロセスは、アプリケーションプロセスにより直接管理されることも可能である構成によれば、管理プロセスの管理する遠隔制御プロセスは、通常のアプリケーションプロセスで管理される遠隔制御プロセス(リモート制御プラグイン)と同じ遠隔制御プロセスであり、既に作成されているプラグインのプログラムリソースを有効に使用することができるとともに、通常のアプリケーションプロセスによる管理では面倒であった複数プラグインの一括管理が可能になる。
さらに、管理プロセスが、コンピュータの記憶装置に記憶されている遠隔制御プログラムに基き、当該管理プロセスで管理する遠隔制御プロセスを登録する構成によれば、記憶装置に記憶されている遠隔制御プログラムに基づいて、管理プロセスで一括管理する遠隔制御プロセスを自由に選択することができる。
1.実施例のハードウエア構成
1.1.全体構成
次に、本発明の一実施例の音楽編集システムの構成を図1を参照し説明する。
図において100はPC/AT互換のパーソナルコンピュータであり、USBポート102およびIEEE1394ポート104が設けられている。パーソナルコンピュータ100のIEEE1394ポート104には、コントローラ156、シンセサイザ162、ミキサ168の各IEEE1394ポートが順次直列に接続されている。これらの機器は、本出願人が提案している楽音信号用LAN(mLAN、登録商標)に準拠している。この楽音信号用LANにおいては、IEEE1394規格に基づく接続線を用いて、MIDI信号、波形データ(オーディオデータ)、制御信号等が送受信され、それらの信号を伝達するための機器間の論理的な結線は、後述するLANパッチベイ154により制御される。
このように、楽音信号用LANに対応している機器同士であれば楽音信号用LANを介して必要な全ての信号を送受信できるが、対応していない機器が含まれている場合には、他のインタフェースを介して機器間が接続されることになる。152はUSBハブであり、USBポート102と、シンセサイザ160、エフェクタ164およびミキサ166の各USBポートとに接続され、これらの機器間の通信を仲介する。なお、本実施例においては、USBポート102およびIEEE1394ポート104において各々複数チャンネルのMIDIポートが形成され、パーソナルコンピュータ100とその他の機器間では、これらMIDIポートを介してMIDI信号が送受信される。
ここで、コントローラ156は、他の機器との間で楽音信号用LANを介してMIDI信号と波形データを送受信するLANインタフェース機能と、波形データをミキシングするミキシング機能と、パーソナルコンピュータ100上で実行される音楽ソフトウエアをリモート制御するリモート制御機能を有し、表示器、多数の操作子、MIDI信号やアナログ波形やデジタル波形を入出力する信号入出力部などを備えている。このコントローラ156は、楽音信号用LANを介して受信したMIDI信号等を通常のMIDIインタフェース(MIDIケーブルを介してMIDI信号を送受信するインタフェース)に変換することができる。これにより、楽音信号用LANにもUSB接続にも対応していない機器と、楽音信号用LANとを仲介することができる。シンセサイザ158はMIDIケーブルを介してコントローラ156に接続されており、これによってパーソナルコンピュータ100とシンセサイザ158は、楽音信号用LANを介して双方向通信を行うことが可能になっている。
シンセサイザ158,160において合成された楽音信号は、アナログケーブルを介してミキサ166に供給される。また、ミキサ166における一部のチャンネルの音声信号はエフェクタ164に出力され、ここで効果処理が施された後にミキサ166に出力される。両者間で入出力される音声信号もアナログケーブルを介して伝送される。また、ミキサ166,168は、カスケード接続ケーブルを介してカスケード接続されている。なお、カスケード接続とは、複数のミキサ間で音声信号および制御信号を相互に交換することにより、これら複数のミキサを多数の入出力チャンネルを有する一台のミキサの如く動作させるためのミキサ間接続である。
1.2.パーソナルコンピュータ100の構成
次に、パーソナルコンピュータ100の構成を図2を参照し説明する。2は通信インタフェースであり、上述したUSBポート102およびIEEE1394ポート104や図示しないMIDI端子などが設けられている。4は入力装置であり、文字入力用キーボードおよびマウス等から構成されている。6は演奏操作子であり、演奏用キーボード等から構成されている。8はディスプレイであり、ユーザに対して各種情報を表示する。10はCPUであり、後述するプログラムに基づいて、バス16を介して他の構成要素を制御する。12はROMであり、イニシャルプログラムローダ等が記憶されている。
18はリムーバルディスクドライブ装置であり、CD−ROM、MO等のリムーバルディスク20に対して読出し/書込みを行う。22は波形取込インタフェースであり、外部から入力されたアナログ信号をデジタル信号に変換する。24はハードディスクであり、オペレーティングシステム、音楽ソフトウエア、演奏情報、波形データ等が格納される。26は波形出力インタフェースであり、バス16を介して供給されたデジタルの楽音信号をアナログ信号に変換する。28はサウンドシステムであり、該楽音信号を発音する。30はRAMであり、CPU10のワークメモリとして用いられる。なお、一般のパーソナルコンピュータには標準では演奏用キーボードが用意されていない場合が多い。
2.実施例のソフトウエアモジュール構成
次に、本実施例のソフトウエアモジュール構成を図5(a),(b)を参照し説明する。
まず、各外部機器を制御する遠隔制御ソフトウエアは、他のソフトウエアにプラグインされるプラグインモジュール(リモート制御プラグイン)の形式で構成されている。このリモート制御プラグインは、従来より、音楽ソフトウエア等のソフトウエアに直接プラグインされ、対応する外部機器を制御するようになっている。図5(a),(b)において402,404等は、そのような種類のリモート制御プラグインである。一般的に、各種のプラグインを他のソフトウェアで利用しようとする場合、当該プラグインのプログラムファイルはパーソナルコンピュータ100の所定のプラグイン用フォルダに記憶される。プラグインを利用しようとする該他のソフトウェアは、その起動時に該プラグイン用フォルダをチェックし、そこで検出されたプラグインが該他のソフトウェアにプラグインされる。
図5(a)においては、各リモート制御プラグイン402,404等は、ワークスペースプラグイン410というソフトウエアにプラグインされ、さらにこのワークスペースプラグイン410が音楽ソフトウエア420にプラグインされている。これらのソフトウエアは各々別プロセス上で起動される。また、図5(b)に示すような、単独で起動することのできるワークスペースソフトウエア430も用意され、音楽ソフトウエア420を起動していない状態においても各リモート制御プラグインの制御を行うことができるようになっている。
以下、ワークスペースプラグイン410とスタンドアローン型ワークスペースソフトウエア430とを総称して「ワークスペース・プログラム」という。これらワークスペース・プログラムは、各リモート制御プラグインに対して同様の制御を行う機能を有しているが、ワークスペースプラグイン410には、上述したように音楽ソフトウエア420との通信を行う機能が追加されている。また、ワークスペース・プログラムの設定状態と、該ワークスペース・プログラムにプラグインされている各リモート制御プラグイン402,404等の設定状態とを総称して「ワークスペース」と呼ぶ。
図5(a)において、音楽ソフトウエア420とリモート制御プラグイン402,404等との間の通信は、ワークスペースプラグイン410によって仲介される。すなわち、音楽ソフトウエア420からワークスペースプラグイン410に対して、同期化(各リモート制御プラグイン402,404等のパラメータメモリの内容と対応する外部機器のパラメータメモリの内容とを一致させること)の指示が送信されると、ワークスペースプラグイン410から各リモート制御プラグイン402,404等に対して個別に同期化指示が送信される。
また、音楽ソフトウエア420からワークスペースプラグイン410に対して、使用されているMIDIポートの問い合わせが送信されると、ワークスペースプラグイン410においては各リモート制御プラグイン402,404等によって使用されるMIDIポートがチェックされ、その結果が音楽ソフトウエア420に返信される。さらに、音楽ソフトウエア420からワークスペースプラグイン410に対して何れかのリモート制御プラグインのパネルウィンドウ(対応する外部機器の操作パネルを模擬するウィンドウ)をオープンする指示が送信されると、ワークスペースプラグイン410によって、対応するパネルウィンドウを表示するように対応するリモート制御プラグインに対して指示が送信される。対応するリモート制御プラグインにおいては、この指示に応じて、そのパネルウィンドウがオープンされる。
また、上述したようにワークスペース・プログラムと、各リモート制御プラグインとは別プロセス上で起動され、一のリモート制御プラグインにパラメータメモリとして割り当てられるメモリ空間は、ワークスペース・プログラムに割り当てられるメモリ空間とは完全に独立している。なお、ワークスペース・プログラムと各リモート制御プラグインとを別スレッドで起動して、メモリ空間を共有することも考えられるが、その場合、ソフトウエアの独立性が損なわれ、バグが発生しやすくなる。
ここで、各リモート制御プラグインと、対応する外部機器との間のインタフェースについて説明しておく。まず、リモート制御プラグインと外部機器とはパラメータメモリの内容、その他制御信号を相互に交換するため、リモート制御プラグイン側では制御信号の入力ポートおよび制御信号の出力ポートを必ず確保しておく必要がある。そして、制御信号はMIDI信号の形態で送受信されるため、これら入出力ポートはMIDIポートである。なお、周知のように「MIDI」は本来は演奏情報を送受信するためのインタフェースであるが、本実施例においてはMIDI信号のフォーマットを用いて制御信号が送受信される。
また、外部機器が演奏情報に基づいて楽音信号を生成する機器(例えばシンセサイザ)である場合には、リモート制御プラグインから外部機器に対して、この楽音信号を生成するための本来の意味での演奏情報を送信する必要がある。かかる場合には、演奏情報出力用に別のMIDI出力ポートが割り当てられる。同様に、外部機器からリモート制御プラグインに対して本来の意味での演奏情報が送信される場合がある。かかる場合には、演奏情報入力用に別のMIDI入力ポートが割り当てられる。このように、リモート制御プラグインと外部機器との通信のために、最小「2」、最大「4」のMIDI入出力ポートがリモート制御プラグインに割り当てられることになる。
3.実施例の動作
3.1.スタンドアローン型ワークスペースソフトウエア430の動作
パーソナルコンピュータ100において所定の操作が実行されると、スタンドアローン型ワークスペースソフトウエア430が起動され、図4(a)に示すワークスペース管理ウィンドウ300がディスプレイ8に表示される。管理ウィンドウ300の内部において305はメニューバーであり、ここに「File」ボタン302、「Synchronize」ボタン304等が表示される。310はフィールド部であり、図示のように各種アイコン320〜334が表示される。これらのアイコンは、ワークスペースに登録されたリモート制御プラグインのアイコンであり、ワークスペースソフトウエア430が初めて起動された場合など、登録されたリモート制御プラグインが何も無い状態では、フィールド部310には何も表示されない。
3.1.1.「File」メニューの詳細
(1)「Open」が選択された場合の処理
「File」ボタン302がマウスで左クリックされると、図4(b)に示す「File」メニュー352が表示される。ここで「Open」が選択されると、ファイルを開くためのウィンドウが表示され、ユーザはワークスペース設定ファイルを選択することができる。何れかのワークスペース設定ファイルが選択されると、図10(b)に示すワークスペースロード・ルーチンが起動される。ここで、「ワークスペース設定ファイル」とは、ワークスペースを格納したファイルをいう。また、ワークスペースにて使用されるリモート制御プラグインを「登録プラグイン」という。さらに、起動されているワークスペースソフトウエア430の現在のワークスペースを「カレント・ワークスペース」という。
図10(b)において処理がステップSP12に進むと、指定されたワークスペースの内容がハードディスク24等から読み込まれる。次に、処理がステップSP14に進むと、フィールド部310に何も表示されていない管理ウィンドウ300が表示される。すなわち、フィールド部310には「起動された登録プラグイン」のアイコンが表示されるが、この時点では何れの登録プラグインも起動されていないから、フィールド部310には何も表示されないことになる。次に、処理がステップSP16に進むと、カレント・ワークスペースに含まれる登録プラグインで使用されているMIDIポートが確認される。ここで、MIDIポートが確認できなかった登録プラグインに関して、「必要なMIDIポートがありません。」との警告表示を行うようにしてもよい。
次に、処理がステップSP18に進むと、各登録プラグインが、ワークスペースソフトウエア430とは別のプロセスとして「常駐状態」で起動されるとともに、起動された登録プラグインに係る外部機器のアイコン320〜334がフィールド部310に表示される。各登録プラグインは独自のメモリ空間を有しており、起動されたリモート制御プラグインの保持するパラメータメモリの内容をワークスペースソフトウエア430が参照すべき場合は、ワークスペースソフトウエア430は該リモート制御プラグインに対してその内容を問い合わせる命令を送り、それに応じて該リモート制御プラグインはその内容をワークスペースソフトウエア430に返答することになる。なお、ワークスペース設定ファイルに、各登録プラグインのパネルウィンドウを起動するか否かの情報を含め、この時点で、「起動する」とされた登録プラグインのパネルウィンドウを自動的に起動するようにしてもよい。次に、処理がステップSP20に進むと、カレント・ワークスペースに含まれる各登録プラグインの設定状態が、起動された各登録プラグインに対して設定すべきパラメータとして供給される。各登録プラグインにおいては、供給されたパラメータが各登録プラグインのパラメータメモリに対して書き込まれる。
次に、処理がステップSP22に進むと、該カレント・ワークスペースにおいて「自動一括同期化」がオン状態に設定されているか否かが判定される。なお、「自動一括同期化」とは、各外部機器のパラメータメモリの内容をカレント・ワークスペースに規定された内容に自動的に同期させることをいう。ここで「NO」と判定されると、本ルーチンの処理は直ちに終了する。一方、「YES」と判定されると、処理はステップSP24に進む。ここでは、図11(b)に示す一括同期化処理ルーチンが呼び出され、一括同期化の対象にされている各登録プラグインにおいて、対応する外部機器に対するパラメータ送信処理が開始される。なお、各登録プラグインを一括同期化の対象にするか否かは登録プラグイン毎に個々に設定できるが、その設定方法の詳細については後述する。また、一括同期化処理ルーチン(図11(b))の処理の詳細についても後述する。
(2)「Setup」が選択された場合の処理
また、「File」メニュー352において「Setup」が選択されると、図7に示すワークスペース設定ウィンドウ600がディスプレイ8上に表示される。図7において610は登録可能プラグイン表示部であり、パーソナルコンピュータ100にインストールされている(プラグイン用フォルダに、対応するプログラムファイルが置かれている)全てリモート制御プラグインの名称がリストアップされる。また、620は登録プラグイン表示部であり、カレント・ワークスペースの登録プラグインの名称がリストアップされる。これら表示部610,620においては、マウスのクリック操作により、表示されている任意の一または複数のプラグインを選択状態にすることができる。
612はAddボタンであり、マウスでクリックされると、登録可能プラグイン表示部610内で選択されているプラグインが登録プラグイン表示部620に追加される。既に登録プラグイン表示部620に表示されているプラグインを選択してAddボタン612が操作された場合には、先に登録されたプラグインと区別できるようにプラグインの名称が一部改変されて登録プラグイン表示部620に追加される。例えば、既に「ミキサ(A)」が登録されている状態でさらに「ミキサ(A)」を追加する場合は、後者の名称が「ミキサ(A)−2」のように改変される。この改変は、ユーザが名称を指定するようにしてもよい。また614はDelボタンであり、マウスでクリックされると、登録プラグイン表示部620内で選択されているプラグインが削除される。このような操作により、カレント・ワークスペースの登録プラグインを適宜編集することが可能である。
616,618は優先順位指定部であり、登録プラグインが一括同期化される際の優先順位を指定する。図1の構成にあっては、LANパッチベイ154は楽音信号用LANに接続されたパーソナルコンピュータ100を含む複数の機器間に、MIDI信号や波形データの論理的な伝送ラインを設定するための結線制御ソフトウエアであり、パーソナルコンピュータ100上で実行される。このLANパッチベイ154からの制御により、複数の機器の各楽音信号用LANインタフェースが制御され、楽音信号用LAN上に論理的な伝送ラインが設定される。他の機器にMIDI信号や波形データのポートを作成する機能を有するため、LANパッチベイ154はそれらの機器より先に設定を行う必要があり、最も高い優先順位(1)が付与されている。また、コントローラ156は、パーソナルコンピュータ上で実行される音楽ソフトウエアをリモート制御する機能を有しているため、次に高い優先順位(2)が付与されている。その他の機器には特に優先順位は付与されておらず、順位としては(3)ということになる。このように、少なくとも一部の登録プラグインに対して優先順位が付与された状態で一括同期化が実行される場合には、ワークスペース・プログラムによって優先順位の付与された各登録プラグインに対して優先順位に従って個別に同期化指示が行われ、同期化指示した登録プラグインの同期化処理が終了すると、次の優先順位の他のプラグインに対して同期化指示が行われる。そして、優先順位が付与された全ての登録プラグインにおいて同期化処理が完了すると、その他の登録プラグインに対して一括して同期化指示が行われることになる。
622は自動一括同期化チェックボックスであり、マウスでクリックされる毎に「自動一括同期化」(ワークスペースロード・ルーチン(図10(b))のステップSP22参照)のオン/オフ状態が交互切り替えられる。624はセットデフォルトボタンであり、マウスでクリックされると、カレント・ワークスペースのリモート制御プラグインの登録状態がデフォルト・ワークスペースとして登録される。このデフォルト・ワークスペースは、ワークスペース・プログラムが起動されたとき等にデフォルトとして適用されるワークスペースである。すなわち、デフォルト・ワークスペースが設定されている場合には、ワークスペース設定ファイルを読み込まない状態でワークスペース・プログラムが起動された時や、起動されたワークスペース・プログラムで新規にワークスペースを作成するときに、フィールド部310に該デフォルト・ワークスペースに基づくアイコンが表示されることになる。
626はMIDI入力ポート・リストボックスであり、USBポート102またはIEEE1394ポート104等によって実現されるMIDI入力ポートや前記MIDI端子のMIDI入力ポートのうち、当該ワークスペースで現在利用可能なMIDIポート(他のソフトウエアで使用されていないMIDIポート)をリストアップする。628はMIDI出力ポート・リストボックスであり、USBポート102またはIEEE1394ポート104等によって実現されるMIDI出力ポートをリストアップする。これらリストボックス626,628においては、一または複数のMIDI入出力ポートを選択状態にすることができ、選択されたMIDI入出力ポートが個々の登録プラグインに割り当て可能になる。
630はOKボタンであり、マウスでクリックされると、ワークスペース設定ウィンドウ600で設定された通りにワークスペースの内容が更新され、該設定ウィンドウ600が閉じられる。また、632はキャンセルボタンであり、マウスでクリックされると、編集内容が破棄された後に該設定ウィンドウ600が閉じられる。
(3)「Save」が選択された場合の処理
「File」メニュー352において「Save」が選択されると、図10(a)に示すワークスペースセーブルーチンが起動される。図10(a)において処理がステップSP2に進むと、各登録プラグインからパラメータメモリの内容が収集される。上述したように、登録プラグインが「オンライン状態」であれば、時々刻々の外部機器の状態に基づいてパラメータメモリが更新されるから、ステップSP2によって収集されるパラメータメモリの内容は、各外部機器の最新の状態に対応したものである。具体的には、ステップSP2において、ワークスペース・プログラムは、各登録プラグインに対してそのメモリ領域に記憶されているパラメータメモリの内容を問い合わせ、それに応じて各登録プラグインからパラメータメモリの内容を受け取る処理を行っている。
次に、処理がステップSP4に進むと、収集されたデータと、ワークスペース・プログラム自身のパラメータとが結合され、設定ファイルに書き込むべきデータ(ワークスペース設定データ)が生成される。なお、「ワークスペース・プログラム自身のパラメータ」とは、上記ワークスペース設定ウィンドウ600において設定されるパラメータである。次に、処理がステップSP6に進むと、生成されたデータが、カレント・ワークスペースに対応する設定ファイルに上書きされる。
(4)その他の処理
「File」メニュー352において「Save As」が選択されると、カレント・ワークスペースを記録するための新たな設定ファイルのファイル名を入力するウィンドウがディスプレイ8に表示される。そして、ユーザがファイル名を指定すると、指定されたファイル名に対して、上記「Save」が選択された場合と同様の処理が行われる。また、「File」メニュー352において「Close」が選択されると、カレント・ワークスペースが閉じられ、デフォルト・ワークスペースの内容がカレント・ワークスペースに設定される。また、「File」メニュー352において「Quit」が選択されると、ワークスペース管理ウィンドウ300が閉じられ、ワークスペースソフトウエア430が終了される。なお、カレント・ワークスペースの内容が未だ設定ファイルに記録されていない状態で「Close」または「Quit」が選択された場合には、ユーザに対してその旨が警告され、必要に応じて上記「Save」または「Save As」と同様の処理が実行される。
3.1.2.アイコンの左ダブルクリック
マウス操作によりアイコン320〜334のうち何れかにカーソルを移動して、その状態でマウスの左スイッチをダブルクリック(左ダブルクリック)すると、そのアイコンに係るリモート制御プラグインに対して、そのパネルウィンドウ(例えば図6に示すリモート制御プラグイン・パネルウィンドウ500)を表示するように指令が出力される。これにより、対応するリモート制御プラグインによってそのパネルウィンドウが表示され、対応する外部機器のパラメータ等を該パネルウィンドウによって制御することが可能になる。なお、パネルウィンドウ500における処理の詳細については後述する。
3.1.3.「Synchronize」メニューの詳細
マウス操作により「Synchronize」ボタンにカーソルを移動して、その状態でマウスの左スイッチをクリック(左クリック)すると、図4(c)に示す「Synchronize」メニュー354が表示される。ここで「Total Recall」が選択されると、図11(b)に示す一括同期化処理ルーチンが起動される。図11(b)において処理がステップSP72に進むと、図9(b)に示す一括同期化確認ウィンドウ720がディスプレイ8に表示される。図9(b)において722,724はラジオボタンであり、これらがマウスでクリックされることにより、一括同期化方向として「To Hardware」(登録プラグインから外部機器へ)または「From Hardware」(外部機器から登録プラグインへ)のうち一方が選択される。
726はプラグイン名表示部であり、登録プラグインのうちの一括同期化が許可された状態の一または複数のプラグインの名称、すなわち一括同期化の対象になる登録プラグイン名が列挙される。ここに対象となるプラグイン名が表示されることにより、ユーザは意図した外部機器に対して一括同期化が行われるか否かを一見して把握することができる。728はOKボタンであり、一括同期化の実行を指示するものである。また、730はキャンセルボタンであり、一括同期化の中止を指示するものである。
図11(b)に戻り、処理がステップSP74に進むと、上記OKボタン728またはキャンセルボタン730の何れかがマウスでクリックされるまで処理が待機する。そして、キャンセルボタン730がクリックされた場合には一括同期化が中止され本ルーチンの処理が直ちに終了する。一方、OKボタン728がクリックされると、処理はステップSP76に進む。ここでは、ワークスペース内にリストアップされている登録プラグインのうち最初のプラグインが処理対象として指定される。次に、処理がステップSP78に進むと、該プラグインの一括同期化が許可されているか否かが判定される。
ここで「NO」と判定されると、処理はステップSP86に進み、リスト内の次の登録プラグインが検索され、かかるプラグインが存在するか否かが判定される。存在した場合には「YES」と判定され処理はステップSP88に進む。ここでは、この検索されたプラグインが次の処理対象として指定され処理はステップSP78に戻る。
ステップSP78において「YES」と判定されると、処理はステップSP80に進み、当該登録プラグインの対象となる外部機器とパーソナルコンピュータ100とが通信可能であるか否かが判定される。具体的には、当該登録プラグインで指定されたMIDI出力ポートを介してテスト信号が送信され、所定時間内にMIDI入力ポートを介して応答信号が返信された場合には「通信可能」であると判定される。所定時間内に応答信号が返信されなかった場合にはステップSP80において「NO」と判定され、処理はステップSP84に進む。
ここでは、「同期対象のハードウエアがありません」とのメッセージと、処理対象の登録プラグイン名とを表示する警告ウィンドウがディスプレイ8に表示される。この警告ウィンドウは、ユーザによって閉じることができるが、本ルーチンでは警告ウィンドウが表示された時点で処理はステップSP86に進む。
一方、ステップSP80において「YES」(通信可能)と判定されると、処理はステップSP82に進む。ここでは、処理対象の登録プラグインに対して、対応する外部機器との間で同期化処理を行うように指示が出力される。この指示には、先にラジオボタン722,724によって指定された一括同期化方向(「To Hardware」または「From Hardware」)も含まれており、該登録プラグインにおいては指定された一括同期化方向でのデータ転送が開始される。
このように、全ての登録プラグインに対してステップSP78〜SP86のループが繰り返されると、次にステップSP86において「NO」と判定され、処理はステップSP90に進む。ここでは、図9(c)に示す一括同期化進捗状況表示ウィンドウ740がディスプレイ8に表示される。ウィンドウ740の内部において741,743,745,747はプラグイン名表示部であり、一括同期化の対象である登録プラグイン名が表示される。すなわち、図示の例にあっては、「4」の登録プラグインのみが一括同期化の対象に設定されていることが解る。
一括同期化の対象である各登録プラグインにおいては、その同期化処理の進捗状況が把握される。すなわち、同期化処理を行うべき全体のデータ量に対して、既に同期化が完了したデータ量の割合が計算され、その計算結果がワークスペースソフトウエア430に逐次報告される。742,744,745,748はヒストグラムであり、これらには、各プラグインから報告された、時々刻々の同期化処理の進捗状況が表示される。752,754,756,758は一括同期化対象のプラグイン毎に設けられたキャンセルボタンであり、マウスでクリックされると、対応する登録プラグインに対して、同期化処理を中止すべき旨の指令が出力される。これにより、当該登録プラグインにおいて該指令が認識されると、その登録プラグインについての同期化処理が中止される。
また、一括同期化の進行中において、何れかの登録プラグインにおいて同期化が完了すると、その旨がワークスペースソフトウエア430に報告されるとともに、当該登録プラグインは「オンライン状態」に移行される。ここで、「オンライン状態」とは、登録プラグインと対応する外部機器とがリアルタイムに同期している状態をいう。すなわち、パーソナルコンピュータ100上の操作あるいは外部機器上の操作によって登録プラグインあるいは外部機器の一方においてパラメータメモリに変更が生じると、その変更内容が他方に送信され、双方のパラメータメモリの内容が一致するように保たれる。なお、各登録プラグインにおいては、同期化が完了するまで「オンライン状態」に移行することはできない。このようにして、全ての登録プラグインにおいて同期化処理が完了すると、本ルーチンの処理が終了する。
3.1.4.アイコンの右クリックメニューの詳細
フィールド部310に表示されている何れかのアイコンがマウスで右クリックされると、図4(d)に示すアイコンメニュー360が表示される。ここで「Open」が選択されると、上述した「アイコンの左ダブルクリック」が行われた場合と同様に、対応するアイコンに係るリモート制御プラグインのパネルウィンドウ(例えば図6)が表示される。また、アイコンメニュー360において「Close」が選択されると、該パネルウィンドウが閉じられる。
また、「TRecall Enable」が選択されると、選択される毎に一括同期化が許可された状態(チェック印が表示)、または一括同期化が禁止された状態(チェック印が非表示)が交互に切り替えられる。ここで設定された状態により、上述したステップSP78の判定結果が決定されることになる。また、「TRecall Data」が選択されると、同期化対象項目選択ウィンドウ362が表示される。該ウィンドウでは、当該登録プラグインのパラメータメモリに記憶されるパラメータのグループ名が列挙され、その中から同期化の対象とすべきグループが選択される。
また、「Remove」が選択されると、当該アイコンがフィールド部310から削除され、対応するリモート制御プラグインが登録プラグインから外される。また、「Synchronize」が選択されると、図11(a)に示す個別同期化処理ルーチンが起動される。図11(a)において処理がステップSP52に進むと、図9(a)に示す個別プラグイン同期化確認ウィンドウ700がディスプレイ8に表示される。図9(a)において702,704はラジオボタンであり、これらにより同期化方向として「To Hardware」または「From Hardware」のうち一方が選択される。706はプラグイン名表示部であり、同期化の対象になる一の登録プラグイン名が表示される。708はOKボタンであり、同期化の実行を指示するものである。また、710はキャンセルボタンであり、同期化の中止を指示するものである。
図11(a)に戻り、処理がステップSP54に進むと、上記OKボタン708またはキャンセルボタン710の何れかがマウスでクリックされるまで処理が待機する。そして、キャンセルボタン710がクリックされた場合には同期化が中止され本ルーチンの処理が直ちに終了する。一方、OKボタン708がクリックされると、処理はステップSP56に進む。ここでは、先にステップSP80において説明した処理と同様に、当該登録プラグインの対象となる外部機器とパーソナルコンピュータ100とが通信可能であるか否かが判定される。
通信が不可能であった場合は処理はステップSP60に進み、先にステップSP84において述べたものと同様の警告ウィンドウがディスプレイ8に表示される。一方、ステップSP56において「YES」(通信可能)と判定されると、処理はステップSP58に進む。ここでは、先のステップSP82と同様に、当該登録プラグインに対して、対応する外部機器との間で同期化処理を行うように指示が出力される。この指示には、先にラジオボタン702,704によって指定された同期化方向も含まれる。以上の処理により本ルーチンの処理は終了する。以後、当該登録プラグインにおいて同期化が完了すると、当該登録プラグインは「オンライン状態」に移行される。
3.2.リモート制御プラグイン・パネルウィンドウ500(図6)の動作
上述したように、アイコン320〜334の何れかが左ダブルクリックされると、対応する機器の遠隔制御ソフトウエアのパネルウィンドウが表示される。ここで、アイコン320に対応するコントローラ156のリモート制御プラグイン・パネルウィンドウ500(図6)が表示された場合を例として、その動作の詳細を説明する。図6において510はメニューバーであり、ここに「File」ボタン512、「Synchronize」ボタン516等が表示される。520はフィールド部であり、図示のようにレベルメータ522,524、チャンネル名表示部526、回転つまみ528、スイッチ530,532、フェーダ534,536等の画像が表示される。
これらフィールド部520に表示される画像は、対応する外部機器であるコントローラ156の操作パネルの構成ないしその操作パネルで実現される機能の等価的構成を模擬したものである。そして、登録プラグインが「オンライン状態」であれば、レベルメータ522、524等に表示すべき内容は、コントローラ156からパーソナルコンピュータ100に対して通知され、当該登録プラグインは、その受け取った操作内容に基づいて自身のパラメータメモリの内容を更新する。また、コントローラ156の操作パネルにおいてスイッチ、回転つまみ、フェーダ等が操作されると、その内容がパーソナルコンピュータ100に対して通知される。
逆にフィールド部520において回転つまみ528、スイッチ530,532、フェーダ534,536等が操作されると(マウスでクリックまたはドラッグされると)、その内容がコントローラ156に通知され、コントローラ156は、その受け取った操作内容に基づいて自身のパラメータメモリの内容を更新する。このように、パーソナルコンピュータ100またはコントローラ156の一方から通知された操作内容は直ちに他方のパラメータメモリに反映され、当該登録プラグインとコントローラ156とでパラメータメモリの内容が常時一致するので、フィールド部520の表示内容とコントローラ156の操作パネルの状態も一致する。
3.2.1.「File」メニューから「Setup」が選択された場合の処理
メニューバー510において「File」ボタン512がマウスで左クリックされると、上述したワークスペース管理ウィンドウ300の「File」メニュー352(図4(b))と同様の「File」メニューが表示される。この「File」メニューにおいて「Setup」が選択されると、図8に示すリモート制御プラグイン設定ウィンドウ650がディスプレイ8上に表示される。図8において652,656は、各々制御信号および演奏情報を入力するMIDI入力ポートを選択するコンボボックスである。これらコンボボックスにおいては、複数の候補の中から制御信号用および演奏情報用のMIDI入力ポートが選択される。
同様に、654,658は、各々制御信号および演奏情報を出力するMIDI出力ポートを選択するコンボボックスである。これらコンボボックスにおいては、複数の候補の中から制御信号用および演奏情報用のMIDI出力ポートが選択される。なお、これらコンボボックス652〜658に表示されるMIDI入出力ポートの候補は、ワークスペース・プログラムから各リモート制御プラグインに対して通知される。
すなわち、上述したようにワークスペース・プログラムにおいては、MIDI入力ポート・リストボックス626およびMIDI出力ポート・リストボックス628(図7)において、複数のMIDI入出力ポートが選択されている。これら選択されたMIDI入出力ポートの中から既に他のリモート制御プラグインに割り当てられたものを除いたものが、各リモート制御プラグインに対して通知されることになる。これにより、コンボボックス652〜658において選択されるMIDI入出力ポートは、他の登録プラグインのMIDI入出力ポートとは重複しないように選択されることになる。
660はOKボタンであり、マウスでクリックされると、設定ウィンドウ650で設定された通りに、該リモート制御プラグインに割り当てられるMIDI入出力ポートが更新され、該設定ウィンドウ650が閉じられる。また、662はキャンセルボタンであり、マウスでクリックされると、編集内容が破棄された後に該設定ウィンドウ650が閉じられる。この編集内容、すなわち当該リモート制御プラグインに割り当てられたMIDI入出力ポートは、当該リモート制御プラグインのパラメータメモリに書き込まれる。ワークスペース・プログラムは、各リモート制御プラグインに対して問い合わせを出すことにより、当該リモート制御プラグインに割り当てられたMIDI入出力ポートの情報を得ることができる。なお、ワークスペース・プログラムがワークスペースプラグイン410であった場合には、音楽ソフトウエア420からの要求に応じて、ワークスペースプラグイン410は、各リモート制御プラグインとMIDI入出力ポートとの対応関係を音楽ソフトウエア420に通知する。
3.2.2.その他の処理
また、「File」メニューにおいて「Open」が選択されると、ファイルを開くためのウィンドウが表示され、ユーザは当該登録プラグインの設定ファイルを選択することができる。ここで、プラグイン用の設定ファイルは、上述したワークスペース用の設定ファイルとは別形式の、当該登録プラグインに独自の形式であり、対応するプラグインのみのパラメータを記憶する。そして、設定ファイルが選択されると、該設定ファイルに規定されたパラメータが該登録プラグインのパラメータメモリに上書きされる。
また、「File」メニューにおいて「Save」または「Save As」が選択されると、上述したワークスペース管理ウィンドウ300における動作と同様に、該プラグインのパラメータメモリの内容がプラグイン用設定ファイルに格納される。また、「File」メニューにおいて「Quit」が選択されると、パネルウィンドウ500が閉じられる。但し、対応する登録プラグイン自体は「常駐状態」であり動作を継続しているので、「オンライン状態」であればパラメータメモリの内容は常に外部機器の状態に一致するように保持される。従って、その後に再びパネルウィンドウ500が開かれると、フィールド部520等には最新の状態が反映されることになる。
以上、コントローラ156のリモート制御プラグイン・パネルウィンドウ500について構成および動作を説明したが、他の外部機器に対するリモート制御プラグイン・パネルウィンドウも、メニューバー510の構成および対応する動作は上述したパネルウィンドウ500の構成および動作と同様である。但し、フィールド部520の内容は、各々の外部機器の操作パネルの構成に応じて異なることは言うまでも無い。
3.3.音楽ソフトウエアの動作
パーソナルコンピュータ100において所定の操作が実行されると、波形データないしMIDIデータ等から成るシーケンスデータを複数のトラックに各々記録、再生、編集可能な音楽ソフトウエア420が起動され、図3(a)に示す音楽ソフトウエア・ウィンドウ200がディスプレイ8に表示される。図3(a)において210はメニューバーであり、「File」ボタン211, 「Plugins」ボタン214等、各種のメニューボタンが表示される。220はトラック表示部であり、音楽ソフトウエア420によって再生されるシーケンスデータの各トラック毎に分割された複数の「行」から構成されている。222は起動ボタン部であり、各トラックで再生されるMIDI信号ないし波形データの供給先である外部機器(MIDI音源、ミキサ、エフェクタ等)ないしソフトウエア(ソフトシンセ、ソフトエフェクタ等)のパネルウィンドウを開くための起動ボタンが、各トラック毎に設けられている。
ここで、音楽ソフトウエア420によって再生されるシーケンスデータには、各々複数トラックの演奏情報(MIDIデータ)と、波形データとを含めることができる。224はトラック種別表示部であり、各トラックのデータが波形データ(W)であるのかMIDIデータ(M)であるのかを表示する。228はトラック名表示部であり、各トラックに付与された名称(例えば音色名)を表示する。230は出力ポート表示部であり、各トラックに割り当てられた出力ポート名を表示する。240はブロック表示部であり、時間軸である横軸に対してMIDI信号ないし波形データのシーケンスデータが記録されている範囲を示すブロックを各トラック毎に表示する。250は録音再生操作部であり、シーケンスデータの録音、再生、早送り、巻戻し、停止等を指示するボタン254〜262と、タイムコードを表示するタイムコード表示部252とから構成されている。ここで、録音を行う場合は、まず、録音すべき一ないし複数のトラック((M)でも(W)でも可)を指定し、録音開始すべき位置へ時間軸カーソルを移動して録音ボタン262を操作して録音待機状態にした後、開始ボタン260を操作すれば、指定されたトラックの録音が開始される。また、再生を尾行う場合は、まず、再生開始すべき位置へ時間軸カーソルを移動した後、開始ボタン260を操作すれば、ミュートされていない全トラックの再生が開始される。そして、開始された録音や再生は、停止ボタン258を操作することにより停止することができる。
音楽ソフトウエア420が起動されると、ワークスペースプラグイン410が常駐(使用)されるように設定されていると、該ワークスペースプラグイン410が「常駐状態」で起動され、さらにワークスペースプラグイン410にプラグインされている登録プラグインも「常駐状態」で起動されることになる。本実施例においては、音楽ソフトウエア420からプラグインされているワークスペースプラグイン410が起動され、そのワークスペース設定ウィンドウ600で何れかのリモート制御プラグインが登録されたときに、該ワークスペースプラグイン410は自動的に常駐(使用)されるように設定される。すなわち、ワークスペースプラグイン410に登録プラグインが存在している場合である。なお、音楽ソフトウエア420にワークスペースプラグイン410を「使用する」/「使用しない」の区別をユーザが設定できるようにしておき、「使用する」と設定されたらワークスペースプラグイン410を常駐させるようにしてもよい。その設定は、後述するシーケンスデータファイルに保存されるようにすることが望ましい。あるいは、音楽ソフトウエア420からワークスペースプラグイン410が起動された後、そのワークスペースプラグイン410において「常駐する」旨を設定できるようにしてもよい。
3.3.1.「Plugins」ボタン214の操作に対する動作
「Plugins」ボタン214がマウスでクリックされると、図3(b)に示すプラグインメニュー270が表示される。ここには、音楽ソフトウエア420にプラグインされている各種プラグインソフトウエア(すなわち、プラグイン用フォルダに、対応するプログラムファイルの置かれているプラグイン)の名称が表示される。ここには、例えば「XG editor」、「DX editor」等、上述したリモート制御プラグインのプラグインソフトウエアも表示される。「WS manager」は上述したワークスペースプラグイン410の名称である。
音楽ソフトウェア420には、プラグイン用フォルダにプログラムファイルの置かれている全てのプラグインソフトウェアがプラグインされ、プラグインメニュー270には、これらプラグインソフトウェアの名称が列挙される。これらは、ワークスペースプラグイン410を経由することなく、音楽ソフトウエア420に直接的にプラグインされたプラグインソフトウェアであり、ワークスペースプラグイン410の登録プラグインと未登録プラグインの両方が含まれている。
プラグインメニュー270において「WS manager」が選択されると、その旨がワークスペースプラグイン410に通知され、該ワークスペースプラグイン410によってワークスペース管理ウィンドウ300がディスプレイ8上に表示される。この管理ウィンドウ300における動作は上述したスタンドアローン型ワークスペースソフトウエア430の場合と同様である。すなわち、フィールド部310に表示されたアイコンを左ダブルクリックして、当該アイコンに対応する登録プラグインのパネルウィンドウを起動する等の、既に説明した各種動作を行うことができる。
但し、音楽ソフトウエア420からワークスペースプラグイン410が起動された場合には、ワークスペースプラグイン410からの要求に応じて、音楽ソフトウエア420からワークスペースプラグイン410に対して利用可能なMIDI入出力ポートが通知される。これは、パーソナルコンピュータ100において利用可能なMIDI入出力ポートのうちいくつかは、ワークスペースプラグイン410が関知しない用途、例えば音楽ソフトウエア420に直接的にプラグインされているソフトウエア等によって使用されている可能性があるためである。従って、ワークスペースプラグイン410によって表示される設定ウィンドウ600においては、MIDI入力ポート・リストボックス626およびMIDI出力ポート・リストボックス628にリストアップされるMIDI入出力ポートは、この音楽ソフトウエア420から通知されたものに限定される。
また、プラグインメニュー270において、音楽ソフトウエア420に直接プラグインされているリモート制御プラグインが選択されると、音楽ソフトウエア420から当該プラグインが起動され、そのパネルウィンドウがディスプレイ8に表示され、ユーザは各種設定を変更することが可能になる。
3.3.2.起動ボタンの操作に対する動作
起動ボタン部222中のMIDIデータ(M)トラックに属する何れかの起動ボタンがマウスでクリックされると、図10(c)に示す起動ボタン操作イベントルーチンが起動される。図において処理がステップSP32に進むと、該トラックで再生される演奏情報の出力先であるMIDI出力ポートに基づいて、その出力ポートを演奏情報の入力元に設定している外部機器(MIDI音源)ないしソフトウェア(ソフトシンセ)が検出される。ここで、音楽ソフトウエア420に直接プラグインされたリモート制御プラグインを使用している場合、音楽ソフトウエア420がそのリモート制御プラグインに問い合わせることにより、該リモート制御プラグインに対応する外部機器がどのMIDI出力ポートの演奏情報を入力しているかを知ることができる。また、音楽ソフトウエア420がワークスペースプラグイン410を使用している場合、音楽ソフトウエア420がそのワークスペースプラグイン410に問い合わせることにより、そのワークスペースの各登録プラグインに対応する外部機器が、どのMIDI出力ポートからの演奏情報を入力しているかを知ることができる。上述したように、ワークスペースプラグイン410は、各登録プラグインとその演奏情報用のMIDI入出力ポートとの対応関係を各登録プラグインから入手することができ、入手した対応関係の情報を音楽ソフトウェア420に通知する。また、音楽ソフトウェアがソフトシンセを使用している場合、各ソフトシンセは起動時に各々専用の仮想MIDIポートを用意しているので、上記出力ポートから直ちに判断することができる。そして、外部機器が検出された場合には、当該外部機器を制御しているリモート制御プラグインが確認され、ソフトウェアが検出されたときは、対応するソフトウェア制御プラグインが確認される。
但し、当該MIDI出力ポートから出力されるMIDI信号が遠隔制御に対応しないMIDI機器等に供給される場合には、対応するプラグインは存在しないことはいうまでもない。次に、処理がステップSP34に進むと、ステップSP32の検索結果に基づいて、何らかのリモート制御プラグインないしソフトウエア制御プラグインが検索されたか否かが判定される。ここで「NO」と判定されると、本ルーチンの処理は直ちに終了する。
一方、ステップSP34において「YES」と判定されると、処理はステップSP36に進む。ここでは、検索されたプラグインはワークスペースプラグイン410の登録プラグインであるか否かが判定される。ここで「YES」と判定されると、処理はステップSP40に進み、音楽ソフトウエア420からワークスペースプラグイン410に対して、該登録プラグインに対しパネルウィンドウを表示させる指令を出力するように、指令が出力される。これに基づいて、ワークスペースプラグイン410から該登録プラグインに対してパネルウィンドウを表示させる指令が出力され、該登録プラグインによってそのパネルウィンドウがディスプレイ8上に表示される。
一方、検索されたプラグインが音楽ソフトウエア420に直接的にプラグインされている場合には、ステップSP36において「NO」と判定され、処理はステップSP38に進む。ここでは、音楽ソフトウエア420から該プラグインに対して、パネルウィンドウを表示させるように指令が出力される。これにより、該プラグインによって、そのパネルウィンドウがディスプレイ8に表示される。
3.3.3.「File」メニューの詳細
(1)「Open」が選択された場合の処理
「File」ボタン211がマウスで左クリックされると、先に図4(b)に示したものと同様の「File」メニューが表示される。ここで「Open」が選択されると、ファイルを開くためのウィンドウが表示され、ユーザは演奏情報等のシーケンスデータファイルを選択することができる。ここで、何れかのシーケンスデータファイルが選択されると、その内容が読み込まれ、上述したように録音再生操作部250において演奏情報の再生等の処理が可能になる。
ここで、本実施例においては、シーケンスデータファイルには「ワークスペース設定データ」を含めることができる。ワークスペース設定データの内容は、上述した「ワークスペース設定ファイル」と同様であり、シーケンスデータファイルにおいてワークスペースプラグインが使用(常駐)されるように設定されている場合に、該シーケンスデータファイルに含まれることになる。ワークスペース設定データが含まれていた場合にはワークスペースプラグイン410が起動され、音楽ソフトウエア420からワークスペースプラグイン410に対して、該ワークスペース設定データが供給される。該設定データが供給されると、ワークスペースプラグイン410においては、上述したワークスペースロード・ルーチン(図10(b))と同様の処理が実行される。
すなわち、供給されたワークスペース設定データが読み込まれるとともに、フィールド部310に何も表示されていない状態の管理ウィンドウ300がディスプレイ8に表示される。次に、当該ワークスペースに含まれる各リモート制御プラグインで使用されているMIDIポートが確認され(SP16)、各登録プラグインが「常駐状態」で起動されるとともにフィールド部310に対応するアイコンが表示され(SP18)、各登録プラグインのパラメータメモリにカレント・ワークスペースに応じたパラメータが書き込まれる(SP20)。そして、「自動一括同期化」がオン状態に設定されていれば、対応する外部機器に対するパラメータ送信処理が開始される(SP24)。
(2)「Save」が選択された場合の処理
また、音楽ソフトウエア420でワークスペースプラグイン410が使用(常駐)されるように設定されている場合、上記「File」ボタン211に係る「File」メニューにおいて「Save」が選択されると、音楽ソフトウエア420からワークスペースプラグイン410に対して、ワークスペースの状態を収集するように指令が出力される。これにより、ワークスペースプラグイン410においては、上述したワークスペースセーブルーチン(図10(a))と同様の処理が実行される。すなわち、各登録プラグインに対して要求を発生することにより、各登録プラグインからパラメータメモリの内容が収集され(SP2)、収集されたデータと、ワークスペース・プログラム自身のパラメータとが結合され、その結果、「ワークスペース設定データ」が作成される(SP4)。
但し、今回のように音楽ソフトウエア420からの指令に基づいてワークスペース設定データが生成された場合には、ステップSP6の処理(データを設定ファイルに書き込む)を実行する代りに、指令元のソフトウエアに対して、このワークスペース設定データを供給することもできる。音楽ソフトウエア420においては、該ワークスペース設定データがワークスペースプラグイン410から供給されると、その時点のシーケンスデータと、ワークスペース設定データとが結合され、結合結果のデータがシーケンスデータファイルとしてハードディスク24に記憶されることになる。また、ワークスペースプラグイン410が音楽ソフトウエア420から起動された場合であっても、ワークスペースプラグイン410の設定ファイルは、音楽ソフトウェア420のシーケンスデータファイルとは独立に書き出しや読み込みができる。従って、音楽ソフトウェア420のあるシーケンスデータファイルのワークスペースプラグイン410の設定を、他のシーケンスデータファイルに移すことも簡単に行える。
4.変形例
本発明は上述した実施例に限定されるものではなく、例えば以下のように種々の変形が可能である。
(1)上記実施例においては、パーソナルコンピュータ上で動作するワークスペース・プログラム、アプリケーションプログラム、リモート制御プラグイン等によって各種処理を行ったが、これらのプログラムのみをCD−ROM、フレキシブルディスク等の記録媒体に格納して頒布し、あるいは伝送路を通じて頒布することもできる。
(2)上記実施例においては、起動ボタン部222中のMIDIデータ(M)トラックに属する何れかの起動ボタンがマウスでクリックされた場合にのみ起動ボタン操作イベントルーチン(図10(c))を実行したが、波形データ(W)トラックに属する起動ボタンがマウスでクリックされた場合においても、同様の処理を実行してもよい。
(3)また、ワークスペースのフィールド部310に表示される登録プラグインに係る外部機器のアイコンは、必ずしも例示したようなアイコンではなくてもよい。例えば、アイコンのデザインは、登録プラグインに係る外部機器を模した図柄ではなく、ロゴやイメージ画像等であってもよい。また、「アイコン」はビットマップで表現されたアイコンに限らず、製品型番や商標やユーザの付与した名称等を記載した単なるボックスであってもよい。
(4)上記実施例の一括同期化ないし個別同期化の処理において、ワークスペースソフトウェア430が同期化対象の外部機器が在るか否かチェックするようになっていた(SP80ないしSP56)が、外部機器の存在を定期的に確認し、この処理中ではチェックしないようにしてもよい。また、ワークスペースソフトウェア430自身がそのチェックを行う代りに、ワークスペースソフトウェア430が各登録プラグインに対して指示を行い、これら登録プラグインにおいて制御している外部機器の存在を確認させてもよい。
(5)楽音信号用LANは、IEEE1394規格以外のネットワークで実現することもできる。例えば、図1の破線で示したような結線で、100baseTのEthernet(登録商標)上に楽音信号用LANを構築しても良い。あるいは、無線LANやUSB上で同様の楽音信号用LANを実現することも考えられる。
本発明の一実施例の音楽編集システムの結線図である。 一実施例におけるパーソナルコンピュータ100のブロック図である。 音楽ソフトウエア・ウィンドウ200を示す図である。 ワークスペース管理ウィンドウ300を示す図である。 一実施例のソフトウエアモジュールの構成を示すブロック図である。 リモート制御プラグイン・パネルウィンドウ500を示す図である。 ワークスペース設定ウィンドウ600を示す図である。 リモート制御プラグイン設定ウィンドウ650を示す図である。 同期化処理において表示される各種ウィンドウを示す図である。 CPU10において実行される各種ルーチンのフローチャートである。 CPU10において実行される各種ルーチンのフローチャートである。
符号の説明
2:通信インタフェース、4:入力装置、6:演奏操作子、8:ディスプレイ、10:CPU、12:ROM、16:バス、18:リムーバルディスクドライブ装置、20:リムーバルディスク、22:波形取込インタフェース、24:ハードディスク、26:波形出力インタフェース、28:サウンドシステム、30:RAM、100:パーソナルコンピュータ、102:USBポート、104:IEEE1394ポート、152:USBハブ、154:LANパッチベイ、156:コントローラ、158,160,162:シンセサイザ、164:エフェクタ、166,168:ミキサ、200:ウィンドウ、200:音楽ソフトウエア・ウィンドウ、210:メニューバー、211:「File」ボタン、214:「Plugins」ボタン、220:トラック表示部、222:起動ボタン部、224:トラック種別表示部、228:トラック名表示部、230:出力ポート表示部、240:ブロック表示部、250:録音再生操作部、252:タイムコード表示部、254〜262:ボタン、270:プラグインメニュー、300:管理ウィンドウ、300:ワークスペース管理ウィンドウ、302:「File」ボタン、304:「Synchronize」ボタン、305:メニューバー、310:フィールド部、320〜334:アイコン、352:「File」メニュー、354:「Synchronize」メニュー、360:アイコンメニュー、362:同期化対象項目選択ウィンドウ、402,404:リモート制御プラグイン、410:ワークスペースプラグイン、420:音楽ソフトウエア、430:ワークスペースソフトウエア、430:スタンドアローン型ワークスペースソフトウエア、500:パネルウィンドウ、500:リモート制御プラグイン・パネルウィンドウ、510:メニューバー、512:「File」ボタン、516:「Synchronize」ボタン、520:フィールド部、522,524:レベルメータ、530,532:スイッチ、534,536:フェーダ、526:チャンネル名表示部、528:回転つまみ、600:設定ウィンドウ、600:ワークスペース設定ウィンドウ、610:登録可能プラグイン表示部、612:Addボタン、614:Delボタン、616,618:優先順位指定部、620:登録プラグイン表示部、622:チェックボックス、622:自動一括同期化チェックボックス、624:セットデフォルトボタン、626:MIDI入力ポート・リストボックス、628:MIDI出力ポート・リストボックス、630:OKボタン、632:キャンセルボタン、650:設定ウィンドウ、650:リモート制御プラグイン設定ウィンドウ、652〜658:コンボボックス、660:OKボタン、662:キャンセルボタン、700:個別プラグイン同期化確認ウィンドウ、702,704:ラジオボタン、706:プラグイン名表示部、708:OKボタン、710:キャンセルボタン、720:一括同期化確認ウィンドウ、722,724:ラジオボタン、726:プラグイン名表示部、728:OKボタン、730:キャンセルボタン、740:一括同期化進捗状況表示ウィンドウ、752,754,756,758:キャンセルボタン。

Claims (11)

  1. 各々が異なる外部機器を制御する複数の遠隔制御プロセスと、これら遠隔制御プロセスを管理する管理プロセスとが通信可能に設定され、さらに該管理プロセスと所定のアプリケーションプロセスとが通信可能に設定されたコンピュータ上で実行される外部機器の制御方法であって、
    前記アプリケーションプロセスは、
    複数の外部機器に対応する複数の操作部を有する前記アプリケーションプロセスの画面をディスプレイ上に表示する第1の表示過程と、
    何れかの前記操作部に対応する操作を検出すると、前記管理プロセスに対し、操作が検出された操作部に対応する外部機器の前記遠隔制御プロセスに遠隔操作画面を表示させる表示指令を発行させる発行指令を送信する過程と
    を実行し、
    前記管理プロセスは、前記アプリケーションプロセスからの前記発行指令に応じて、当該遠隔制御プロセスに遠隔操作画面を表示させる表示指令を発行し、当該遠隔制御プロセスに送信する過程を実行し、
    前記遠隔制御プロセスは、前記管理プロセスからの表示指令に応じて、遠隔操作を行う遠隔操作画面を前記ディスプレイ上に表示する第2の表示過程を実行する
    ことを特徴とする外部機器の制御方法。
  2. 各々が異なる外部機器を制御する複数の遠隔制御プロセスと、これら遠隔制御プロセスを管理する管理プロセスとが通信可能に設定され、さらに該管理プロセスと所定のアプリケーションプロセスとが通信可能に設定されたコンピュータ上で実行される前記外部機器の制御方法であって、
    前記管理プロセスは、
    前記アプリケーションプロセスから利用可能な複数の第1群のリソースを示す情報を受け取る過程と、
    該第1群のリソースの中から、当該管理プロセスが管理している遠隔制御プロセスのためのリソースを第2群のリソースとして確保する過程と、
    前記各遠隔制御プロセスに対して、前記第2群のリソースの中から既に他の遠隔制御プロセスに使用されているリソースを除いた一または複数の第3群のリソースを示す情報を、前記各遠隔制御プロセスに対して割当可能なリソースとして通知する過程と、
    前記各遠隔制御プロセスから当該遠隔制御プロセスの使用している一または複数の第4群のリソースを示す情報を受け取る過程と
    を実行することを特徴とする外部機器の制御方法。
  3. 各々が異なる外部機器を制御する複数の遠隔制御プロセスと、これら遠隔制御プロセスを管理する管理プロセスとが通信可能に設定され、さらに該管理プロセスと所定のアプリケーションプロセスとが通信可能に設定されたコンピュータ上で実行される外部機器の制御方法であって、
    前記アプリケーションプロセスは、
    複数トラックの各々についてリソースを設定する過程と、
    再生された複数トラックの演奏情報を、各々設定されたリソースに従って出力する過程と、
    前記管理プロセスから、前記各遠隔制御プロセスが使用している一または複数の第1群のリソースを示す情報を受け取る過程と、
    複数トラックの何れかのトラックについて遠隔操作画面の表示が指示されたのに応じ、当該トラックに設定されたリソースと前記管理プロセスから受け取った情報とに基づいて当該トラックの演奏情報が供給されている外部機器を判別し、前記管理プロセスに対し、判別された外部機器に対応する遠隔制御プロセスである指定遠隔制御プロセスに前記遠隔操作画面を表示させる表示指令を発行させる発行指令を送信する過程と
    を実行し、前記管理プロセスは、
    前記各遠隔制御プロセスから当該遠隔制御プロセスの使用している第1群のリソースを示す情報を受け取る過程と、
    前記アプリケーションプロセスからの前記発行指令に応じて、前記指定遠隔制御プロセスに対して前記遠隔操作画面を表示させる表示指令を発行し、前記指定遠隔制御プロセスに送信する過程と
    を実行し、前記遠隔制御プロセスは、
    前記管理プロセスからの前記表示指令に応じて、遠隔操作を行う前記遠隔操作画面をディスプレイ上に表示する遠隔操作画面表示過程
    を実行することを特徴とする外部機器の制御方法。
  4. 各々が異なる外部機器を制御する複数の遠隔制御プロセスと、これら遠隔制御プロセスを管理する管理プロセスとが通信可能に設定され、さらに該管理プロセスと所定のアプリケーションプロセスとが通信可能に設定されたコンピュータ上で実行される前記外部機器の制御方法であって、
    前記アプリケーションプロセスは、前記管理プロセスに対して、該管理プロセスが管理している何れかの前記遠隔制御プロセスにおいて実行すべき動作を指定する動作指令を発行させる発行指令を送信する過程を実行し、
    前記管理プロセスは、前記アプリケーションプロセスからの前記発行指令に応じて、当該遠隔制御プロセスに前記実行すべき動作を指定する動作指令を発行して前記遠隔制御プロセスに転送する過程を実行し、
    前記遠隔制御プロセスは、前記管理プロセスからの動作指令に基づいて、前記実行すべき動作を実行する
    ことを有することを特徴とする外部機器の制御方法。
  5. 前記アプリケーションプロセスは、さらに、
    所定のセーブ指示操作を検出すると、前記管理プロセスに対し、現在の状態の情報を要求する要求指令を送信する過程と、
    該要求指令に応じて前記管理プロセスから供給された現在の状態の情報に対して、該アプリケーションプロセスにおいて保有するデータを結合し、この結合結果を一のファイルとして記録媒体に記録する過程と
    を実行し、前記管理プロセスは、さらに、
    前記アプリケーションプロセスからの前記要求指令に応答して、前記各遠隔制御プロセスから当該遠隔制御プロセスの最新の状態に対応する第1のパラメータを収集する過程と、
    当該管理プロセスの最新の状態に対応する第2のパラメータと収集された前記第1のパラメータとを結合し、この結合結果を前記アプリケーションソフトに対して前記現在の状態の情報として供給する過程と
    を実行する
    ことを特徴とする請求項4記載の外部機器の制御方法。
  6. 前記アプリケーションプロセスは、さらに、
    所定のロード指示操作を検出すると、前記管理プロセスおよび前記複数の遠隔制御プロセスの状態を規定する設定データを含む一のファイルを読み出す過程と、
    前記管理プロセスに対して、前記設定データを供給する過程と
    を実行し、前記管理プロセスは、さらに、
    前記設定データにパラメータが規定されている遠隔制御プロセスを起動する過程と、
    これら起動された遠隔制御プロセスに対して、前記設定データに規定されているパラメータを供給する過程と
    を実行する
    ことを特徴とする請求項4記載の外部機器の制御方法。
  7. 前記実行すべき動作には、前記遠隔制御プロセスと該遠隔制御プロセスが制御している外部機器とがその現在の状態を相互に一致させる同期化動作、または、前記遠隔制御プロセスが前記外部機器の遠隔操作を行うための遠隔操作画面をディスプレイ上に表示させる表示動作のうちの少なくとも一方の動作が含まれることを特徴とする請求項4記載の外部機器の制御方法。
  8. 前記各遠隔制御プロセスは、前記アプリケーションプロセスにより直接管理されることも可能であることを特徴とする請求項1ないし7の何れかに記載の外部機器の制御方法。
  9. 前記管理プロセスは、前記コンピュータの記憶装置に記憶されている遠隔制御プログラムに基き、当該管理プロセスで管理する遠隔制御プロセスを登録する過程を実行することを特徴とする請求項1ないし7の何れかに記載の外部機器の制御方法。
  10. 請求項1ないし9の何れかに記載の外部機器の制御方法を実行することを特徴とする外部機器の制御装置。
  11. 請求項1ないし9の何れかに記載の外部機器の制御方法を処理装置に実行させることを特徴とするプログラム。
JP2004008103A 2004-01-15 2004-01-15 外部機器の制御方法、外部機器の制御装置およびプログラム Expired - Fee Related JP4362768B2 (ja)

Priority Applications (6)

Application Number Priority Date Filing Date Title
JP2004008103A JP4362768B2 (ja) 2004-01-15 2004-01-15 外部機器の制御方法、外部機器の制御装置およびプログラム
EP05100018.0A EP1555772A3 (en) 2004-01-15 2005-01-04 Remote control method of external devices
US11/030,830 US20050159832A1 (en) 2004-01-15 2005-01-07 Remote control method of external devices
CNB200510004314XA CN100342341C (zh) 2004-01-15 2005-01-14 外部设备的远程控制方法和装置
US12/505,384 US8935444B2 (en) 2004-01-15 2009-07-17 Remote control method of external devices
US12/855,554 US20100306667A1 (en) 2004-01-15 2010-08-12 Remote control method of external devices

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2004008103A JP4362768B2 (ja) 2004-01-15 2004-01-15 外部機器の制御方法、外部機器の制御装置およびプログラム

Publications (2)

Publication Number Publication Date
JP2005204052A true JP2005204052A (ja) 2005-07-28
JP4362768B2 JP4362768B2 (ja) 2009-11-11

Family

ID=34821567

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2004008103A Expired - Fee Related JP4362768B2 (ja) 2004-01-15 2004-01-15 外部機器の制御方法、外部機器の制御装置およびプログラム

Country Status (1)

Country Link
JP (1) JP4362768B2 (ja)

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007193291A (ja) * 2005-11-18 2007-08-02 Yamaha Corp ネットワークを介して接続された複数の機器で構成される音楽システムの制御装置及び該音楽システムを制御するための統合的なソフトウェアプログラム
JP2007206338A (ja) * 2006-02-01 2007-08-16 Yamaha Corp 電子楽器に対するデータ割当て設定装置及びプログラム
JP2008166920A (ja) * 2006-12-27 2008-07-17 Yamaha Corp 音響信号処理システム
JP2008227819A (ja) * 2007-03-12 2008-09-25 Yamaha Corp ミキシングシステム
JP2008227763A (ja) * 2007-03-09 2008-09-25 Yamaha Corp デジタルミキサ
JP2008233335A (ja) * 2007-03-19 2008-10-02 Yamaha Corp 音楽アプリケーション装置、電子楽器、及びプログラム
JP2009217909A (ja) * 2008-03-11 2009-09-24 Yamaha Corp 音響信号処理システム及びプログラム
JP2009218939A (ja) * 2008-03-11 2009-09-24 Yamaha Corp 複数の音響機器と、該複数の音響機器を制御するための少なくとも1台の制御装置とを接続したネットワークにより構成される音響システム
US8498724B2 (en) 2007-03-09 2013-07-30 Yamaha Corporation Digital mixer

Cited By (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007193291A (ja) * 2005-11-18 2007-08-02 Yamaha Corp ネットワークを介して接続された複数の機器で構成される音楽システムの制御装置及び該音楽システムを制御するための統合的なソフトウェアプログラム
JP2007206338A (ja) * 2006-02-01 2007-08-16 Yamaha Corp 電子楽器に対するデータ割当て設定装置及びプログラム
JP4687480B2 (ja) * 2006-02-01 2011-05-25 ヤマハ株式会社 電子楽器に対するデータ割当て設定装置及びプログラム
JP2008166920A (ja) * 2006-12-27 2008-07-17 Yamaha Corp 音響信号処理システム
JP2008227763A (ja) * 2007-03-09 2008-09-25 Yamaha Corp デジタルミキサ
US8498724B2 (en) 2007-03-09 2013-07-30 Yamaha Corporation Digital mixer
JP2008227819A (ja) * 2007-03-12 2008-09-25 Yamaha Corp ミキシングシステム
JP2008233335A (ja) * 2007-03-19 2008-10-02 Yamaha Corp 音楽アプリケーション装置、電子楽器、及びプログラム
JP2009217909A (ja) * 2008-03-11 2009-09-24 Yamaha Corp 音響信号処理システム及びプログラム
JP2009218939A (ja) * 2008-03-11 2009-09-24 Yamaha Corp 複数の音響機器と、該複数の音響機器を制御するための少なくとも1台の制御装置とを接続したネットワークにより構成される音響システム

Also Published As

Publication number Publication date
JP4362768B2 (ja) 2009-11-11

Similar Documents

Publication Publication Date Title
US8935444B2 (en) Remote control method of external devices
CN101046953B (zh) 音乐处理设备及其管理方法
US7620468B2 (en) Control apparatus for music system comprising a plurality of equipments connected together via network, and integrated software for controlling the music system
EP2129015B1 (en) Audio signal processing system
JP2008166918A (ja) 音響信号処理システム
JP2009133928A (ja) 電子音楽システム及びプログラム
JP4655722B2 (ja) ネットワーク接続された複数の機器の動作及び接続設定のための統合プログラム
JP4362768B2 (ja) 外部機器の制御方法、外部機器の制御装置およびプログラム
JP2007293312A (ja) 音楽処理装置
JP4823483B2 (ja) 外部機器の制御方法、外部機器の制御装置およびプログラム
US7414634B2 (en) Audio signal processing system
JP5098713B2 (ja) 音響信号処理システム及びプログラム
JP4823482B2 (ja) 外部機器の制御方法、外部機器の制御装置およびプログラム
JP5152151B2 (ja) リモート制御システムおよびリモート制御方法
JP5152152B2 (ja) リモート制御システムおよびリモート制御方法
JP2007164120A (ja) ネットワークを介して接続された複数の機器で構成される音楽システムの制御装置及び該音楽システムを制御するための統合的なソフトウェアプログラム
JP5338416B2 (ja) 音響装置
JP2008166917A (ja) 音響信号処理システム
JP4161962B2 (ja) 音響信号処理システム及びプログラム
JP4952023B2 (ja) ネットワークを介して接続された複数の機器で構成される音楽システムの制御装置及び該音楽システムを制御するための統合的なソフトウェアプログラム
JP3988730B2 (ja) プログラム及び音響信号処理装置
JP2005151453A (ja) 構成要素データの管理方法
JP2008166920A (ja) 音響信号処理システム
JP4957324B2 (ja) 音楽処理装置
JP5206038B2 (ja) 音響信号処理システム及びプログラム

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20061120

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20061205

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20070205

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20070403

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20070615

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20090805

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120828

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130828

Year of fee payment: 4

LAPS Cancellation because of no payment of annual fees