JP2001166772A - 自動演奏装置、機能拡張装置、及びこれらの装置に関係したプログラムを記録したコンピュータ読取り可能な記録媒体 - Google Patents

自動演奏装置、機能拡張装置、及びこれらの装置に関係したプログラムを記録したコンピュータ読取り可能な記録媒体

Info

Publication number
JP2001166772A
JP2001166772A JP34678499A JP34678499A JP2001166772A JP 2001166772 A JP2001166772 A JP 2001166772A JP 34678499 A JP34678499 A JP 34678499A JP 34678499 A JP34678499 A JP 34678499A JP 2001166772 A JP2001166772 A JP 2001166772A
Authority
JP
Japan
Prior art keywords
performance data
series
performance
storage area
program
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
JP34678499A
Other languages
English (en)
Other versions
JP3614061B2 (ja
Inventor
Yasuhiko Okamura
康彦 岡村
Gureguson Garry
グレグソン ギャリィ
Kenichiro Saito
謙一良 齋藤
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 JP34678499A priority Critical patent/JP3614061B2/ja
Priority to GB0028979A priority patent/GB2359657B/en
Priority to GB0122170A priority patent/GB2364161B/en
Priority to US09/726,715 priority patent/US6620993B2/en
Publication of JP2001166772A publication Critical patent/JP2001166772A/ja
Priority to US10/209,713 priority patent/US6660924B2/en
Application granted granted Critical
Publication of JP3614061B2 publication Critical patent/JP3614061B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10HELECTROPHONIC MUSICAL INSTRUMENTS; INSTRUMENTS IN WHICH THE TONES ARE GENERATED BY ELECTROMECHANICAL MEANS OR ELECTRONIC GENERATORS, OR IN WHICH THE TONES ARE SYNTHESISED FROM A DATA STORE
    • G10H1/00Details of electrophonic musical instruments
    • G10H1/0033Recording/reproducing or transmission of music for electrophonic musical instruments
    • G10H1/0041Recording/reproducing or transmission of music for electrophonic musical instruments in coded form
    • G10H1/0058Transmission between separate instruments or between individual components of a musical system
    • G10H1/0066Transmission between separate instruments or between individual components of a musical system using a MIDI interface
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10HELECTROPHONIC MUSICAL INSTRUMENTS; INSTRUMENTS IN WHICH THE TONES ARE GENERATED BY ELECTROMECHANICAL MEANS OR ELECTRONIC GENERATORS, OR IN WHICH THE TONES ARE SYNTHESISED FROM A DATA STORE
    • G10H2240/00Data organisation or data communication aspects, specifically adapted for electrophonic musical tools or instruments
    • G10H2240/011Files or data streams containing coded musical information, e.g. for transmission
    • G10H2240/016File editing, i.e. modifying musical data files or streams as such
    • G10H2240/021File editing, i.e. modifying musical data files or streams as such for MIDI-like files or data streams

Landscapes

  • Physics & Mathematics (AREA)
  • Engineering & Computer Science (AREA)
  • Acoustics & Sound (AREA)
  • Multimedia (AREA)
  • Electrophonic Musical Instruments (AREA)

Abstract

(57)【要約】 【課題】 自動演奏装置において、汎用的かつ簡単に機
能追加を実現する。 【解決手段】 シーケンサモジュールは、ステップ100
〜140の処理により、外部からの一連の演奏データを演
奏データ記憶領域50に記録すると同時に再生したり、同
記憶領域50に記憶されている一連の演奏データを再生す
る。これらのステップ100〜140からなる一連の処理の中
に、各種キュー処理200,300,400を設ける。各種キュー
処理200,300,400は、一連の演奏データのうちの一部の
演奏データを一時記憶領域200a,300a,400aに一時的に記
憶するとともに、同記憶領域200a,300a,400aに記憶した
一部の演奏データに関するポインタを引数として機能拡
張モジュールとしての各種プラグインプログラムに渡し
て、同プログラムによる一時記憶領域200a,300a,400aに
対する演奏データの読み出し又は書き込みを許容する。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、時間経過にしたが
って一連の処理により一連の演奏データを記録又は再生
する自動演奏装置に係り、特に汎用的かつ簡単に機能追
加を可能とする自動演奏装置及び同装置に適用される機
能拡張装置、並びにこれらの装置に関係したプログラム
を記録したコンピュータ読取り可能な記録媒体に関す
る。
【0002】
【従来の技術】従来から、電子楽器、パーソナルコンピ
ュータなどの機器に組み込んだり、単体として設けたシ
ーケンサ等の自動演奏装置はよく知られている。この自
動演奏装置は、外部から与えられた演奏データを演奏デ
ータ記憶手段に記憶したり、演奏データ記憶手段に記憶
されている演奏データを再生したりする機能を備えてい
る。また、自動演奏装置は編集機能も備えており、編集
機能を用いて演奏データ記憶手段に記憶されている演奏
データを編集することも可能である。
【0003】
【発明が解決しようとする課題】上記のような自動演奏
装置において、外部から与えられた演奏データを演奏デ
ータ記憶手段に記憶したり再生したりする際、又は演奏
データ記憶手段に記憶されている演奏データを再生した
りする際、一連の流れの中にある演奏データをモニタし
たり、同演奏データに他の演奏データを追加したり、同
演奏データを加工したりする機能拡張が要望されてい
る。しかし、既存の自動演奏装置のシステム構成、演奏
データの構造などは、製造者毎に異なっていたり、製品
毎に異なっており、機能拡張を実現できるのは、自動演
奏装置のシステム構成、演奏データの構造などを熟知し
た者に限られていた。したがって、既存の自動演奏装置
に追加機能を付加して機能を拡張しようとしても、機能
の拡張を簡単に行うことはできず、自動演奏装置の機能
も限られたものであった。また、既存の自動演奏装置の
操作方法も種々異なり、ユーザは、製造者毎、製品毎な
どの操作方法を余儀なくされていた。このことは、演奏
データ記憶手段に記憶されている演奏データを編集しよ
うとする場合も同じであり、同演奏データを種々の方法
で編集することができなかった。
【0004】
【発明の概略】本発明は、上記問題に対処するためにな
されたもので、その目的は、汎用的かつ簡単に機能追加
を可能とする自動演奏装置及び同装置に適用される機能
拡張装置、並びにこれらの装置に関係したプログラムを
記録したコンピュータ読取り可能な記録媒体を提供する
ことにある。
【0005】上記目的を達成するために、本発明の構成
上の特徴は、時間経過にしたがった一連の処理により一
連の演奏データを記録又は再生する自動演奏装置におい
て、前記一連の処理中に一連の演奏データのうちの一部
の演奏データを所定の記憶領域に一時的に記憶するとと
もに、前記記憶領域に記憶した一部の演奏データに関す
るポインタを引数として機能拡張モジュールに渡し、同
機能拡張モジュールによる前記記憶領域からの演奏デー
タの読み出し又は同記憶領域への演奏データの書き込み
を許容するキュー手段を設けたことにある。
【0006】上記のように構成した本発明の構成上の特
徴によれば、記憶領域に記憶した一部の演奏データに関
するポインタを引数として受け取るとともに、同記憶領
域から演奏データを読み出す又は同記憶領域へ演奏デー
タを書き込む機能を有する機能拡張モジュール(プログ
ラム構成の手段でも、ハード構成の手段でもよい)を用
意しさえすれば、この機能拡張モジュールを自動演奏装
置に適用かつ付加することができる。そして、この機能
拡張モジュールは、自動演奏装置による一連の演奏デー
タを記録又は再生中に、同一連の演奏データを受け取っ
たり、同一連の演奏データ中に新たな演奏データを付加
したりすることができるようになるので、外部から与え
られた演奏データを演奏データ記憶手段に記憶したり再
生したりする際、又は演奏データ記憶手段に記憶されて
いる演奏データを再生したりする際、一連の流れの中に
ある演奏データをモニタしたり、同演奏データに他の演
奏データを追加したり、同演奏データを加工したりする
機能拡張を汎用的かつ簡単に行うことができるようにな
る。
【0007】また、別の観点から見ると、本発明の構成
上の特徴は、時間経過にしたがった一連の処理により一
連の演奏データを記録又は再生する自動演奏装置に適用
される機能拡張装置であって、前記一連の処理中に所定
の記憶領域に一時的に記憶される一連の演奏データのう
ちの一部の演奏データに関するポインタを引数として受
け取り、同受け取ったポインタを用いて前記記憶領域か
ら演奏データを読み出す又は同記憶領域へ演奏データを
書き込むデータ授受手段を備えたことにある。
【0008】これによれば、前記のような自動演奏装置
に機能拡張装置を適用かつ付加することができ、前記の
ような種々の機能拡張を汎用的かつ簡単に行うことがで
きるようになる。
【0009】また、本発明の他の構成上の特徴は、演奏
データ記憶手段に記憶されている一連の演奏データを3
層構造で管理できる自動演奏装置において、前記一連の
演奏データのうちから機能拡張モジュールによって前記
3層構造に従った関数を用いて指定された一部の演奏デ
ータを前記演奏データ記憶手段から読み出して前記機能
拡張モジュールに渡すとともに、前記機能拡張モジュー
ルから前記3層構造に従った演奏データを受け取って前
記演奏データ記憶手段に記憶されている一連の演奏デー
タ中に組み込むインターフェース手段を備えたことにあ
る。
【0010】上記のように構成した本発明の他の構成上
の特徴によれば、インターフェース手段に対して、一連
の演奏データのうちの一部の演奏データを3層構造に従
った関数を用いて指定するとともに演奏データの受け渡
し機能を有する機能拡張モジュール(プログラム構成の
手段でも、ハード構成の手段でもよい)を用意しさえす
れば、この機能拡張モジュールを自動演奏装置に適用か
つ付加することができる。そして、この機能拡張モジュ
ールは、自動演奏装置の演奏データ記憶手段に記憶され
ている一連の演奏データを受け取ったり、同一連の演奏
データ中に新たな演奏データを付加したりすることがで
きるようになるので、演奏データ記憶手段に記憶されて
いる一連の演奏データをモニタしたり、同演奏データに
他の演奏データを追加したり、同演奏データを加工した
りする機能拡張を汎用的かつ簡単に行うことができるよ
うになる。
【0011】また、別の観点から見ると、本発明の他の
構成上の特徴は、演奏データ記憶手段に記憶されている
一連の演奏データを3層構造で管理できる自動演奏装置
に適用される機能拡張装置であって、前記一連の演奏デ
ータのうちの一部の演奏データを前記3層構造に従った
関数を用いて指定し、同指定した一部の演奏データを前
記自動演奏装置から受け取り、同受け取った一部の演奏
データを加工し、かつ同加工した一部の演奏データを前
記3層構造に従ったフォーマットで前記自動演奏装置に
渡すようにしたことにある。
【0012】これによれば、前記のような自動演奏装置
に機能拡張装置を適用かつ付加することができ、前記の
ような種々の機能拡張を汎用的かつ簡単に行うことがで
きるようになる。
【0013】さらに、本発明の他の構成上の特徴は、前
述した本発明の各種機能を実現するプログラムを記録し
たコンピュータ読取り可能な記録媒体にある。これによ
れば、電子楽器、パーソナルコンピュータ、シーケンサ
などの各種機器に前記プログラムをインストールした
り、記録媒体自体を組み込んだりすれば、前記各種機能
が達成されるので、前記各種機器に前述した各種拡張機
能を汎用的かつ簡単に持たせることができる。
【0014】
【発明の実施の形態】以下、本発明の一実施形態を図面
を用いて説明すると、図1は本発明をパーソナルコンピ
ュータPC1に適用した実施形態における各種機器の接
続図を示し、図2はパーソナルコンピュータPC1を詳
細に表した前記と同様な接続図を示している。
【0015】パーソナルコンピュータPC1は、後述す
るシーケンサプログラム及びプラグインプログラムがイ
ンストールされて本発明に係る自動演奏装置(後述にお
いてはシーケンサモジュールとして説明)として機能す
るとともに、本発明に係る機能拡張装置(後述において
は機能拡張モジュールとして説明)として機能する。パ
ーソナルコンピュータPC1には、電子楽器EMI、シ
ーケンサSQ及び他のパーソナルコンピュータPC2が
接続されている。これらの電子楽器EMI、シーケンサ
SQ及び他のパーソナルコンピュータPC2は、既存の
ものでよく、パーソナルコンピュータPC1に対して一
連の演奏データをミディー(MIDI)フォーマットに
したがって送受信可能である。なお、シーケンサプログ
ラム及びプラグインプログラムをインストールさせて両
プログラムを動作させることが可能な機器であれば、パ
ーソナルコンピュータPC1に代えて、電子楽器、シー
ケンサなどの各種機器を用いることもでき、また前記両
プログラムがフラッシュROMにより提供され得る各種
機器であってもよい。
【0016】パーソナルコンピュータ装置PC1は、本
体部11、キーボード12及びマウス13などの入力装
置、表示器14などからなる一般的なものである。本体
部11の正面にはドライブユニット15が組み付けられ
ているとともに、その裏面には、電子楽器EMI、シー
ケンサSQ及び他のパーソナルコンピュータPC2など
が接続される接続端子が設けられている。ドライブユニ
ット15は、外部記憶装置としてのコンパクトディス
ク、フレキシブルディスクなどが装着されるようになっ
ており、同外部記憶装置に対してプログラム及びデータ
の読み出し及び書き込みを行うものである。
【0017】パーソナルコンピュータPCの本体部11
に組み込まれた内部回路装置は、バス20に共通に接続
されたミディーインターフェース回路21、操作子スイ
ッチ回路22、表示制御回路23及び音源回路24を備
えている。なお、このバス20には、前記ドライブユニ
ット15も接続されている。
【0018】ミディーインターフェース回路21は、前
記裏面に設けられた接続端子を介して電子楽器EMI、
シーケンサSQ及び他のパーソナルコンピュータPC2
に対してミディーフォーマットにしたがった演奏データ
の受け渡しを可能とするものである。操作子スイッチ回
路22は、キーボード12及びマウス13に対応したス
イッチ群などからなり、同キーボード12及びマウス1
3の操作に応じた信号を出力する。表示制御回路23
は、表示器14の表示状態を制御するものである。音源
回路24は、バス20を介して供給される演奏データ
(音色データ、音量データ、音高データ、キーオン、キ
ーオフデータなど)に応じた楽音信号をそれぞれ形成し
て出力する複数の音源チャンネル、各音源チャンネルか
らの楽音信号を合成してして出力する出力回路などから
なる。この音源回路24には、前記合成出力された楽音
信号を発音するためのアンプ25及びスピーカ26が接
続されている。
【0019】また、バス20には、このパーソナルコン
ピュータ装置PC1の動作を制御するためのコンピュー
タ本体部を構成するCPU31,ROM32及びRAM
33が接続されているとともに、内部記憶装置34も接
続されている。CPU31は、各種プログラムの実行に
より、演奏データに対して各種処理を施したり、楽音信
号の発生を制御したりする。ROM32及びRAM33
は、前記プログラム及び各種データを記憶するものであ
る。内部記憶装置34は、ハードディスク、同ディスク
のためのドライブ装置などで構成されており、大容量の
メモリ装置として機能する。
【0020】次に、上記のように構成した実施形態の動
作を説明する。まず、ユーザは、シーケンサプログラ
ム、及びミディーモニタ、プレイバック、非同期、編集
などの各種プラグインプログラムを記録したコンパクト
ディスク、フレキシブルディスクなどの外部記録媒体を
用意して、同外部記録媒体をドライブユニットに装着す
る。そして、前記各種プログラムをRAM33又は内部
記憶装置34にインストールする。なお、これらのプロ
グラムをROM32に予め記憶させておいたり、内部記
憶装置34に記憶させておいたり、パーソナルコンピュ
ータPC2がフラッシュROMなどを装着できるもので
あれば、前記各種プログラムを記録したフラッシュRO
Mなどを装着するようにしてもよい。
【0021】前記インストール後、ユーザは、シーケン
サプログラムを起動させるとともに、必要な各種プラグ
インプログラムの起動準備をしたり、起動させたりす
る。このシーケンサプログラムは、オンライン処理ルー
チンとオフライン処理ルーチンとを備えている。オンラ
イン処理ルーチンは、外部から演奏データをRAM33
又は内部記憶装置34内に設けた演奏データ記憶領域5
0に記録するとともに、楽音として再生したり、同演奏
データ記憶領域50に記憶されている一連の演奏データ
を楽音として再生している間、すなわち自動演奏の作動
中に、プラグインプログラムの実行を許容するものであ
る。オフライン処理ルーチンは、自動演奏の非作動中
(停止中)にプラグインプログラムの実行を許容するも
のである。以下、これらのオンライン処理とオフライン
処理とに分けて説明する。
【0022】a.オンライン処理 まず、オンライン処理について図3の作動フロー図を用
いて説明すると、同処理ルーチンは、ステップ100の
外部入力処理、ステップ110の記録/再生処理、ステ
ップ120,130のトラック処理、及びステップ14
0の外部/音源出力処理からなる従来からよく知られて
いる処理に、ステップ200のインプットキュー処理、
ステップ300のプレイバックキュー処理、及びステッ
プ300のアウトプットキュー処理を加えたものであ
る。
【0023】ステップ100の外部入力処理は、電子楽
器EMI、シーケンサSQ、パーソナルコンピュータP
C2などの外部接続機器から楽曲の進行にしたがった時
系列演奏データがミディーインターフェース回路21に
供給されると、これらの演奏データをシーケンサモジュ
ール(シーケンサプログラムにより実現される自動演奏
装置又はシーケンサの意味)内で処理するために、同モ
ジュール内に取り込むものである。ステップ110の記
録/再生処理は、前記外部から取り込んだ演奏データを
演奏データ記憶領域50に記録すると同時に、同演奏デ
ータの再生のために次のステップ120のトラック処理
にプログラムを進めたり、演奏データ記憶領域50に記
憶されている一連の演奏データを楽曲の進行にしたがっ
て順次読み出して、同読み出した演奏データの再生のた
めに次のステップ120のトラック処理にプログラムを
進めたりする。
【0024】ステップ120,130のトラック処理
は、各トラックの演奏データを再生するか否か、外部へ
出力するか否かを各トラック毎に制御したり、各トラッ
クの演奏データを別のトラックの演奏データに変更した
りする。ここで、演奏データのフォーマットについて若
干説明を加えておくと、演奏データは、図4に示すよう
に、トラック、ブロック、イベントデータの3層構造に
より規定されている。トラックは、メロディー、コード
伴奏音、ベース伴奏音、リズム音(打楽器音)などの各
系列を示すもので、前述した音源回路24内の一つ若し
くは複数の音源チャンネルに対応するものである。した
がって、前記トラック処理は、各系列音の発音又は出力
の有無を意味したり、音源チャンネルの変更を意味す
る。
【0025】ブロックは、各トラック内におけるフレー
ズ、小節などの所定期間に渡る複数のイベントデータか
らなる。イベントデータは、発生楽音の音色及び音高、
楽音の発生開始及び終了をそれぞれ表すキーオンデータ
及びキーオフデータなど個々の楽音の発生を制御するデ
ータである。そして、演奏データ列は、図5に示すよう
に、前回の演奏イベントからの相対時間を表すタイミン
グデータに続いて、一つ若しくは同時に生じた複数の演
奏イベントに対応した複数のイベントデータが時系列的
に配置されたものである。なお、図5に示すイベントデ
ータには、トラック番号及びブロック番号が付加されて
いて、各イベントデータが属するトラック及びブロック
が識別できるようになっている。なお、各イベントデー
タにトラック番号及びブロック番号が付加されていなく
ても、同各イベントデータのトラック及びブロックが識
別できるようなフォーマットであれば、すなわち演奏デ
ータ列に対して外部から見て前記3層構造の演奏データ
が認識できるようになっていれば、いかなるフォーマッ
トでもかまわない。
【0026】ステップ140の外部/音源出力処理は、
ミディーインターフェース回路21を介して電子楽器E
MI、シーケンサSQ、パーソナルコンピュータPC2
などのパーソナルコンピュータPC1に接続した各種機
器に演奏データを出力したり、演奏データを音源回路2
4に出力して同演奏データに対応した楽音信号を発生さ
せたりするものである。
【0027】ステップ200のインプットキュー処理
は、本発明の一つのキー手段に対応するもので、ステッ
プ100の外部入力処理とステップ110の記録/再生
処理との間に介装されていて、同外部入力処理により外
部から入力される一連の演奏データを順次一部の演奏デ
ータずつRAM33内に設けた一時記憶領域200aに
一時的に記憶するとともに、同記憶した一部の演奏デー
タに関するポインタを引数として機能拡張モジュールと
してのプラグインプログラムに渡すとともに同プログラ
ムをコールし、同プログラムによる一時記憶領域200
aからの演奏データの読み出し及び一時記憶領域200
aへの演奏データの書き込みを許容する。また、逆に、
機能拡張モジュールとしてのプラグインプログラムが、
共通の引数を渡してインプットキュー処理をコールする
こともできるようになっている。なお、前述したステッ
プ110の記録/再生処理においては、ステップ200
のインプットキュー処理により一時記憶領域200aに
一時的に記憶されている演奏データを読み出して記録及
び再生の処理を実行することになる。
【0028】このインプットキュー処理の具体例の一つ
を説明すると、図3及び図6は、シーケンサプログラム
に対してミディーモニタプラグインプログラムを付加し
た動作フローを示している。ステップ200のインプッ
トキュー処理においては、ステップ202にて、前記ス
テップ100の外部入力処理により新たな演奏データが
入力されたか否か、すなわち入力イベントデータがある
か否かを判定する。入力イベントデータがあれば、ステ
ップ202にて「YES」と判定して、ステップ204
にて、入力イベントデータ(入力された演奏データ)を
一時記憶領域200aに書き込んで同領域200aに入
力イベントデータを順次積み上げていく。なお、一時記
憶領域200aが入力イベントデータで満たされれば、
最も古い入力イベントデータが廃棄されていく。入力イ
ベントデータがなければ、ステップ202にて「NO」
と判定して、プログラムをステップ120に進める。
【0029】また、インプットキュー処理においては、
このステップ202,204の処理と並行して、ステッ
プ210〜220からなる処理を所定の短時間毎に繰り
返し実行している。ステップ212の時間カウント値T
M1の減算処理、ステップ214の時間カウント値TM
1と「0」との比較によるタイムアップ検出処理、及び
ステップ216の時間カウント値TM1に対する所定値
TM0の設定処理により、所定値TM0に対応した所定
時間の経過の計測を行う。そして、前記所定時間の経過
毎に、ステップ218にて、前記一時記憶領域200a
に記憶した入力イベントデータに関するポインタを引数
としてミディーモニタプラグインプログラムをコール、
すなわち前記ポインタをミディーモニタプラグインプロ
グラムに渡して同プログラムの起動を要求する。
【0030】このミディーモニタプラグインプログラム
の実行は前記コールによりステップ250にて起動さ
れ、ステップ252にて前記一時記憶領域200aに記
憶した入力イベントデータ(入力された演奏データ)に
関するポインタを取得する。そして、ステップ254に
て前記取得したポインタに基づいて一時記憶領域200
aに記憶されている入力イベントデータを読み出し、ス
テップ256にて前記読み出したイベントデータに基づ
いて表示制御回路23に同データに対応した表示制御信
号を出力して、ステップ258にてこのミディーモニタ
プラグインプログラムの実行を終了する。表示制御回路
23は、表示器14を制御して、同表示器14にて前記
入力イベントデータに対応した音符、音符を表す文字な
どを表示する。これにより、ユーザは、シーケンサプロ
グラムのステップ100の外部入力処理によって外部か
ら入力した演奏データを表示器14にてモニタすること
ができる。
【0031】ステップ300のプレイバックキュー処理
も、本発明の一つのキー手段に対応するもので、ステッ
プ120,130の両トラック処理間に介装されてい
て、ステップ120にて前述のトラック処理された一連
の演奏データを一部の演奏データずつ順次RAM33内
に設けた一時記憶領域300aに一時的に記憶するとと
もに、同記憶した一部の演奏データに関するポインタを
引数として機能拡張モジュールとしてのプラグインプロ
グラムに渡すとともに同プログラムをコールし、同プロ
グラムによる一時記憶領域300aからの演奏データの
読み出し及び一時記憶領域300aへの演奏データの書
き込みを許容する。また、逆に、機能拡張モジュールと
してのプラグインプログラムが、共通の引数を渡してプ
レイバックキュー処理をコールすることもできるように
なっている。なお、前述したステップ130のトラック
処理においては、ステップ300のプレイバックキュー
処理により一時記憶領域300aに一時的に記憶されて
いる演奏データを読み出してトラック処理することにな
る。
【0032】このプレイバックキュー処理の具体例の一
つを説明すると、図3及び図7は、シーケンサプログラ
ムに対してプレイバックプラグインプログラムを付加し
た動作フローを示している。ステップ300のプレイバ
ックキュー処理においては、ステップ302にて、前記
ステップ120の記録/再生処理により外部から入力さ
れ又は演奏データ記憶領域50から読み出されて再生さ
れる演奏データがあるか否か、すなわち再生イベントデ
ータがあるか否かを判定する。再生イベントデータがあ
れば、ステップ302にて「YES」と判定して、ステ
ップ304にて、前記再生イベントデータ(再生される
演奏データ)を一時記憶領域300aに書き込んで同領
域300aに再生イベントデータを順次積み上げてい
く。なお、この場合も、一時記憶領域300aが再生イ
ベントデータで満たされれば、最も古い再生イベントデ
ータが廃棄されていく。再生イベントデータがなけれ
ば、ステップ302にて「NO」と判定して、プログラ
ムをステップ130に進める。
【0033】また、プレイバックキュー処理において
は、このステップ302,304の処理と並行して、ス
テップ310〜320からなる処理を所定の短時間毎に
繰り返し実行している。これらのステップ310〜32
0の処理においては、前記ステップ212〜216の処
理と同様なステップ312〜316の処理により、時間
カウント値TM2を用いて所定時間の経過を計測し、所
定時間の経過毎に、ステップ318にて、前記一時記憶
領域300aに記憶した再生イベントデータ(再生され
る演奏データ)に関するポインタを引数としてプレイバ
ックプラグインプログラムをコール、すなわち前記ポイ
ンタをプレイバックプラグインプログラムに渡して同プ
ログラムの起動を要求する。
【0034】このプレイバックプラグインプログラムの
実行は前記コールによりステップ350にて開始され、
ステップ352にて前記一時記憶領域300aに記憶し
た再生イベントデータ(再生される演奏データ)に関す
るポインタを取得する。そして、ステップ354にて前
記取得したポインタに基づいて一時記憶領域300aに
記憶されている再生イベントデータを読み出し、ステッ
プ356にて前記読み出した再生イベントデータに加工
処理を施す。この加工処理においては、再生イベントデ
ータにより再生される楽音のピッチ、音量、音色などの
楽音要素を修正するために再生イベントデータを変更し
たり、同再生イベントデータに新たな演奏データを付加
したりする。また、発生される楽音に効果を付与するた
めに再生イベントデータに効果を表す新たな演奏データ
を付加したり、再生イベントデータにより表されたメロ
ディ音に対して付加音(例えば、副メロディ音)を付加
するために、再生イベントデータにより表されたメロデ
ィ音及び伴奏音列を自動分析(プログラムによる分析)
して付加音を表す演奏データを生成して、同生成した演
奏データを再生イベントデータに付加する。
【0035】前記ステップ356の処理後、ステップ3
58にて前記加工処理した再生イベントデータを一時記
憶領域300aに書き込み、同領域300aのポインタ
を調整し、ステップ360にてこのプレイバックプラグ
インプログラムの実行を終了する。前記一時記憶領域3
00aへの再生イベントデータの書き込みにおいては、
既に書き込まれている再生イベントデータに新たな演奏
データを追加するようにしてもよいし、再生イベントデ
ータの一部又は全てを新たな演奏データを含む再生イベ
ントで書き換えてしまってもよい。これにより、前記プ
レイバックキュー処理のステップ304にて一時記憶領
域300aに書き込まれた再生イベントデータは、プレ
イバックプラグインプログラムのステップ356の処理
により加工した再生イベントデータに書き換えられる。
【0036】したがって、前記ステップ130のトラッ
ク処理においては、この書き換えられた再生イベントデ
ータを一時記憶領域300aから読み出してトラック処
理を施し、このトラック処理の施された演奏データがス
テップ400のアウトプットキュー処理及びステップ1
40の外部/音源出力処理に利用されることになるの
で、前記加工処理の施された再生イベントデータ(演奏
データ)が外部へ出力されたり、音源回路24にて再生
されることになる。これにより、ユーザは、外部から入
力され又は演奏データ記憶領域50から読み出された再
生のための演奏データを種々に加工できるようになる。
【0037】ステップ400のアウトプットキュー処理
も、本発明の一つのキー手段に対応するもので、ステッ
プ130のトラック処理とステップ140の外部/音源
出力処理との間に介装されていて、ステップ130にて
トラック処理された一連の演奏データを一部の演奏デー
タずつ順次RAM33内に設けた一時記憶領域400a
に一時的に記憶するとともに、同記憶した一部の演奏デ
ータに関するポインタを引数として機能拡張モジュール
としてのプラグインプログラムに渡すとともに同プログ
ラムをコールし、同プログラムによる一時記憶領域40
0aからの演奏データの読み出し及び一時記憶領域40
0aへの演奏データの書き込みを許容する。また、逆
に、機能拡張モジュールとしてのプラグインプログラム
が、共通の引数を渡してアウトプットキュー処理をコー
ルすることもできるようになっている。なお、前述した
ステップ140の外部/音源出力処理においては、ステ
ップ400のキュー処理により一時記憶領域400aに
一時的に記憶されている演奏データを読み出して外部又
は音源回路24に出力することになる。
【0038】このアウトプットキュー処理の具体例の一
つを説明すると、図3及び図8は、シーケンサプログラ
ムに対して非同期プラグインプログラムを付加した動作
フローを示している。ステップ400のアウトプットキ
ュー処理においては、ステップ402にて、前記ステッ
プ130にてトラック処理が施されて外部又は音源回路
24に出力される新たな演奏データがあるか否か、すな
わち出力イベントデータがあるか否かを判定する。出力
イベントデータがあれば、ステップ402にて「YE
S」と判定して、ステップ404にて、前記出力イベン
トデータ(出力される演奏データ)を一時記憶領域40
0aに書き込んで同領域400aに出力イベントデータ
を順次積み上げていく。なお、この場合も、一時記憶領
域400aが出力イベントデータで満たされれば、最も
古い出力イベントデータが廃棄されていく。出力イベン
トデータがなければ、ステップ402にて「NO」と判
定して、プログラムをステップ140に進める。
【0039】また、このアウトプットキュー処理に対し
ては、同キュー処理に並行して、機能拡張モジュールで
ある非同期プラグインプログラムが図示しない指示によ
り所定の短時間毎に繰り返し実行されている。この非同
期プラグインプログラムは、ステップ450にて開始さ
れ、表示器14にてプラグインウインドウに表示されて
いる発生楽音の楽音制御要素をキーボード12又はマウ
ス13の操作に応じて変更して、発生楽音の楽音要素を
リアルタイムで変更するものである。前記楽音要素とし
ては、例えば、トラック毎(パート別)の音量、音色な
どが挙げられる。
【0040】非同期プラグインプログラムは、ステップ
450にてその実行が開始されて、ステップ452にて
前記キーボード12又はマウス13の操作により楽音制
御要素が変更された否か、すなわち操作子イベントデー
タ(楽音制御要素の変更操作を示す演奏データ)がある
か否かを判定する。操作子イベントデータがなければ、
ステップ452にて「NO」と判定して、ステップ46
2にてこの非同期プラグインプログラムの実行を一旦終
了する。
【0041】一方、操作子イベントデータがあれば、ス
テップ452にて「YES」と判定し、ステップ454
にて、表示器14のプラグインウインドウに表示されて
いる楽音制御要素用の表示(例えば、音量操作子位置の
表示)をキーボード12又はマウス13の操作に応じて
変更する。そして、ステップ456にて、前記操作子イ
ベントデータ(前記変更された楽音制御要素を表す演奏
データ)を引数として、アウトプットキュー処理をコー
ルして待機する。
【0042】アウトプットキュー処理においては、同処
理の一部を構成するプログラムがステップ410にて起
動され、ステップ412にて、前記一時記憶領域400
aに記憶した出力イベントデータ(出力される演奏デー
タ)に関するポインタを引数として非同期プラグインプ
ログラムをコール、すなわち前記ポインタを非同期プラ
グインプログラムに渡して同プログラムによる処理を要
求する。
【0043】この場合、非同期プラグインプログラム側
においては、ステップ458にて前記一時記憶領域40
0aに記憶した出力イベントデータ(出力される演奏デ
ータ)に関するポインタを取得する。そして、ステップ
460にて前記操作子イベントデータ(演奏データ)を
一時記憶領域400aに書き込み、又は一時記憶領域4
00aに既に記憶されている演奏データを新たな操作子
イベントデータに変更し、同領域400aのポインタを
調整し、ステップ462にてこの非同期プラグインプロ
グラムの実行を一旦終了する。
【0044】これにより、前記アウトプットキュー処理
のステップ404によって一時記憶領域400aに書き
込まれた出力イベントデータには操作子イベントデータ
が追加され、又は同出力イベントデータの一部が操作子
イベントデータに書き換えられる。
【0045】したがって、前記ステップ140の外部/
音源出力処理においては、この追加又は書き換えられた
出力イベントデータを一時記憶領域400aから読み出
して外部又は音源回路24に出力するので、外部又は音
源回路24に出力される演奏データが前記操作子イベン
トデータを含むものに変更される。その結果、ユーザ
は、キーボード12又はマウス13などを操作すること
により、外部装置に出力される演奏データをリアルタイ
ムで変更したり、音源回路24から出力される楽音の楽
音要素をリアルタイムで変更したりできるようになる。
【0046】また、シーケンサプログラム側において
は、前記ステップ412の処理後、ステップ110の記
録/再生処理を実行して、前記非同期プラグインプログ
ラムから渡された操作子イベントデータ(楽音制御要素
の変更操作を示す演奏データ)を演奏データ記憶領域5
0に書き込むこともできる。これによれば、ステップ2
00のインプットキュー処理及びステップ300のプレ
イバックキュー処理の影響を受けないで、外部から供給
された演奏データに前記操作子イベントデータを加えて
演奏データ記憶領域50に記録したり、演奏データ記憶
領域50に既に記録されている演奏データに外部の操作
子の操作に応じた操作子イベントデータを加えたりする
こともできるようになる。
【0047】上記作動説明からも理解できるように、上
記実施形態のインプットキュー処理、プレイバックキュ
ー処理及びアウトプットキュー処理は、時間経過にした
がった一連の処理中に一連の演奏データのうちの一部の
演奏データを一時記憶領域200a,300a,400
aにそれぞれ一時的に記憶するとともに、この記憶した
一部の演奏データに関するポインタを引数として機能拡
張モジュールとしての各種プラグインプログラムに渡
し、同各種プラグインプログラムによる一時記憶領域2
00a,300a,400aからの演奏データの読み出
し又は同記憶領域200a,300a,400aへの演
奏データの書き込みを許容するようにした。したがっ
て、上記各種プラグインプログラムのように、一時記憶
領域200a,300a,400aに記憶した一部の演
奏データに関するポインタを引数として受け取るととも
に、同記憶領域200a,300a,400aから演奏
データを読み出す又は同記憶領域200a,300a,
400aへ演奏データを書き込む機能を有する機能拡張
モジュールとしてのプラグインプログラムを用意しさえ
すれば、基本的なシーケンサ処理(自動演奏の記録再生
処理)に対して各種拡張機能を汎用的かつ簡単に付加で
きるようになる。
【0048】なお、上記説明したオンライン処理におい
ては、各種キュー処理を演奏データ全体に対して設ける
とともに、各種キュー処理に対して各一つずつのプラグ
インプログラムを付加するようにした。しかし、これを
更に拡張して、各キュー処理をトラック毎に設け、各ト
ラック毎に独立してプラグインプログラムを付加できる
ようにしてもよい。また、一つのキュー処理に対して複
数のプラグインプログラムを付加できるようし、各キュ
ー処理(シーケンサプログラム)側からコールする順序
を管理することにより、プラグインプログラム間の論理
結線を制御するようにしてもよい。
【0049】前記変形例の論理結線の一例を図9に示
す。図9によれば、シーケンサプログラムは、予め決め
られたキュー処理(インプットキュー処理、プレイバッ
クキュー処理など)において、複数のトラックのうちの
x番目のトラックx用のプラグインプログラムx1〜x
mを順にコールし、これと並行して、複数のトラックの
うちのy番目のトラックy用のプラグインプログラムy
1〜ynを順にコールしていく。そして、各プラグイン
プログラムx1〜xm,y1〜ynは、トラックx,y
の前記キュー処理に対して種々の機能拡張処理を施す。
その後、シーケンサプログラムは、全てのトラック用の
プラグインプログラムA〜Mを順にコールしていく。こ
れにより、より基本的なシーケンサプログラムに対して
複雑な機能拡張を行うことができる。
【0050】また、このキュー処理とプラグインプログ
ラムとの関係を表示器14を用いて定めるようにするこ
ともできる。この場合、シーケンサプログラム及び各種
プラグインプログラムをパーソナルコンピュータPC1
にインストールした状態で、キュー処理と各種プラグイ
ンプログラムとの関係を表示器14に表示しながら、前
記関係を設定していくようにするとよい。これにより、
キュー処理とプラグインプログラムとの対応つけを簡単
に決めることができるとともに、前記対応付けを簡単に
種々に変更することもできる。
【0051】さらに、上記実施形態の機能拡張モジュー
ルとしてのプラグインプログラムに上記シーケンサプロ
グラムに設けた各種キュー処理と同様なキュー処理を設
けて、プラグインプログラムが同プログラムに付加され
た別のプラグインプログラムをコールするようにするこ
ともできる。これによっても、シーケンサプログラムに
対して機能拡張を付加したことになり、複雑かつ多数の
機能拡張を簡単に行うことができるようになる。
【0052】a.オフライン処理 次に、オフライン処理について図面を用いて説明する
と、図10は同オフライン処理におけるシーケンサモジ
ュール(シーケンサプログラム)と機能拡張モジュール
(編集プラグインプログラム)との関係を概念図により
示している。
【0053】シーケンサモジュールは、上述したような
外部から時系列で供給される演奏データを演奏データ記
憶領域50に記録したり、演奏データ記憶領域50に記
憶されている演奏データを再生したりする処理機能を有
しているとともに、機能拡張モジュール600−1,6
00−2などの追加を可能とするインターフェース処理
500を行うようになっている。機能拡張モジュール6
00−1,600−2は、演奏データ記憶領域50内の
演奏データをシーケンサモジュールを介して編集可能と
するものである。この場合、演奏データ記憶領域50に
は、上述したトラック、ブロック及びイベントデータか
らなる3層構造にしたがった演奏データが記憶されてい
る。なお、この場合の3層構造も、演奏データ記憶領域
50内の演奏データの配列がいかなるものであっても、
同記憶領域50に対して前記3層構造で各演奏データを
指定できるようになっていればよい。また、シーケンサ
モジュールと機能拡張モジュール600−1,600−
2とは、共通の引数及び関数により、互いにコールし合
うことができるようになっている。
【0054】このようなシーケンサモジュールと機能拡
張モジュール600−1,600−2との関係を、図1
1の動作フローを用いてさらに詳細に説明する。前述の
ように、編集プラグインプログラムとシーケンサプログ
ラムのインターフェース処理500とは、共通の引数及
び関数を用いて互いにコールし合えるようになってお
り、編集プラグインプログラムは所定時間毎に繰り返し
実行されるようになっている。この編集プラグインプロ
グラムの実行はステップ600にて開始され、ステップ
602にて編集しようとする演奏データの記憶領域(編
集領域)がキーボード12、マウス13の入力装置によ
り指定されたか否かを判定する。この場合、表示器14
においては、演奏データ編集用の表示がなされており、
ユーザは、この表示にしたがってキーボード12、マウ
ス13などの入力装置により編集領域を指定する。
【0055】編集領域が指定されなければ、ステップ6
02にて「NO」と判定して、ステップ612にてこの
編集プラグインプログラムの実行を一旦終了する。一
方、編集領域の指定があれば、ステップ602にて「Y
ES」と判定して、ステップ604にて編集領域を表す
トラック番号、ブロック番号及びイベント番号を引数と
してインターフェース処理をコールする。もちろん、全
ての演奏データのうちの一つ若しくは複数のトラックの
全ての演奏データを編集する場合には、前記引数は一つ
若しくは複数のトラック番号となる。また、一つ若しく
は複数のトラックの演奏データのうちで特定の一つ若し
くは複数のブロックの演奏データを編集する場合には、
前記引数は一つ若しくは複数のトラック番号及びブロッ
ク番号となる。
【0056】インターフェース処理500においては、
前記コールに応答して、ステップ502にて前記引数に
より指定された編集領域に属する演奏データを演奏デー
タ記憶領域50から読み出し、編集プラグインプログラ
ムをコールして同読み出した演奏データを渡した後、待
機する。編集プラグインプログラムにおいては、前記コ
ールに応答して、ステップ606にて前記演奏データ記
憶領域50から読み出された演奏データを取得して、R
AM33内に適宜設けた編集用記憶領域に書き込むとと
もに表示器14にて前記取得した演奏データに対応した
表示を行う。
【0057】この状態で、ユーザは、表示器14の表示
画面を見ながら、キーボード12又はマウス13を操作
して演奏データを編集する。前記ステップ606の処理
後、ステップ608にて、前記キーボード12又はマウ
ス13の操作に応じて編集用記憶領域内の演奏データを
編集するとともに、表示器14の表示状態も前記編集に
合わせて変更する。
【0058】この後、ユーザによる編集終了の指示に応
答して、ステップ610にて編集した演奏データに対す
る演奏データ記憶領域50内の記憶領域を指定し、イン
ターフェース処理500をコールし、同インターフェー
ス処理500に対して同指定記憶領域を表すデータとと
もに編集された演奏データを3層構造にしたがったフォ
ーマットで渡し、ステップ612にてこの編集プラグイ
ンプログラムの実行を終了する。なお、前記記憶領域を
表すデータに関しては、前記指定された編集領域に今回
編集された演奏データを戻すだけの場合、同指定された
編集領域を表すデータを再度使用することになる。ま
た、演奏データ記憶領域50に記憶されていた一部の演
奏データを他の位置にコピーしたり、同一部の演奏デー
タを加工して他の位置に書き込む場合には、ユーザによ
り新たに指定された記憶領域を表すデータが生成される
ことになる。
【0059】インターフェース処理500においては、
前記コールに応答して、ステップ504にて、前記編集
された演奏データを取得して、同演奏データを演奏デー
タ記憶領域50内の指定記憶領域に書き込む。これによ
り、演奏データ記憶領域50内の演奏データが、シーケ
ンサプログラムのインターフェース処理500を介して
編集プラグインプログラムにより編集されることにな
る。図12は、前記のような編集作業における演奏デー
タの流れを示しており、演奏データ記憶領域50に記憶
されていた一部の演奏データS1,S2,S3が、編集
プラグインプログラムの処理により新たな一部の演奏デ
ータS1*,S2*,S3*にそれぞれ編集されて演奏
データ記憶領域50にふたたび記憶される流れを示して
いる。
【0060】上記作動説明からも理解できるように、機
能拡張モジュールとしての編集プラグインプログラムに
より、3層構造に従った関数を用いて演奏データ記憶領
域50内の一部の演奏データが指定されると、シーケン
サモジュールとしてのシーケンサプログラムのインター
フェース処理500は、演奏データ記憶領域50から前
記指定された一部の演奏データを編集プラグインプログ
ラムに渡す。そして、編集プラグインプログラムによっ
て前記一部の演奏データが編集されるとともに、インタ
ーフェース処理500に再び戻されると、同インターフ
ェース処理500は前記編集された一部の演奏データを
演奏データ記憶領域50に書き込む。したがって、機能
拡張モジュールとしてのプラグインプログラムをシーケ
ンサモジュール(シーケンサプログラム)に対して付加
するだけで、汎用的かつ簡単に演奏データの編集を行う
ための機能拡張を実現できる。しかも、このプラグイン
プログラムの付加は、シーケンサプログラムとの間で共
通の引数及び関数を定めておくだけでシーケンサプログ
ラムに適用されるので、種々の機能拡張モジュールであ
るプラグインプログラムを汎用的かつ簡単に利用できる
ようになる。
【0061】なお、前記表示器14における演奏データ
の表示の説明でも明らかなように、このオフライン処理
においても、演奏データ記憶領域50内の演奏データを
プラグインプログラム側に取り込んで単にモニタするこ
とも可能であり、汎用的かつ簡単に演奏データのモニタ
を行うための機能拡張も簡単に行える。
【図面の簡単な説明】
【図1】 本発明をパーソナルコンピュータに適用した
場合における各種機器の接続図である。
【図2】 前記パーソナルコンピュータを詳細に表した
接続図である。
【図3】 オンライン処理における作動を示す作動フロ
ー図である。
【図4】 演奏データの3層構造を説明するためのデー
タフォーマット図である。
【図5】 演奏データ列のデータフォーマット図であ
る。
【図6】 インプットキュー処理とミディーモニタプラ
グインプログラムの作動を説明するためのフローチャー
トである。
【図7】 プレイバックキュー処理とプレイバックプラ
グインプログラムの作動を説明するためのフローチャー
トである。
【図8】 アウトプットキュー処理と非同期プラグイン
プログラムの作動を説明するためのフローチャートであ
る。
【図9】 上記実施形態の変形例に係るプラグインプロ
グラムの論理結線図である。
【図10】 オフライン処理におけるシーケンサモジュ
ールと機能拡張モジュールの結線概念図である。
【図11】 インターフェース処理と編集プラグインプ
ログラムの作動を説明するためのフローチャートであ
る。
【図12】 編集される演奏データの流れを表す概念図
である。
【符号の説明】
PC1,PC2…パーソナルコンピュータ装置、SQ…
シーケンサ、EMI…電子楽器、11…本体部、12…
キーボード、13…マウス、14…表示器、15…ドラ
イブユニット、21…ミディーインターフェース回路、
22…操作子スイッチ回路、23…表示制御回路、24
…音源回路24、31…CPU、32…ROM、33…
RAM33、50…演奏データ記憶領域、100a,2
00a,300a…一時記憶領域。
───────────────────────────────────────────────────── フロントページの続き (72)発明者 齋藤 謙一良 静岡県浜松市中沢町10番1号 ヤマハ株式 会社内 Fターム(参考) 5D378 MM01 MM12 MM44 MM45 MM46 MM47 MM48 MM58

Claims (8)

    【特許請求の範囲】
  1. 【請求項1】時間経過にしたがった一連の処理により一
    連の演奏データを記録又は再生する自動演奏装置におい
    て、前記一連の処理中に一連の演奏データのうちの一部
    の演奏データを所定の記憶領域に一時的に記憶するとと
    もに、前記記憶領域に記憶した一部の演奏データに関す
    るポインタを引数として機能拡張モジュールに渡し、同
    機能拡張モジュールによる前記記憶領域からの演奏デー
    タの読み出し又は同記憶領域への演奏データの書き込み
    を許容するキュー手段を設けたことを特徴とする自動演
    奏装置。
  2. 【請求項2】時間経過にしたがった一連の処理により一
    連の演奏データを記録又は再生する自動演奏装置に適用
    される機能拡張装置であって、前記一連の処理中に所定
    の記憶領域に一時的に記憶される一連の演奏データのう
    ちの一部の演奏データに関するポインタを引数として受
    け取り、同受け取ったポインタを用いて前記記憶領域か
    ら演奏データを読み出す又は同記憶領域へ演奏データを
    書き込むデータ授受手段を備えたことを特徴とする機能
    拡張装置。
  3. 【請求項3】演奏データ記憶手段に記憶されている一連
    の演奏データを3層構造で管理できる自動演奏装置にお
    いて、前記一連の演奏データのうちから機能拡張モジュ
    ールによって前記3層構造に従った関数を用いて指定さ
    れた一部の演奏データを前記演奏データ記憶手段から読
    み出して前記機能拡張モジュールに渡すとともに、前記
    機能拡張モジュールから前記3層構造に従った演奏デー
    タを受け取って前記演奏データ記憶手段に記憶されてい
    る一連の演奏データ中に組み込むインターフェース手段
    を備えたことを特徴とする自動演奏装置。
  4. 【請求項4】演奏データ記憶手段に記憶されている一連
    の演奏データを3層構造で管理できる自動演奏装置に適
    用される機能拡張装置であって、前記一連の演奏データ
    のうちの一部の演奏データを前記3層構造に従った関数
    を用いて指定し、同指定した一部の演奏データを前記自
    動演奏装置から受け取り、同受け取った一部の演奏デー
    タを加工し、かつ同加工した一部の演奏データを前記3
    層構造に従ったフォーマットで前記自動演奏装置に渡す
    ようにしたことを特徴とする機能拡張装置。
  5. 【請求項5】時間経過にしたがった一連の処理により一
    連の演奏データを記録又は再生する自動演奏プログラム
    であって、前記一連の処理中に一連の演奏データのうち
    の一部の演奏データを所定の記憶領域に一時的に記憶す
    るとともに、前記記憶領域に記憶した一部の演奏データ
    に関するポインタを引数として機能拡張モジュールに渡
    し、同機能拡張モジュールによる前記記憶領域からの演
    奏データの読み出し又は同記憶領域への演奏データの書
    き込みを許容するキュー処理を含むことを特徴とする自
    動演奏プログラムを記録したコンピュータ読取り可能な
    記録媒体。
  6. 【請求項6】時間経過にしたがった一連の処理により一
    連の演奏データを記録又は再生する自動演奏装置に適用
    される機能拡張プログラムであって、前記一連の処理中
    に所定の記憶領域に一時的に記憶される一連の演奏デー
    タのうちの一部の演奏データに関するポインタを引数と
    して受け取り、同受け取ったポインタを用いて前記記憶
    領域から演奏データを読み出す又は同記憶領域へ演奏デ
    ータを書き込むデータ授受処理を含むことを特徴とする
    機能拡張プログラムを記録したコンピュータ読取り可能
    な記録媒体。
  7. 【請求項7】演奏データ記憶手段に記憶されている一連
    の演奏データを3層構造で管理できる自動演奏プログラ
    ムであって、前記一連の演奏データのうちから機能拡張
    モジュールによって前記3層構造に従った関数を用いて
    指定された一部の演奏データを前記演奏データ記憶手段
    から読み出して前記機能拡張モジュールに渡すととも
    に、前記機能拡張モジュールから前記3層構造に従った
    演奏データを受け取って前記演奏データ記憶手段に記憶
    されている一連の演奏データ中に組み込むインターフェ
    ース処理を含むことを特徴とする自動演奏プログラムを
    記録したコンピュータ読取り可能な記録媒体。
  8. 【請求項8】演奏データ記憶手段に記憶されている一連
    の演奏データを3層構造で管理できる自動演奏装置に適
    用される機能拡張プログラムであって、前記一連の演奏
    データのうちの一部の演奏データを前記3層構造に従っ
    た関数を用いて指定し、同指定した一部の演奏データを
    前記自動演奏装置から受け取り、同受け取った一部の演
    奏データを加工し、かつ同加工した一部の演奏データを
    前記3層構造に従ったフォーマットで前記自動演奏装置
    に渡すようにしたことを特徴とする機能拡張プログラム
    を記録したコンピュータ読取り可能な記録媒体。
JP34678499A 1999-12-06 1999-12-06 自動演奏装置及び自動演奏プログラムを記録したコンピュータ読取り可能な記録媒体 Expired - Fee Related JP3614061B2 (ja)

Priority Applications (5)

Application Number Priority Date Filing Date Title
JP34678499A JP3614061B2 (ja) 1999-12-06 1999-12-06 自動演奏装置及び自動演奏プログラムを記録したコンピュータ読取り可能な記録媒体
GB0028979A GB2359657B (en) 1999-12-06 2000-11-28 Automatic play apparatus and function expansion device
GB0122170A GB2364161B (en) 1999-12-06 2000-11-28 Automatic play apparatus and function expansion device
US09/726,715 US6620993B2 (en) 1999-12-06 2000-11-30 Automatic play apparatus and function expansion device
US10/209,713 US6660924B2 (en) 1999-12-06 2002-07-31 Automatic play apparatus and function expansion device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP34678499A JP3614061B2 (ja) 1999-12-06 1999-12-06 自動演奏装置及び自動演奏プログラムを記録したコンピュータ読取り可能な記録媒体

Publications (2)

Publication Number Publication Date
JP2001166772A true JP2001166772A (ja) 2001-06-22
JP3614061B2 JP3614061B2 (ja) 2005-01-26

Family

ID=18385795

Family Applications (1)

Application Number Title Priority Date Filing Date
JP34678499A Expired - Fee Related JP3614061B2 (ja) 1999-12-06 1999-12-06 自動演奏装置及び自動演奏プログラムを記録したコンピュータ読取り可能な記録媒体

Country Status (3)

Country Link
US (2) US6620993B2 (ja)
JP (1) JP3614061B2 (ja)
GB (1) GB2359657B (ja)

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006201438A (ja) * 2005-01-20 2006-08-03 Sony Corp 再生装置および再生方法
US7102071B2 (en) 2002-08-28 2006-09-05 Yamaha Corporation Apparatus and method for processing tone reproducing digital data against unauthorized use
JP2008171441A (ja) * 2008-02-08 2008-07-24 Yamaha Corp 管理プログラムおよび情報処理装置
US8027965B2 (en) 2005-07-04 2011-09-27 Sony Corporation Content providing system, content providing apparatus and method, content distribution server, and content receiving terminal
US8079962B2 (en) 2005-01-20 2011-12-20 Sony Corporation Method and apparatus for reproducing content data
US8135736B2 (en) 2005-07-21 2012-03-13 Sony Corporation Content providing system, content providing apparatus and method, content distribution server, and content receiving terminal
US8170003B2 (en) 2005-03-28 2012-05-01 Sony Corporation Content recommendation system and method, and communication terminal device
US8311654B2 (en) 2006-02-17 2012-11-13 Sony Corporation Content reproducing apparatus, audio reproducing apparatus and content reproducing method
US8451832B2 (en) 2004-10-26 2013-05-28 Sony Corporation Content using apparatus, content using method, distribution server apparatus, information distribution method, and recording medium

Families Citing this family (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7631318B2 (en) * 2002-06-28 2009-12-08 Microsoft Corporation Secure server plug-in architecture for digital rights management systems
EP1555772A3 (en) * 2004-01-15 2013-07-17 Yamaha Corporation Remote control method of external devices
JP4296514B2 (ja) * 2006-01-23 2009-07-15 ソニー株式会社 音楽コンテンツ再生装置、音楽コンテンツ再生方法及び音楽コンテンツ再生プログラム
US7663051B2 (en) * 2007-03-22 2010-02-16 Qualcomm Incorporated Audio processing hardware elements
US7678986B2 (en) * 2007-03-22 2010-03-16 Qualcomm Incorporated Musical instrument digital interface hardware instructions
US9188205B2 (en) 2009-09-08 2015-11-17 Gary D. Lee Moon gear assembly
JP6119133B2 (ja) 2011-09-25 2017-04-26 ヤマハ株式会社 電子音響装置連携装置及びプログラム
US9286383B1 (en) * 2014-08-28 2016-03-15 Sonic Bloom, LLC System and method for synchronization of data and audio
US9552801B2 (en) * 2014-09-02 2017-01-24 Native Instruments Gmbh Electronic music instrument, system and method for controlling an electronic music instrument
US11130066B1 (en) 2015-08-28 2021-09-28 Sonic Bloom, LLC System and method for synchronization of messages and events with a variable rate timeline undergoing processing delay in environments with inconsistent framerates

Family Cites Families (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS59125786A (ja) * 1982-12-24 1984-07-20 カシオ計算機株式会社 自動演奏装置
JPH0772829B2 (ja) * 1986-02-28 1995-08-02 ヤマハ株式会社 電子楽器におけるパラメ−タ供給装置
JP2546663B2 (ja) * 1987-02-06 1996-10-23 ヤマハ株式会社 自動演奏装置
GB2209425A (en) * 1987-09-02 1989-05-10 Fairlight Instr Pty Ltd Music sequencer
JP2596206B2 (ja) 1990-10-08 1997-04-02 ヤマハ株式会社 演奏データ記録再生装置および演奏データ記録再生方法
JP3018821B2 (ja) 1993-03-19 2000-03-13 ヤマハ株式会社 自動演奏装置
US5672837A (en) * 1994-12-29 1997-09-30 Casio Computer Co., Ltd. Automatic performance control apparatus and musical data storing device
US5763800A (en) 1995-08-14 1998-06-09 Creative Labs, Inc. Method and apparatus for formatting digital audio data
US5777250A (en) * 1995-09-29 1998-07-07 Kawai Musical Instruments Manufacturing Co., Ltd. Electronic musical instrument with semi-automatic playing function
US6231347B1 (en) * 1995-11-20 2001-05-15 Yamaha Corporation Computer system and karaoke system
JP2970526B2 (ja) 1996-01-17 1999-11-02 ヤマハ株式会社 コンピュータソフトウェアを用いた音源システム
US6317123B1 (en) * 1996-09-20 2001-11-13 Laboratory Technologies Corp. Progressively generating an output stream with realtime properties from a representation of the output stream which is not monotonic with regard to time
JP3371774B2 (ja) 1997-10-06 2003-01-27 ヤマハ株式会社 演奏データから和音を検出する和音検出方法および和音検出装置、ならびに、和音検出用プログラムを記録した記録媒体
JPH11194763A (ja) * 1997-12-26 1999-07-21 Kawai Musical Instr Mfg Co Ltd 伴奏補助装置及び伴奏補助プログラムを記録したコンピュータ読み取り可能な記録媒体
US6169242B1 (en) * 1999-02-02 2001-01-02 Microsoft Corporation Track-based music performance architecture

Cited By (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7102071B2 (en) 2002-08-28 2006-09-05 Yamaha Corporation Apparatus and method for processing tone reproducing digital data against unauthorized use
US8451832B2 (en) 2004-10-26 2013-05-28 Sony Corporation Content using apparatus, content using method, distribution server apparatus, information distribution method, and recording medium
JP2006201438A (ja) * 2005-01-20 2006-08-03 Sony Corp 再生装置および再生方法
US8079962B2 (en) 2005-01-20 2011-12-20 Sony Corporation Method and apparatus for reproducing content data
US8170003B2 (en) 2005-03-28 2012-05-01 Sony Corporation Content recommendation system and method, and communication terminal device
US8027965B2 (en) 2005-07-04 2011-09-27 Sony Corporation Content providing system, content providing apparatus and method, content distribution server, and content receiving terminal
US8135736B2 (en) 2005-07-21 2012-03-13 Sony Corporation Content providing system, content providing apparatus and method, content distribution server, and content receiving terminal
US8135700B2 (en) 2005-07-21 2012-03-13 Sony Corporation Content providing system, content providing apparatus and method, content distribution server, and content receiving terminal
US8311654B2 (en) 2006-02-17 2012-11-13 Sony Corporation Content reproducing apparatus, audio reproducing apparatus and content reproducing method
USRE46481E1 (en) 2006-02-17 2017-07-18 Sony Corporation Content reproducing apparatus, audio reproducing apparatus and content reproducing method
JP2008171441A (ja) * 2008-02-08 2008-07-24 Yamaha Corp 管理プログラムおよび情報処理装置

Also Published As

Publication number Publication date
GB2359657A (en) 2001-08-29
US6660924B2 (en) 2003-12-09
US20010015121A1 (en) 2001-08-23
GB0028979D0 (en) 2001-01-10
JP3614061B2 (ja) 2005-01-26
GB2359657B (en) 2002-02-27
US20020189428A1 (en) 2002-12-19
US6620993B2 (en) 2003-09-16

Similar Documents

Publication Publication Date Title
JP3614061B2 (ja) 自動演奏装置及び自動演奏プログラムを記録したコンピュータ読取り可能な記録媒体
US5569869A (en) Karaoke apparatus connectable to external MIDI apparatus with data merge
JPH06268774A (ja) カラオケ制御装置
JP3277844B2 (ja) 自動演奏装置
CN110299128A (zh) 电子乐器、方法、存储介质
JP3407640B2 (ja) 演奏装置およびレジストレーションデータを記録した記録媒体
JP2001013962A (ja) 楽曲自動再生装置および連続楽曲情報作成再生プログラムを記録した記録媒体
JPS59139093A (ja) 電子楽器のデータ伝送システム
JPH07121181A (ja) 音声情報処理装置
JP2003186466A (ja) 楽譜作成処理装置及びプログラム
JP3709821B2 (ja) 楽曲情報編集装置及び楽曲情報編集プログラム
JP3928725B2 (ja) 楽音信号発生装置及びレガート処理プログラム
JP3587133B2 (ja) 発音長決定方法と装置及び記録媒体
JP3669335B2 (ja) 自動演奏装置
JPH10207465A (ja) 楽音発生方法および楽音発生装置
JPH0677196B2 (ja) 演奏装置
JP3612742B2 (ja) 電子楽器
JP3797180B2 (ja) 楽譜表示装置及び楽譜表示プログラム
JP3709820B2 (ja) 楽曲情報編集装置及び楽曲情報編集プログラム
JP3178176B2 (ja) 自動伴奏装置
GB2364161A (en) Automatic play apparatus and function expansion device.
JP3797181B2 (ja) 楽譜表示装置及び楽譜表示プログラム
JP3176497B2 (ja) 通信カラオケシステムの運用方法およびカラオケ装置
JP3758267B2 (ja) 音源回路設定方法、該方法によって設定される音源回路を備えたカラオケ装置、および記録媒体
JP5504983B2 (ja) 楽音信号発生装置

Legal Events

Date Code Title Description
A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20040330

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20040527

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20041012

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20041025

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

S531 Written request for registration of change of domicile

Free format text: JAPANESE INTERMEDIATE CODE: R313532

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

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

Free format text: PAYMENT UNTIL: 20071112

Year of fee payment: 3

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

Free format text: PAYMENT UNTIL: 20081112

Year of fee payment: 4

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

Free format text: PAYMENT UNTIL: 20081112

Year of fee payment: 4

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

Free format text: PAYMENT UNTIL: 20091112

Year of fee payment: 5

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

Free format text: PAYMENT UNTIL: 20101112

Year of fee payment: 6

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

Free format text: PAYMENT UNTIL: 20101112

Year of fee payment: 6

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

Free format text: PAYMENT UNTIL: 20111112

Year of fee payment: 7

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

Free format text: PAYMENT UNTIL: 20111112

Year of fee payment: 7

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

Free format text: PAYMENT UNTIL: 20121112

Year of fee payment: 8

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

Free format text: PAYMENT UNTIL: 20121112

Year of fee payment: 8

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

Free format text: PAYMENT UNTIL: 20131112

Year of fee payment: 9

LAPS Cancellation because of no payment of annual fees