JP3861873B2 - Music system and music data transmission / reception device - Google Patents

Music system and music data transmission / reception device Download PDF

Info

Publication number
JP3861873B2
JP3861873B2 JP2003412292A JP2003412292A JP3861873B2 JP 3861873 B2 JP3861873 B2 JP 3861873B2 JP 2003412292 A JP2003412292 A JP 2003412292A JP 2003412292 A JP2003412292 A JP 2003412292A JP 3861873 B2 JP3861873 B2 JP 3861873B2
Authority
JP
Japan
Prior art keywords
data
music
sample
waveform
timing information
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.)
Expired - Fee Related
Application number
JP2003412292A
Other languages
Japanese (ja)
Other versions
JP2005173136A (en
Inventor
正宏 清水
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 JP2003412292A priority Critical patent/JP3861873B2/en
Publication of JP2005173136A publication Critical patent/JP2005173136A/en
Application granted granted Critical
Publication of JP3861873B2 publication Critical patent/JP3861873B2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Landscapes

  • Electrophonic Musical Instruments (AREA)

Description

この発明は、波形データ(波形サンプルデータ)や演奏データ(MIDI形式やその他の形式の演奏データ)などの音楽データをネットワークを介して送受することのできる音楽システムに関し、更には音楽データ送受装置に関する。   The present invention relates to a music system capable of transmitting and receiving music data such as waveform data (waveform sample data) and performance data (performance data of MIDI format and other formats) via a network, and further relates to a music data transmitting / receiving apparatus. .

マルチメディアに対応した所定の通信規格(例えばIEEE1394規格)に従って構成されたネットワークにおいて、波形データ(波形サンプルデータ)や演奏データ(MIDIのような演奏イベントデータ)などの音楽データを送受できるように構成した音楽システム(例えば商標「mLAN」で呼ばれる当出願人の開発に係る音楽システム)がある。そのような音楽システムにおいては、ネットワークを介して複数のノード例えばパーソナルコンピュータなどの制御装置や各種の音楽機器(シンセサイザ、音源装置、レコーダ、ミキサなど、波形データ及び/又はMIDIデータなどの音楽データの入出力機能ないし再生機能を具備する機器)を接続してシステムが構成され、多数の波形データストリームあるいはMIDIデータストリームを、任意のノードから任意の複数ノードに流すことができる。これに関連する公知文献として下記がある。
特開平10−32606号公報 特開2000−78170号公報 特開2000−278353号公報
Configured so that music data such as waveform data (waveform sample data) and performance data (performance event data such as MIDI) can be transmitted and received in a network configured in accordance with a predetermined communication standard corresponding to multimedia (for example, IEEE 1394 standard). Music systems (for example, music systems according to the applicant's development called under the trademark “mLAN”). In such a music system, a plurality of nodes such as control devices such as personal computers and various music devices (synthesizers, tone generators, recorders, mixers, etc.) such as waveform data and / or MIDI data are stored. A system is configured by connecting devices having an input / output function or a playback function, and a large number of waveform data streams or MIDI data streams can flow from any node to any plurality of nodes. There are the following publicly known documents related to this.
Japanese Patent Laid-Open No. 10-32606 JP 2000-78170 A JP 2000-278353 A

特許文献2には、上述のような音楽システムにおいて、複数のノード間でサンプル時刻を同期させて波形データ処理を行うために、ワードクロックを使用することが示されている。また、特許文献2,3には、複数サンプルの波形データを含むデータパケットを送信するとき、そのサンプル番号すなわちサンプル時刻を示す情報を所定のオフセット値を加算した未来のサンプル時刻を示す情報に変換し、これをパケットに付加して送信することが示されている。再生ノードにおいては、受信した波形データに付加された未来のサンプル時刻が到来したときに該波形データを再生するものとし、これにより、転送時間遅れ(及び時間揺れ)を吸収することができる。また、特許文献3においては、上述のような音楽システムにおいて、オーディオデータ(波形データ)とMIDIデータのような演奏データとを送受するようにしたことが示されている。この場合、MIDIデータ再生処理を送信側のCPUで行い、その再生(演奏)タイミングで送信パケットに入れて送信するようにしているため、それ以後の伝送路における時間的揺らぎの影響を受ける、という問題がある。   Japanese Patent Application Laid-Open No. H10-228561 discloses that in a music system as described above, a word clock is used to perform waveform data processing by synchronizing sample times among a plurality of nodes. In Patent Documents 2 and 3, when a data packet including waveform data of a plurality of samples is transmitted, the information indicating the sample number, that is, the sample time is converted into information indicating the future sample time obtained by adding a predetermined offset value. It is shown that this is added to the packet and transmitted. In the reproduction node, the waveform data is reproduced when the future sample time added to the received waveform data arrives, and thereby, the transfer time delay (and time fluctuation) can be absorbed. Japanese Patent Application Laid-Open No. 2004-228561 shows that audio data (waveform data) and performance data such as MIDI data are transmitted and received in the music system as described above. In this case, the MIDI data reproduction processing is performed by the CPU on the transmission side, and is transmitted in the transmission packet at the reproduction (performance) timing, so that it is affected by temporal fluctuations in the transmission path thereafter. There's a problem.

従来の音楽システムでは、入力された音楽データを音楽機器から制御装置(PC)に送信して記録させる場合、上述のように、その音楽データの生成時現在のサンプル時刻又はサンプル番号をそのまま該送信すべき音楽データに付加するタイミング情報とはせず、その現在サンプル時刻又はサンプル番号に所定のオフセット値を加えた未来のサンプル時刻又はサンプル番号を該送信すべき音楽データに付加するタイミング情報としていた。該音楽機器から送信された音楽データを受信した制御装置では、該受信した音楽データを記憶装置に記憶する場合に、該音楽データを受信後にそのオフセット加算された(未来の)サンプル時刻又はサンプル番号のタイミングが到来するので、上述のように転送時間遅れを吸収して、該音楽データに付加されたタイミング情報が示すタイミングで該音楽データを再生することができる。このとき、記憶装置に記録される該受信した音楽データのサンプル時刻又はサンプル番号は、制御装置で音楽データが再生されたタイミングのタイミング情報が示すものに変わっている。   In a conventional music system, when input music data is transmitted from a music device to a control device (PC) for recording, the current sample time or sample number when the music data is generated is transmitted as it is as described above. The timing information added to the music data to be transmitted is not the timing information added to the music data to be transmitted, but the future sample time or sample number obtained by adding a predetermined offset value to the current sample time or sample number. . In the control device that has received the music data transmitted from the music device, when the received music data is stored in the storage device, the (future) sample time or sample number added with the offset after receiving the music data Therefore, the music data can be reproduced at the timing indicated by the timing information added to the music data by absorbing the transfer time delay as described above. At this time, the sample time or sample number of the received music data recorded in the storage device is changed to that indicated by the timing information of the timing at which the control device reproduces the music data.

一方、記憶された音楽データを制御装置(PC)から音楽機器に送信する場合においては、該音楽データを送信する際の現在サンプル時刻又はサンプル番号に所定のオフセット値を加算したタイミング情報を生成し、このオフセット加算されたタイミング情報を該音楽データに付加して送信するようになっていた。従って、この場合も、該制御装置から送信された音楽データを受信した音楽機器では、該音楽データを受信後のオフセット加算された(未来の)サンプル時刻又はサンプル番号のタイミングで該音楽データを再生することができるので、転送時間遅れを吸収した再生処理が可能である。   On the other hand, when the stored music data is transmitted from the control device (PC) to the music device, timing information is generated by adding a predetermined offset value to the current sample time or sample number when transmitting the music data. The timing information added with the offset is added to the music data for transmission. Therefore, also in this case, the music device that has received the music data transmitted from the control device reproduces the music data at the timing of the (future) sample time or sample number to which the offset has been added after receiving the music data. Therefore, reproduction processing that absorbs the transfer time delay is possible.

このように、送信するパケットに含まれる音楽データに付加するタイミング情報として、現在のサンプル時刻又はサンプル番号ではなくそれに所定のオフセット値を加算した未来のサンプル時刻又はサンプル番号を示すタイミング情報を用いるやり方は、入力された音楽データを転送して受信側で再生するだけの場合は特に目立った問題はないが、受信した音楽データを一旦記録し、これを読み出してまた転送して再生させるような場合には、複数回にわたる送信によってオフセット値が累積されることで予期しなかった大きなタイミングずれをもたらすことになる。すなわち、PCで記憶された音楽データを読み出して音楽機器に転送したときから該音楽機器でその音楽データが再生されるまでの遅延時間(再生遅延時間)と、該音楽機器で再生した音楽データを再びPCに転送して記録させるような場合(例えばPCから転送して再生させた音楽データと新たに入力された音楽データの混合した音楽データをPCに転送して記録させるような場合)の遅延時間(記録遅延時間)とが重複して生じることになる。   As described above, as the timing information added to the music data included in the packet to be transmitted, the timing information indicating the future sample time or sample number obtained by adding a predetermined offset value to the current sample time or sample number is used instead of the current sample time or sample number. Is not particularly noticeable when the input music data is simply transferred and played back on the receiving side, but when the received music data is temporarily recorded, read out and transferred for playback. In this case, an offset value is accumulated by a plurality of transmissions, which causes an unexpected large timing shift. That is, the delay time (playback delay time) from when the music data stored on the PC is read out and transferred to the music device until the music data is played back on the music device, and the music data played back on the music device are Delay when transferring to PC again and recording (for example, transferring music data mixed from music data transferred from PC and newly input music data to PC for recording) Time (recording delay time) overlaps.

また、音楽データとして、波形データと演奏データを同時に転送して再生ないし記録する場合、従来の音楽システムでは、波形データの各サンプルの実際の再生タイミングの遅れとして現われる上記オフセット値が、MIDIのような演奏データの実際の演奏タイミングには反映されないので、両データの間で、再生タイミング又は記録データ上の演奏タイミングに差が生じるという問題があった。よって、従来の音楽システムは、波形データとMIDIのような演奏データとを一緒に送信して両者を同期して再生するには適していなかった。   Further, when waveform data and performance data are simultaneously transferred and reproduced or recorded as music data, in the conventional music system, the offset value that appears as a delay in the actual reproduction timing of each sample of waveform data is the same as MIDI. Therefore, there is a problem in that there is a difference in reproduction timing or performance timing on recorded data between the two data. Therefore, the conventional music system is not suitable for transmitting waveform data and performance data such as MIDI together and reproducing them synchronously.

この発明は上述の点に鑑みてなされたもので、音楽データの転送時間遅れの問題とそれに伴う不都合を解決しうる音楽システムを提供しようとするものであって、波形データと演奏データとを一緒に転送して再生又は記録する場合不都合のない音楽システムを提供しようとするものである。 The present invention has been made in view of the above, I der intended to provide a music system that can solve the problems and disadvantages associated therewith transfer time delay of the music data, the waveform data and performance data It is an object of the present invention to provide a music system that is inconvenient when transferred and played back or recorded together.

この発明に係る請求項1の音楽システムは、波形の入力を行う機能と波形の再生機能を有する音楽機器と、該音楽機器に対してネットワークを介して接続され、順次に再生されるべき波形のサンプルを記憶手段に記憶・読出する制御装置とを含み、波形の記録と再生を同時並行的に行う音楽システムであって、前記音楽機器と前記制御装置は、それぞれ波形のサンプリング周期をカウントするサンプルカウンタを有するとともに、それらのサンプルカウンタは、前記ネットワークを介して相互に同期化されており、当該音楽システムの記録系統にあっては、前記音楽機器が、入力した波形のサンプルデータに当該音楽機器のサンプルカウンタのカウント値に対応するタイミング情報を付与して送信する入力制御手段具備し、かつ、前記制御装置が、前記送信された波形のサンプルデータを受信し、該受信したサンプルデータを該サンプルデータに付与されたタイミング情報に従う順序で前記記憶手段に記憶させる記録制御手段具備しており、また、当該音楽システムの再生系統にあっては、前記制御装置が、当該制御装置のサンプルカウンタのカウント値に対応するサンプルデータより後の再生順の波形のサンプルデータを前記記憶手段から読み出し、該読み出したサンプルデータに該再生順に応じたタイミング情報を付与して送信する読出制御手段を具備し、かつ、前記音楽機器が、前記送信された波形のサンプルデータを受信し、該受信したサンプルデータを、該サンプルデータに付与されたタイミング情報と当該音楽機器のサンプルカウンタとに従うタイミングで再生処理する再生制御手段を具備することを特徴とする。 According to a first aspect of the present invention, there is provided a music system having a waveform input function and a waveform reproduction function , and a waveform connected to the music apparatus via a network and sequentially reproduced. look including a control device for storing and reading in the storage unit samples, a music system which records and reproduces waveform concurrently, the control device and the musical instrument counts the sampling period of the waveform, respectively The sample counters are synchronized with each other via the network, and in the recording system of the music system, the music device inputs the music sample into the sample data of the input waveform. It includes an input control means for transmitting grant timing information corresponding to the count value of the sample counter of the device, and the control Location receives the sample data of the transmitted waveform, and the sample data thus received includes a recording control means for storing in said memory means in an order according to the timing information given to the sample data, and In the playback system of the music system, the control device reads the sample data of the waveform in the playback order after the sample data corresponding to the count value of the sample counter of the control device from the storage means, Read control means for adding timing information according to the playback order to the sample data and transmitting it, and the music device receives the sample data of the transmitted waveform, and the received sample data Playback processing is performed at a timing according to the timing information given to the sample data and the sample counter of the music device. Characterized by comprising a reproduction control means for.

本発明によれば、ネットワークを介して接続された音楽機器と制御装置は、それぞれ波形のサンプリング周期をカウントするサンプルカウンタを有しており、それらのサンプルカウンタは該ネットワークを介して相互に同期化されている。記録系統にあっては、音楽機器の入力制御手段により、入力した波形のサンプルデータに当該音楽機器のサンプルカウンタのカウント値に対応するタイミング情報を付与して送信し、かつ、制御装置の記録制御手段により、該送信された波形のサンプルデータを受信し、該受信したサンプルデータを該サンプルデータに付与されたタイミング情報に従う順序で該制御装置の記憶手段に記憶する。再生系統にあっては、制御装置の読出制御手段により、当該制御装置のサンプルカウンタのカウント値に対応するサンプルデータより後の再生順の波形のサンプルデータを前記記憶手段から読み出し、該読み出したサンプルデータに該再生順に応じたタイミング情報を付与して送信し、かつ、音楽機器の再生制御手段により、該送信された波形のサンプルデータを受信し、該受信したサンプルデータを、該サンプルデータに付与されたタイミング情報と当該音楽機器のサンプルカウンタとに従うタイミングで再生処理する。
これにより、音楽機器と制御装置がネットワークを介して接続されているにもかかわらず、制御装置の記憶手段に記憶された波形のサンプルデータを、音楽機器においてその記憶順に対応する正確なタイミングで再生し、同時に、音楽機器で入力する波形のサンプルデータを、制御装置の記憶手段にその正確なタイミングに対応する記憶順で記憶することができる。例えば、音楽機器において、再生される波形のサンプルデータに基づく音を聴きながら別の波形のサンプルデータを入力すると、再生される波形のサンプルデータのタイミング情報と同じタイミングを示すタイミング情報が該入力された波形のサンプルデータに付与されるので、再生される波形のサンプルデータと記録する波形のサンプルデータとを正確なタイミングで同期させることができる。
また、記録系統にあっては、音楽機器から送信されてきた波形のサンプルデータを受け手側の制御装置で記憶する際に、従来のようなオフセット値相当分の時間遅れを持つサンプル時刻に対応して記憶されることがなく、送り手側の音楽機器のサンプルカウンタのカウント値に対応するタイミング情報に従う順序で記憶されることになり、記録遅延時間が存在しなくなる。従って、従来のような不都合が解決される
According to the present invention , a music device and a control device connected via a network each have a sample counter that counts a waveform sampling period, and these sample counters are synchronized with each other via the network. Has been. In the recording system, the input control means of the music device transmits the input waveform sample data with timing information corresponding to the count value of the sample counter of the music device, and the recording control of the control device The means receives the sample data of the transmitted waveform, and stores the received sample data in the storage means of the control device in the order according to the timing information given to the sample data. In the reproduction system, the readout control means of the control device reads the sample data of the waveform in the reproduction order after the sample data corresponding to the count value of the sample counter of the control device from the storage means, and the read sample The timing information corresponding to the playback order is added to the data and transmitted, and the playback control means of the music device receives the sample data of the transmitted waveform, and adds the received sample data to the sample data Playback processing is performed at a timing according to the timing information and the sample counter of the music device.
As a result, the waveform sample data stored in the storage means of the control device is played back at an accurate timing corresponding to the storage order in the music device even though the music device and the control device are connected via the network. At the same time, the waveform sample data input by the music device can be stored in the storage unit of the control device in the storage order corresponding to the exact timing. For example, in a music device, when sample data of another waveform is input while listening to sound based on the sample data of the waveform to be reproduced, timing information indicating the same timing as the timing information of the sample data of the waveform to be reproduced is input. Therefore, the sample data of the waveform to be reproduced and the sample data of the waveform to be recorded can be synchronized with accurate timing.
Also, in the recording system, when the waveform sample data transmitted from the music device is received and stored in the control device on the receiver side , it corresponds to the sample time having a time delay corresponding to the offset value as in the prior art. Are stored in the order according to the timing information corresponding to the count value of the sample counter of the music instrument on the sender side, and there is no recording delay time. Therefore, the conventional inconvenience is solved .

また、再生系統にあっては、制御装置の記憶手段からはサンプルカウンタのカウント値に対応するサンプルデータより後の再生順の波形のサンプルデータが読み出され、これが該再生順に応じたタイミング情報を付与されて送信されるので、このタイミング情報には従来のようなオフセット値相当分の時間遅れが存在せず、該サンプルデータの本来の再生順に応じたタイミング情報が維持される。受信側の音楽機器では、適宜の転送時間遅れをもって、このサンプルデータ受け取るのであるが、該受信したサンプルデータそのものが送信時のサンプルカウンタのカウント値に対応するサンプルデータより後の再生順に対応するものであり、それに付与されているタイミング情報も当該再生順に応じたものとなっている。従って、該受信した波形のサンプルデータを該サンプルデータに付与されたタイミング情報に従うタイミングで再生処理することで、何の不都合もなく、再生を行うことができる。このように、再生系統にあっては、制御装置から送信されてきた波形のサンプルデータを受け手側の音楽機器で再生する際に、従来のような音楽データの本来のサンプル時刻からオフセット値相当分の時間遅れのサンプル時刻で再生されることがなく、波形のサンプルデータに付与されているタイミング情報に従って再生することとなり、再生遅延時間が存在しなくなる。従って、従来のような不都合が解決される。 Further, in the reproduction system, the sample data of the reproduction order of the waveform after the sample data corresponding to the count value of the sample counter from the memory means of the control device is read out, timing information which is in accordance with the reproduction order Therefore, there is no time delay corresponding to the offset value as in the prior art, and the timing information corresponding to the original reproduction order of the sample data is maintained. In the receiving side music equipment, with the appropriate transfer time lag, but it receive the sample data, the sample data itself thus received is corresponding to the reproduction order after the sample data corresponding to the count value of the sample counter at the time of transmission also becomes one corresponding to the reproduction order also available so the timing information given to it. Therefore, reproduction can be performed without any inconvenience by performing reproduction processing on the received waveform sample data at a timing according to the timing information given to the sample data. As described above, in the playback system, when the waveform sample data transmitted from the control device is played back by the music device on the receiver side, an offset value equivalent to the original sample time of the music data as in the past is used. Is not reproduced at the time delay sample time, but is reproduced according to the timing information given to the waveform sample data , and there is no reproduction delay time. Therefore, the conventional inconvenience is solved.

こうして、本発明は、波形のサンプルデータ記録時の記録遅延時間を実質的にゼロにすることができ、また、波形のサンプルデータ再生時の再生遅延時間を実質的にゼロとすることができるので、累積的なオフセット値によるタイミングずれの拡大という問題も起きない。従って、ネットワークを介して転送する波形のサンプルデータの記録及び再生を、サンプルカウンタの精度の正確なタイミングで同期させて行うことができる。 Thus, the present invention relates to a recording delay time at the sample data recording waveform can be substantially zero. In addition, it is possible to substantially zero the reproduction delay time at the time of sample data reproduction waveform Also, there is no problem of expansion of timing deviation due to the cumulative offset value. Therefore, recording and reproduction of waveform sample data transferred via the network can be performed in synchronization with accurate timing of the sample counter .

この発明に係る請求項2の音楽システムによれば、前記音楽機器は、さらに、演奏の入力を行う機能と演奏の再生機能を有しており、また、前記制御装置は、さらに、順次に再生されるべき演奏のイベントデータを前記記憶手段に記憶・読出するものであり、前記音楽システムは波形と演奏の記録と再生を同時並行的に行う音楽システムであって、当該音楽システムの記録系統にあっては、前記音楽機器が、入力した演奏のイベントデータに当該音楽機器のサンプルカウンタのカウント値に対応する第2のタイミング情報を付与して送信する第2入力制御手段を具備し、かつ、前記制御装置、前記送信された演奏のイベントデータを受信し、該受信したイベントデータに付与された前記第2のタイミング情報をテンポマップに基づいて拍を基準とするのタイミング情報に変換し、該第のタイミング情報を付加して該イベントデータを前記記憶手段に記憶させる第2記録制御手段を具備しており、また、当該音楽システムの再生系統にあっては、前記制御装置が、当該制御装置のサンプルカウンタのカウント値に対応するイベント時刻より後のイベント時刻の演奏のイベントデータを前記記憶手段から読み出し、該読み出したイベントデータに付与された前記第3のタイミング情報をテンポマップに基づいて前記第2のタイミング情報に変換し、該イベントデータに対して該第2のタイミング情報を付与して送信する第2読出制御手段を具備し、かつ、前記音楽機器が、前記送信された演奏のイベントデータを受信し、該受信したイベントデータを、該イベントデータに付与された前記第2のタイミング情報と当該音楽機器のサンプルカウンタとに従うタイミングで再生処理する第2再生制御手段を具備することを特徴とする。
これにより、波形のサンプルデータの記録・再生だけでなく、演奏のイベントデータの記録・再生についても、同時に正確なタイミングで行うことができる。
また、記録系統にあっては、音楽機器が入力した演奏のイベントデータを当該音楽機器のサンプルカウンタのカウント値に対応する第2のタイミング情報を付与して送信すると、制御装置では、受信した第2タイミング情報をテンポマップに基づく第のタイミング情報に変換して、この第のタイミング情報を付加して該イベントデータを記憶するので、サンプルカウンタのカウント値に対応する第2のタイミング情報に対応する第のタイミング情報がテンポマップに基づき適切に付与されることで、演奏のイベントデータと波形のサンプルデータとの記録上の演奏タイミングにずれが生じないようにできる。
According to the music system of the second aspect of the present invention, the music device further has a function of inputting a performance and a playback function of the performance, and the control device further plays back sequentially. Event data of performances to be performed is stored in and read out from the storage means, and the music system is a music system that simultaneously records and reproduces waveforms and performances, and includes a recording system of the music system. In this case, the music device includes second input control means for transmitting the input performance event data with second timing information corresponding to the count value of the sample counter of the music device, and transmitting the second timing information. wherein the controller receives the event data of the performance of the transmitted and based stomach beat the second timing information added to the event data thus received to the tempo map Into a third timing information to quasi it has provided a second recording control means for storing the event data in the storage unit by adding the timing information of the third, also the reproduction of the music system In the system, the control device reads the event data of the performance at the event time after the event time corresponding to the count value of the sample counter of the control device from the storage means, and is given to the read event data. A second read control means for converting the third timing information into the second timing information based on a tempo map, and adding the second timing information to the event data and transmitting the event data; And the music device receives the event data of the transmitted performance, and adds the received event data to the event data Characterized by comprising a second reproduction control means for reproducing processing at the timing according to the sample counter of the second timing information and the music equipment is.
As a result, not only recording / reproduction of waveform sample data but also recording / reproduction of performance event data can be performed simultaneously with accurate timing.
Further, in the recording system, when the performance event data input by the music device is transmitted with second timing information corresponding to the count value of the sample counter of the music device , the control device receives the received first data 2 The timing information is converted into the third timing information based on the tempo map, and the event data is stored by adding the third timing information, so that the second timing information corresponding to the count value of the sample counter is stored. By appropriately providing the corresponding third timing information based on the tempo map, it is possible to prevent a deviation in performance timing on recording of performance event data and waveform sample data.

また、再生系統にあっては、制御装置の記憶手段からは当該制御装置のサンプルカウンタのカウント値に対応するイベント時刻より後のイベント時刻演奏のイベントデータが読み出され、該読み出したイベントデータに付与された第3のタイミング情報をテンポマップに基づいて第2のタイミング情報に変換し、該イベントデータが該第2のタイミング情報を付与されて送信されるので、送信時に付与される該第2のタイミング情報は演奏のイベントデータの実際の演奏タイミングを反映したものである。従って、音楽機器で受信した演奏のイベントデータを該イベントデータに付与された該第2のタイミング情報に従うタイミングで再生処理することで、何の不都合もなく、再生を行うことができる。従って、同時に波形データ再生する場合、演奏データと波形データとの再生上の演奏タイミングにずれが生じないようにできる。 In the reproduction system, the event data of the performance at the event time after the event time corresponding to the count value of the sample counter of the control device is read from the storage means of the control device , and the read event data The third timing information given to the second timing information is converted to the second timing information based on the tempo map, and the event data is sent with the second timing information, so the second timing information given at the time of transmission is transmitted . The timing information 2 reflects the actual performance timing of the performance event data. Therefore, by reproducing process event data of the performance received music instrument at a timing according to the timing information of the second given to the event data, without any inconvenience, it can be reproduced. Accordingly, when the waveform data is reproduced at the same time, it is possible to prevent a deviation in the performance timing in reproducing the performance data and the waveform data.

以下、添付図面を参照してこの発明の実施の形態を詳細に説明しよう。
図1は、この発明に係る音楽システムの基本的な構成例を示すブロック図である。この音楽システムは、所定の通信規格例えばIEEE1394規格(USB等その他の規格でもよい)に従うネットワークを介して接続された複数のノードで構成される。図では、ノードの基本的な例として、少なくとも記憶装置を具える制御装置10と音楽機器20が示されており、更にその他の機器51、52が適宜接続される。制御装置10は、そこで記録された音楽データを音楽機器20に送る機器であり、例えばパーソナルコンピュータPCで実現される。ネットワークの接続形式は、図示したような各ノードを順次連鎖的に接続するチェーン接続方式に限らず、ハブ装置を介して各ノードを接続する方式であってもよく、また、有線に限らず無線式に接続する方式であってもよい。
Hereinafter, embodiments of the present invention will be described in detail with reference to the accompanying drawings.
FIG. 1 is a block diagram showing a basic configuration example of a music system according to the present invention. This music system is composed of a plurality of nodes connected via a network conforming to a predetermined communication standard such as IEEE 1394 standard (or other standard such as USB). In the figure, as a basic example of a node, a control device 10 including at least a storage device and a music device 20 are shown, and other devices 51 and 52 are appropriately connected. The control device 10 is a device that sends the music data recorded there to the music device 20, and is realized by, for example, a personal computer PC. The network connection format is not limited to the chain connection method in which the nodes are sequentially connected in a chain as shown in the figure, but may be a method in which the nodes are connected via a hub device. A method of connecting to the equation may be used.

この音楽システムを音楽データ記録用途に使用するためには、音楽機器20としては、少なくとも波形入出力機能及び/またはMIDI入出力機能を具備する機器が用いられ、音楽機器20からネットワークを介して送信された音楽データを制御装置(PC)10で受信して記憶装置に記憶する。また、この音楽システムを音楽データ再生用途に使用するためには、音楽機器20としては、音楽再生機能を具備する機器が用いられ、記憶装置から読み出した音楽データを制御装置(PC)10がネットワークを介して送信し、これを音楽機器20で受信して再生する。本発明では、音楽データの記録と再生を同時並行的に行なうものである。音楽機器20としては、ミュージックシンセサイザのような電子楽器、シーケンサのような自動演奏装置、レコーダのような波形記録装置、ミキサやエフェクタのような信号処理装置、音源装置など、任意の音楽関連機器が該当する。なお、制御装置10及び音楽機器20とは、機能的な定義であり、特定のハードウェア構成を一義的に定義するものではない。例えば、シンセサイザ等の音楽関連機器であっても、それが記憶装置とコンピュータ又は処理装置を付属していて、他の音楽機器から転送された音楽データをその記憶装置内に記憶するようにコンピュータ又は処理装置で制御する場合は、本発明でいう制御装置10として機能することになる。勿論、同じシンセサイザ等の音楽関連機器が、他の制御装置又は音楽機器から転送された音楽データを受信して再生する場合は、本発明でいう音楽機器20として機能することになる。よって、図1に示されたその他の機器51、52とは、その機能から定義すると、制御装置10と音楽機器20のどちらでもあり得る。なお、「音楽データ」とは、波形データ(オーディオ波形のサンプルデータ)と、MIDIのような演奏イベントデータからなる演奏データの双方を包含する意味で使用するものとする。
In order to use this music system for recording music data, as the music device 20, a device having at least a waveform input / output function and / or a MIDI input / output function is used and transmitted from the music device 20 via a network. The received music data is received by the control device (PC) 10 and stored in the storage device. In addition, in order to use this music system for music data playback, a device having a music playback function is used as the music device 20, and the control device (PC) 10 receives the music data read from the storage device via the network. Is transmitted to the music device 20 and received and played back by the music device 20. In the present invention, it is concurrently rows that Umono recording and reproduction of the music data. The music device 20 includes any music-related device such as an electronic musical instrument such as a music synthesizer, an automatic performance device such as a sequencer, a waveform recording device such as a recorder, a signal processing device such as a mixer or an effector, and a sound source device. Applicable. Note that the control device 10 and the music device 20 are functional definitions and do not uniquely define a specific hardware configuration. For example, even if a music-related device such as a synthesizer is attached to a storage device and a computer or processing device, the computer or the storage device stores music data transferred from other music devices in the storage device. When controlling with a processing apparatus, it functions as the control apparatus 10 in this invention. Of course, when a music-related device such as the same synthesizer receives and reproduces music data transferred from another control device or music device, it functions as the music device 20 in the present invention. Therefore, the other devices 51 and 52 shown in FIG. 1 can be either the control device 10 or the music device 20 when defined from their functions. Note that “music data” is used to include both waveform data (sample data of an audio waveform) and performance data composed of performance event data such as MIDI.

IEEE1394規格に準拠する音楽データの転送方式の具体例については、上述の従来技術(特許文献1,2,3)にも記載されており、この実施例に係る音楽システムにおいても、同様のデータ転送方式を適宜必要箇所において取り入れて採用してよい。すなわち、この実施例に係る音楽システムにおける音楽データ転送にあたり、下位構造として公知のIEEE1394規格準拠のデータ転送方式を採用し、上位構造として本発明に従う特有のデータ転送方式を採用するよう構成される。
従って、IEEE1394規格準拠の下位のデータ転送方式については、公知の構成を採用してよいので、その詳細説明は省略するが、次に、簡単に説明しておく。
A specific example of the music data transfer method compliant with the IEEE 1394 standard is also described in the above-described prior art (Patent Documents 1, 2, and 3), and similar data transfer is also performed in the music system according to this embodiment. A method may be adopted by adopting it where necessary. That is, when transferring music data in the music system according to this embodiment, a known IEEE 1394 standard-compliant data transfer method is adopted as the lower structure, and a specific data transfer method according to the present invention is adopted as the upper structure.
Accordingly, the lower-level data transfer method conforming to the IEEE 1394 standard may adopt a well-known configuration, and a detailed description thereof will be omitted.

〔サイクルマスタ〕
IEEE1394規格に準拠するネットワークにおいては、125μsを1サイクルとするサイクル動作を行う。すなわち、ネットワークに接続された複数ノードのうちの1つのノードがサイクルマスタとなり、自ノードの「サイクルタイマ」により計時して所定の送信サイクル周期(例えば125μs)毎に、当該ノードのサイクルタイマの示すサイクル時刻を含むサイクル開始パケットを送出する。該サイクル開始パケットをトリガとしてアイソクロナス転送が開始され、アイソクロナス転送が終了したらアシンクロナス転送が開始される。サイクルマスタ以外のノードは該サイクル開始パケットを取り込み、自分の「サイクルタイマ」をそのサイクル開始パケットのサイクル時刻に合わせる。こうして、ネットワークに接続された全てのノードの「サイクルタイマ」が示すサイクル時刻を、サイクルマスタが計時するサイクル時刻に合わせる。サイクル時刻は、該ネットワークにおける共通の時刻情報として使用される。なお、サイクルタイマは所定の高速クロック(例えば25MHz)で動作する。
[Cycle master]
In a network conforming to the IEEE 1394 standard, a cycle operation in which 125 μs is one cycle is performed. That is, one of a plurality of nodes connected to the network becomes a cycle master, which is measured by the “cycle timer” of its own node and indicated by the cycle timer of that node every predetermined transmission cycle period (for example, 125 μs). A cycle start packet including the cycle time is transmitted. Isochronous transfer is started by using the cycle start packet as a trigger, and asynchronous transfer is started when the isochronous transfer is completed. Nodes other than the cycle master take in the cycle start packet and set their “cycle timer” to the cycle time of the cycle start packet. In this way, the cycle time indicated by the “cycle timer” of all the nodes connected to the network is matched with the cycle time measured by the cycle master. The cycle time is used as common time information in the network. The cycle timer operates with a predetermined high-speed clock (for example, 25 MHz).

〔ワードクロックマスタ〕
本出願人が提唱している音楽LAN(音楽データ用のロカール・エリア・ネットワーク方式)では、ネットワークに接続された複数のノードが共通のサンプリング周期で音楽データ処理動作を行なう。各ノードは、時間経過に従って現サンプル番号を進行させる手段として、サンプル番号をインクメントする「サンプルカウンタ」をそれぞれ備える。その場合、すべてのノードの現サンプル番号の進行を同期化するために、複数のノードの何れか1つのノードがワードクロックマスタとなり、ワードクロックマスタのサンプリングクロックに従い現サンプル番号を共通に進行させるよう同期化制御する。ワードクロックマスタのサンプリングクロックの周波数は、取り扱うオーディオ波形データのサンプリング周波数(例えば48kHz、その他)に応じたものである。ワードクロックマスタとなったノードは、所定サンプル数毎(例えば8サンプル毎)の時間間隔で、現在サンプル番号とそのサイクル時刻情報とを含むワードクロックパケットを発生し、ネットワークにブロードキャストする。ワードクロックマスタ以外の他のノードは、ワードクロックスレーブとなって、このワードクロックパケットを受信し、そのパケットに含まれるサンプル番号とサイクル時刻に基づいて当該ノードのサンプリングクロックを発生する。そして、該サンプリングクロックをカウントする。自ノードのサンプルカウンタの値を該受信したワードクロックパケットのサンプル番号に合わせる。こうして、すべてのノードでの現サンプル番号の時間進行(つまり「サンプルカウンタ」の値)がワードクロックマスタによって同期化される。なお、ワードクロックパケットで送信されるサイクル時刻情報は、IEEE1394規格で補償している通信遅延時間(例えば352μs)だけワードクロックマスタのサイクルタイマの示すサイクル時刻をオフセット加算したものである。各ノードでは、自己のサイクルタイマの示すサイクル時刻がワードクロックパケットに含まれるサイクル時刻情報になったとき、自ノードのサンプルカウンタの値を該ワードクロックパケットに含まれるのサンプル番号に合わせる。これにより、通信遅延時間を吸収して、すべてのノードでの現サンプル番号の時間進行(つまり「サンプルカウンタ」の値)が同期化される。
[Word clock master]
In a music LAN (local area network system for music data) proposed by the present applicant, a plurality of nodes connected to the network perform music data processing operations at a common sampling period. Each node includes a “sample counter” that increments the sample number as means for advancing the current sample number as time passes. In that case, in order to synchronize the progress of the current sample number of all the nodes, any one of the plurality of nodes becomes the word clock master, and the current sample number is advanced in common according to the sampling clock of the word clock master. Control synchronization. The frequency of the sampling clock of the word clock master corresponds to the sampling frequency (for example, 48 kHz, etc.) of the audio waveform data to be handled. The node that becomes the word clock master generates a word clock packet including the current sample number and its cycle time information at a time interval of every predetermined number of samples (for example, every 8 samples), and broadcasts it to the network. A node other than the word clock master becomes a word clock slave, receives this word clock packet, and generates a sampling clock of the node based on the sample number and cycle time included in the packet. Then, the sampling clock is counted. The value of the sample counter of its own node is matched with the sample number of the received word clock packet. Thus, the time progression of the current sample number (ie, the value of the “sample counter”) at all nodes is synchronized by the word clock master. Note that the cycle time information transmitted in the word clock packet is obtained by offset addition of the cycle time indicated by the cycle timer of the word clock master by the communication delay time (for example, 352 μs) compensated in the IEEE 1394 standard. In each node, when the cycle time indicated by its own cycle timer becomes the cycle time information included in the word clock packet, the value of the sample counter of its own node is matched with the sample number included in the word clock packet. This absorbs the communication delay time and synchronizes the time progress of the current sample number (that is, the value of the “sample counter”) at all nodes.

上述したようなサイクルマスタ及びワードクロックマスタによって、各ノードの「サイクルタイマ」が示すサイクル時刻を同期化し、また、各ノードの「サンプルカウンタ」が示すサンプルカウントつまりサンプル番号を同期化する技術は、前記特許文献1〜3等で公知のものを用いてよい。
更に、サイクルマスタ及びワードクロックマスタに関連する本実施例での工夫事項を示すと、次の通りである。
The technique of synchronizing the cycle time indicated by the “cycle timer” of each node by the cycle master and the word clock master as described above, and synchronizing the sample count, that is, the sample number indicated by the “sample counter” of each node, A well-known thing may be used by the said patent documents 1-3.
Furthermore, the contrivances in the present embodiment relating to the cycle master and the word clock master are as follows.

ワードクロックスレーブとして動作する機器は、当該機器のワードクロックを他の機器(マスタ)のワードクロックに同期させるため、当該機器のワードクロックには追従のずれや追従に伴うゆらぎが発生する場合がある。それに対して、ワードクロックマスタとなって動作している機器は、他の機器のワードクロックに関係なく、当該機器のサイクルタイマないしシステムクロックのみからワードクロックを生成するので、当該機器におけるワードクロックは極めて安定度の高いものとなる。正確な現サンプル番号を必要としているのは、外部との波形データやMIDIデータの入出力を行う音楽機器20であり、他方、制御装置10は大まかなサンプル番号さえ得られれば、多少ずれたり多少不安定であっても全く問題が無い。そこで、音楽機器20をワードクロックマスタとして動作させるのがよく、それにより、本実施例に係る音楽システムに安定した動作を行わせることができる。一方、サイクルマスタに関しては、サイクルタイマがサンプリング周波数よりかなり高速のクロック周波数でサイクル時刻のカウントを行っているので、どのノードをサイクルマスタとして動作させても差し支えない。従って、サイクルマスタとなるのは制御装置10でも音楽機器20でもよい。勿論、制御装置10をワードクロックマスタとして動作させるようにしてもよい。その場合、音楽機器20ではワードクロックに正確に同期できるように精密なクロックシステムを持つ必要がある。   Since a device operating as a word clock slave synchronizes the word clock of the device with the word clock of another device (master), the word clock of the device may cause a shift in tracking or a fluctuation accompanying the tracking. . In contrast, a device operating as a word clock master generates a word clock only from the cycle timer or system clock of the device regardless of the word clock of the other device. Extremely high stability. An accurate current sample number is required for the music device 20 that inputs and outputs external waveform data and MIDI data. On the other hand, the control device 10 may be slightly shifted or slightly shifted as long as a rough sample number is obtained. There is no problem even if it is unstable. Therefore, it is preferable to operate the music device 20 as a word clock master, thereby allowing the music system according to the present embodiment to perform a stable operation. On the other hand, with respect to the cycle master, since the cycle timer counts the cycle time at a clock frequency much faster than the sampling frequency, any node can be operated as the cycle master. Therefore, the control device 10 or the music device 20 may be the cycle master. Of course, the control device 10 may be operated as a word clock master. In this case, the music device 20 needs to have a precise clock system so that it can be accurately synchronized with the word clock.

次に、図2を参照して制御装置10と音楽機器20のハード構成の一例につき説明する。
制御装置10は、典型的には、パーソナルコンピュータ(PC)で構成され、CPU11、受信した音楽データやその他データ及びプログラム等を記憶するハードディスク15、プログラムやデータなどを不揮発的に記憶するフラッシュメモリ12、プログラム・ワーキング及びデータ一時記憶用のRAM13、タイマ14、キーボードやマウス等の操作装置16、表示器17、TCP/IPインターフェース18などがCPUバス19を介して接続されており、更に、本実施例に従って音楽データの送受を制御する音楽LANインターフェース31がCPUバス19に接続されている。ハードディスク15に記憶されたプログラムはRAM13に転送され、RAM13上で展開される。PCでは、Windows(登録商標)のような所定のOSを動かすことができ、このOSにはIEEE1394用及びLANインタフェース用のドライバが入っている。このOS上で音楽ソフトウェア(シーケンサソフトウェア)を実行することにより、PCは制御装置10としての機能を実行する。
Next, an example of the hardware configuration of the control device 10 and the music device 20 will be described with reference to FIG.
The control device 10 is typically composed of a personal computer (PC), a CPU 11, a hard disk 15 for storing received music data and other data and programs, and a flash memory 12 for storing programs and data in a nonvolatile manner. Further, a RAM 13 for program working and temporary storage of data, a timer 14, an operation device 16, such as a keyboard and a mouse, a display 17, a TCP / IP interface 18 and the like are connected via a CPU bus 19, and this embodiment is further implemented. A music LAN interface 31 that controls transmission / reception of music data according to an example is connected to the CPU bus 19. The program stored in the hard disk 15 is transferred to the RAM 13 and developed on the RAM 13. The PC can run a predetermined OS such as Windows (registered trademark), and the OS includes drivers for IEEE1394 and LAN interface. By executing the music software (sequencer software) on the OS, the PC executes the function as the control device 10.

音楽機器20は、CPU21、プログラムやデータなどを不揮発的に記憶するフラッシュメモリ22、ワーキング及びデータ一時記憶用のRAM23、タイマ24、操作子装置26、表示器27などがCPUバス25を介して接続されてなるマイクロコンピュータ構成の電子機器からなる。フラッシュメモリ22には、この音楽機器20の組込用OS及び音楽機器として動作させるための組込プログラムが記憶されている。音楽機器20は、更に、MIDI形式の演奏データを入出力するためのMIDI入出力インターフェース28と、アナログまたはディジタルの波形データを入出力するための波形入出力インターフェース29をCPUバス25に接続してなり、また、波形入出力インターフェース29を介して入出力する波形データを適宜処理するための波形処理部30を具えている。更に、本実施例に従って音楽データの送受を制御する音楽LANインターフェース32がCPUバス25に接続されている。波形処理部30は、この音楽機器20の目的(ミキサ、エフェクタ、音源、シンセサイザなど)に応じて適宜の波形処理機能を担うようにしてよい。例えば、ミキシング処理やフィルタ処理、エフェクト処理、音源処理(波形形成処理)、波形再生処理などを適宜行なうように構成してよい。一例として、DSP(ディジタル信号プロセッサ)で波形処理部30を構成し、DSPのマイクロプログラムによってその波形処理機能を適宜設定するようにしてもよい。波形入出力インターフェース29は、アナログ/ディジタル変換器及びディジタル/アナログ変換器並びにバッファメモリ等を含んでおり、適宜のサンプリング周波数に従ってディジタルまたはアナログの波形データをリアルタイムに入力または出力する。波形入出力インターフェース29は、図示しないピックアップ用のマイクロフォンや、オーディオ発音用のサウンドシステムや、他の波形データ入出力機器等に接続される。MIDI入出力インターフェース28は、MIDI形式の演奏データをリアルタイムに/または非リアルタイムに入力または出力するもので、図示しない演奏操作用キーボードやMIDI楽器あるいはシーケンサ等のMIDI入出力機器等に接続される。勿論、この音楽機器20自身がシーケンサ機能(自動演奏データ再生機能)を持っていてもよい。また、この音楽機器20自身が、演奏操作用キーボードを持つシンセサイザのような電子楽器であってもよい。   The music device 20 includes a CPU 21, a flash memory 22 that stores programs and data in a nonvolatile manner, a RAM 23 for working and temporary storage of data, a timer 24, an operation device 26, a display 27, and the like connected via a CPU bus 25. It consists of an electronic device having a microcomputer configuration. The flash memory 22 stores an embedded OS for the music device 20 and an embedded program for operating as a music device. The music device 20 is further connected to the CPU bus 25 by a MIDI input / output interface 28 for inputting / outputting MIDI format performance data and a waveform input / output interface 29 for inputting / outputting analog or digital waveform data. In addition, a waveform processing unit 30 for appropriately processing waveform data input / output via the waveform input / output interface 29 is provided. Further, a music LAN interface 32 that controls transmission / reception of music data according to the present embodiment is connected to the CPU bus 25. The waveform processing unit 30 may have an appropriate waveform processing function depending on the purpose of the music device 20 (mixer, effector, sound source, synthesizer, etc.). For example, mixing processing, filter processing, effect processing, sound source processing (waveform forming processing), waveform reproduction processing, and the like may be appropriately performed. As an example, the waveform processing unit 30 may be configured by a DSP (digital signal processor), and the waveform processing function may be appropriately set by a DSP microprogram. The waveform input / output interface 29 includes an analog / digital converter, a digital / analog converter, a buffer memory, and the like, and inputs or outputs digital or analog waveform data in real time according to an appropriate sampling frequency. The waveform input / output interface 29 is connected to a pickup microphone (not shown), a sound system for audio sound generation, other waveform data input / output devices, and the like. The MIDI input / output interface 28 inputs or outputs MIDI performance data in real time or non-real time, and is connected to a performance input / output keyboard, MIDI musical instrument, sequencer or other MIDI input / output device. Of course, the music device 20 itself may have a sequencer function (automatic performance data playback function). The music device 20 itself may be an electronic musical instrument such as a synthesizer having a performance operation keyboard.

音楽LANインターフェース31及び32は、送受信される音楽データをバッファするためのFIFOのようなバッファメモリと、後述するような必要な送受信制御・処理機能を実行するためのプロセッサ機能およびタイマ機能等を具備する。この音楽LANインターフェース31及び32は、下位構造としてのIEEE1394規格準拠のインターフェース部と、上位構造としての本発明に従う特有の音楽インターフェース部との2重構造からなる。前述の「サイクルタイマ」は下位のIEEE1394規格準拠のインターフェース部に含まれ、「サンプルカウンタ」は上位の音楽インターフェース部に含まれる。各ノードのCPU11,21は、CPUバス19、25を介して、自己の音楽LANインターフェース31、32における「サンプルカウンタ」の値を読み取ることができ、これにより、現サンプル番号に従う処理を適宜行なうことができる。   The music LAN interfaces 31 and 32 include a buffer memory such as a FIFO for buffering music data to be transmitted / received, a processor function and a timer function for executing necessary transmission / reception control / processing functions as described later. To do. The music LAN interfaces 31 and 32 have a double structure of an interface part conforming to the IEEE 1394 standard as a lower structure and a specific music interface part according to the present invention as an upper structure. The aforementioned “cycle timer” is included in the lower IEEE 1394 standard-compliant interface unit, and the “sample counter” is included in the upper music interface unit. The CPUs 11 and 21 of each node can read the value of the “sample counter” in their music LAN interfaces 31 and 32 via the CPU buses 19 and 25, thereby appropriately performing processing according to the current sample number. Can do.

例えば、ワードクロックパケットに含まれるサンプル番号は8ビットで構成されている。この場合、「サンプルカウンタ」は8ビットバイナリカウンタで構成してもよい。しかし、それではすぐにオーバーフローしてしまい、サンプル番号を絶対値で管理することがしにくくなり、使いにくい。そこで、各ノードの音楽LANインターフェース31、32が有する「サンプルカウンタ」を32ビットバイナリカウンタに拡張して構成するとよい。その場合は、最長24時間程度までの絶対値で連続的サンプル時刻(サンプル番号)を管理できるようになる。32ビットに拡張された「サンプルカウンタ」を各ノードで同期させるには、再生開始時、バスリセット時等にワードクロックマスタのサイクルカウンタの全32ビットの値を、送信するワードクロックパケットに含めて送信し、他のノードの32ビットのサンプルカウンタ値をこれに合わせるようにすればよい。そのようにすれば、一旦、32ビットの値できちっと合わせた後はワードクロックパケットで随時同期されるので、各機器のサンプルカウント値(32ビット)が常に一致する。さらに、該全32ビットのサンプルカウンタ値を数秒とか数十秒の長い周期で定期的にワードクロックパケットに含めて送信し、これによって他のノードの32ビットのサンプルカウンタ値を時刻合わせしてもよい。   For example, the sample number included in the word clock packet is composed of 8 bits. In this case, the “sample counter” may be an 8-bit binary counter. However, it immediately overflows, making it difficult to manage the sample number as an absolute value and difficult to use. Therefore, the “sample counter” included in the music LAN interfaces 31 and 32 of each node may be extended to a 32-bit binary counter. In that case, continuous sample times (sample numbers) can be managed with absolute values of up to about 24 hours. In order to synchronize the “sample counter” extended to 32 bits at each node, the value of all 32 bits of the cycle counter of the word clock master is included in the word clock packet to be transmitted at the time of reproduction start, bus reset, etc. It is only necessary to transmit and match the 32-bit sample counter values of other nodes. If it does so, once it matches exactly with the value of 32 bits, it synchronizes with the word clock packet at any time, so the sample count value (32 bits) of each device always matches. Further, the 32-bit sample counter value is periodically included in a word clock packet and transmitted in a long cycle of several seconds or several tens of seconds, so that the 32-bit sample counter value of another node can be timed. Good.

図3は、制御装置10と音楽機器20における音楽データの送受に関連する処理例を機能的に示す図である。
前述のとおり、それぞれの音楽LANインターフェース31、32は、サイクルタイマCTa、CTbとサンプルカウンタSCa,SCbを具備しており、それぞれがサイクルマスタとワードクロックマスタによって同期化されている。サンプルカウンタSCa,SCbは、ワードクロックマスタの指示に従う所定のサンプリング周波数に従い、時間経過に伴って現サンプル番号を進行させるものである。例えば、ワードクロックパケットで所定数(例えば8個)毎のサンプルについてのサンプル番号及び時刻の情報が伝送される場合、該送ワードクロックパケットに含まれるサンプル時刻(このサンプル時刻はサイクル時刻で表わされている)とサイクルタイマCTa、CTbが指示する現サイクル時刻とが一致するとき、該サンプル時刻に対応する該ワードクロックパケットに含まれるサンプル番号をサンプルカウンタSCa,SCbにセットすることで、各ノードのサンプル番号を同期化する。かつ、音楽LANインターフェース31、32内に含まれるフェーズロックループ等で該一致タイミングに同期してサンプリングクロックを発振させ、このサンプリングクロックでサンプルカウンタSCa,SCbをインクメントすることで、ワードクロックマスタにおけるサンプリング周波数に従う時間経過に伴って現サンプル番号を進行させることができ、このことを全ノードで同期して行なうことができる。
FIG. 3 is a diagram functionally illustrating a processing example related to transmission / reception of music data between the control device 10 and the music device 20.
As described above, the music LAN interfaces 31 and 32 include the cycle timers CTa and CTb and the sample counters SCa and SCb, respectively, which are synchronized by the cycle master and the word clock master. The sample counters SCa and SCb advance the current sample number with the passage of time according to a predetermined sampling frequency according to the instruction of the word clock master. For example, when sample number and time information for a predetermined number of samples (for example, 8) is transmitted in a word clock packet, the sample time included in the transmitted word clock packet (this sample time is represented by cycle time). And the current cycle time indicated by the cycle timers CTa and CTb coincide with each other by setting the sample number included in the word clock packet corresponding to the sample time in the sample counters SCa and SCb. Synchronize the node sample numbers. In addition, the sampling clock is oscillated in synchronization with the coincidence timing by the phase lock loop included in the music LAN interfaces 31 and 32, and the sample counters SCa and SCb are incremented by this sampling clock, so that the word clock master The current sample number can be advanced over time according to the sampling frequency, and this can be done synchronously at all nodes.

それぞれの音楽LANインターフェース31、32においては、送信処理部Tx1,Tx2と受信処理部Rx1,Rx2の機能を果たすハードウェア及びソフトウェアを具えている。各送信処理部Tx1,Tx2においては、ネットワークに送り出す直前のデータパケットを順次バッファするための送信バッファ(例えばFIFO)を具備しており、また、各受信処理部Rx1,Rx2においては、ネットワークを介して送信されてくるデータパケットを順次バッファするための受信バッファ(例えばFIFO)を具備している。複数チャンネル分の音楽データを1データパケットで送信/受信することができる。よって、送信バッファと受信バッファは、各チャンネル毎に音楽データをバッファしうる構成からなる。例えば、前述の従来技術にも示されているように、第1乃至第6チャンネルを使用して波形データを伝送し、第7乃至第8チャンネルを使用してMIDI演奏データを伝送するというように、音楽データの性質に応じて伝送チャンネルを使い分けるとよい。   Each of the music LAN interfaces 31 and 32 includes hardware and software that perform the functions of the transmission processing units Tx1 and Tx2 and the reception processing units Rx1 and Rx2. Each of the transmission processing units Tx1 and Tx2 includes a transmission buffer (for example, a FIFO) for sequentially buffering data packets immediately before being sent out to the network, and each of the reception processing units Rx1 and Rx2 is connected via the network. A reception buffer (for example, a FIFO) for sequentially buffering data packets transmitted in this manner. Music data for a plurality of channels can be transmitted / received in one data packet. Therefore, the transmission buffer and the reception buffer are configured to buffer music data for each channel. For example, as shown in the prior art, the waveform data is transmitted using the first to sixth channels, and the MIDI performance data is transmitted using the seventh to eighth channels. Depending on the nature of the music data, it is better to use different transmission channels.

制御装置10は、音楽ソフトウェアを実行し、現サンプル番号を基準として音楽機器20から入力される音楽データの記録及び記録されている音楽データの音楽機器20を用いた再生を行う。その際に、制御装置10及び音楽機器20の各音楽LANインターフェース31、32における送信処理部Tx1,Tx2と受信処理部Rx1,Rx2の働きによって、本発明に係る音楽データの送受信処理が行なわれる。以下、この音楽データ送受信処理の実施例につき、(1)波形データの記録処理、(2)波形データの再生処理、(3)演奏データの記録処理、(4)演奏データの再生処理、という4種の処理目的別に説明を行なう。簡単化のために、以下の説明は、或る1チャンネル分の波形データまたは演奏データの送受信処理について行なう。   The control device 10 executes music software, records music data input from the music device 20 based on the current sample number, and plays back the recorded music data using the music device 20. At that time, music data transmission / reception processing according to the present invention is performed by the functions of the transmission processing units Tx1, Tx2 and the reception processing units Rx1, Rx2 in the music LAN interfaces 31, 32 of the control device 10 and the music device 20. Hereinafter, according to the embodiment of the music data transmission / reception processing, (1) waveform data recording processing, (2) waveform data reproduction processing, (3) performance data recording processing, and (4) performance data reproduction processing will be described. A description will be given for each type of processing purpose. For the sake of simplification, the following description will be made on the transmission / reception processing of waveform data or performance data for a certain channel.

(1)波形データの記録処理
これは、例えば、音楽機器20の波形入出力インターフェース29(図2)を介して波形データを入力し、該音楽機器20の音楽LANインターフェース32の送信処理部Tx1で該波形データのデータパケットを作成してネットワークに送信し、これをネットワークに接続された制御装置10の音楽LANインターフェース31の受信処理部Rx1で受信し、該受信した波形データを該制御装置10の記憶装置すなわちハードディスク15(図2)に記憶する処理である。音楽機器20の波形入出力インターフェース29(図2)を介して入力された波形がアナログ波形であればアナログ/ディジタル変換器(図3のADC29A)でディジタル波形データに変換され、波形処理部30(図2)等で適宜のリアルタイム処理(フィルタリングやミキシング、ルーティングなど)を施したものが、送信処理部Tx1に与えられる。
(1) Recording processing of waveform data This is done by, for example, inputting waveform data via the waveform input / output interface 29 (FIG. 2) of the music device 20, and by the transmission processing unit Tx1 of the music LAN interface 32 of the music device 20. A data packet of the waveform data is created and transmitted to the network, which is received by the reception processing unit Rx1 of the music LAN interface 31 of the control device 10 connected to the network, and the received waveform data is received by the control device 10 This is a process of storing in the storage device, that is, the hard disk 15 (FIG. 2). If the waveform input via the waveform input / output interface 29 (FIG. 2) of the music device 20 is an analog waveform, it is converted to digital waveform data by an analog / digital converter (ADC 29A in FIG. 3), and the waveform processing unit 30 ( 2) is subjected to appropriate real-time processing (filtering, mixing, routing, etc.), and is given to the transmission processing unit Tx1.

音楽機器20の送信処理部Tx1で波形データを送信するときに行なわれる処理のタイミングチャートが図4(b)に例示されている。例えば、約125μs毎にデータパケットを作成し送信する場合、約125μsの時間長の或る時間区間T1で入力された複数サンプルの波形データが、送信処理部Tx1の送信バッファに順次記憶される。送信処理部Tx1では、該送信バッファに記憶された複数サンプルの波形データを1チャンネル分のデータパケットとしてパケットを作成し、その際、先頭のサンプルの波形データに対応する現サンプル番号(図4のSct)を示すサンプルカウント値をサンプルカウンタSCbから取り込み、該データパケットに付与する。こうして、入力した波形に対応する波形データに現サンプル番号(Sct)に対応するタイミング情報(サンプルカウント値すなわちサンプル番号)を付与してなるデータパケットが作成され、これが送信される(図4中のDPTx)。1データパケット中の複数サンプルの波形データは連続しているので、そのうち1つの(例えば先頭の)サンプルの現サンプル番号をデータパケットに付与すればよく、残りのサンプルの現サンプル番号もそこから特定できるので問題ない。勿論、これに限らず、特開平9−298558号公報に示されたようなやり方であってもよい。このように、本発明は、送信する波形データの現サンプル番号に対応するタイミング情報をそのまま付与して該波形データを送信することが特徴である。すなわち、従来行なっていたような、通信遅延時間つまり受信ノードでの該波形データの受信タイミングの遅れを吸収するためのサンプルオフセット値の加算を行なっていない。なお、図中で、「S番号」とは、「サンプル番号」の略である。   FIG. 4B illustrates a timing chart of processing performed when the waveform data is transmitted by the transmission processing unit Tx1 of the music device 20. For example, when a data packet is generated and transmitted every approximately 125 μs, waveform data of a plurality of samples input in a certain time section T1 having a time length of approximately 125 μs is sequentially stored in the transmission buffer of the transmission processing unit Tx1. The transmission processing unit Tx1 creates a packet by using the waveform data of a plurality of samples stored in the transmission buffer as a data packet for one channel, and at this time, the current sample number corresponding to the waveform data of the first sample (in FIG. 4) A sample count value indicating (Sct) is fetched from the sample counter SCb and added to the data packet. In this way, a data packet is created by adding timing information (sample count value, ie, sample number) corresponding to the current sample number (Sct) to the waveform data corresponding to the input waveform, and this is transmitted (see FIG. 4). DPTx). Since the waveform data of multiple samples in one data packet is continuous, the current sample number of one (for example, the first) sample can be given to the data packet, and the current sample numbers of the remaining samples can be identified from there. There is no problem because it can. Of course, the method is not limited to this, and a method as disclosed in Japanese Patent Laid-Open No. 9-298558 may be used. Thus, the present invention is characterized in that the waveform data is transmitted with the timing information corresponding to the current sample number of the waveform data to be transmitted as it is. That is, the sample offset value is not added to absorb the communication delay time, that is, the delay in the reception timing of the waveform data at the receiving node, which has been conventionally performed. In the figure, “S number” is an abbreviation of “sample number”.

送信されたデータパケットは、制御装置10の受信処理部Rx1で受信され、その受信バッファに順次記憶される。受信処理部Rx1では、受信バッファの波形データを第1の所定時間(例えば1ms)毎にまとめて制御装置10の内部メモリ(図2のRAM13)にDMA転送出力する。このDMA転送のために、サイクルタイマCTaによって該第1の所定時間(例えば1ms)毎にハードウェア割込みがかけられる。125μs毎に送信されるデータパケットは、1msの間には複数パケット分が受信バッファに溜められており、これらがまとめてDMA転送される。なお、この第1の所定時間は、1ms丁度に限らず、例えば64サンプルなど8の倍数のサンプル数分の時間とすると、DMA転送が行い易い。   The transmitted data packet is received by the reception processing unit Rx1 of the control device 10 and sequentially stored in the reception buffer. In the reception processing unit Rx1, the waveform data of the reception buffer is collected at every first predetermined time (for example, 1 ms) and DMA-transferred and output to the internal memory (RAM 13 in FIG. 2). For this DMA transfer, a hardware interrupt is generated every first predetermined time (for example, 1 ms) by the cycle timer CTa. Data packets transmitted every 125 μs are stored in the reception buffer for 1 ms, and these are collectively transferred by DMA. Note that the first predetermined time is not limited to just 1 ms, but DMA transfer is easy if the time is the number of samples that is a multiple of 8 such as 64 samples.

制御装置10の受信処理部Rx1で波形データを受信するときに行なわれる処理のタイミングチャートが図5(b)に例示されている。音楽LANインターフェース31内のサンプルカウンタSCaのカウント値に基づく或る現サンプル番号Scxを基準にすると、それよりも過去1ms乃至プラスα(通信遅延時間相当)以内のサンプル番号の波形データ群W1が受信バッファから内部メモリにDMA転送されることになる。内部メモリに記憶される波形データ群W1は、それぞれに付与されているタイミング情報の示すサンプル番号に対応づけて記憶(配置)される。
なお、参考のために、図4においても、同じサンプル番号Scxに対応する時刻位置を例示する。ここから、サンプル番号Scxの時刻で制御装置10の受信処理部Rx1の受信バッファ内に受信済みの(あるいはそこから内部メモリにDMA転送される)波形データ群W1の中には、それよりも過去の前記サンプル番号Sctの波形データが含まれていることが理解できる。なお、図4と図5は異なるタイムスケールで図示しており、図4の方が時間軸が拡大表示されている。
FIG. 5B illustrates a timing chart of processing performed when the reception processing unit Rx1 of the control device 10 receives waveform data. When a certain current sample number Scx based on the count value of the sample counter SCa in the music LAN interface 31 is used as a reference, the waveform data group W1 having a sample number within the past 1 ms to plus α (corresponding to communication delay time) is received. The DMA transfer is performed from the buffer to the internal memory. The waveform data group W1 stored in the internal memory is stored (arranged) in association with the sample number indicated by the timing information assigned thereto.
For reference, FIG. 4 also illustrates the time position corresponding to the same sample number Scx. From this point, the waveform data group W1 that has been received in the reception buffer of the reception processing unit Rx1 of the control device 10 at the time of the sample number Scx (or that is DMA-transferred from there to the internal memory) It can be understood that the waveform data of the sample number Sct is included. 4 and 5 are illustrated with different time scales, and the time axis of FIG. 4 is enlarged and displayed.

制御装置10では、上記のように受信されて内部メモリに転送記憶された波形データに対して、プラグインでエフェクト処理を施すことができるようになっている。この受信波形データに対するプラグイン・エフェクト処理を図3では符号PEF1で示す。このプラグイン・エフェクト処理は、CPU11によるソフトウェア割込みによって上記第1の所定時間よりも長い第2の所定時間(例えば10ms)毎に実行される。つまり、内部メモリに転送記憶された10ms分の波形データに対してまとめてエフェクト処理を施す。音楽LANインターフェース31内のサンプルカウンタSCaのカウント値に基づく或る現サンプル番号Scxを基準にすると、それよりも適当な過去(例えば30ms位過去)の10ms分のサンプル番号の波形データ群W2に対してプラグイン・エフェクト処理が施される。この場合、波形データの入力時に付与したサンプル番号を保ったままでエフェクトをかけることができる。   The control device 10 can perform effect processing with plug-ins on the waveform data received and transferred and stored in the internal memory as described above. The plug-in effect processing for the received waveform data is indicated by the symbol PEF1 in FIG. This plug-in effect processing is executed every second predetermined time (for example, 10 ms) longer than the first predetermined time by software interruption by the CPU 11. That is, effect processing is performed on the waveform data of 10 ms transferred and stored in the internal memory. When a certain current sample number Scx based on the count value of the sample counter SCa in the music LAN interface 31 is used as a reference, a waveform data group W2 having a sample number corresponding to 10 ms in the past (for example, about 30 ms past) is more appropriate. Plug-in effect processing is applied. In this case, the effect can be applied while keeping the sample number assigned when the waveform data is input.

制御装置10では、上記のようにプラグイン・エフェクト処理済で内部メモリに記憶されている波形データを、該内部メモリから読み出してハードディスク15に転送して書き込む処理を、CPU11によるソフトウェア割込みによって上記第2の所定時間よりも長い第3の所定時間(例えば100ms)毎に実行する。このハードディスク書き込み処理を図3では符号WRで示す。つまり、内部メモリに記憶されている約100ms相当の複数クラスタ分の波形データをまとめてハードディスク15に転送記憶する。音楽LANインターフェース31内のサンプルカウンタSCaのカウント値に基づく或る現サンプル番号Scxを基準にすると、それよりも適当な過去(例えば500ms位過去)の約100ms相当の複数クラスタ分のサンプル番号の波形データ群W3が対してハードディスク15に転送記憶される。ハードディスク15に記憶される波形データ群W3は、それぞれに付与されているタイミング情報の示すサンプル番号に対応づけて記憶(配置)される。このように、音楽機器20の入力で音楽データに付与したサンプル番号に対応するタイミング情報を変更することなく、制御装置10で記録することができる。   In the control device 10, the processing of reading out the waveform data that has been subjected to the plug-in effect processing and stored in the internal memory as described above from the internal memory, transferred to the hard disk 15, and written is performed by the software interrupt by the CPU 11. This is executed every third predetermined time (for example, 100 ms) longer than the predetermined time of 2. This hard disk writing process is denoted by reference numeral WR in FIG. That is, the waveform data for a plurality of clusters corresponding to about 100 ms stored in the internal memory are collectively transferred and stored in the hard disk 15. When a certain current sample number Scx based on the count value of the sample counter SCa in the music LAN interface 31 is used as a reference, the waveform of the sample numbers corresponding to a plurality of clusters corresponding to about 100 ms in a suitable past (for example, about 500 ms past). The data group W3 is transferred and stored in the hard disk 15. The waveform data group W3 stored in the hard disk 15 is stored (arranged) in association with the sample number indicated by the timing information assigned thereto. In this manner, the control device 10 can record the timing information corresponding to the sample number assigned to the music data at the input of the music device 20 without changing.

(2)波形データの再生処理
これは、上述のように制御装置10の記憶装置すなわちハードディスク15に記憶された波形データを読み出し、該制御装置10の音楽LANインターフェース31の送信処理部Tx2(図3)で該読み出した波形データのデータパケットを作成してネットワークに送信し、これをネットワークに接続された音楽機器20の音楽LANインターフェース32の受信処理部Rx2(図3)で受信し、該受信した波形データを該音楽機器20で再生する処理である。
制御装置10で行う、ハードディスク15からの波形データの読み出しと、それに基づくプラグイン・エフェクト処理及び送信処理に関連するタイミングチャートが図5(a)に例示されている。
(2) Waveform Data Reproduction Processing This is to read the waveform data stored in the storage device of the control device 10, that is, the hard disk 15 as described above, and to transmit the transmission processing unit Tx 2 (FIG. 3) of the music LAN interface 31 of the control device 10 ) To create a data packet of the read waveform data and transmit it to the network, which is received by the reception processing unit Rx2 (FIG. 3) of the music LAN interface 32 of the music device 20 connected to the network. This is processing for reproducing the waveform data by the music device 20.
FIG. 5A illustrates a timing chart related to the reading of waveform data from the hard disk 15 and the plug-in effect processing and transmission processing based on the waveform data performed by the control device 10.

制御装置10では、ハードディスク15から読み出すべき波形データのファイルが指定されると、該ファイルの波形データを先頭からそのサンプル番号順に読み出す。制御装置10は、このハードディスク15からの波形データの読み出し処理を、CPU11によるソフトウェア割込みによって前記第3の所定時間(例えば100ms)毎に実行する。このハードディスク読み出し処理を図3では符号REで示す。つまり、ハードディスク15に記憶されている約100ms相当の複数クラスタ分の波形データをまとめて読み出して内部メモリ(RAM)に転送記憶する。勿論、ハードディスク15から読み出して内部メモリに転送記憶された波形データのサンプル番号は、制御装置10によって正確に管理される。
音楽LANインターフェース31内のサンプルカウンタSCaのカウント値に基づく或る時点での現サンプル番号Scxを基準にすると、それよりも適当な未来(例えば500ms位未来)の約100ms相当の複数クラスタ分のサンプル番号の波形データ群Wt3(図5(a)参照)がハードディスク15から読み出され、内部メモリに転送記憶される。
When the waveform data file to be read from the hard disk 15 is designated, the control device 10 reads the waveform data of the file from the top in the order of the sample numbers. The control device 10 executes the process of reading the waveform data from the hard disk 15 every third predetermined time (for example, 100 ms) by a software interrupt by the CPU 11. This hard disk read processing is indicated by the symbol RE in FIG. That is, the waveform data for a plurality of clusters corresponding to about 100 ms stored in the hard disk 15 is read out collectively and transferred and stored in the internal memory (RAM). Of course, the sample number of the waveform data read from the hard disk 15 and transferred and stored in the internal memory is managed accurately by the control device 10.
Based on the current sample number Scx at a certain time point based on the count value of the sample counter SCa in the music LAN interface 31, a sample for a plurality of clusters corresponding to about 100 ms in a more appropriate future (for example, about 500 ms future). The numbered waveform data group Wt3 (see FIG. 5A) is read from the hard disk 15 and transferred and stored in the internal memory.

制御装置10では、上記のように内部メモリに転送記憶された送信すべき波形データに対して、プラグインでエフェクト処理を施すことができるようになっている。この送信波形データに対するプラグイン・エフェクト処理を図3では符号PEF2で示す。このプラグイン・エフェクト処理は、CPU11によるソフトウェア割込みによって上記第2の所定時間(例えば10ms)毎に実行される。つまり、内部メモリに記憶された100ms分の波形データのうち10ms分の波形データに対してまとめてエフェクト処理を施す。サンプルカウンタSCaのカウント値に基づく或る時点での現サンプル番号Scxを基準にすると、それよりも適当な未来(例えば30ms位未来)の10ms分のサンプル番号の波形データ群Wt2(図5(a)参照)に対してプラグイン・エフェクト処理が施される。この場合も、波形データの入力時に付与したサンプル番号を保ったままでエフェクトをかけることができる。   The control device 10 can perform effect processing by plug-in on the waveform data to be transmitted that is transferred and stored in the internal memory as described above. The plug-in effect processing for this transmission waveform data is indicated by the symbol PEF2 in FIG. This plug-in effect process is executed every second predetermined time (for example, 10 ms) by a software interrupt by the CPU 11. That is, the effect processing is performed collectively on the waveform data for 10 ms out of the waveform data for 100 ms stored in the internal memory. When the current sample number Scx at a certain time point based on the count value of the sample counter SCa is used as a reference, the waveform data group Wt2 of the sample numbers corresponding to 10 ms in the future (for example, about 30 ms in the future) (FIG. 5A Plug-in effect processing is applied to (see)). In this case as well, the effect can be applied while maintaining the sample number assigned when the waveform data is input.

制御装置10の送信処理部Tx2では、上記のようにプラグイン・エフェクト処理済で内部メモリに記憶されている波形データを、前記第1の所定時間(例えば1ms)毎に該内部メモリからDMA転送して内部の送信バッファに記憶する。このDMA転送のために、サイクルタイマCTaによって該第1の所定時間(1ms)毎にハードウェア割込みがかけられる。サンプルカウンタSCaのカウント値に基づく或る時点での現サンプル番号Scxを基準にすると、それよりも適当な未来(例えば5ms位未来)の1ms分のサンプル番号の波形データ群Wt1(図5(a)参照)が内部メモリから送信バッファにDMA転送されることになる。内部メモリに転送記憶された波形データのサンプル番号は制御装置10による各サンプルの記録時のサンプル番号であり、内部メモリから送信バッファにDMA転送される波形データもそのサンプル番号が維持され、サンプル番号の変更が行われない。   In the transmission processing unit Tx2 of the control device 10, the waveform data that has been subjected to the plug-in effect processing and stored in the internal memory as described above is DMA-transferred from the internal memory every first predetermined time (for example, 1 ms). And stored in the internal transmission buffer. For this DMA transfer, a hardware interrupt is generated every first predetermined time (1 ms) by the cycle timer CTa. When the current sample number Scx at a certain time point based on the count value of the sample counter SCa is used as a reference, the waveform data group Wt1 of sample numbers corresponding to 1 ms in the future (for example, the future of about 5 ms) (FIG. 5A) )) Is DMA-transferred from the internal memory to the transmission buffer. The sample number of the waveform data transferred and stored in the internal memory is the sample number at the time of recording each sample by the control device 10, and the sample number is also maintained for the waveform data DMA-transferred from the internal memory to the transmission buffer. No changes are made.

さらに、制御装置10の送信処理部Tx2では、そのサンプル番号順に従って送信バッファから複数サンプルの波形データを取り出し、1チャンネル分のデータパケットとしてパケットを作成し、その際、先頭のサンプルの波形データに対応するサンプル番号を示す情報をタイミング情報として該データパケットに付与する。ただし、送信バッファに入っている波形データは上述のように約5msだけ先行しているつまり未来のサンプル番号に対応するものであり、それに付与されるタイミング情報も、サンプルカウンタSCbが示す現サンプル番号に対応するものではなく、当該波形データそのもの本来のサンプル番号(現サンプル番号から見て未来のサンプル番号)である。   Further, the transmission processing unit Tx2 of the control device 10 extracts waveform data of a plurality of samples from the transmission buffer according to the order of the sample numbers, creates a packet as a data packet for one channel, and converts the waveform data of the first sample into Information indicating the corresponding sample number is given to the data packet as timing information. However, the waveform data stored in the transmission buffer is preceded by about 5 ms as described above, that is, corresponds to the future sample number, and the timing information given thereto is also the current sample number indicated by the sample counter SCb. The waveform data itself is the original sample number (future sample number as viewed from the current sample number).

こうして、ハードディスク15からそのサンプル番号に対応する順序で読み出されて送信バッファにバッファされた波形データに、当該サンプル番号に対応するタイミング情報を付与してなるデータパケットが作成され、これがネットワークに送信される。送信バッファから波形データを取り出してデータパケットを作成する処理は、例えば、送信サイクルの1周期である125μsで行われ、その時間内で生じる複数サンプルの波形データからなるデータパケットが作成される。こうして、前述と同様に、125μs毎に複数サンプルの波形データからなるデータパケットが生成され、送信される。前述と同様、1データパケット中の複数サンプルの波形データは連続しているので、そのうち1つの(例えば先頭の)サンプルのサンプル番号をデータパケットに付与すればよく、残りのサンプルのサンプル番号もそこから特定できるので問題ない。   In this way, a data packet is created by adding timing information corresponding to the sample number to the waveform data read from the hard disk 15 in the order corresponding to the sample number and buffered in the transmission buffer, and this is transmitted to the network. Is done. The process of extracting the waveform data from the transmission buffer and creating the data packet is performed, for example, in 125 μs, which is one cycle of the transmission cycle, and a data packet made up of waveform data of a plurality of samples generated within that time is created. In this manner, as described above, a data packet including a plurality of samples of waveform data is generated and transmitted every 125 μs. As described above, since the waveform data of a plurality of samples in one data packet is continuous, the sample number of one (for example, the first) sample may be given to the data packet, and the sample numbers of the remaining samples are also there. There is no problem because it can be identified from.

このように、本発明では、記録した波形データを読み出して送信し、これを受信側で再生させる場合においても、送信する波形データの持つ本来のサンプル番号(波形データの記録時に音楽機器20の側で付与したサンプル番号)に対応するタイミング情報をそのまま付与して該波形データを送信することが特徴である。すなわち、従来行なっていたような、通信遅延時間つまり受信ノードでの該波形データの受信タイミングの遅れを吸収するためのサンプルオフセット値を送信に際して加算することを行なっていない。その代わり、記憶装置(ハードディスク15あるいは内部メモリ)からの該波形データの読み出しをその本来のサンプル番号の時刻より先行して行っており、その本来のサンプル番号の時刻よりも約5ms位先行して該波形データのパケットをネットワークに送信している。これにより、通信遅延時間つまり受信ノードでの該波形データの受信タイミングの遅れを吸収している。   As described above, in the present invention, even when the recorded waveform data is read and transmitted and reproduced on the receiving side, the original sample number of the waveform data to be transmitted (the side of the music device 20 when recording the waveform data). It is characterized in that the waveform data is transmitted with the timing information corresponding to the sample number) assigned as is. That is, the sample offset value for absorbing the delay of the reception timing of the waveform data at the receiving node as in the past is not added at the time of transmission. Instead, the waveform data is read from the storage device (hard disk 15 or internal memory) ahead of the time of the original sample number, and about 5 ms ahead of the time of the original sample number. The waveform data packet is transmitted to the network. As a result, the communication delay time, that is, the delay in the reception timing of the waveform data at the receiving node is absorbed.

すなわち、送信されたデータパケットは、音楽機器20の受信処理部Rx2で受信され、その受信バッファに順次記憶される。音楽機器20の受信処理部Rx2で波形データを受信するときに行なわれる処理のタイミングチャートが図4(a)に例示されている。図中のDPRxは1つのデータパケットを受信したタイミングを示している。例えば、サンプル番号Scxよりも前の時点で受信されるデータパケットDPRxの中には、該サンプル番号Scxよりも後の(未来の)サンプル番号Scyの波形データが含まれている。なお、再生経路(音楽機器20の受信処理部Rx2)における波形データ用の受信バッファは、例えば約5ms分程度のサンプル数の波形データは確実に記憶できる容量のFIFOで構成する。例えば最高96kHzのサンプリング周波数の波形データに対応できるようにするには、512ワード分の容量を持つFIFOを使用すればよい。これに対して、前述の記録経路(制御装置10の受信処理部Rx1)における波形データ用の受信バッファには、それほどの容量は要求されない。   That is, the transmitted data packet is received by the reception processing unit Rx2 of the music device 20, and sequentially stored in the reception buffer. FIG. 4A illustrates a timing chart of processing performed when the reception processing unit Rx2 of the music device 20 receives waveform data. DPRx in the figure indicates the timing of receiving one data packet. For example, the data packet DPRx received at a time point before the sample number Scx includes waveform data of the (future) sample number Scy after the sample number Scx. Note that the reception buffer for waveform data in the reproduction path (the reception processing unit Rx2 of the music device 20) is configured by a FIFO having a capacity capable of reliably storing, for example, waveform data of the number of samples of about 5 ms. For example, a FIFO having a capacity of 512 words may be used to support waveform data having a sampling frequency of up to 96 kHz. In contrast, the waveform data reception buffer in the recording path (the reception processing unit Rx1 of the control device 10) does not require a large capacity.

このように受信処理部Rx2で受信した波形データが受信バッファに順次記憶され、そして、該受信バッファは、当該音楽LANインターフェース32内のサンプルカウンタSCbのカウント値に基づく或る時点での現サンプル番号Scyになると、その現サンプル番号Scyに対応する波形データを読み出す。こうして、受信バッファに溜められた波形データがそれぞれに付与された本来のサンプル番号に対応する時刻が到来すると、順次に、該受信バッファから読み出される。読み出された波形データは適宜のリアルタイム処理が施されて、ディジタルアナログ変換器(図3のDAC29B)から出力され、サウンドシステムを介して発音される。こうして、受信ノードでは、受信したパケットに付与されたサンプル番号のサンプル時刻が到来する前に受信完了して受信バッファ内に波形データを蓄えているので、該付与されたサンプル番号のサンプル時刻の到来に合わせて、問題なく、波形データを読み出して再生することができる。   In this way, the waveform data received by the reception processing unit Rx2 is sequentially stored in the reception buffer, and the reception buffer stores the current sample number at a certain time based on the count value of the sample counter SCb in the music LAN interface 32. When Scy is reached, the waveform data corresponding to the current sample number Scy is read out. In this way, when the time corresponding to the original sample number to which the waveform data stored in the reception buffer has been given comes, the data is sequentially read from the reception buffer. The read waveform data is subjected to appropriate real-time processing, output from a digital-analog converter (DAC 29B in FIG. 3), and is sounded through a sound system. In this way, the reception node completes the reception and stores the waveform data in the reception buffer before the sample time of the sample number assigned to the received packet arrives, so the arrival of the sample time of the assigned sample number. Accordingly, the waveform data can be read and reproduced without any problem.

(3)演奏データの記録処理
これは、例えば、音楽機器20のMIDI入出力インターフェース28(図2)を介してMIDI等の演奏データを入力し、該音楽機器20の音楽LANインターフェース32の送信処理部Tx1で該演奏データのデータパケットを作成してネットワークに送信し、これをネットワークに接続された制御装置10の音楽LANインターフェース31の受信処理部Rx1で受信し、該受信した演奏データを該制御装置10の記憶装置すなわちハードディスク15(図2)に記憶する処理である。例えば、MIDI出力型電子楽器におけるリアルタイムでのキーボード演奏に応じてMIDI形式の演奏データが発生され、これがMIDI入出力インターフェース28(図2)を介して音楽機器20に入力されることを想定して説明を行う。この演奏データは、ノートオンやノートオフ、あるいはコントロールチェンジ等のイベントデータであり、キーオン(又はオフ)されたノートを示すノートナンバデータや、ベロシティデータ、MIDIチャンネルデータなどを含む公知の演奏データ形式からなっていてよい。
(3) Recording processing of performance data This is, for example, when performance data such as MIDI is input via the MIDI input / output interface 28 (FIG. 2) of the music device 20, and transmission processing of the music LAN interface 32 of the music device 20 is performed. A data packet of the performance data is generated by the unit Tx1 and transmitted to the network, and this is received by the reception processing unit Rx1 of the music LAN interface 31 of the control device 10 connected to the network, and the received performance data is controlled by the control unit 10 This is processing to be stored in the storage device of the device 10, that is, the hard disk 15 (FIG. 2). For example, it is assumed that performance data in the MIDI format is generated in response to a keyboard performance in real time in a MIDI output type electronic musical instrument and is input to the music device 20 via the MIDI input / output interface 28 (FIG. 2). Give an explanation. This performance data is event data such as note-on, note-off, or control change, and is a known performance data format including note number data indicating a key-on (or off) note, velocity data, MIDI channel data, etc. It may consist of

音楽機器20では、MIDI入出力インターフェース28(図3ではMIDIin28A)から入力された演奏データを送信処理部Tx1に与える。このとき、必要に応じて、音楽機器20の内部処理によって該演奏データに対応する楽音の発生処理を同時に行うようにしてもよい。勿論、音楽機器20では発音処理は行わず、それに接続されたMIDI出力型電子楽器で発音処理を行うようにしてもよい。音楽機器20の送信処理部Tx1では、入力された演奏データを送信バッファに記憶すると共に、サンプルカウンタSCbのカウント値に基づき現サンプル番号に対応するタイミング情報を該演奏データに付加して送信バッファに記憶する。この場合に、音楽LANインタフェース32又はMIDI入出力インターフェース28又はCPU21により自動的に該タイミング情報を付与してやればよい。こうして、演奏データは、該演奏データそのものと、該演奏データに関するイベント発生時刻に相当する現サンプル番号(タイミング情報)との対で、送信バッファに記憶される。   In the music device 20, the performance data input from the MIDI input / output interface 28 (MIDI in 28A in FIG. 3) is given to the transmission processing unit Tx1. At this time, if necessary, musical tone generation processing corresponding to the performance data may be simultaneously performed by internal processing of the music device 20. Of course, the musical instrument 20 may not perform the sound generation process, but may perform the sound generation process with a MIDI output electronic musical instrument connected thereto. The transmission processing unit Tx1 of the music device 20 stores the input performance data in the transmission buffer and adds timing information corresponding to the current sample number to the performance data based on the count value of the sample counter SCb. Remember. In this case, the timing information may be automatically given by the music LAN interface 32, the MIDI input / output interface 28 or the CPU 21. Thus, the performance data is stored in the transmission buffer as a pair of the performance data itself and the current sample number (timing information) corresponding to the event occurrence time related to the performance data.

送信処理部Tx1では、前述と同様に、送信バッファに記憶されている演奏データとタイミング情報の対を読み出して、125μs毎に演奏データのデータパケットを作成し、ネットワークに送信する。演奏データのイベントはそれほど頻繁には起こらないので、送信バッファ内に送信すべき演奏データがない場合は、勿論、データパケットを作成しないようにしてもよい。従って、一般に、演奏データ用の送信バッファは極めて小容量で済む。なお、送信する演奏データに付与するタイミング情報は、送信バッファに演奏データを書き込むときの現サンプル番号に対応するものに限らず、送信バッファから演奏データを読み出してネットワークに送り出すときの現サンプル番号に対応するものであってもよい。このように、演奏データを送信する場合も、送信する演奏データに付与された現サンプル番号に対応するタイミング情報をそのまま付加して該演奏データを送信する。   As described above, the transmission processing unit Tx1 reads the pair of performance data and timing information stored in the transmission buffer, creates a data packet of performance data every 125 μs, and transmits it to the network. Since performance data events do not occur so frequently, if there is no performance data to be transmitted in the transmission buffer, it is of course possible not to create a data packet. Therefore, generally, the performance data transmission buffer requires a very small capacity. Note that the timing information given to the performance data to be transmitted is not limited to the current sample number corresponding to the current sample number when the performance data is written to the transmission buffer, but is the current sample number when the performance data is read from the transmission buffer and sent to the network. It may be a corresponding one. In this way, even when performance data is transmitted, the performance data is transmitted with the timing information corresponding to the current sample number assigned to the performance data to be transmitted as it is.

送信された演奏データのデータパケットは、制御装置10の受信処理部Rx1で受信され、その受信バッファ(FIFO)に取り込まれる。受信処理部Rx1では、受信バッファ(FIFO)に記憶された演奏データ及びタイミング情報を随時又は所定時間(例えば1ms)毎に内部メモリの所定領域に設定された受信データバッファに転送する。受信処理部Rx1での演奏データの受信処理の一例として、図6(a)を示す。図6(a)は制御装置10の音楽LANインターフェース31で行われる演奏データ受信イベント処理の一例である。この図6(a)は、送信された演奏データのデータパケットが受信バッファ(FIFO)に取り込まれたとき、その都度、受信イベント処理として行われる。ステップS1では受信バッファ(FIFO)に取り込まれた演奏データとそれに付属するタイミング情報を読み出し、ステップS2では該読み出した演奏データとそれに付属するタイミング情報を内部メモリ(RAM)上の受信データバッファに転送する。   The transmitted data packet of performance data is received by the reception processing unit Rx1 of the control device 10 and taken into its reception buffer (FIFO). The reception processing unit Rx1 transfers the performance data and timing information stored in the reception buffer (FIFO) to the reception data buffer set in a predetermined area of the internal memory as needed or at predetermined time intervals (for example, 1 ms). FIG. 6A shows an example of performance data reception processing in the reception processing unit Rx1. FIG. 6A shows an example of performance data reception event processing performed by the music LAN interface 31 of the control device 10. FIG. 6A is performed as reception event processing each time a data packet of transmitted performance data is taken into the reception buffer (FIFO). In step S1, the performance data fetched into the reception buffer (FIFO) and timing information attached thereto are read. In step S2, the read performance data and timing information attached thereto are transferred to the reception data buffer on the internal memory (RAM). To do.

制御装置10では、上記のように受信されて内部メモリの受信データバッファに記憶された演奏データのタイミング情報に対して、例えば10ms毎のソフトウェア割込みによって、該タイミング情報をテンポマップに基づく第2のタイミング情報に変換する処理を行う。図6(b)は制御装置10のCPU11によって演奏データの記録/再生のために行われる10ms毎の割込み処理の一例を示す。この図6(b)における受信時の処理について説明すると、ステップS3で、内部メモリの受信データバッファが空か、つまり未処理のデータが記憶されていないかをチェックする。内部メモリの受信データバッファが空でない、つまり未処理のデータがある場合は、ステップS4に行き、該タイミング情報をテンポマップに基づく第2のタイミング情報に変換する処理を行う。すなわち、受信データバッファに記憶されている演奏データに付与されているタイミング情報(サンプル番号)を、テンポマップに従い、拍を基準とするタイムスタンプ(第2のタイミング情報)に変換する。なお、テンポマップでは、公知のように、レコーダにおいて波形データのサンプル番号と演奏データの演奏位置(何小節目の何拍目のどのあたり)とを対応付けるための情報である。演奏データのタイミングに要求される精度は、波形データほど高くなくてよく、また、テンポに応じて変化するので、タイミング情報をテンポマップに従って変換しているのである。次のステップS5では、変換されたタイムスタンプ(第2のタイミング情報)を伴う演奏データを、内部メモリ(RAM)上の所定の記録領域に書き込む。   In the control device 10, the timing information of the performance data received as described above and stored in the reception data buffer of the internal memory is converted into the second information based on the tempo map by, for example, software interruption every 10 ms. Processing to convert to timing information is performed. FIG. 6B shows an example of interrupt processing every 10 ms performed by the CPU 11 of the control device 10 for recording / reproducing performance data. The processing at the time of reception in FIG. 6B will be described. In step S3, it is checked whether the reception data buffer of the internal memory is empty, that is, whether unprocessed data is stored. If the received data buffer in the internal memory is not empty, that is, there is unprocessed data, the process goes to step S4 to perform processing for converting the timing information into second timing information based on the tempo map. That is, the timing information (sample number) given to the performance data stored in the reception data buffer is converted into a time stamp (second timing information) based on the beat according to the tempo map. As is well known, the tempo map is information for associating the sample number of the waveform data with the performance position of the performance data (how many beats and what beat) in the recorder. The accuracy required for the timing of the performance data does not have to be as high as that of the waveform data, and changes according to the tempo, so the timing information is converted according to the tempo map. In the next step S5, the performance data with the converted time stamp (second timing information) is written in a predetermined recording area on the internal memory (RAM).

更に、制御装置10では、上記のように内部メモリ(RAM)上の所定の記録領域に書き込まれた変換されたタイムスタンプ(第2のタイミング情報)を伴う演奏データを、該内部メモリから読み出してハードディスク15に転送して書き込む処理を、CPU11によるソフトウェア割込みによって第3の所定時間(例えば100ms)毎に実行する。   Further, the control device 10 reads performance data with the converted time stamp (second timing information) written in a predetermined recording area on the internal memory (RAM) as described above from the internal memory. The process of transferring and writing to the hard disk 15 is executed every third predetermined time (for example, 100 ms) by a software interrupt by the CPU 11.

(4)演奏データの再生処理
これは、制御装置10の記憶装置すなわちハードディスク15に記憶された演奏データを読み出し、該制御装置10の音楽LANインターフェース31の送信処理部Tx2(図3)で該読み出した演奏データのデータパケットを作成してネットワークに送信し、これをネットワークに接続された音楽機器20の音楽LANインターフェース32の受信処理部Rx2(図3)で受信し、該受信した演奏データを該音楽機器20で再生する処理である。
制御装置10では、まず、再生開始に先行して(例えば前記と同様に500ms位先行して)、送信しようとする演奏データのファイル(例えば1曲分のファイル)をハードディスク15から適宜一括して読み出して、内部メモリの所定送信領域に転送記憶する。そして、図6(b)に示す10ms毎の割込み処理によって、該所定送信領域の演奏データを順次読み出して送信処理部Tx2の送信バッファ(FIFO)に順次転送する。演奏イベントは波形サンプルタイミングのように頻繁には起こらないので、送信バッファ(FIFO)への転送は、該送信バッファ(FIFO)の空き具合(送信済み具合)を見ながら、適宜行うようにしてよい。また、送信処理部Tx2における演奏データ用の送信バッファ(FIFO)も小容量であってよい。この演奏データ用の送信バッファ(FIFO)が保持しうる演奏イベントの最大数をImaxとする。このImaxは、少なくとも10msの間に起こりうる演奏イベントの最大数に相当していればよく、例えば数乃至10イベント程度の数であっても用が足りると思われる。
(4) Reproduction processing of performance data This is to read performance data stored in the storage device of the control device 10, that is, the hard disk 15, and read it out by the transmission processing unit Tx2 (FIG. 3) of the music LAN interface 31 of the control device 10. The performance data data packet is generated and transmitted to the network, which is received by the reception processing unit Rx2 (FIG. 3) of the music LAN interface 32 of the music device 20 connected to the network. This is processing to be played back by the music device 20.
In the control device 10, first, prior to the start of reproduction (for example, about 500 ms in advance as described above), performance data files (for example, files for one song) to be transmitted are collectively collected from the hard disk 15 as appropriate. The data is read out and transferred and stored in a predetermined transmission area of the internal memory. Then, the performance data in the predetermined transmission area is sequentially read out and sequentially transferred to the transmission buffer (FIFO) of the transmission processing unit Tx2 by the interrupt process every 10 ms shown in FIG. 6B. Since the performance event does not occur as frequently as the waveform sample timing, the transfer to the transmission buffer (FIFO) may be appropriately performed while checking the empty state (the transmitted state) of the transmission buffer (FIFO). . Also, the performance data transmission buffer (FIFO) in the transmission processing unit Tx2 may have a small capacity. The maximum number of performance events that can be held in this performance data transmission buffer (FIFO) is Imax. This Imax only needs to correspond to the maximum number of performance events that can occur during at least 10 ms. For example, even a number of about several to ten events seems to be sufficient.

図6(b)のステップS11では、内部メモリの所定送信領域から送信処理部Tx2の送信バッファ(FIFO)に既に転送済みであるが、まだ未再生の(まだ送信せずに送信バッファで保持している)演奏データのイベント数を検出し、この検出した数nをレジスタにセットする。ステップS12では、演奏データ用の送信バッファ(FIFO)が保持可能な演奏イベントの最大数Imaxから上記検出した未再生イベント数nを引き、該送信バッファ(FIFO)に追加転送すべきイベント数xを求める。x=0ではないことをステップS13で判定すると、ステップS14で、内部メモリの所定送信領域に記憶されている未転送分の演奏データのうち先頭のx個のイベントの演奏データとそれに付加されているタイムスタンプ(第2のタイミング情報)を読み出す。ステップS15では、読み出されたx個イベントの演奏データのタイムスタンプを、テンポマップに従い、それぞれサンプル番号に変換する。例えば、テンポマップに従い所定の基準サンプル番号(例えば曲の再生開始時刻に対応するサンプル番号を基準サンプル番号とする)を参照して各タイムスタンプを固有のサンプル番号に変換すればよい。ステップS16では、変換されたサンプル番号(あるいはそれに対応するタイミング情報)を持つx個イベントの演奏データを、送信処理部Tx2の送信バッファ(FIFO)の空き領域に書き込む。なお、この10ms割込み時において、x=0(つまり送信処理部Tx2の送信バッファが未送信の演奏データで一杯である)ならば、ステップS14〜S16の処理は行わない。なお、送信処理部Tx2の送信バッファ(FIFO)への演奏データの転送の仕方は、図6(b)に示すような追加可能なイベント数xを求めて可能な限りどんどん転送する例に限らず、所定時間区間分だけ未来のイベントの演奏データを転送するよう時間管理して転送するようにしてもよい。   In step S11 in FIG. 6B, the data has already been transferred from the predetermined transmission area of the internal memory to the transmission buffer (FIFO) of the transmission processing unit Tx2, but is not yet reproduced (not yet transmitted and held in the transmission buffer). The number of performance data events is detected, and the detected number n is set in a register. In step S12, the detected number n of unreproduced events is subtracted from the maximum number Imax of performance events that can be held in the performance data transmission buffer (FIFO), and the number of events x to be additionally transferred to the transmission buffer (FIFO) is obtained. Ask. If it is determined in step S13 that x is not 0, in step S14, the performance data of the first x events among the untransferred performance data stored in the predetermined transmission area of the internal memory and the performance data are added thereto. Read time stamp (second timing information). In step S15, the time stamp of the performance data of the read x events is converted into a sample number according to the tempo map. For example, each time stamp may be converted into a unique sample number by referring to a predetermined reference sample number (for example, a sample number corresponding to the reproduction start time of the music is used as the reference sample number) according to the tempo map. In step S16, the performance data of x events having the converted sample number (or corresponding timing information) is written in the empty area of the transmission buffer (FIFO) of the transmission processing unit Tx2. If x = 0 (that is, if the transmission buffer of the transmission processing unit Tx2 is full of untransmitted performance data) at the time of this 10 ms interruption, the processing of steps S14 to S16 is not performed. Note that the method of transferring performance data to the transmission buffer (FIFO) of the transmission processing unit Tx2 is not limited to the example of obtaining the number of additional events x as shown in FIG. The performance data of future events may be transferred in a time-controlled manner so as to be transferred for a predetermined time interval.

こうして、送信処理部Tx2の送信バッファ(FIFO)に書き込まれた各演奏データ毎のサンプル番号は、該演奏データの実際の再生イベント時刻のサンプル番号に対応するものとされる。記憶装置つまりハードディスク15及び内部メモリからの該演奏データの読み出しは、実際の再生イベントタイミングに先行して行われるので、これらの演奏データに付属するサンプル番号は、サンプルカウンタSCaがカウントしている現サンプル番号よりも未来のサンプル番号を示している。制御装置10の送信処理部Tx2では、そのサンプル番号順(再生順)に従って送信バッファから1又は複数イベント分の演奏データとそれに付与されたサンプル番号とを取り出して演奏データのデータパケットを作成し、これをネットワークに送信する。送信バッファから波形データを取り出してデータパケットを作成する処理は、送信サイクルの1周期である125μs毎に行われる。勿論、送信すべき演奏データが送信バッファに無い場合は演奏データのデータパケットは作成されない。
このように、記録した演奏データを読み出して送信し、これを受信側で再生させる場合においても、送信する演奏データの再生イベント時刻に対応するサンプル番号に対応するタイミング情報を付与して該演奏データを送信する。
Thus, the sample number for each performance data written in the transmission buffer (FIFO) of the transmission processing unit Tx2 corresponds to the sample number of the actual reproduction event time of the performance data. Since the performance data is read from the storage device, that is, the hard disk 15 and the internal memory, prior to the actual playback event timing, the sample numbers attached to these performance data are the current values counted by the sample counter SCa. The sample number in the future is shown rather than the sample number. In the transmission processing unit Tx2 of the control device 10, the performance data for one or a plurality of events and the sample number assigned thereto are extracted from the transmission buffer according to the sample number order (reproduction order), and a performance data data packet is created. Send this to the network. The process of extracting the waveform data from the transmission buffer and creating a data packet is performed every 125 μs, which is one cycle of the transmission cycle. Of course, if there is no performance data to be transmitted in the transmission buffer, a data packet of performance data is not created.
As described above, even when the recorded performance data is read out and transmitted and reproduced on the receiving side, timing information corresponding to the sample number corresponding to the reproduction event time of the performance data to be transmitted is given to the performance data. Send.

送信された演奏データのデータパケットは、音楽機器20の受信処理部Rx2で受信され、その演奏データ用の受信バッファに順次記憶される。該受信バッファでは、当該音楽LANインターフェース32内のサンプルカウンタSCbのカウント値に基づく或る時点での現サンプル番号になると、音楽LANインターフェース32がCPU21にその旨を通知し、CPU21によりその現サンプル番号に対応するサンプル番号が付与された演奏データを読み出す。こうして、受信バッファに溜められた演奏データがそれぞれに付与されたサンプル番号に対応する時刻が到来すると、順次に、該受信バッファから読み出される。音楽機器20では、読み出された演奏データの指示する演奏イベントに係る楽音再生(発音開始または発音終了)処理又は演奏再生状態の制御処理をリアルタイムに行う。
上記実施例では、転送に際して音楽データに付与するタイミング情報としてサンプル番号そのものからなる情報を用いているが、これに限らず、当該サンプル番号に係るサンプル位置の時刻つまりサンプル時刻を示す情報であってもよく、要するに時系列的なサンプル番号の時間関係を明らかにすることができる情報であればよい。
The transmitted data packet of performance data is received by the reception processing unit Rx2 of the music device 20, and sequentially stored in the reception buffer for the performance data. In the reception buffer, when the current sample number at a certain time point based on the count value of the sample counter SCb in the music LAN interface 32 is reached, the music LAN interface 32 notifies the CPU 21 to that effect, and the CPU 21 notifies the current sample number. The performance data with the sample number corresponding to is read. In this way, when the performance data stored in the reception buffer arrives at the time corresponding to the sample number assigned thereto, the performance data is sequentially read from the reception buffer. The music device 20 performs a musical tone reproduction (pronunciation start or pronunciation end) process or a performance reproduction state control process related to the performance event indicated by the read performance data in real time.
In the above embodiment, information consisting of the sample number itself is used as timing information to be added to the music data at the time of transfer. In short, any information that can clarify the time relationship of time-series sample numbers may be used.

以上の通り、この発明によれば、記録系統にあっては、音楽機器から送信される音楽データには現サンプル番号に対応するタイミング情報が付与され、制御装置で受信された音楽データは該音楽データに付与されたタイミング情報に従う順序で記憶手段に記憶される。従って、この音楽システムで転送されてきた音楽データを受け手側で記憶する際に、従来のようなオフセット値相当分の時間遅れを持つサンプル時刻に対応して記憶されることがなく、実際のサンプル番号に相当するサンプル時刻に対応して記憶されることになり、記録に際しての遅延時間が存在しなくなる。従って、記録させるために音楽データを転送する毎にタイミング情報が付け直されるというような不都合が起こらない。   As described above, according to the present invention, in the recording system, the music data transmitted from the music device is given timing information corresponding to the current sample number, and the music data received by the control device is the music data. They are stored in the storage means in the order according to the timing information given to the data. Therefore, when the music data transferred by this music system is stored on the receiver side, it is not stored corresponding to the sample time having a time delay corresponding to the offset value as in the prior art, and the actual sample is not stored. It is stored corresponding to the sample time corresponding to the number, and there is no delay time in recording. Therefore, there is no inconvenience that timing information is reattached every time music data is transferred for recording.

また、再生系統にあっては、制御装置の記憶手段からは現サンプル番号より後の(つまり未来の)再生順の音楽データが読み出され、これが該再生順に応じた現サンプル番号より後の(つまり未来の)サンプル番号に対応するタイミング情報を付与されて送信されるので、このタイミング情報には従来のようなオフセット値相当分の時間遅れが存在せず、該音楽データの本来のサンプル番号に対応するタイミング情報が維持される。受信側の音楽機器では、適宜の転送時間遅れをもって、この音楽データのパケットを受け取るのであるが、該受信した音楽データそのものが送信時の現サンプル番号より後の再生順に対応するもの(未来のサンプル番号に対応するもの)であり、それに付与されているタイミング情報も送信時の現サンプル番号より後のサンプル番号(未来のサンプル番号)を示しているので、該受信した音楽データを該音楽データに付与されたタイミング情報に従うタイミングで再生処理することで、何の不都合もなく、再生を行うことができる。このように、この音楽システムで転送されてきた音楽データを受け手側で再生する際に、従来のような音楽データの本来のサンプル時刻からオフセット値相当分の時間遅れのサンプル時刻で再生されることがなく、音楽データの本来のサンプル時刻で再生することとなり、再生に際しての遅延時間が存在しなくなる。従って、再生(又は記録)させるために音楽データを転送する毎に通信遅延時間分のオフセット値が重複加算されてしまうような不都合が起こらない。   In the playback system, the music data in the playback order after the current sample number (that is, the future) is read from the storage means of the control device, and this is the data after the current sample number corresponding to the playback order ( In other words, since the timing information corresponding to the sample number in the future is added and transmitted, there is no time delay corresponding to the offset value in the conventional timing information, and the original sample number of the music data is not included. Corresponding timing information is maintained. The music device on the receiving side receives this music data packet with an appropriate transfer time delay, but the received music data itself corresponds to the playback order after the current sample number at the time of transmission (future samples And the timing information given to it also indicates a sample number (future sample number) after the current sample number at the time of transmission, so that the received music data is included in the music data. By performing the reproduction process at the timing according to the given timing information, the reproduction can be performed without any inconvenience. In this way, when music data transferred by this music system is played back on the receiver side, it is played back at a sample time that is delayed by a time corresponding to the offset value from the original sample time of the music data as in the past. Therefore, the music data is reproduced at the original sample time, and there is no delay time during reproduction. Therefore, there is no inconvenience that the offset value corresponding to the communication delay time is repeatedly added every time music data is transferred for reproduction (or recording).

また、波形データ(サンプルデータ)と演奏データ(イベントデータ)とを一緒に転送して再生又は記録する場合にも、当該波形データ及び演奏データの本来のサンプル番号に対応するタイミング情報を付加して転送処理するので、それぞれの波形データ及び演奏データの本来のサンプル番号に対応して適切に再生又は記録することができるので、共通のサンプル番号進行に従って、両者の時間関係にずれを来すことなく、不都合のない処理を行うことができる。   In addition, when waveform data (sample data) and performance data (event data) are transferred and reproduced or recorded together, timing information corresponding to the original sample number of the waveform data and performance data is added. Since transfer processing is performed, it is possible to appropriately reproduce or record each waveform data and performance data in accordance with the original sample number, so that there is no deviation in the time relationship between the two according to the progress of the common sample number. Therefore, it is possible to perform processing without inconvenience.

この発明に係る音楽システムの基本的なネットワーク構成例を示すブロック図。1 is a block diagram showing a basic network configuration example of a music system according to the present invention. 該音楽システムを構成するノードの一例として制御装置と音楽機器のハード構成例を示すブロック図。The block diagram which shows the hardware structural example of a control apparatus and a music apparatus as an example of the node which comprises this music system. 図2における制御装置と音楽機器との間における音楽データの送受に関連する処理例を機能的に示す図。FIG. 3 is a diagram functionally illustrating a processing example related to transmission / reception of music data between the control device and the music device in FIG. 2. (a)は音楽機器の受信処理部で波形データを受信するときに行なわれる処理を例示的に説明するタイミングチャートで、(b)は該音楽機器の送信処理部で波形データを送信するときに行なわれる処理を例示的に説明するタイミングチャート。(A) is a timing chart exemplarily explaining processing performed when waveform data is received by the reception processing unit of the music device, and (b) is when waveform data is transmitted by the transmission processing unit of the music device. The timing chart explaining the process performed illustratively. (a)は制御装置の送信処理部で波形データを送信するときに行なわれる処理を例示的に説明するタイミングチャートで、(b)は制御装置の受信処理部で波形データを受信するときに行なわれる処理を例示的に説明するタイミングチャート。(A) is a timing chart exemplarily explaining a process performed when waveform data is transmitted by the transmission processing unit of the control device, and (b) is performed when waveform data is received by the reception processing unit of the control device. The timing chart explaining the process which is performed exemplarily. (a)は制御装置の受信処理部での演奏データの受信処理の一例を示すフロー図で、(b)は該制御装置のCPUによって演奏データの記録/再生のために行われる10ms毎の割込み処理の一例を示すフロー図。(A) is a flowchart showing an example of performance data reception processing in the reception processing unit of the control device, and (b) is an interrupt for every 10 ms performed for recording / reproducing performance data by the CPU of the control device. The flowchart which shows an example of a process.

符号の説明Explanation of symbols

10 制御装置(例えばパーソナルコンピュータPC)
20 音楽機器
11,21 CPU
12,22 フラッシュメモリ
13,23 RAM
15 ハードディスク
28 MIDI入出力インターフェース
29 波形入出力インターフェース
30 波形処理部
31,32 音楽LANインターフェース
CTa、CTb サイクルタイマ
SCa,SCb サンプルカウンタ
Tx1,Tx2 送信処理部
Rx1,Rx2 受信処理部
10 Control device (for example, personal computer PC)
20 music equipment 11 and 21 CPU
12, 22 Flash memory 13, 23 RAM
15 Hard disk 28 MIDI input / output interface 29 Waveform input / output interface 30 Waveform processing unit 31, 32 Music LAN interface CTa, CTb Cycle timer SCa, SCb Sample counter Tx1, Tx2 Transmission processing unit Rx1, Rx2 Reception processing unit

Claims (2)

波形の入力を行う機能と波形の再生機能を有する音楽機器と、該音楽機器に対してネットワークを介して接続され、順次に再生されるべき波形のサンプルを記憶手段に記憶・読出する制御装置とを含み、波形の記録と再生を同時並行的に行う音楽システムであって、
前記音楽機器と前記制御装置は、それぞれ波形のサンプリング周期をカウントするサンプルカウンタを有するとともに、それらのサンプルカウンタは、前記ネットワークを介して相互に同期化されており、
当該音楽システムの記録系統にあっては、
前記音楽機器が、入力した波形のサンプルデータに当該音楽機器のサンプルカウンタのカウント値に対応するタイミング情報を付与して送信する入力制御手段具備し、
かつ、
前記制御装置が、前記送信された波形のサンプルデータを受信し、該受信したサンプルデータを該サンプルデータに付与されたタイミング情報に従う順序で前記記憶手段に記憶させる記録制御手段具備しており、
また、
当該音楽システムの再生系統にあっては、
前記制御装置が、当該制御装置のサンプルカウンタのカウント値に対応するサンプルデータより後の再生順の波形のサンプルデータを前記記憶手段から読み出し、該読み出したサンプルデータに該再生順に応じたタイミング情報を付与して送信する読出制御手段を具備し、
かつ、
前記音楽機器が、前記送信された波形のサンプルデータを受信し、該受信したサンプルデータを、該サンプルデータに付与されたタイミング情報と当該音楽機器のサンプルカウンタとに従うタイミングで再生処理する再生制御手段を具備する
ことを特徴とする音楽システム。
A music device having a function of inputting a waveform and a function of reproducing a waveform , and a control device that is connected to the music device via a network and stores / reads waveform samples to be sequentially reproduced in a storage means only including, a music system that performs recording and reproduction of the waveform simultaneously in parallel,
The music device and the control device each have a sample counter that counts a waveform sampling period, and the sample counters are synchronized with each other via the network,
In the recording system of the music system,
The music device comprises input control means for giving timing information corresponding to the count value of the sample counter of the music device to the sample data of the input waveform and transmitting it,
And,
Wherein the controller receives the sample data of the transmitted waveform, and the sample data thus received includes a recording control means for storing in said memory means in an order according to the timing information given to the sample data,
Also,
In the playback system of the music system,
The control device reads the sample data of the waveform in the reproduction order after the sample data corresponding to the count value of the sample counter of the control device from the storage means, and outputs the timing information corresponding to the reproduction order to the read sample data. Read control means for giving and transmitting,
And,
Reproduction control means for the music device to receive the sample data of the transmitted waveform and to process the received sample data at a timing according to timing information given to the sample data and a sample counter of the music device A music system comprising:
前記音楽機器は、さらに、演奏の入力を行う機能と演奏の再生機能を有しており、
また、
前記制御装置は、さらに、順次に再生されるべき演奏のイベントデータを前記記憶手段に記憶・読出するものであり、
前記音楽システムは波形と演奏の記録と再生を同時並行的に行う音楽システムであって、
当該音楽システムの記録系統にあっては、
前記音楽機器が、入力した演奏のイベントデータに当該音楽機器のサンプルカウンタのカウント値に対応する第2のタイミング情報を付与して送信する第2入力制御手段を具備し、
かつ、
前記制御装置、前記送信された演奏のイベントデータを受信し、該受信したイベントデータに付与された前記第2のタイミング情報をテンポマップに基づいて拍を基準とするのタイミング情報に変換し、該第のタイミング情報を付加して該イベントデータを前記記憶手段に記憶させる第2記録制御手段を具備しており、
また、
当該音楽システムの再生系統にあっては、
前記制御装置が、当該制御装置のサンプルカウンタのカウント値に対応するイベント時刻より後のイベント時刻の演奏のイベントデータを前記記憶手段から読み出し、該読み出したイベントデータに付与された前記第3のタイミング情報をテンポマップに基づいて前記第2のタイミング情報に変換し、該イベントデータに対して該第2のタイミング情報を付与して送信する第2読出制御手段を具備し、
かつ、
前記音楽機器が、前記送信された演奏のイベントデータを受信し、該受信したイベントデータを、該イベントデータに付与された前記第2のタイミング情報と当該音楽機器のサンプルカウンタとに従うタイミングで再生処理する第2再生制御手段を具備する
ことを特徴とする請求項1に記載の音楽システム。
The music device further has a function of inputting a performance and a function of reproducing the performance,
Also,
The control device further stores / reads event data of performances to be reproduced sequentially in the storage means,
The music system is a music system that records and reproduces waveforms and performances simultaneously,
In the recording system of the music system,
The music device includes second input control means for adding and transmitting second timing information corresponding to the count value of the sample counter of the music device to the input event data of the performance,
And,
Wherein the controller, the receiving the transmitted event data of the performance was the third timing information to said received event data granted the second reference had to beat based timing information to tempo map Converting, adding the third timing information, and storing the event data in the storage means, the second recording control means,
Also,
In the playback system of the music system,
The control device reads out event data of performance at an event time after an event time corresponding to the count value of the sample counter of the control device from the storage means, and the third timing given to the read event data A second read control means for converting the information into the second timing information based on a tempo map, adding the second timing information to the event data, and transmitting the second timing information;
And,
The music device receives event data of the transmitted performance, and the received event data is reproduced at a timing according to the second timing information added to the event data and the sample counter of the music device The music system according to claim 1, further comprising second reproduction control means .
JP2003412292A 2003-12-10 2003-12-10 Music system and music data transmission / reception device Expired - Fee Related JP3861873B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2003412292A JP3861873B2 (en) 2003-12-10 2003-12-10 Music system and music data transmission / reception device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2003412292A JP3861873B2 (en) 2003-12-10 2003-12-10 Music system and music data transmission / reception device

Publications (2)

Publication Number Publication Date
JP2005173136A JP2005173136A (en) 2005-06-30
JP3861873B2 true JP3861873B2 (en) 2006-12-27

Family

ID=34732777

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2003412292A Expired - Fee Related JP3861873B2 (en) 2003-12-10 2003-12-10 Music system and music data transmission / reception device

Country Status (1)

Country Link
JP (1) JP3861873B2 (en)

Families Citing this family (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4626429B2 (en) * 2005-07-20 2011-02-09 ヤマハ株式会社 MIDI data transmitting apparatus and program
JP4848797B2 (en) * 2006-02-28 2011-12-28 ヤマハ株式会社 Music network system
JP4677929B2 (en) * 2006-02-28 2011-04-27 ヤマハ株式会社 Group music learning system
JP5109426B2 (en) * 2007-03-20 2012-12-26 ヤマハ株式会社 Electronic musical instruments and programs
JP5109425B2 (en) * 2007-03-20 2012-12-26 ヤマハ株式会社 Electronic musical instruments and programs
JP5135922B2 (en) * 2007-07-11 2013-02-06 ヤマハ株式会社 Electronic music apparatus and program
US11876847B2 (en) * 2018-02-05 2024-01-16 D&M Holding System and method for synchronizing networked rendering devices
JP7124371B2 (en) * 2018-03-22 2022-08-24 カシオ計算機株式会社 Electronic musical instrument, method and program
CN111991802B (en) * 2020-07-17 2023-07-07 北京达佳互联信息技术有限公司 Control method, device, server and storage medium

Also Published As

Publication number Publication date
JP2005173136A (en) 2005-06-30

Similar Documents

Publication Publication Date Title
US5933430A (en) Data communication method
US6477181B1 (en) Data communication method and system
JP3915585B2 (en) DATA GENERATION METHOD, PROGRAM, RECORDING MEDIUM, AND DATA GENERATION DEVICE
US5913258A (en) Music tone generating method by waveform synthesis with advance parameter computation
USRE43076E1 (en) Waveform processing apparatus with versatile data bus
JP3861873B2 (en) Music system and music data transmission / reception device
JP2004096139A (en) Command synchronization establishing system and method therefor
US7515979B2 (en) Automix system
JP2002185440A (en) Method and system for communication as well as recording medium with recorded communication program
JP3451971B2 (en) Packet transfer device
JP3351385B2 (en) Serial data transmission / reception method and device
JP3451973B2 (en) Packet transfer device
JP3741047B2 (en) Sound generator
US20210134256A1 (en) Midi events synchronization system, method and device
JP2000253091A (en) Method for transferring, receiving and transmitting sample data, transfer device, receiver and transmitter for the sample data
JP3358581B2 (en) Packet transfer device
US11418883B2 (en) Audio interface apparatus and recording system
JP3716845B2 (en) Signal processing device connected to network
JP3846388B2 (en) Waveform data processor
JP3496562B2 (en) Packet transfer device
JP3627743B2 (en) Node in data transmission system
JP3451972B2 (en) Packet transfer device
JP3815353B2 (en) Multitrack playback device, multitrack recording device and multitrack recording / playback device
JPS6159497A (en) Data communication equipment for electronic musical instrument
JP2006301267A (en) Sound waveform generating device and data structure of waveform generation data of sound waveform

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20060428

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20060613

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20060812

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20060918

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

Year of fee payment: 4

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

Free format text: PAYMENT UNTIL: 20101006

Year of fee payment: 4

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

Free format text: PAYMENT UNTIL: 20111006

Year of fee payment: 5

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

Free format text: PAYMENT UNTIL: 20111006

Year of fee payment: 5

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

Free format text: PAYMENT UNTIL: 20121006

Year of fee payment: 6

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

Free format text: PAYMENT UNTIL: 20121006

Year of fee payment: 6

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

Free format text: PAYMENT UNTIL: 20131006

Year of fee payment: 7

LAPS Cancellation because of no payment of annual fees