JPH10240242A - 楽音情報の通信方法、通信装置及びプログラムを記録した媒体 - Google Patents

楽音情報の通信方法、通信装置及びプログラムを記録した媒体

Info

Publication number
JPH10240242A
JPH10240242A JP9341639A JP34163997A JPH10240242A JP H10240242 A JPH10240242 A JP H10240242A JP 9341639 A JP9341639 A JP 9341639A JP 34163997 A JP34163997 A JP 34163997A JP H10240242 A JPH10240242 A JP H10240242A
Authority
JP
Japan
Prior art keywords
data
midi data
transmitting
midi
key
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
JP9341639A
Other languages
English (en)
Other versions
JP3271572B2 (ja
Inventor
Shigeo Tsunoda
重雄 角田
Satoru Motoyama
悟 本山
Yutaka Hasegawa
豊 長谷川
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 JP34163997A priority Critical patent/JP3271572B2/ja
Publication of JPH10240242A publication Critical patent/JPH10240242A/ja
Application granted granted Critical
Publication of JP3271572B2 publication Critical patent/JP3271572B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Landscapes

  • Electrophonic Musical Instruments (AREA)

Abstract

(57)【要約】 【課題】 リアルタイムで楽音情報を通信可能な通信技
術に関し、多数のノード間においてリアルタイム演奏を
可能にする楽音情報の通信方法を提供する。 【解決手段】 a)MIDIデータを通信ネットワーク
上に送信する工程と、b)前記送信されたMIDIデー
タを受信し、リアルタイムで該MIDIデータを音源に
供給する工程とを含む。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、楽音情報の通信技
術に関し、特にリアルタイムで楽音情報を通信可能な通
信技術に関する。
【0002】
【従来の技術】電子楽器間の通信の統一規格として、M
IDI(music instrumental digitalinterface)規格
がある。MIDI規格のインターフェースを備えた電子
楽器は、MIDI用ケーブルを用いて、他の電子楽器と
接続することができる。電子楽器は、MIDI用ケーブ
ルを介して、MIDIデータを通信することができる。
例えば、一の電子楽器は、演奏者が演奏した情報をMI
DIデータとして送信し、他の電子楽器は、当該MID
Iデータを受信し、楽音を発音することができる。一の
電子楽器で演奏すると、他の電子楽器でリアルタイムに
発音することができる。
【0003】また、複数の汎用コンピュータを接続する
通信ネットワークでは、種々の情報を通信することがで
きる。例えば、コンピュータに接続されているハードデ
ィスク等に生の楽音情報やMIDIデータ等の情報を一
度蓄積しておき、通信ネットワークを介して、当該情報
を送信する。他のコンピュータは、当該情報を受信し
て、ハードディスク等の記憶装置に記憶する。汎用の通
信ネットワークは、情報の通信を行うのみであり、MI
DIとは性質を異にする。
【0004】
【発明が解決しようとする課題】MIDI規格は、電子
楽器間のリアルタイム通信を可能にするが、長距離の通
信及び多数ノード間の通信に適していない。一方、汎用
通信ネットワークは、長距離の通信及び多数ノード間の
通信に適しているが、電子楽器間のリアルタイム通信を
考慮したものではない。
【0005】本発明の目的は、多数のノード間において
リアルタイム演奏を可能にする楽音情報の通信方法を提
供することである。
【0006】本発明の他の目的は、多数のノード間にお
いてリアルタイム演奏を可能にする楽音情報の通信装置
を提供することである。
【0007】本発明の他の目的は、多数のノード間にお
いてリアルタイム演奏を可能にするプログラムを記録し
た媒体を提供することである。
【0008】
【課題を解決するための手段】本発明の一観点によれ
ば、a)MIDIデータを通信ネットワーク上に送信す
る工程と、b)前記送信されたMIDIデータを受信
し、リアルタイムで該MIDIデータを音源に供給する
工程とを含む楽音情報の通信方法が提供される。
【0009】通信ネットワークを用いることにより、不
特定多数のノードに対してMIDIデータを送信するこ
とができる。また、各ノードは、通信ネットワーク上の
MIDIデータをリアルタイムで再生し、発音させるこ
とができる。
【0010】本発明の他の観点によれば、a)MIDI
データを送信する工程と、b)前記MIDIデータを送
信した後、前記MIDIデータが送信済であることを示
すリカバリーデータを送信する工程とを含む楽音情報の
通信方法が提供される。
【0011】MIDIデータを送信し、通信エラーがな
ければ、相手方は正常に当該MIDIデータを受信でき
る。MIDIデータを送信しても、通信エラーがあれ
ば、相手方は正常に当該MIDIデータを受信できない
が、その場合でも、リカバリーデータを送信することに
より、通信エラーを回復させることができる。
【0012】
【発明の実施の形態】図1は、楽音情報の通信ネットワ
ークを示す図である。
【0013】演奏会場1には、MIDI楽器2、カメラ
4、エンコーダー3、5、及びルータ6が備えられる。
演奏会場1では、演奏者がMIDI楽器2を演奏する。
MIDI楽器2は、演奏者の演奏操作に応じてMIDI
データを生成し、エンコーダー3に供給する。エンコー
ダー3は、MIDIデータを所定のデータ形式で、ルー
タ6を介してインターネット上にパケット送信する。デ
ータ形式は、後に図4を参照しながら説明する。
【0014】カメラ4は、演奏者が演奏している様子を
撮影し、その様子を画像データとしてエンコーダー5に
供給する。エンコーダー5は、画像データを所定のデー
タ形式で、ルータ6を介してインターネット上にパケッ
ト送信する。データ形式は、後に図4を参照しながら説
明する。
【0015】ルータ6は、以下に示すインターネットを
介して、MIDIデータ及び画像データを送信する。当
該データは、電話回線又は専用回線を通り、ルータ6か
らサーバー7に供給され、さらに複数のWWW(world
wide web)サーバー8に供給される。WWWサーバー8
は、いわゆるプロバイダである。
【0016】ユーザは、ホームコンピュータ9をWWW
サーバー8に接続することにより、インターネットを使
用することができる。ホームコンピュータ9は、インタ
ーネットを使用し、MIDIデータ及び画像データを受
信することができる。ホームコンピュータ9は、ディス
プレイ装置とMIDI音源を有し、ディスプレイ装置に
画像データを表示し、MIDI音源に楽音信号を生成さ
せることができる。MIDI音源は、MIDIデータを
基に楽音信号を生成し、音声出力装置11に出力する。
音声出力装置11は、当該楽音信号に応じて発音する。
演奏会場1で演奏される演奏音と同等の音が音声出力装
置11からリアルタイムで発音される。
【0017】また、ホームコンピュータ9の外部に、M
IDI音源10を接続すれば、ホームコンピュータ9
は、MIDI音源10に楽音信号を生成させ、音声出力
装置11から発音させることができる。
【0018】なお、ユーザにとっては、画像データより
もMIDIデータの方が重要な情報であるので、画像デ
ータよりもMIDIデータを優先して処理を行う。画像
データは、画質が悪く、コマ数が少なくてもさほど気に
ならないが、MIDIデータに基づく楽音情報は高品質
が要求される。
【0019】ユーザは、演奏会場1に赴かなくても、自
宅にいながらディスプレイ装置で演奏会場1の模様を見
ながら、リアルタイムで演奏を聴くことができる。ま
た、自宅のホームコンピュータ9をインターネットに接
続すれば、誰でも演奏を聴くことができる。例えば、演
奏会場1でコンサートを行った場合には、不特定多数人
が自宅でそのコンサートを楽しむことができる。
【0020】演奏会場からMIDIデータを自宅に送信
することにより、演奏者が複数のユーザのそれぞれの自
宅で電子楽器を演奏しているかのような状況を作り出す
ことができる。
【0021】さらに、インターネットでは、生の楽音情
報ではなく、MIDIデータを通信するので、雑音によ
り音質を下げることはない。ただし、インターネット
は、長距離通信を行い、かつ種々の通信ポイントを経由
するので、エンコーダー3、5におけるデータ送信時及
びホームコンピュータ9におけるデータ受信時に、以下
に示す通信エラー対策を行う必要がある。通信エラー
は、例えば、データ化け、データ欠落、データ重複、デ
ータの順序入れ替え等である。
【0022】図2は、エンコーダー3、5及びホームコ
ンピュータ9のハードウエアの構成を示す図である。こ
れらは、汎用コンピュータを用いることができる。
【0023】バス31には、キーボードやマウス等の入
力装置26、表示器27、MIDI音源28、インター
ネットを行うための通信インターフェース29、MID
Iインターフェース30、RAM21、ROM22、C
PU23、外部記憶装置25が接続されている。
【0024】入力装置26は、種々の設定を指示するこ
とができる。ホームコンピュータ9においては、表示器
27は演奏会場の模様を表示し、MIDI音源28は受
信したMIDIデータを基に楽音信号を生成し、外部に
出力する。
【0025】通信インターフェース29は、インターネ
ットにより、MIDIデータ及び画像データを送受信す
るためのインターフェースである。MIDIインターフ
ェース30は、外部に対してMIDIデータを送受信す
るためのインターフェースである。
【0026】外部記憶装置25は、例えばハードディス
クドライブ、フロッピーディスクドライブ、CD−RO
Mドライブ、光磁気ディスクドライブ等であり、MID
Iデータ、画像データ又はコンピュータプログラム等を
記憶することができる。
【0027】ROM22は、コンピュータプログラムや
各種パラメータを記憶することができる。RAM21
は、キーオンバッファ21aと音源設定バッファ21b
を有する。キーオンバッファ21aは、MIDIデータ
中のキーオンイベントを格納し、音源設定バッファ21
bは、MIDIデータ中の音源設定情報を格納する。
【0028】RAM21は、その他、バッファやレジス
タ等のワーキングエリアを有し、外部記憶装置25に記
憶されている内容をコピーして記憶することができる。
CPU23は、ROM22又はRAM21に記憶されて
いるコンピュータプログラムに従って、各種演算または
処理を行う。CPU23は、タイマ24から時間情報を
得ることができる。
【0029】外部記憶装置25は、例えばハードディス
クドライブ(HDD)である。HDD25は動作プログ
ラムやMIDIデータ等の各種データを記憶することが
できる。ROM22に動作プログラムが記憶されていな
い場合、このHDD25内のハードディスクに動作プロ
グラムを記憶させておき、それをRAM21に読み込む
ことにより、ROM22に動作プログラムを記憶してい
る場合と同様の動作をCPU23にさせることができ
る。このようにすると、動作プログラムの追加やバージ
ョンアップ等が容易に行える。また、外部記憶装置25
は、HDD及びCD−ROM(コンパクトディスク−リ
ード・オンリィ・メモリ)ドライブを含むCD−ROM
ドライブは、CD−ROMに記憶されている動作プログ
ラムや各種データを読み出すことができる。読み出した
動作プログラムや各種データは、HDD内のハードディ
スクにストアされる。動作プログラムの新規インストー
ルやバージョンアップ等が容易に行える。なお、このC
D−ROMドライブ以外にも、外部記憶装置25とし
て、フロッピィディスクドライブ、光磁気ディスク(M
O)装置等、様々な形態のメディアを利用するための装
置を設けるようにしてもよい。
【0030】通信インターフェイス29はLAN(ロー
カルエリアネットワーク)やインターネット、電話回線
等の通信ネットワーク32に接続されており、該通信ネ
ットワーク32を介して、サーバコンピュータ33と接
続される。HDD25内に上記動作プログラムや各種デ
ータが記憶されていない場合、サーバコンピュータ33
からプログラムやデータをダウンロードするために用い
られる。クライアントとなるエンコーダ3,5又はホー
ムコンピュータ9は、通信インターフェイス29及び通
信ネットワーク32を介してサーバコンピュータ33へ
と動作プログラムやデータのダウンロードを要求するコ
マンドを送信する。サーバコンピュータ33は、このコ
マンドを受け、要求された動作プログラムやデータを、
通信ネットワーク32を介してエンコーダ3,5又はホ
ームコンピュータ9へと配信し、エンコーダ3,5又は
ホームコンピュータ9が通信インターフェイス29を介
して、これらプログラムやデータを受信してHDD25
に蓄積することにより、ダウンロードが完了する。
【0031】なお、本実施例は、本実施例に対応する動
作プログラムや各種データをインストールした市販のパ
ーソナルコンピュータ等によって、実施させるようにし
てもよい。その場合には、本実施例に対応する動作プロ
グラムや各種データを、CD−ROMやフロッピィディ
スク等のパーソナルコンピュータが読み込むことができ
る記憶媒体に記憶させた状態で、ユーザーに提供しても
よい。そのパーソナルコンピュータ等が、LAN、イン
ターネット、電話回線等の通信ネットワークに接続され
ている場合には、通信ネットワークを介して、動作プロ
グラムや各種データ等をパーソナルコンピュータ等に提
供してもよい。
【0032】図3は、MIDIデータの通信エラー対策
を示す図である。図では、模式的に、キーオン中をハイ
レベルで表し、キーオフ中をローレベルで表す。
【0033】時刻t1においてキーオンを送信し、時刻
t4においてキーオフを送信する場合を説明する。時刻
t1において送信したキーオンが通信エラーを起こし、
欠落する場合がある。その場合、受信側のホームコンピ
ュータ9は、キーオンを受け取らず、キーオフのみを受
け取ることになってしまう。これでは、正常な演奏を再
現することができない。キーオンが生成されず、キーオ
フのみが生成されることは、演奏規則上ありえない。
【0034】このような状況を回避するため、時刻t1
においてキーオンを送信した後、所定時間が経過する
度、すなわち時刻t2及び時刻t3においてリカバリー
キーデータを送信する。
【0035】リカバリーキーデータは、只今キーオン中
であることを確認的に伝えるデータである。時刻t1に
おけるキーオンが受信されなかった場合でも、時刻t2
におけるリカバリーキーデータを受信することにより、
時刻t1からわずか遅れるがキーオンさせることができ
る。さらに、時刻t1及びt2の両方のデータを受信で
きない場合であっても、時刻t3におけるリカバリーキ
ーデータによりキーオンさせることができる。
【0036】ただし、楽音信号は、一般的に時間の経過
と共に減衰する。したがって、リカバリーキーデータを
送信する際には、時間経過を考慮し、ベロシティ(音
量)の減少したキーオンを送信することが好ましい。具
体的には、時刻t1,t2,t3の順で、徐々にベロシ
ティを小さくしたキーオンを送信すればよい。
【0037】上記のリカバリーキーデータによりキーオ
ンの通信エラーをリカバリーすることができる。次に、
時刻t4のキーオフが通信エラーを起こした場合のリカ
バリー方法を説明する。
【0038】キーオフが生じた後、キーオンと同様にキ
ーオフのリカバリーデータを送信することも可能であ
る。ただし、各鍵において、キーオフ中の時間はキーオ
ン中の時間より著しく長い。一旦キーオフされた後、次
のキーオンまでリカバリーデータを送ると、そのデータ
量が莫大なものになってしまう。
【0039】キーオンのリカバリーキーデータは、キー
オンの時刻t1からキーオフの時刻t4の間送信され、
時刻t4の後は送信されない。すなわち、リカバリーキ
ーデータが送信されないことは既にキーオフが生じたこ
とを意味する。もし、ホームコンピュータ9が時刻t4
におけるキーオフを受信できなかったときには、その後
にリカバリーキーデータが送信されてこないことを確認
し、現在キーオフ中であると判断すればよい。
【0040】ホームコンピュータ9は、現在キーオン中
であるにもかかわらずリカバリーキーデータが送信され
てこなくなったときには、キーオフし、音が誤って鳴り
つづける現象を防止することができる。これらの判断
は、図2のキーオンバッファ21aを参照することによ
り行う。詳細は、後にフローチャートを参照しながら説
明する。
【0041】キーオン/オフの場合と同様に、図2の音
源設定バッファ21bを参照することにより、音源設定
情報をリカバリーするためのリカバリー音源設定情報を
通信することもできる。
【0042】図4は、通信パケットのフォーマットを示
す図である。図1のエンコーダー3、5は当該パケット
を送信し、ホームコンピュータ9は当該パケットを受信
する。
【0043】パケットは、ヘッダ部41とデータ部42
からなる。ヘッダ部41は、2ワード(1ワードは16
ビット)のチェックサム43、4ワードのデータID4
4、4ワードのシーケンスナンバー45、4ワードの時
間情報46、2ワードのイベントデータ長47を有す
る。
【0044】チェックサム43は、チェックサムを除く
ヘッダ部41とデータ部42のデータの合計値である。
送信側は、当該合計値を計算し、チェックサム43とし
てパケット中に付与する。受信側は、当該合計値を計算
し、チェックサム43の値と合っていれば、通信エラー
がないことを確認することができる。
【0045】データID44は、データ部42の内容を
番号で表す。番号0、1、2はMIDIデータであり、
番号3は画像データである。MIDIデータのうち、番
号0は実イベントのデータ(通常のMIDIデータ)で
あり、番号1はリカバリーキーデータ(図3)であり、
番号2はリカバリー音源設定情報である。
【0046】シーケンスナンバー45は、パケット単位
で付与されるシーケンスナンバーである。受信側は、シ
ーケンスナンバー45を確認することにより、通信エラ
ーによりデータの順序が入れ替った場合でもリカバリー
することができる。
【0047】時間情報46は、1ビットが1msを示す
再生時間である。4ワードあれば100時間以上の時間
情報を表現することができる。時間情報46を用いれ
ば、複数の演奏会場での同時セッションが可能になる。
各演奏会場毎に演奏時間を時間情報46として付加すれ
ば、演奏会場同士の同期をとりながら自宅で同時演奏を
聴くことができる。時間情報46は、絶対時間が望まし
いが、全ての演奏会場の共通時間であれば相対時間でも
よい。
【0048】イベントデータ長47は、データ部42の
データ長を表す。データ部42は、実データ48からな
る。実データ48は、MIDIデータ又は画像データで
ある。
【0049】通信速度は、高速であることが好ましい。
例えば64kビット/s(ISDN回線)である。1パ
ケットのデータ長は、限定されないが、通信効率を考慮
すれば約1kバイト又は512バイトが好ましい。
【0050】図5は、エンコーダー3が行う送信処理を
示すフローチャートである。ステップSA1において、
MIDI楽器2からMIDIデータを受信する。ステッ
プSA2では、受信したデータをRAMにバッファリン
グする。
【0051】ステップSA3では、受信したデータのイ
ベントの種類を識別する。キーオンであれば、ステップ
SA6へ進み、当該キーオンをキーオンバッファ21a
(図2)に登録し、ステップSA7へ進む。
【0052】キーオフであれば、ステップSA4へ進
み、キーオンバッファ21aをサーチして、同一のキー
コードがあればそのキーオンをキーオンバッファ21a
から削除する。その後、ステップSA7へ進む。
【0053】音源設定情報であれば、ステップSA5へ
進み、当該音源設定情報を音源設定バッファ21b(図
2)に登録し、ステップSA7へ進む。音源設定情報
は、プログラムチェンジ、コントロールデータ、イクス
クルーシブメッセージ、その他のデータである。
【0054】ステップSA7では、図4に示すように、
チェックサム43、実イベントデータ(番号0)を示す
データID44、シーケンスナンバー45、タイマに応
じた時間情報46、イベントデータ長47を、受信した
MIDIデータに付加し、パケット化して送信する。そ
の後、送信処理を終了する。
【0055】なお、エンコーダ5は、上記の処理と同様
にして、画像データを送信する。その場合、データID
44は番号が3である。
【0056】図6(A)、(B)は、エンコーダ3が行
う割り込み処理を示すフローチャートである。当該割り
込み処理は、タイマに応じた所定時間間隔で行われる。
例えば、100〜200μsの間隔で割り込み処理が行
われる。
【0057】図6(A)は、リカバリーキーデータの送
信処理を示すフローチャートである。
【0058】ステップSB1では、キーオンバッファ2
1a(図2)をサーチする。ステップSB2では、キー
オンバッファ21a中のイベントデータを、リカバリー
キーデータとして、図4に示すようにパケット化して送
信する。ただし、リカバリーキーデータは、時間経過を
考慮して、キーオンバッファ21a中のキーオンよりも
減少させたベロシティを設定する。
【0059】パケット中のデータID44は、リカバリ
ーキーデータを示す番号1である。シーケンスナンバー
45は、実イベントデータ(図5)とリカバリーキーデ
ータ(図6(A))との共通のシーケンスナンバーであ
る。送信後、割り込み前の処理に戻る。
【0060】図6(B)は、リカバリー音源設定情報の
送信処理を示すフローチャートである。当該送信処理
は、比較的時間的精度が要求されないので、リカバリー
キーデータの送信処理(図6(A))よりも長い周期で
行ってもよい。
【0061】ステップSC1では、音源設定バッファ2
1b(図2)をサーチする。ステップSC2では、音源
設定バッファ21b中のイベントデータを、リカバリー
音源設定情報として、図4に示すようにパケット化して
送信する。
【0062】パケット中のデータID44は、リカバリ
ー音源設定情報を示す番号2である。シーケンスナンバ
ー45は、実イベントデータ(図5)とリカバリーキー
データ(図6(A))とリカバリー音源設定情報(図6
(B))との共通のシーケンスナンバーである。送信
後、割り込み前の処理に戻る。
【0063】図7は、ホームコンピュータ9が行う受信
処理を示すフローチャートである。ステップSD1にお
いて、インターネット上のデータを受信する。ステップ
SD2では、パケット中のチェックサム43(図4)を
確認する。
【0064】ステップSD3では、チェックサムの結果
をチェックする。チェックサムがエラーであれば、パケ
ット中にデータの誤りがあることを示すので、ステップ
SD9へ進み、何もせずに処理を終了する。信頼性に欠
けるデータは捨てることにより、誤った発音や設定をな
くすことが効果的である。
【0065】チェックサムが正常であれば、データの信
頼性があるので、ステップSD4へ進む。ステップSD
4では、パケット中のシーケンスナンバー45(図4)
を確認する。正常な通信では、受信毎にシーケンスナン
バー45が順次増加するが、通信エラーにより受信デー
タの順番が入れ替わることがある。
【0066】ステップSD5では、受信したデータが再
生すべきシーケンスナンバー45であり、かつホームコ
ンピュータ9の現時刻が再生すべき時間情報46(図
4)以降であるか否かをチェックする。複数の演奏会場
での同時セッションを行う場合には、ある演奏会場の時
間情報46が未だ再生すべき時間になっていないことが
ある。
【0067】未だ再生すべきでないときには、ステップ
SD10へ進み、受信したデータをRAMにバッファリ
ングし、後の適正なタイミングでの処理に備える。その
後、処理を終了する。
【0068】再生すべきであるときには、ステップSD
6へ進み、イベント処理を行う。イベント処理は、MI
DIデータや画像データ等のイベントに応じた処理であ
る。詳細は、後に図8のフローチャートを参照しながら
説明する。
【0069】ステップSD7では、シーケンスナンバー
をカウントアップする。ステップSD8では、ステップ
SD10でバッファリングしたバッファ内のデータが、
再生すべきシーケンスナンバー45であり、かつ現時刻
が再生すべき時間情報46以降のものがあるか否かをチ
ェックする。
【0070】再生すべきものがないときには、処理を終
了する。再生すべきものがあるときには、ステップSD
6へ進み、当該データについての処理を繰り返す。バッ
ファ内に再生すべきデータがなくなるまで、当該処理を
繰り返す。この処理により、通信エラーによりデータの
順序が入れ替わって受信したデータをも適切に処理する
ことができる。
【0071】図8は、図7のステップSD6に示すイベ
ント処理の詳細を示すフローチャートである。
【0072】ステップSE1では、データIDの番号を
識別する。番号が0であれば、実イベントデータを示
し、ステップSE2へ進む。ステップSE2では、イベ
ントの種類を識別する。
【0073】キーオンであれば、ステップSE3へ進
み、当該キーオンをキーオンバッファ21a(図2)に
登録し、音源へ転送する。音源は、キーオンを受けて、
発音開始のための処理を行う。その後、図7の処理へ戻
る。
【0074】キーオフであれば、ステップSE4へ進
み、キーオンバッファ21aをサーチして、同一のキー
コードがあれば、キーオンバッファ21a中のキーオン
を削除し、当該キーオフを音源へ転送する。音源は、キ
ーオフを受けて、消音のための処理を行う。その後、図
7の処理へ戻る。
【0075】音源設定情報であれば、ステップSE5へ
進み、当該音源設定情報を音源設定バッファ21bに登
録し、音源へ転送する。音源は、音源設定情報を受け
て、音色、音量等を設定する。その後、図7の処理へ戻
る。
【0076】データIDの番号が1であれば、受信した
データがリカバリーキーデータであることを意味し、ス
テップSE6へ進む。当該リカバリーキーデータを現在
のキーオンバッファ21aと比較し、その差分をイベン
ト化してキーオンバッファ21aに登録して、音源へ転
送する。この処理により、通信エラーにより欠落したキ
ーオンをリカバリーすることができる。
【0077】ステップSE7では、当該リカバリーキー
データを受信したことを登録する。キーオフ後は、リカ
バリーキーデータが送信されてこなくなるので、この登
録を行うことにより、対応するキーオンが現在もキーオ
ン中であることを確認することができる。キーオンバッ
ファにキーオンが存在するにもかかわらず、リカバリー
キーデータが送信されてこなくなったら、キーオフが欠
落していることを示す。その後、図7の処理へ戻る。
【0078】データIDの番号が2であれば、受信した
データがリカバリー音源設定情報であることを意味し、
ステップSE8へ進む。当該リカバリー音源設定情報を
現在の音源設定バッファ21bと比較し、その差分をイ
ベント化して音源設定バッファ21bに登録して、音源
へ転送する。この処理により、通信エラーにより欠落し
た音源設定情報をリカバリーすることができる。
【0079】データIDの番号が3であれば、受信した
データが画像データであることを意味し、ステップSE
9へ進む。ステップSE9では、当該画像データを表示
器に表示する表示を行う。ただし、画像データは、MI
DIデータよりも優先度を低くして処理を行う。表示す
る画像は、原則として1画面を単位として処理を行う。
MIDIデータを優先させるため、画像は静止画像でも
よい。その後、図7の処理へ戻る。
【0080】図9は、ホームコンピュータ9が行う割り
込み処理を示すフローチャートである。当該割り込み処
理は、タイマに応じた所定時間間隔で行われる。例え
ば、100〜200μsの間隔で割り込み処理が行われ
る。
【0081】ステップSF1では、キーオンバッファ2
1a(図2)をサーチする。ステップSF2では、キー
オンバッファ21a中のキーオンに対し、一定時間リカ
バリーキーデータを受信しないものについては、当該キ
ーオンを削除し、対応するキーオフを音源に転送する。
送信後、割り込み前の処理に戻る。
【0082】この処理により、通信エラーによりキーオ
フが欠落した際にも、誤って音が鳴り続けることを防止
することができる。なお、一定時間リカバリーキーデー
タを受信しないことの判断は、図8のステップSE7で
リカバリーキーデータの受信を登録することにより、可
能となる。
【0083】上記のリカバリーキーデータ及びリカバリ
ー音源設定情報を送信することにより、データの欠落又
は化けが生じた場合にも、適切なリカバリーを行うこと
ができる。
【0084】本実施例は、インターネットを用いること
により、演奏会場における演奏情報(MIDIデータ)
及び演奏映像(画像データ)を、不特定多数のユーザに
供給することができる。ユーザは、演奏会場に赴かなく
ても、自宅にいながらリアルタイムでMIDIデータ及
び画像データを得ることができる。
【0085】また、複数の演奏会場において、各エンコ
ーダがMIDIデータ等に共通の時間情報を付与すれ
ば、複数の会場間でのセッションが可能になる。
【0086】なお、本実施例は、インターネットに限定
されない。例えば、IEEE1394規格のデジタルシ
リアル通信や通信衛星等の他の通信にも適用することが
できる。
【0087】以上実施例に沿って本発明を説明したが、
本発明はこれらに制限されるものではない。例えば、種
々の変更、改良、組み合わせ等が可能なことは当業者に
自明であろう。
【0088】
【発明の効果】以上説明したように、本発明によれば、
通信ネットワークを用いることにより、不特定多数のノ
ードに対してMIDIデータを送信することができる。
また、各ノードは、通信ネットワーク上のMIDIデー
タをリアルタイムで再生し、発音させることができる。
【0089】また、MIDIデータを送信しても、通信
エラーがあれば、相手方は正常に当該MIDIデータを
受信できないが、その場合でも、リカバリーデータを送
信することにより、通信エラーを回復することができ
る。
【図面の簡単な説明】
【図1】 楽音情報の通信ネットワークを示す図であ
る。
【図2】 エンコーダー及びホームコンピュータのハー
ドウエアの構成を示す図である。
【図3】 MIDIデータの通信エラー対策の方法を示
す図である。
【図4】 通信パケットのフォーマットを示す図であ
る。
【図5】 エンコーダーが行う送信処理を示すフローチ
ャートである。
【図6】 エンコーダーが行う割り込み処理を示すフロ
ーチャートである。図6(A)はリカバリーキーデータ
の送信処理を示すフローチャートであり、図6(B)は
リカバリー音源設定情報の送信処理を示すフローチャー
トである。
【図7】 ホームコンピュータが行う受信処理を示すフ
ローチャートである。
【図8】 図7のステップSD6に示すイベント処理の
詳細を示すフローチャートである。
【図9】 ホームコンピュータが行う割り込み処理を示
すフローチャートである。
【符号の説明】
1 演奏会場、 2 MIDI楽器、 3,5 エ
ンコーダー、 4カメラ、 6 ルータ、 7
サーバー、 8 WWWサーバー、 9ホームコン
ピュータ、 10 MIDI音源、 11 音声出
力装置、21 RAM、 21a キーオンバッフ
ァ、 21b 音源設定情報バッファ、 22 R
OM、 23 CPU、 24 タイマ、 25
外部記憶装置、 26 入力装置、 27 表示
器、 28 音源、29 インターネット用インター
フェース、 30 MIDIインターフェース、
31 バス、 41 ヘッダ部、 42 データ
部、 43 チェックサム、 44 データID、
45 シーケンスナンバー、 46時間情報、
47 イベントデータ長、 48 MIDIデータ
又は画像データ

Claims (17)

    【特許請求の範囲】
  1. 【請求項1】 a)MIDIデータを通信ネットワーク
    上に送信する工程と、 b)前記送信されたMIDIデータを受信し、リアルタ
    イムで該MIDIデータを音源に供給する工程とを含む
    楽音情報の通信方法。
  2. 【請求項2】 さらに、前記工程aの前に、演奏者の演
    奏操作に応じてMIDIデータを生成する工程を含む請
    求項1記載の楽音情報の通信方法。
  3. 【請求項3】 前記工程bは、前記MIDIデータに応
    じた楽音を発音する工程を含む請求項1または2記載の
    楽音情報の通信方法。
  4. 【請求項4】 演奏者の演奏操作に応じてMIDIデー
    タを生成し、該生成したMIDIデータをリアルタイム
    で通信ネットワーク上に送信する送信手段を有する楽音
    情報の通信装置。
  5. 【請求項5】 通信ネットワーク上のMIDIデータを
    受信し、リアルタイムで該MIDIデータを音源に供給
    する受信手段を有する楽音情報の通信装置。
  6. 【請求項6】 a)MIDIデータを送信する工程と、 b)前記MIDIデータを送信した後、前記MIDIデ
    ータが送信済であることを示すリカバリーデータを送信
    する工程とを含む楽音情報の通信方法。
  7. 【請求項7】 さらに、前記MIDIデータを受信した
    ときには該MIDIデータに応じた楽音情報を音源に供
    給し、前記MIDIデータを受信せず前記リカバリーデ
    ータを受信したときには該リカバリーデータに応じた楽
    音情報を音源に供給する工程を含む請求項6記載の楽音
    情報の通信方法。
  8. 【請求項8】 さらに、キーオフデータを第2の時間に
    送信する工程を含み、 前記工程aは、キーオンデータを第1の時間に送信する
    工程であり、 前記工程bは、前記第1の時間から前記第2の時間まで
    の間リカバリーデータを送信する工程である請求項6ま
    たは7記載の楽音情報の通信方法。
  9. 【請求項9】 MIDIデータを第1の時間に送信する
    MIDIデータ送信手段と、 前記第1の時間経過後、前記MIDIデータが送信済で
    あることを示すリカバリーデータを送信するリカバリー
    データ送信手段とを有する楽音情報の通信装置。
  10. 【請求項10】 a)MIDIデータを通信ネットワー
    ク上に送信する手順と、 b)前記送信されたMIDIデータを受信し、リアルタ
    イムで該MIDIデータを音源に供給する手順とをコン
    ピュータに実行させるためのプログラムを記録した媒
    体。
  11. 【請求項11】 さらに、前記手順aの前に、演奏者の
    演奏操作に応じてMIDIデータを生成する手順を含む
    請求項10記載のプログラムを記録した媒体。
  12. 【請求項12】 前記手順bは、前記MIDIデータに
    応じた楽音を発音する手順を含む請求項10または11
    記載のプログラムを記録した媒体。
  13. 【請求項13】 演奏者の演奏操作に応じてMIDIデ
    ータを生成し、該生成したMIDIデータをリアルタイ
    ムで通信ネットワーク上に送信する手順をコンピュータ
    に実行させるためのプログラムを記録した媒体。
  14. 【請求項14】 通信ネットワーク上のMIDIデータ
    を受信し、リアルタイムで該MIDIデータを音源に供
    給する手順をコンピュータに実行させるためのプログラ
    ムを記録した媒体。
  15. 【請求項15】 a)MIDIデータを送信する手順
    と、 b)前記MIDIデータを送信した後、前記MIDIデ
    ータが送信済であることを示すリカバリーデータを送信
    する手順とをコンピュータに実行させるためのプログラ
    ムを記録した媒体。
  16. 【請求項16】 さらに、前記MIDIデータを受信し
    たときには該MIDIデータに応じた楽音情報を音源に
    供給し、前記MIDIデータを受信せず前記リカバリー
    データを受信したときには該リカバリーデータに応じた
    楽音情報を音源に供給する手順を含む請求項15記載の
    プログラムを記録した媒体。
  17. 【請求項17】 さらに、キーオフデータを第2の時間
    に送信する手順を含み、 前記工程aは、キーオンデータを第1の時間に送信する
    工程であり、 前記工程bは、前記第1の時間から前記第2の時間まで
    の間リカバリーデータを送信する手順である請求項15
    または16記載のプログラムを記録した媒体。
JP34163997A 1996-12-27 1997-12-11 楽音情報の通信方法、通信装置及びプログラムを記録した媒体 Expired - Fee Related JP3271572B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP34163997A JP3271572B2 (ja) 1996-12-27 1997-12-11 楽音情報の通信方法、通信装置及びプログラムを記録した媒体

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
JP34993996 1996-12-27
JP8-349939 1996-12-27
JP34163997A JP3271572B2 (ja) 1996-12-27 1997-12-11 楽音情報の通信方法、通信装置及びプログラムを記録した媒体

Publications (2)

Publication Number Publication Date
JPH10240242A true JPH10240242A (ja) 1998-09-11
JP3271572B2 JP3271572B2 (ja) 2002-04-02

Family

ID=26577009

Family Applications (1)

Application Number Title Priority Date Filing Date
JP34163997A Expired - Fee Related JP3271572B2 (ja) 1996-12-27 1997-12-11 楽音情報の通信方法、通信装置及びプログラムを記録した媒体

Country Status (1)

Country Link
JP (1) JP3271572B2 (ja)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2001046829A1 (en) * 1999-12-20 2001-06-28 Hanseulsoft Co., Ltd. Network based music playing/song accompanying service system and method
KR100343787B1 (ko) * 2000-07-08 2002-07-20 강승일 웹을 이용한 자동 편곡 시스템 및 방법
JP2005221657A (ja) * 2004-02-04 2005-08-18 Yamaha Corp 通信端末

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2001046829A1 (en) * 1999-12-20 2001-06-28 Hanseulsoft Co., Ltd. Network based music playing/song accompanying service system and method
KR100343787B1 (ko) * 2000-07-08 2002-07-20 강승일 웹을 이용한 자동 편곡 시스템 및 방법
JP2005221657A (ja) * 2004-02-04 2005-08-18 Yamaha Corp 通信端末

Also Published As

Publication number Publication date
JP3271572B2 (ja) 2002-04-02

Similar Documents

Publication Publication Date Title
EP0855697B1 (en) Real time transmission of musical tone information
JP3242028B2 (ja) データ送受信方法およびシステム
JP3846344B2 (ja) セッション装置およびその制御方法を実現するためのプログラム
JP3180708B2 (ja) 音源設定情報通信装置
JP3852348B2 (ja) 再生及び送信切替装置及びプログラム
JPH07302091A (ja) カラオケ通信システム
JP3271572B2 (ja) 楽音情報の通信方法、通信装置及びプログラムを記録した媒体
JPH07303120A (ja) ディジタル通信システム
JP3358528B2 (ja) 通信装置及び通信方法
JP3180751B2 (ja) データの通信装置、通信方法、通信システム及びプログラムを記録した媒体
US6525253B1 (en) Transmission of musical tone information
JP3705581B2 (ja) データ送信方法および送信システム
JPH11284588A (ja) 通信装置、通信方法及びプログラムを記録した媒体
JP3196681B2 (ja) 通信データ一時記憶装置
JP2004094683A (ja) サーバ、通信方法及び観客端末
JP2004093975A (ja) 通信端末及びプログラム
JP4131678B2 (ja) 演奏データ通信システム
JP3786039B2 (ja) 通信装置及び方法
JP4200996B2 (ja) 楽音発生システムにおける処理装置
GB2618326A (en) Electronic device for use with an audio device
JP2007256375A (ja) 楽音発生システム
JP2002215144A (ja) 演奏者及び楽器の認証方法、楽器及び楽器の制御方法
JP2002215150A (ja) 演奏装置および演奏システム
JPH10228292A (ja) カラオケシステム
JP2004294519A (ja) 通信装置、通信方法及びプログラム

Legal Events

Date Code Title Description
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20011225

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: 20090125

Year of fee payment: 7

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

Free format text: PAYMENT UNTIL: 20100125

Year of fee payment: 8

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

Free format text: PAYMENT UNTIL: 20110125

Year of fee payment: 9

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

Free format text: PAYMENT UNTIL: 20120125

Year of fee payment: 10

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

Free format text: PAYMENT UNTIL: 20130125

Year of fee payment: 11

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

Free format text: PAYMENT UNTIL: 20140125

Year of fee payment: 12

LAPS Cancellation because of no payment of annual fees