JP4649851B2 - Distribution apparatus and program - Google Patents
Distribution apparatus and program Download PDFInfo
- Publication number
- JP4649851B2 JP4649851B2 JP2004060976A JP2004060976A JP4649851B2 JP 4649851 B2 JP4649851 B2 JP 4649851B2 JP 2004060976 A JP2004060976 A JP 2004060976A JP 2004060976 A JP2004060976 A JP 2004060976A JP 4649851 B2 JP4649851 B2 JP 4649851B2
- Authority
- JP
- Japan
- Prior art keywords
- data
- terminal
- stored
- packet
- area
- 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
Links
- 238000009826 distribution Methods 0.000 title claims description 95
- 238000004891 communication Methods 0.000 claims description 69
- 238000003860 storage Methods 0.000 claims description 59
- 230000005540 biological transmission Effects 0.000 claims description 32
- 230000003068 static effect Effects 0.000 claims description 19
- 239000000463 material Substances 0.000 description 67
- 238000000034 method Methods 0.000 description 57
- 238000012545 processing Methods 0.000 description 37
- 238000012549 training Methods 0.000 description 28
- 210000000746 body region Anatomy 0.000 description 21
- 238000010586 diagram Methods 0.000 description 9
- 239000000284 extract Substances 0.000 description 9
- 230000004044 response Effects 0.000 description 6
- 238000012800 visualization Methods 0.000 description 6
- 101100309712 Arabidopsis thaliana SD11 gene Proteins 0.000 description 3
- 230000000994 depressogenic effect Effects 0.000 description 2
- 230000006870 function Effects 0.000 description 2
- 101100309714 Arabidopsis thaliana SD16 gene Proteins 0.000 description 1
- 101100309716 Arabidopsis thaliana SD18 gene Proteins 0.000 description 1
- 238000004587 chromatography analysis Methods 0.000 description 1
- 239000003086 colorant Substances 0.000 description 1
- 238000000605 extraction Methods 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 238000009527 percussion Methods 0.000 description 1
- 239000013589 supplement Substances 0.000 description 1
Images
Landscapes
- Electrically Operated Instructional Devices (AREA)
- Auxiliary Devices For Music (AREA)
- Electrophonic Musical Instruments (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Description
本発明は、複数の端末間でデータを共有する技術に関する。 The present invention relates to a technique for sharing data among a plurality of terminals.
複数の端末が各種のデータをネットワーク経由で共有して楽器演奏の遠隔教習を行うシステムが提案されている。例えば、特許文献1及び特許文献2には、それぞれ、教師の音声や映像等のデータをネットワーク経由で生徒側の端末へ送り、生徒の音声や映像等のデータをネットワーク経由で教師側の端末へ送るシステムが開示されている。また、特許文献2における教師側の端末は、センタに記憶されている教材データを教師の指示に従ってダウンロードし、記憶している教材データを教師の指示に従って生徒側の端末へ送信する。
ところで、実際の楽器演奏の教習では、教師が、眺めるべき教材(例えば楽譜)を取り出し、取り出した教材を生徒に通知し、生徒が、通知された教材を取り出して眺める。もし、このような作業を簡素化することができれば、教習効率が向上する。しかし、特許文献1には、このような簡素化について何も記載されていない。また、特許文献2に記載のシステムでは、教師は、眺めるべき教材をセンタからダウンロードするために端末を操作し、更に、ダウンロードした教材を生徒へ送信するために再び端末を操作しなければならず、負担が大きい。
By the way, in the practice of actual musical instrument performance, the teacher takes out the teaching material to be viewed (for example, a score), notifies the student of the taken out teaching material, and the student takes out the notified teaching material and views it. If such work can be simplified, learning efficiency will be improved. However,
本発明は、上述した背景の下になされたものであり、端末の使用者に負担をかけることなく、複数の端末間でデータを共有することができる技術を提供することを目的とする。 The present invention has been made under the above-described background, and an object of the present invention is to provide a technique capable of sharing data among a plurality of terminals without burdening the user of the terminal.
本発明は、メンバーを識別するための識別子およびメンバーの属性を示す属性データをメンバー毎に記憶したメンバー記憶手段と、端末から送信されたデータをネットワーク経由で受信する受信手段と、前記メンバー記憶手段に記憶されている識別子が前記受信手段により受信されると、該データを送信した端末の通信アドレスを該識別子に対応付けて前記メンバー記憶手段に書き込む追加手段と、特定のデータの送信を要求するデータが前記受信手段により受信されると、該データを送信した端末の通信アドレスに対応付けて前記メンバー記憶手段に記憶されている属性が所定の属性であるか否かを判定し、所定の属性であれば、前記特定のデータを前記メンバー記憶手段に通信アドレスが記憶されている全ての端末へ前記ネットワーク経由で送信する静的同報手段と、第1のモードと第2のモードのいずれかを示すモードフラグを記憶するフラグ記憶手段と、前記モードフラグの内容が前記第1のモードを示しているときに、当該モードフラグの変更を要求するデータが前記受信手段により受信されると、該データを送信した端末の通信アドレスに対応付けて前記メンバー記憶手段に記憶されている属性が所定の属性であるか否かを判定し、所定の属性であれば、前記フラグ記憶手段に記憶される前記モードフラグの内容を前記第2のモードに変更する変更手段と、前記所定の属性に対応付けて記憶されている通信アドレスの端末以外の端末から、当該端末以外の端末へ送信すべきデータが前記受信手段により受信されると、前記フラグ記憶手段が記憶する前記モードフラグの内容が第1のモードを示している場合には、該データを前記メンバー記憶手段に通信アドレスが記憶されている全ての端末から該データの送信元の端末を除外した端末へ前記ネットワーク経由で送信し、前記フラグ記憶手段が記憶する前記モードフラグの内容が第2のモードを示している場合には、該データを前記メンバー記憶手段において前記所定の属性に対応付けて記憶されている通信アドレスの端末へ前記ネットワーク経由で送信する動的同報手段とを有する配信装置を提供する。
この装置では、所定の属性のメンバーに使用されている端末が特定のデータの送信を要求するデータを送信すると、このデータを受信手段が受信し、静的同報手段が、この端末を含む予め登録されたメンバーに使用されている全ての端末へ当該データを送信する。
The present invention includes a member storage unit that stores, for each member, an identifier for identifying a member and attribute data indicating a member attribute, a reception unit that receives data transmitted from a terminal via a network, and the member storage unit When the identifier stored in the receiver is received by the receiving means, an additional means for writing the communication address of the terminal that has transmitted the data in the member storage means in association with the identifier is requested, and transmission of specific data is requested. When the data is received by the receiving means, it is determined whether or not the attribute stored in the member storage means in association with the communication address of the terminal that transmitted the data is a predetermined attribute. If so, the specific data is sent to all the terminals whose communication addresses are stored in the member storage means. In a static broadcast means for transmitting a flag storage means for storing a mode flag that indicates whether the first mode and the second mode, when the content of the mode flag indicates the first mode In addition, when the data requesting the change of the mode flag is received by the receiving unit, the attribute stored in the member storage unit in association with the communication address of the terminal that transmitted the data is a predetermined attribute If it is a predetermined attribute, the content of the mode flag stored in the flag storage unit is stored in association with the second attribute and the changing unit that changes the content to the second mode. When data to be transmitted to a terminal other than the terminal is received by the receiving unit from a terminal other than the terminal having the communication address, the mode flag stored in the flag storage unit is stored. When the data indicates the first mode, the data is transmitted from all the terminals whose communication addresses are stored in the member storage means to the terminals excluding the data transmission source terminal via the network. When the content of the mode flag stored in the flag storage means indicates the second mode, the data of the communication address stored in the member storage means in association with the predetermined attribute is stored. There is provided a distribution apparatus having dynamic broadcast means for transmitting to a terminal via the network .
In this apparatus, when a terminal used as a member of a predetermined attribute transmits data requesting transmission of specific data, the receiving means receives this data, and the static broadcast means includes the terminal in advance. The data is transmitted to all terminals used by registered members.
また、上記の装置に、データが書き込まれる共有記憶手段と、前記特定のデータの送信を要求するデータが前記受信手段により受信されると、該データを送信した端末の通信アドレスに対応付けて前記メンバー記憶手段に記憶されている属性が所定の属性であるか否かを判定し、所定の属性であれば、前記特定のデータを前記共有記憶手段に書き込む静的書き込み手段と、前記メンバー記憶手段に記憶されている識別子が前記受信手段により受信されると、前記共有記憶手段にデータが書き込まれているか否かを判定し、書き込まれている場合には前記共有記憶手段に書き込まれているデータを該識別子に対応付けて前記メンバー記憶手段に通信アドレスが記憶されている端末へ送信する静的追従手段とを追加した態様としてもよいし、データが書き込まれる共有記憶手段と、他の端末へ送信すべきデータが前記受信手段により受信されると、該データを送信した端末の通信アドレスに対応付けて前記メンバー記憶手段に記憶されている属性が所定の属性であるか否かを判定し、所定の属性であれば、該データを前記共有記憶手段に書き込む動的書き込み手段と、前記メンバー記憶手段に記憶されている識別子が前記受信手段により受信されると、前記共有記憶手段にデータが書き込まれているか否かを判定し、書き込まれている場合には前記共有記憶手段に書き込まれているデータを該識別子に対応付けて前記メンバー記憶手段に通信アドレスが記憶されている端末へ前記ネットワーク経由で送信する動的追従手段とを追加した態様としてもよい。 In addition, when the receiving device receives data for requesting transmission of the specific data and the shared storage unit in which data is written to the above device, the data is associated with the communication address of the terminal that transmitted the data. It is determined whether or not the attribute stored in the member storage means is a predetermined attribute. If the attribute is the predetermined attribute, the static writing means for writing the specific data in the shared storage means, and the member storage means When the identifier stored in is received by the receiving means, it is determined whether or not data is written in the shared storage means, and if it is written, the data written in the shared storage means may be a mode of adding the static tracking means for transmitting to the terminal the communication address to the member storage unit in association with said identifier is stored, de chromatography A shared storage unit that is written, when data to be transmitted to another terminal is received by the receiving means, the attribute stored in the member storage unit in association with the communication address of the terminal that sent the data It is determined whether or not the attribute is a predetermined attribute. If the attribute is a predetermined attribute, the dynamic writing means for writing the data in the shared storage means and the identifier stored in the member storage means are received by the receiving means. Then, it is determined whether or not data is written in the shared storage means, and if it is written, the data written in the shared storage means is associated with the identifier in the member storage means. It is good also as an aspect which added the dynamic tracking means which transmits via the said network to the terminal in which the communication address is memorize | stored.
前者の態様であれば、受信手段が、静的同報手段により特定のデータが送信された後に、メンバー記憶手段に記憶されている識別子を受信すると、静的追従手段が、この識別子の送信元の端末へ特定のデータを送信する。後者の態様であれば、受信手段が、動的同報手段によりデータが送信された後に、メンバー記憶手段に記憶されている識別子を受信すると、動的追従手段が、この識別子の送信元の端末へ、動的同報手段により送信されたデータを送信する。 In the former mode, when the receiving means receives the identifier stored in the member storage means after the specific data is transmitted by the static broadcast means, the static follower means the sender of this identifier. Send specific data to your device. In the latter mode, when the receiving means receives the identifier stored in the member storage means after the data is transmitted by the dynamic broadcast means, the dynamic follower means sends the terminal of the sender of this identifier. The data transmitted by the dynamic broadcast means is transmitted.
さらに、本発明は、記憶手段を備えるコンピュータを、端末から送信されたデータをネットワーク経由で受信する受信手段と、メンバーを識別するための識別子およびメンバーの属性を示す属性データがメンバー毎に登録されているメンバーテーブル内の識別子が前記受信手段により受信されると、該識別子を送信した端末の通信アドレスを該識別子に対応付けて前記メンバーテーブルに登録する追加手段と、特定のデータの送信を要求するデータが前記受信手段により受信されると、該データを送信した端末の通信アドレスに対応付けて前記メンバーテーブルに登録されている属性が所定の属性であるか否かを判定し、所定の属性であれば、前記特定のデータを前記メンバーテーブルに通信アドレスが登録されている全ての端末へ前記ネットワーク経由で送信する静的同報手段と、前記記憶手段に記憶された第1のモードと第2のモードのいずれかを示すモードフラグの内容が前記第1のモードを示しているときに、当該モードフラグの変更を要求するデータが前記受信手段により受信されると、該データを送信した端末の通信アドレスに対応付けて前記メンバーテーブル内の属性が所定の属性であるか否かを判定し、所定の属性であれば、前記記憶手段に記憶される前記モードフラグの内容を前記第2のモードに変更する変更手段と、前記所定の属性に対応付けて記憶されている通信アドレスの端末以外の端末から、他の端末へ送信すべきデータが前記受信手段により受信されると、前記記憶手段が記憶する前記モードフラグの内容が第1のモードを示している場合には、該データを前記メンバーテーブルに通信アドレスが登録されている全ての端末から該データの送信元の端末を除外した端末へ前記ネットワーク経由で送信し、前記記憶手段が記憶する前記モードフラグの内容が第2のモードを示している場合には、該データを前記メンバーテーブルにおいて前記所定の属性に対応付けて登録されている通信アドレスの端末へ前記ネットワーク経由で送信する動的同報手段として機能させるためのプログラムを提供する。
このプログラムを実行したコンピュータでは、所定の属性のメンバーに使用されている端末が特定のデータの送信を要求するデータを送信すると、このデータを受信手段が受信し、静的同報手段が、この端末を含む予め登録されたメンバーに使用されている全ての端末へ当該データを送信する。
Further, according to the present invention, a receiving unit for receiving data transmitted from a terminal via a network, a computer having a storage unit, an identifier for identifying a member, and attribute data indicating a member attribute are registered for each member. When the identifier in the member table is received by the receiving means, an additional means for registering the communication address of the terminal that transmitted the identifier in the member table in association with the identifier is requested, and transmission of specific data is requested. When the data to be received is received by the receiving means, it is determined whether or not the attribute registered in the member table in association with the communication address of the terminal that transmitted the data is a predetermined attribute. The specific data is sent to all terminals whose communication addresses are registered in the member table. Static broadcast means for transmitting via the workpiece, when the content of the mode flag indicating either a first mode and a second mode stored indicates the first mode before Symbol storage means When the data requesting the change of the mode flag is received by the receiving means, it is determined whether the attribute in the member table is a predetermined attribute in association with the communication address of the terminal that transmitted the data and, if the predetermined attribute, the Symbol changing means for changing the contents of the mode flag to the second mode stored in憶means, the communication address stored in association with the predetermined attribute from a terminal other than the terminal, the data to be transmitted to another terminal is received by the receiving means, if the contents of the mode flag the Symbol憶means stores indicates the first mode, the De Sends data in the over the network from all the terminals communication address is registered in the member table to the terminal, excluding the source terminal of the data, the content of the mode flag the Symbol憶means stores the first 2 in order to function as dynamic broadcast means for transmitting the data to a terminal having a communication address registered in association with the predetermined attribute in the member table via the network. Provide a program.
In a computer that has executed this program, when a terminal used as a member of a predetermined attribute transmits data requesting transmission of specific data, the receiving means receives this data, and the static broadcast means receives this data. The data is transmitted to all terminals used by members registered in advance including the terminals.
本発明によれば、所定の属性のメンバーに使用されている端末が特定のデータの送信を要求するデータを送信するだけで、この端末を含む予め登録されたメンバーに使用されている全ての端末間で特定のデータが共有される。よって、端末の使用者に負担をかけることなく、複数の端末間でデータを共有することができる。また、特定のデータの共有は所定の属性のメンバーにより主導されるから、教材の共有が教師により主導されるべき教習に用いて好適である。 According to the present invention, all the terminals used for the members registered in advance including this terminal can be obtained by transmitting the data used to request the transmission of specific data by the terminal used for the member having the predetermined attribute. Specific data is shared between them. Therefore, data can be shared among a plurality of terminals without imposing a burden on the users of the terminals. In addition, since sharing of specific data is led by a member having a predetermined attribute, sharing of teaching materials is suitable for a lesson to be led by a teacher.
また、本発明によれば、端末の使用者に負担をかけることなく、通信アドレスが後で対応付けられた端末と先に対応付けられた端末との間で、特定のデータや動的同報手段により送信されるデータを共有することができる。また、本発明によれば、これらの端末間で、所定の属性のメンバーに使用されている端末から送信され動的同報手段により送信されるデータを共有することができる。 In addition, according to the present invention, specific data and dynamic broadcast can be performed between a terminal with which a communication address is associated later and a terminal with which the communication address is associated earlier without imposing a burden on the user of the terminal. Data transmitted by the means can be shared. Further, according to the present invention, data transmitted from a terminal used as a member having a predetermined attribute and transmitted by dynamic broadcast means can be shared between these terminals.
以下、図面を参照して、本発明の一実施形態について説明する。
[1:構成]
図1は本実施形態に係る遠隔教習システムの構成を示すブロック図である。
本システムは、楽器演奏の教習を行うための仮想的な教室(以降、単に「教室」と記す)を提供する配信装置1、教室にログインして教習を行う教師Aに使用される教師端末2A、及び教室にログインして教習を行う生徒B〜Dに使用される生徒端末2B〜2Dを有する。配信装置1、教師端末2A、及び生徒端末2B〜2Dはそれぞれコンピュータであり、ネットワーク3に接続されている。ネットワーク3はパケット通信網であり、配信装置1、教師端末2A、及び生徒端末2B〜2Dは、ネットワーク3を用いてパケットを送受信することができる。また、ネットワーク3には、図示を略すが、生徒端末2B〜2DからURL(Uniformed Resource Locator)を受信して当該URL内のドメイン名に応じた通信アドレスを返信するDNS(Domain Name System)サーバが接続されている。
Hereinafter, an embodiment of the present invention will be described with reference to the drawings.
[1: Configuration]
FIG. 1 is a block diagram showing a configuration of a distance learning system according to the present embodiment.
This system includes a
教師Aおよび生徒B〜Dには教室にログインするための所定のURLが予め配布されている。このURLは配信装置1のドメイン名を含んでいる。また、教師Aおよび生徒B〜Dには予め固有のメンバーIDが割り当てられている。メンバーIDは教室にログイン可能なメンバーを識別するための情報であり、教師AにはメンバーID「A」が、生徒B〜DにはメンバーID「B」〜「D」が割り当てられている。以降の説明では、必要に応じて、教師AをメンバーA、生徒BをメンバーB、生徒CをメンバーC、生徒DをメンバーDと呼ぶ。また、以降の説明では、教師端末2A及び生徒端末2B〜2Dの総称として「端末2」を用いる。
A predetermined URL for logging in to the classroom is distributed in advance to the teacher A and the students B to D. This URL includes the domain name of the
教師端末2AにはMIDI楽器41A、マイク42A、スピーカ43A、及びカメラ44Aが接続されている。
MIDI楽器41AはMIDI(Musical Instruments Digital Interface)規格に対応した鍵盤楽器であり、図2に示すように、MIDIキーボード411、MIDI音源412及びスピーカ413を有する。MIDIキーボード411は鍵盤、ペダル、及び他の操作子を有し、これらの操作子がメンバーAにより操作されると、MIDIデータを生成してMIDI音源412へ供給する。
A MIDI
The MIDI
MIDI音源412はMIDIデータに従って楽音信号を生成するとともに、MIDIデータが音色を設定するためのMIDIデータであれば、このMIDIデータに従って音色を設定する。なお、上記の他の操作子はMIDI音源412を設定する際に操作される。また、スピーカ413はMIDI音源412により生成された楽音信号に従って放音する。
The
また、MIDI楽器41AはMIDIキーボード411により生成されたMIDIデータを教師端末2Aに供給する一方、教師端末2Aから供給されたMIDIデータをMIDI音源412へ供給する。
The MIDI
マイク42AはメンバーAの音声を集音して音声データとして教師端末2Aへ供給する。スピーカ43Aは教師端末2Aから供給された音声データに従って放音する。カメラ44Aは予め定められた時間間隔でメンバーAを撮像してメンバーAの姿を表す画像データを教師端末2Aへ供給する。
The
マイク42B〜42D、スピーカ43B〜43D、及びカメラ44B〜44Dについても、上記と同様に構成されている。以降の説明では、MIDI楽器41A〜41Dの総称として「MIDI楽器41」を、マイク42A〜42Dの総称として「マイク42」を、スピーカ43A〜43Dの総称として「スピーカ43」を、カメラ44A〜44Dの総称として「カメラ44」を用いる。
The microphones 42B to 42D, the
[1−1:パケット]
図3はネットワーク3を用いて送受信されるパケットのデータ構造を模式的に示す図である。この図に示すように、パケットは、宛先の装置の通信アドレスを格納するための宛先アドレス領域P1、送信元の装置の通信アドレスを格納するための送信元アドレス領域P2、及び自身が運ぶデータ本体を格納するためのデータ領域P3を有する。データ領域P3には、教材データ、音声データ、画像データ、演奏データ、及びコマンドのいずれかが格納される。
[1-1: Packet]
FIG. 3 is a diagram schematically illustrating a data structure of a packet transmitted / received using the
教材データは楽譜等の教材の内容や使用状況を表すデータである。本システムにおいて教習中に配信されるデータには、配信装置1内に予め存在する静的データと、教習中に発生する動的データとがあり、教材データにも、静的データと動的データとがある。
音声データはマイク42から端末2へ供給される音声データであり、メンバーA〜Dの音声を表す。例えば、メンバーAの音声を表す音声データはマイク42Aから教師端末2Aへ供給される音声データである。なお、全ての音声データは動的データである。
画像データはカメラ44から端末2へ供給される画像データであり、メンバーA〜Dの姿を視覚的に表す。例えば、メンバーAの様子を表す画像データはカメラ44Aから教師端末2Aへ供給される画像データである。なお、全ての画像データは動的データである。
The educational material data is data representing the content and usage of the educational material such as a score. Data distributed during training in this system includes static data pre-existing in the
The voice data is voice data supplied from the microphone 42 to the terminal 2 and represents the voices of the members A to D. For example, the voice data representing the voice of the member A is voice data supplied from the
The image data is image data supplied from the camera 44 to the terminal 2 and visually represents the appearance of the members A to D. For example, the image data representing the state of member A is image data supplied from the
演奏データはMIDI楽器41の操作の内容を表すデータである。例えば、MIDI楽器41Aの演奏データはMIDI楽器41Aから教師端末2Aへ供給されるMIDIデータに時刻を表す時刻データを対応付けたデータであり、教師端末2Aにおいてパケットに格納される。なお、全ての演奏データは動的データである。このような演奏データの生成および格納の様子について図4を参照して説明する。
The performance data is data representing the contents of the operation of the MIDI
この図では、C3のノートとG3のノートがt1にてオンとなり、t2にてオフとなる。さらにG3のノートがt3にてオンとなり、t4にてオフとなる。本実施形態では予め定められた収集時間(例えば50ms)毎に、収集時間内に生成された演奏データを1つのパケットに格納するようにしており、t1は第1の収集時間内の時刻であり、t2〜t4は第1の収集時間に後続する第2の収集時間内の時刻である。 In this figure, the notes of C3 and G3 are turned on at t1 and turned off at t2. Further, the note of G3 is turned on at t3 and turned off at t4. In the present embodiment, the performance data generated within the collection time is stored in one packet every predetermined collection time (for example, 50 ms), and t1 is the time within the first collection time. , T2 to t4 are times within a second collection time following the first collection time.
この図に示す例では、第1の収集時間において1つの演奏データが生成される。この演奏データは、C3のノート及びG3のノートがオンになったことを示すMIDIデータとt1を表す時刻データとが対応付けられたデータである。この演奏データは1つのパケットに格納される。なお、ノートオンを示すMIDIデータには、打鍵強度(ベロシティ)を示すデータも内包されている。 In the example shown in this figure, one piece of performance data is generated in the first collection time. The performance data is data in which MIDI data indicating that the C3 note and the G3 note are turned on is associated with time data representing t1. This performance data is stored in one packet. Note that MIDI data indicating note-on also includes data indicating keystroke strength (velocity).
また、第2の収集時間において3つの演奏データが生成される。1つ目の演奏データは、C3のノート及びG3のノートがオフになったことを示すMIDIデータとt2を表す時刻データとが対応付けられたデータである。2つ目の演奏データは、G3のノートがオンになったことを示すMIDIデータとt3を表す時刻データとが対応付けられたデータである。3つ目の演奏データは、G3のノートがオフになったことを示すMIDIデータとt4を表す時刻データとが対応付けられたデータである。これら3つの演奏データは1つのパケットに格納される。 In addition, three pieces of performance data are generated in the second collection time. The first performance data is data in which MIDI data indicating that the C3 note and the G3 note are turned off is associated with time data representing t2. The second performance data is data in which MIDI data indicating that the note of G3 is turned on is associated with time data representing t3. The third performance data is data in which MIDI data indicating that the note of G3 is turned off and time data indicating t4 are associated with each other. These three performance data are stored in one packet.
コマンドは配信装置1または端末2により生成される。端末2により生成されるコマンドには、ログインコマンド、教材配信コマンド、モード変更コマンド及びログアウトコマンドがある。配信装置1により生成されるコマンドには、ログイン通知コマンド、共有状況通知コマンド及び画面配信コマンドがある。
The command is generated by the
ログインコマンドは教室へのログインを要求するためのコマンドであり、URLとメンバーIDとを含む。
教材配信コマンドは教材データの配信を要求するためのコマンドである。
モード変更コマンドは演奏データの配信モードの変更を要求するためのコマンドである。演奏データの配信モードには、生徒端末2B〜2Dからの演奏データを全ての端末2で共有する共有モードと、教師端末2Aのみへ送信する個別モードとがある。
ログアウトコマンドは教室からのログアウトを要求するためのコマンドであり、URLを含む。
The login command is a command for requesting login to the classroom, and includes a URL and a member ID.
The teaching material distribution command is a command for requesting distribution of teaching material data.
The mode change command is a command for requesting a change of the performance data distribution mode. The performance data distribution mode includes a sharing mode in which performance data from the
The logout command is a command for requesting logout from the classroom and includes a URL.
ログイン通知コマンドは教室へのログインに成功したことを通知するためのコマンドであり、ログインに成功したメンバーのメンバーIDを含む。
共有状況通知コマンドは教室にログインしているメンバーを通知するためのコマンドである。
画面配信コマンドは後述の教習画面データ132を含むコマンドである。
The login notification command is a command for notifying that login to the classroom has been successful, and includes the member ID of the member who has successfully logged in.
The sharing status notification command is a command for notifying members logged in the classroom.
The screen distribution command is a command including
図3に示すように、データ領域P3はデータ本体を格納するための本体領域P31、データ本体の生成元を示すメンバーIDを格納するための生成元領域P32、及びデータ本体の種別を示す種別データを格納するための種別領域P33に分かれている。例えば、MIDI楽器41Aの操作の内容を表す演奏データを運ぶパケットの本体領域P31には当該演奏データが格納され、生成元領域P32にはメンバーID「A」が格納され、種別領域P33には演奏データである旨の種別データが格納される。
As shown in FIG. 3, the data area P3 has a main body area P31 for storing the data main body, a generation source area P32 for storing a member ID indicating the generation source of the data main body, and type data indicating the type of the data main body. Is divided into a type area P33 for storing. For example, the performance data is stored in the main body area P31 of a packet carrying performance data representing the content of the operation of the
[1−2:配信装置]
図5は配信装置1の構成を示すブロック図である。
この図に示すように、配信装置1は、CPU(中央処理装置)11、RAM(Random Access Memory)12、ハードディスク13、及び通信部14を有する。通信部14はCPU11とネットワーク3との間でパケットを中継する。
[1-2: Distribution device]
FIG. 5 is a block diagram showing the configuration of the
As shown in this figure, the
ハードディスク13には共有領域131が確保されている。共有領域131とは追従データが書き込まれる領域である。追従データとは共有メンバーに共有されるべき教材データまたはMIDIデータであり、後からログインしたメンバーの環境(端末2の記憶内容やMIDI音源412の設定状態)を先にログインしているメンバーの環境に追従させるために用いられる。共有メンバーとは教室にログインしているメンバーである。なお、以降の説明では、教室にログイン可能なメンバーのうち、共有メンバーでないメンバーを非共有メンバーと呼ぶ。
A shared
また、ハードディスク13には、教習画面データ132、楽譜データ133(静的データ)、表示ページデータ134(静的データ)、モードフラグ135、メンバーテーブルT1、及び管理プログラム136が書き込まれている。
In addition, learning
教習画面データ132はメンバーA〜Dが眺める教習画面を表すデータである。図6に示すように、教習画面は表示領域R1〜R9を有する。表示領域R1は楽譜の内容の表示に用いられる領域である。表示領域R2は各種のツールの表示に用いられる領域である。各種のツールとしては、教習に必要な教材データをダウンロードする旨の指示を入力するためのボタンや、楽譜のページを捲る旨の指示を入力するためのボタン、楽譜にテキストや図形を書き込むためのボタン等がある。表示領域R3は教師Aの姿の表示に用いられる領域である。表示領域R4〜R7はそれぞれ生徒B〜Dの姿の表示に用いられる領域である。表示領域R8は鍵盤の操作内容の表示に用いられる領域である。表示領域R9はペダルの操作内容の表示に用いられる領域である。
The
楽譜データ133は楽譜の内容を表す教材データであり、表示ページデータ134は楽譜のページを示す教材データである。
モードフラグ135は演奏データの配信モード(共有モード/個別モード)を示すデータであり、初期状態では共有モードを示している。
メンバーテーブルT1は教習画面の表示領域R3〜R7にメンバーA〜Dを対応付けたテーブルである。この対応付けは、表示領域R3〜R7に固有の領域番号「R3」〜「R7」とメンバーID「A」〜「D」を対応付けることにより為されている。具体的には、図7に示すように、領域番号「R3」にはメンバーID「A」が、領域番号「R4」にはメンバーID「B」が、領域番号「R5」にはメンバーID「C」が、領域番号「R6」にはメンバーID「D」が対応付けられている。
The
The
The member table T1 is a table in which the members A to D are associated with the display areas R3 to R7 of the learning screen. This association is performed by associating region numbers “R3” to “R7” unique to the display regions R3 to R7 with member IDs “A” to “D”. Specifically, as shown in FIG. 7, the member ID “A” is assigned to the region number “R3”, the member ID “B” is assigned to the region number “R4”, and the member ID “R” is assigned to the member number “R5”. “C” is associated with the member ID “D” and the region number “R6”.
メンバーテーブルT1はメンバーに関する情報も格納する。メンバーに関する情報としては、メンバーID、メンバーの属性(教師/生徒)、メンバーの状態(ログイン/ログアウト)、メンバーが使用している端末2の通信アドレスがある。メンバーテーブルT1の初期値は図7に示す通りであり、例えば、メンバーAに関する情報としては、メンバーID「A」、メンバーAの属性「教師」、及びメンバーAの状態「ログアウト」が格納されている。なお、メンバーA〜Dについて通信アドレスが格納されていないのは、メンバーA〜Dの状態がいずれも「ログアウト」であるためである。 The member table T1 also stores information about members. Information about the member includes a member ID, a member attribute (teacher / student), a member state (login / logout), and a communication address of the terminal 2 used by the member. The initial values of the member table T1 are as shown in FIG. 7. For example, as the information about the member A, the member ID “A”, the attribute “teacher” of the member A, and the state “logout” of the member A are stored. Yes. The communication addresses are not stored for the members A to D because the states of the members A to D are all “logout”.
管理プログラム136はCPU11に後述の動作を実行させるためのプログラムである。CPU11は、図示せぬ電源が投入されると、管理プログラム136を読み出して実行する。この際、CPU11のワークエリアとしてRAM12が使用される。CPU11が管理プログラム136を用いて行う動作については後述するが、その流れの一部は図8〜図10に示す通りである。
The
[1−3:端末]
図11は教師端末2Aの構成を示すブロック図である。
この図に示すように、教師端末2Aは、CPU21、RAM22、ハードディスク23、通信部24、操作部25、ディスプレイ26、MIDIインタフェース27、音声入出力インタフェース28、及びカメラインタフェース29を有する。
[1-3: Terminal]
FIG. 11 is a block diagram showing a configuration of the
As shown in this figure, the
通信部24はCPU21とネットワーク3との間でパケットを中継する。
操作部25はメンバーAに操作され、この操作の内容に応じた操作信号をCPU21に供給する。メンバーAは、この操作部25を操作することにより教師端末2Aに各種の指示を入力することができる。CPU21は操作部25からの操作信号を受けてメンバーAが教師端末2Aに入力した指示を特定することができる。
ディスプレイ26はフレームメモリを備え、フレームメモリに書き込まれている画像データを用いて画像を表示する。この表示は予め定められた時間間隔で繰り返し行われる。
MIDIインタフェース27はMIDI楽器41Aとの間でMIDIデータを中継する。
音声入出力インタフェース28は、マイク42Aからの音声データをCPU21へ中継する一方、CPU21からの音声データをスピーカ43Aへ中継する。
カメラインタフェース29はカメラ44Aからの画像データをCPU21へ中継する。
The
The
The
The
The voice input /
The
RAM22には、演奏データの送信に用いられる送信領域222、および受信した演奏データを一時的に格納するための即時再生領域221が確保される。即時再生領域221はメンバーAを除いたメンバー(すなわちメンバーB、C及びD)毎に確保される。
ハードディスク23には教材領域231、自ID領域232、画面領域233、対応領域234、及び選択領域235が確保されている。教材領域231は教材データが書き込まれる領域であり、自ID領域232はメンバーAのメンバーID「A」が書き込まれる領域であり、画面領域233は教習画面データ132が書き込まれる領域であり、対応領域234は後述の対応テーブルT2が書き込まれる領域であり、選択領域235は後述の選択テーブルT3が書き込まれる記憶領域である。
In the
The hard disk 23 has a
対応テーブルT2は、教習画面の表示領域R3〜R7にメンバーA〜Dを対応付けるテーブルであり、図12に例示するように、前述のメンバーテーブルT1と同様のデータを格納する。ただし、図12の対応テーブルT2において、メンバーAの状態は「ログイン」や「ログアウト」ではなく、「自身」となっている。
選択テーブルT3は、表示領域R3〜R7の選択状態を示すデータテーブルであり、図13に例示するように、表示領域R3〜R7の領域番号「R3」〜「R7」と表示領域R3〜R7の選択状態「選択」/「非選択」とを対応付けて格納している。
The correspondence table T2 is a table that associates the members A to D with the display areas R3 to R7 of the training screen, and stores data similar to the member table T1 described above as illustrated in FIG. However, in the correspondence table T2 of FIG. 12, the state of the member A is “self”, not “login” or “logout”.
The selection table T3 is a data table indicating the selection states of the display areas R3 to R7. As illustrated in FIG. 13, the area numbers “R3” to “R7” of the display areas R3 to R7 and the display areas R3 to R7 are displayed. The selection states “selected” / “non-selected” are stored in association with each other.
また、ハードディスク23には、受信した演奏データを最終的に格納するためのMIDI領域237が確保される。MIDI領域237はメンバーAを除いたメンバー(すなわちメンバーB、C及びD)毎に確保される。
また、ハードディスク23には端末プログラム236が書き込まれている。端末プログラム236はCPU21に後述の動作を実行させるためのプログラムである。CPU21は、教師端末2Aに入力された指示が端末プログラム236の実行を開始する旨の指示であれば、端末プログラム236を読み出して実行する。この際、CPU21のワークエリアとしてRAM22が使用される。また、CPU21は、教師端末2Aに入力された指示が教室からログアウトする旨の指示であれば、端末プログラム236の実行を終了する。CPU21が端末プログラム236を用いて行う動作については後述するが、その流れの一部は図14〜図16に示す通りである。
生徒端末2B〜2Dについても、上記と同様に構成されている。
Further, the hard disk 23 has a
A
The
[2:動作]
次に本システムの動作について、図17に示す教習例に沿って説明する。
[2−1:メンバーBのログイン]
まず、メンバーBが生徒端末2Bを用いてログイン作業を開始する。
ログイン作業では、まず、メンバーBが操作部25を用いてURLとメンバーID「B」を送信して教室にログインする旨の指示を生徒端末2Bに入力する。このURLはメンバーBに対して予め配布された所定のURLである。すると、操作部25からCPU21に操作信号が供給され、CPU21は供給された操作信号を受けてメンバーBにより入力された指示を特定する。特定した指示は所定のURLとメンバーID「B」を送信して教室にログインする旨の指示であるから、CPU21は、通信部24およびネットワーク3を介してDNSサーバ(図示略)と通信し、このURL内のドメイン名に応じた通信アドレス(すなわち配信装置1の通信アドレス)を取得してRAM22に書き込む。次に、CPU21はこれらのURL及びメンバーIDを含むログインコマンドを生成し、このログインコマンドを本体領域P31に格納したパケットを生成し、このパケットを配信装置1宛で送信する。このパケットは配信装置1宛のパケットであるから、その宛先アドレス領域P1には配信装置1の通信アドレスが格納されている。また、生徒端末2Bを送信元としたパケットであるから、送信元アドレス領域P2には生徒端末2Bの通信アドレスが格納されている。このパケットは通信部24及びネットワーク3を介して配信装置1に届く。
[2: Operation]
Next, the operation of the present system will be described along the lesson example shown in FIG.
[2-1: Member B login]
First, the member B starts a login operation using the
In the log-in operation, first, the member B uses the
配信装置1のCPU11は、このパケットを受信し(図8のステップSA1)、このパケットに正当なログインコマンドが格納されているか否かを判定する(ステップSA2)。このパケットの本体領域P31にはログインコマンドが格納されており、このログインコマンド内のURLは所定のURLであり、このログインコマンド内のメンバーID「B」はメンバーテーブルT1に格納されているから、この判定結果は「YES」となる。よって、CPU11はログイン処理を行う(ステップSA3)。
The
ログイン処理において、CPU11はメンバーBを共有メンバーとする共有処理を行う(図9のステップSB1)。この共有処理では、CPU11はメンバーテーブルT1を更新する。この更新では、メンバーBの状態が「ログアウト」から「ログイン」に変化し、メンバーBが使用している端末2の通信アドレスとして生徒端末2Bの通信アドレスが格納される。この結果、メンバーテーブルT1の内容は図18に示す通りとなる。
In the login process, the
さらに、共有処理では、CPU11は第1〜第3のパケットを生成し、これらを生徒端末2B宛で送信する。これらのパケットの種別領域P33にはコマンドである旨の種別データが格納されている。
第1のパケットの本体領域P31にはメンバーID「B」を含むログイン通知コマンドが格納されている。また、第2のパケットの本体領域P31には教習画面データ132を含む画面配信コマンドが格納されている。また、第3のパケットの本体領域P31には、メンバーテーブルT1を含む共有状況通知コマンドが格納されている。この第3のパケットは共有メンバーが使用している端末2宛で送信されるべきものであるが、ここでは、共有メンバーがメンバーBのみであるから、生徒端末2B宛で送信される。
Further, in the sharing process, the
A login notification command including the member ID “B” is stored in the main body area P31 of the first packet. Further, a screen distribution command including the
次に、CPU11はメンバーテーブルT1を参照してメンバーBの属性が「教師」であるか否かを判定する(ステップSB2)。メンバーBの属性は「生徒」であるから、この判定結果は「NO」となる。よって、CPU11は追従データが存在するか否かを判定する(ステップSB3)。この時点では、共有領域131にデータは書き込まれていないから、この判定結果は「NO」となる。よって、CPU11はログイン処理を終了する。
Next, the
生徒端末2BのCPU21は、上記の第1のパケットを受信し、このパケット内のメンバーID「B」を自ID領域232に書き込む。また、上記の第2のパケットを受信し、このパケット内の教習画面データ132を画面領域233に書き込む。また、上記の第3のパケットを受信し、このパケット内のメンバーテーブルT1の内容を変更して対応テーブルT2を生成し、この対応テーブルT2を対応領域234に書き込む。この変更では、メンバーBの状態が「ログイン」から「自身」に変化する。この結果、対応領域234には図19に示す対応テーブルT2が書き込まれる。
The
さらに、CPU21は対応テーブルT2を参照し、即時再生領域221およびMIDI領域237を状態が「自身」ではないメンバー(すなわちメンバーA、C及びD)毎に確保する。即時再生領域221はRAM22上に確保され、MIDI領域237はハードディスク13上に確保される。また、CPU21は対応テーブルT2を参照して選択テーブルT3を作成し、ハードディスク23上の選択領域235に書き込む。ここでは、状態「ログイン」及び状態「ログアウト」が選択状態「選択」に変更され、状態「自身」が「非選択」に変更される。この結果、選択領域235には図20に示す選択テーブルT3が書き込まれる。
Further, the
このとき、カメラ44BはメンバーBを撮像してメンバーBの姿を表す画像データを生徒端末2Bへ供給している。CPU21はカメラ44Bからの画像データを受け取り、受け取った画像データ(動的データ)を本体領域P31に含むパケットを生成し、生成したパケットを配信装置1宛で送信する。送信されるパケットの種別領域P33には画像データである旨の種別データが格納されている。
At this time, the camera 44B images the member B and supplies image data representing the appearance of the member B to the
また、マイク42BはメンバーBの音声を集音して音声データとして生徒端末2Bへ供給している。CPU21はマイク42Bから音声データを受け取り、受け取った音声データ(動的データ)を本体領域P31に含むパケットを生成し、生成したパケットを配信装置1宛で送信する。送信されるパケットの種別領域P33には音声データである旨の種別データが格納されている。
これらのパケットの生成元領域P32にはメンバーID「B」が格納されている。
The microphone 42B collects the voice of the member B and supplies it to the
The member ID “B” is stored in the generation source area P32 of these packets.
また、CPU21は送信領域222をRAM22上に確保し、図14に示すMIDI送信処理を開始する。MIDI送信処理において、CPU21は送信領域222の記憶内容をクリアし(ステップSC1)、予め定められた収集時間後にタイムアウトする送信用タイマをセットするが、この時点では、MIDI楽器41Bが操作されていないから、送信領域222にデータが書き込まれることなく送信用タイマがタイムアウトする(ステップSC2:NO、SC3:NO、SC2:NO、…、SC2:YES)。よって、CPU21は演奏データを格納したパケットを送信することなく、タイムアウトした送信用タイマを再セットする処理を繰り返す(ステップSC4:NO、SC1、…)。
Further, the
配信装置1のCPU11は、生徒端末2Bからのパケットを受信し、正当なログインコマンドが格納されているか否かを判定する(ステップSA1、SA2)。この時点で受信されるパケットは、本体領域P31に画像データ又は音声データを格納したパケットである。したがって、この判定結果は「NO」となる。よって、CPU11はメンバーテーブルT1を参照し、受信したパケットの生成元領域P32内のメンバーID「B」のメンバー(すなわちメンバーB)が共有メンバーであるか否かを判定する(ステップSA4)。メンバーBは共有メンバーであるから、この判定結果は「YES」となる。よって、CPU11はパケット処理を行う(ステップSA5)。
The
受信したパケットの種別領域P33には画像データ又は音声データである旨の種別データが格納されているから、パケット処理では、CPU11は、当該パケットのデータ領域P3に格納されているデータを抽出し、このデータをデータ領域P3に格納したパケットを生成し、このパケットを、メンバーBを除く全ての共有メンバーの端末2へ送信しようとする(図10のステップSD1:NO、SD2:NO、SD3:NO、SD4)。しかし、この時点での共有メンバーはメンバーBのみであり、宛先となる端末2は存在しないから、CPU11はパケットを送信しない。つまり、生徒端末2Bからの画像データ及び音声データは配信装置1において破棄される。
Since the type data indicating that the received packet type area P33 is image data or audio data is stored, in the packet processing, the
また、この時点では、生徒端末2Bに他の端末2からのデータが供給されることはないから、生徒端末2BのCPU21は、カメラ44Bからの画像データ、画面領域233内の教習画面データ132、対応領域234内の対応テーブルT2、及び選択領域235内の選択テーブルT3を用いて、教習画面を表す画像データを生成し、生成した画像データをディスプレイ26のフレームメモリに書き込む。この結果、ディスプレイ26には、図21に示す教習画面が表示される。この教習画面において、選択テーブルT3により選択されている表示領域R3及びR5〜R7は太枠で強調されており、対応テーブルT2により状態「自身」が対応付けられた表示領域R4内にはカメラ44Bからの画像データで表される画像(すなわちメンバーBの姿)が表示されている。
At this time, since the data from the other terminals 2 is not supplied to the
[2−2:メンバーAのログイン]
図17の教習例では、次に、メンバーAが教師端末2Aを用いてログイン作業を行う。このログイン作業では、メンバーAは操作部25を用いて所定のURLとメンバーID「A」を送信して教室にログインする旨の指示を教師端末2Aに入力する。この結果、教師端末2AのCPU21は、所定のURLとメンバーID「A」を含むログインコマンドを生成し、このログインコマンドを本体領域P31に格納したパケットを生成し、生成したパケットを配信装置1宛で送信する。
[2-2: Member A login]
In the learning example of FIG. 17, next, the member A performs login work using the teacher terminal 2 </ b> A. In this login operation, the member A uses the
配信装置1のCPU11は、このパケットを受信してログイン処理を行う(ステップSA1、SA2:YES、SA3)。メンバーAの属性は「教師」であるから、このログイン処理では追従データの有無は判定されない(ステップSB2:YES)。このログイン処理の結果、配信装置1では、メンバーAが共有メンバーとなり、メンバーテーブルT1が更新される。更新後のメンバーテーブルT1には、メンバーAの状態として「ログイン」が登録され、メンバーAが使用している端末2の通信アドレスとして教師端末2Aの通信アドレスが登録されている。
The
また、上記のログイン処理の結果、教師端末2Aでは、自ID領域232にメンバーID「A」が書き込まれ、対応領域234に対応テーブルT2が書き込まれ、選択領域235に選択テーブルT3が書き込まれる。この対応テーブルT2において状態「自身」が対応付けられているのはメンバーAであり、この選択テーブルT3において選択状態「非選択」が対応付けられているのは表示領域R3である。
As a result of the login process, the
また、上記のログイン処理において、メンバーAが共有メンバーとなるから、前述の第3のパケットと同様のパケットが教師端末2Aのみならず、生徒端末2Bにも届く。生徒端末2BのCPU21は、このパケットを受信し、このパケット内のメンバーテーブルT1を用いて対応テーブルT2を生成し、この対応テーブルT2を対応領域234に上書きする。つまり、生徒端末2Bの対応テーブルT2が更新される。更新後の対応テーブルT2が更新前のテーブルから変化した点は、メンバーAの状態が「ログアウト」から「ログイン」に変わった点のみである。
また、上記のログイン処理の結果、教師端末2Aでは、画面領域233に教習画面データ132が書き込まれる。
In the above login process, since member A becomes a shared member, a packet similar to the third packet described above reaches not
Further, as a result of the login process, the
これに並行して、教師端末2AのCPU21は、カメラ44Aからの画像データを本体領域P31に格納したパケットを生成し、生成したパケットを配信装置1宛で送信するとともに、マイク42Aからの音声データを本体領域P31に格納したパケットを生成し、生成したパケットを配信装置1宛で送信する。また、生徒端末2BのCPU21は、カメラ44Bからの画像データを本体領域P31に格納したパケットを生成し、生成したパケットを配信装置1宛で送信するとともに、マイク42Bからの音声データを本体領域P31に格納したパケットを生成し、生成したパケットを配信装置1宛で送信する。
In parallel with this, the
配信装置1のCPU11は、教師端末2Aからのパケットを受信し、パケット処理を行う(ステップSA1、SA2:NO、SA4:YES、SA5)。この時点で受信されるパケットは、種別領域P33に音声データ又は画像データである旨の種別データを格納したパケットであるから、パケット処理では、CPU11は、受信したパケットのデータ領域P3に格納されているデータを抽出し、このデータをデータ領域P3に格納したパケットを生成し、このパケットを、メンバーAを除く全ての共有メンバーの端末2(すなわち生徒端末2B)宛で送信する(図10のステップSD1:NO、SD2:NO、SD3:NO、SD4)。これと同様の処理が生徒端末2Bからのパケットについても行われる。こうして、教師端末2Aからの画像データ及び音声データは生徒端末2Bへ、生徒端末2Bからの画像データ及び音声データは教師端末2Aへ送信される。
The
教師端末2AのCPU21は教師端末2A宛のパケットを受信する。この時点で受信されるパケットは、本体領域P31に画像データ又は音声データを格納したパケットである。CPU21は、受信したパケットの種別領域P33に音声データである旨の種別データが格納されていれば、このパケットの本体領域P31内の音声データをスピーカ43Aへ供給する。この結果、スピーカ43AからはメンバーBの音声が放音される。
The
一方、このパケットの種別領域P33に画像データである旨の種別データが格納されていれば、CPU21は、このパケットの本体領域P31内の画像データを、当該パケットの生成元領域P32内のメンバーIDのメンバー(ここではメンバーB)の画像データとして抽出する。次に、CPU21は、メンバーBの画像データ、カメラ44Aからの画像データ、画面領域233内の教習画面データ132、対応領域234内の対応テーブルT2、及び選択領域235内の選択テーブルT3を用いて、教習画面を表す画像データを生成し、生成した画像データをディスプレイ26のフレームメモリに書き込む。この結果、ディスプレイ26には、図22に示す教習画面が表示される。
On the other hand, if type data indicating that the data is image data is stored in the type area P33 of the packet, the
この教習画面において、選択テーブルT3により選択されている表示領域R4〜R7は太枠で強調されており、対応テーブルT2により状態「自身」が対応付けられた表示領域R3内にはカメラ44Aからの画像データで表される画像(すなわちメンバーAの姿)が表示されており、対応テーブルT2によりメンバーBが対応付けられた表示領域R4内にはメンバーBの画像データで表される画像(すなわちメンバーBの姿)が表示されている。
これと同様に、スピーカ43BからはメンバーAの音声が放音され、生徒端末2Bのディスプレイ26にはメンバーA及びBの姿が表示される。
In this training screen, the display areas R4 to R7 selected by the selection table T3 are highlighted with a thick frame, and the display area R3 associated with the state “self” by the correspondence table T2 is from the
Similarly, the sound of the member A is emitted from the
[2−3:メンバーCのログイン]
図17の教習例では、次に、メンバーCが生徒端末2Cを用いてログイン作業を行う。この結果、配信装置1ではメンバーBのログイン時と同様のログイン処理が行われる。このログイン処理の結果、配信装置1では、メンバーCが共有メンバーとなり、メンバーテーブルT1が更新される。更新後のメンバーテーブルT1には、メンバーCの状態として「ログイン」が登録され、メンバーCが使用している端末2の通信アドレスとして生徒端末2Cの通信アドレスが登録されている。
[2-3: Member C login]
In the learning example of FIG. 17, next, the member C performs login work using the student terminal 2 </ b> C. As a result, the
また、上記のログイン処理の結果、生徒端末2Cでは、自ID領域232にメンバーID「C」が書き込まれ、対応領域234に対応テーブルT2が書き込まれ、選択領域235に選択テーブルT3が書き込まれる。この対応テーブルT2において状態「自身」が対応付けられているのはメンバーCであり、この選択テーブルT3において選択状態「非選択」が対応付けられているのは表示領域R5である。
As a result of the login process, the
また、上記のログイン処理において、メンバーCが共有メンバーとなるから、前述の第3のパケットと同様のパケットが教師端末2A及び生徒端末2Bにも届く。よって、教師端末2A及び生徒端末2Bにおいて対応領域234内のメンバーテーブルT1が更新される。更新後の対応テーブルT2が更新前のテーブルから変化した点は、メンバーCの状態が「ログアウト」から「ログイン」に変化した点のみである。また、上記のログイン処理の結果、生徒端末2Cでは、画面領域233に教習画面データ132が書き込まれる。
Further, in the above login process, since member C becomes a shared member, a packet similar to the above-described third packet also reaches
最終的には、スピーカ43CからはメンバーA及びBの音声が放音され、生徒端末2Cのディスプレイ26には図23に示す教習画面が表示される。この教習画面において、選択領域235内の選択テーブルT3により選択されている表示領域R3、R4、R6及びR7は太枠で強調されており、対応領域234内の対応テーブルT2により状態「自身」が対応付けられた表示領域R5内にはカメラ44Cからの画像データで表される画像(すなわちメンバーCの姿)が表示されており、この対応テーブルT2によりメンバーA及びBが対応付けられた表示領域R3及びR4内にはメンバーA及びBの画像データで表される画像(すなわちメンバーA及びBの姿)が表示されている。
Finally, the voices of the members A and B are emitted from the speaker 43C, and the learning screen shown in FIG. 23 is displayed on the
これと同様に、スピーカ43AからはメンバーB及びCの音声が放音され、教師端末2Aのディスプレイ26にはメンバーA〜Cの姿が表示される。また、スピーカ43BからはメンバーA及びCの音声が放音され、生徒端末2Bのディスプレイ26にはメンバーA〜Cの姿が表示される。
Similarly, the voices of the members B and C are emitted from the
[2−4:教材データの配信]
図17の教習例では、次に、メンバーAが教師端末2Aの操作部25を操作して、教習で使用される教材データの配信を要求する旨の指示を教師端末2Aに入力する。CPU21は、この際に操作部25から供給される操作信号を受けて、メンバーAにより入力された指示を特定する。特定した指示は教習で使用される教材データの配信を要求する旨の指示であるから、CPU21は教材配信コマンドを生成し、この教材配信コマンドを本体領域P31に格納したパケットを生成し、生成したパケットを配信装置1宛で送信する。このパケットの種別領域P33にはコマンドである旨の種別データが格納されており、生成元領域P32にはメンバーID「A」が格納されている。このメンバーID「A」は自ID領域232に書き込まれているメンバーIDである。
[2-4: Distribution of teaching material data]
In the learning example of FIG. 17, next, the member A operates the
配信装置1のCPU11は、このパケットを受信し、パケット処理を行う(ステップSA1、SA2:NO、SA4:YES、SA5)。このパケットの種別領域P33にはコマンドである旨の種別データが格納されているから、パケット処理では、CPU11は、このコマンドが正当なログアウトコマンドであるか否かを判定する(ステップSD1:YES、SD5)。このコマンドは教材配信コマンドであるから、この判定結果は「NO」となる。よって、CPU11は、このパケットの生成元領域P32内のメンバーIDのメンバーが教師であるか否かを、メンバーテーブルT1を参照して判定する(ステップSD6)。
The
このパケットの生成元領域P32内のメンバーIDは「A」であり、メンバーID「A」には属性「教師」が対応付けられているから、この判定結果は「YES」となる。よって、CPU11は、このコマンドが教材配信コマンドであるか否かを判定する(ステップSD7)。この判定結果は「YES」となる。よって、CPU11は、楽譜データ133(静的データ)及び表示ページデータ134(静的データ)をハードディスク13から読み出して共有領域131に書き込む一方、これらの教材データを本体領域P31に格納したパケットを生成し、生成したパケットを送信する(ステップSD8、SD4)。ここで送信されるパケットの宛先は教師端末2A、生徒端末2B及び生徒端末2Cであり、当該パケットの種別領域P33には教材データである旨の種別データが格納されている。
Since the member ID in the packet generation source area P32 is “A” and the attribute “teacher” is associated with the member ID “A”, the determination result is “YES”. Therefore, the
教師端末2AのCPU21は、教師端末2Aのパケットを受信し、受信したパケット内の教材データを教材領域231に書き込む。次に、CPU21は、教材領域231内の教材データと、メンバーB及びCの画像データ、カメラ44Aからの画像データ、画面領域233内の教習画面データ132、対応領域234内の対応テーブルT2、及び選択領域235内の選択テーブルT3を用いて、教習画面を表す画像データを生成し、生成した画像データをディスプレイ26のフレームメモリに書き込む。この結果、ディスプレイ26には、図24に示す教習画面が表示される。この教習画面の表示領域R1内には、教材領域231内の楽譜データで表される楽譜の内容のうち、教材領域231内の表示ページデータで表されるページの内容が表示されている。
The
これと同様の処理が、生徒端末2B及び2Cにおいても行われ、結局、共有メンバーが使用している教師端末2A、生徒端末2B及び生徒端末2Cにおいて、同一の楽譜の内容が表示される。
なお、教師端末2Aではなく生徒端末2Bから、教材配信コマンドを本体領域P31に格納したパケットが配信装置1宛で送信された場合、このパケットの生成元領域P32内のメンバーIDは「B」となり、このメンバーID「B」には属性「生徒」が対応付けられているから、配信装置1のCPU11は上述の処理を行うことなくパケット処理を終了する(ステップSD6:NO)。つまり、共有メンバーのうち、教習で使用される教材の配信を指示することができるのは教師Aのみである。
The same processing is performed on the
When a packet storing a teaching material distribution command in the main body area P31 is transmitted from the
[2−5:教材のページ捲り]
図17の教習例では、次に、メンバーAが教師端末2Aの操作部25を操作して、教材のページを捲る旨の指示を教師端末2Aに入力する。CPU21は、この際に操作部25から供給される操作信号を受けてメンバーAにより入力された指示を特定する。特定した指示は教材のページを捲る旨の指示であるから、CPU21は、教材領域231内の表示ページデータを、次のページのページ番号を示すように更新する。次に、CPU21は、教材領域231内の教材データと、メンバーB及びCの画像データ、カメラ44Aからの画像データ、画面領域233内の教習画面データ132、対応領域234内の対応テーブルT2、及び選択領域235内の選択テーブルT3を用いて、教習画面を表す画像データを生成し、生成した画像データをディスプレイ26のフレームメモリに書き込む。この結果、教師端末2Aの教習画面の表示領域R1には、楽譜の次のページの内容が表示される。
[2-5: Page learning materials]
In the learning example of FIG. 17, next, the member A operates the
また、CPU21は、表示ページデータを更新すると、更新後の表示ページデータ(動的データ)を本体領域P31に格納したパケットを生成し、生成したパケットを配信装置1宛で送信する。このパケットの生成元領域P32にはメンバーID「A」が格納されており、種別領域P33には教材データである旨の種別データが格納されている。
In addition, when the display page data is updated, the
配信装置1のCPU11は、このパケットを受信してパケット処理を行う(ステップSA1、SA2:NO、SA4:YES、SA5)。このパケットの種別領域P33には教材データである旨の種別データが格納されているから、パケット処理では、CPU11は、このパケットの生成元領域P32に格納されたメンバーIDのメンバーの属性が「教師」であるか否かを、メンバーテーブルT1を参照して判定する(ステップSD1:NO、SD2:YES、SD9)。このパケットの生成元領域P32内のメンバーIDは「A」であり、メンバーID「A」には属性「教師」が対応付けられているから、この判定結果は「YES」となる。
The
よって、CPU11は、このパケットの本体領域P31内の表示ページデータを共有領域131に書き込む(ステップSD10)。つまり、共有領域131内の表示ページデータを更新する。次に、CPU11は、このパケットのデータ領域P3に格納されているデータを抽出し、抽出したデータをデータ領域P3に格納したパケットを生成し、生成したパケットを共有メンバーに使用されている生徒端末2B及び2C宛で送信する(ステップSD4)。
Therefore, the
生徒端末2BのCPU21は、生徒端末2B宛のパケットを受信する。受信したパケットの種別領域P33には教材データである旨の種別データが格納されているから、CPU21は当該パケットの本体領域P31内の表示ページデータを教材領域231に書き込む。つまり、教材領域231内の教材データを更新する。これにより、最終的には、生徒端末2Bの教習画面の表示領域R1には、楽譜の次のページの内容が表示される。これと同様の処理が、生徒端末2Cにおいても行われる。
結局、教師端末2A、生徒端末2B及び生徒端末2Cにおいて、楽譜の次のページの内容が表示される。
The
Eventually, the content of the next page of the score is displayed on the
なお、教師端末2Aではなく生徒端末2Bから、ページ捲りデータを本体領域P31に格納したパケットが配信装置1宛で送信された場合、このパケットの生成元領域P32には生徒BのメンバーID「B」が格納されており、メンバーID「B」には属性「生徒」が対応付けられているから、配信装置1のCPU11は上述の処理を行うことなくパケット処理を終了する(ステップSD9:NO)。つまり、共有メンバーのうち、楽譜のページを捲ることができるのは教師Aのみである。
When a packet storing page turning data in the main body area P31 is transmitted from the
[2−6:メンバーAによるMIDI音源の設定]
図17の教習例では、次に、メンバーAがMIDI楽器41Aを操作し、MIDI音源412の音色を設定する。この際、MIDI楽器41Aから教師端末2AへMIDIデータが供給され、これを教師端末2AのCPU21が受け取る。CPU21は図14に示す送信処理を行っており、MIDIデータを受け取ると、このMIDIデータが、教習には不要であって、教習の枠を超えた要求を防止するためにフィルタリングすべきMIDIデータ(例えばダンプリクエスト)や送信するデータ量を削減するためにフィルタリングすべきMIDIデータ(例えばペダル/鍵盤の連続値のように後述する画像の生成に用いられないMIDIデータ)、または教習のレベル・内容に合わないためにフィルタリングすべきMIDIデータであるか否かを判定する(ステップSC3:YES、SC6)。受け取ったMIDIデータはMIDI音源412の音色を設定するためのMIDIデータであるから、この判定結果は「NO」となる。よって、CPU21は入力したMIDIデータと現在時刻を表す時刻データとを対応付けて演奏データを生成し、これを送信領域222に書き込む(ステップSC7)。CPU21は、このような処理を送信用タイマがタイムアウトするまで繰り返す。
[2-6: MIDI sound source setting by member A]
In the learning example of FIG. 17, the member A then operates the MIDI
そして、送信用タイマがタイムアウトすると、CPU21は送信領域222に演奏データが書き込まれているか否かを判定する(ステップSC4)。ここでは、送信領域222に演奏データが書き込まれているから、この判定結果は「YES」となる。よって、CPU21は送信領域222から演奏データを読み出し、読み出した演奏データ(動的データ)を本体領域P31に格納したパケットを生成し、生成したパケットを配信装置1宛で送信する(ステップSC2:YES、SC4:YES、SC5)。このパケットの生成元領域P32にはメンバーID「A」が格納されており、種別領域P33には演奏データである旨の種別データが格納されている。
When the transmission timer times out, the
配信装置1のCPU11は、教師端末2Aからのパケットを受信し、パケット処理を行う(ステップSA1、SA2:NO、SA4:YES、SA5)。受信したパケットの本体領域P31には演奏データである旨の種別データが格納されているから、パケット処理では、CPU11は、当該パケットの本体領域P31内の演奏データにダンプリクエスト及びダンプレスポンスの少なくとも一方が含まれているか否かを判定する(ステップSD1:NO、SD2:NO、SD3:YES、SD11)。当該パケット内のMIDIデータはMIDI音源412の音色を設定するためのMIDIデータであるから、この判定結果は「NO」となる。
The
よって、CPU11は、当該パケットの生成元領域P32に格納されたメンバーIDのメンバーの属性が「教師」であるか否かを、メンバーテーブルT1を参照して判定する(ステップSD12)。当該パケットの生成元領域P32内のメンバーIDは「A」であり、メンバーID「A」には属性「教師」が対応付けられているから、この判定結果は「YES」となる。よって、CPU11は、当該パケットの本体領域P31内の演奏データから、MIDI音源412の音色を設定するためのMIDIデータを抽出し、抽出したMIDIデータ(動的データ)を共有領域131に書き込む(ステップSD13)。
Therefore, the
次に、CPU11は、当該パケットのデータ領域P3から演奏データを抽出し、抽出した演奏データをデータ領域P3に格納したパケットを生成し、生成したパケットを生徒端末2B及び2C宛で送信する(ステップSD4)。
Next, the
生徒端末2BのCPU21は生徒端末2B宛のパケットを受信する。受信したパケットの種別領域P33には演奏データである旨の種別データが格納されているから、CPU21は当該パケットの本体領域P31に時刻データが格納されているか否かを調べる。当該パケットの本体領域P31には時刻データが格納されているから、CPU21は、本体領域P31内の演奏データを、生成元領域P32内のメンバーIDのメンバー(ここではメンバーA)の演奏データとして抽出し、このメンバー用に確保された即時再生領域221に追記する。この際、CPU21は、当該パケットの受信を開始した時点から予め設定された余裕時間(例えば500ms)が経過した後に、メンバーA用の即時再生領域221に最初に書き込んだ時刻データで表される時刻を初期値として再生用タイマをスタートさせ、図15に示す即時再生処理および図16に示す移動処理を並列に実行する。なお、上記の余裕時間はネットワーク3におけるパケットの伝送遅延のバラツキを吸収するために設定されている。
The
即時再生処理では、CPU21は、再生タイミングを迎えた演奏データが即時再生領域221に存在するか否かを判定し続ける(ステップSE1:NO、SE2:NO)。この判定は、再生用タイマのカウント値と即時再生領域221内の時刻データとを比較することにより行われる。そして、メンバーA用の即時再生領域221に書き込まれた演奏データの再生タイミングを迎えると、CPU21は、対応テーブルT2及び選択テーブルT3を参照して、再生タイミングを迎えた演奏データが再生すべき演奏データとして選択されているか否かを判定する(ステップSE2:YES、SE3)。メンバーAに対応する表示領域R3の選択状態が「選択」となっているから、この判定結果は「YES」となる。
In the immediate playback process, the
よって、CPU21は、再生タイミングを迎えた演奏データについて再生処理を行う(ステップSE4)。つまり、再生タイミングを迎えた演奏データからMIDIデータを抽出してMIDI楽器41Bに供給する。ここでMIDI楽器41Bに供給されるMIDIデータはMIDI音源412の音色を設定するためのMIDIデータであるから、MIDI楽器41BのMIDI音源412の音色が設定される。
Therefore, the
また、CPU21はMIDI楽器41Bに供給したMIDIデータが可視化可能なMIDIデータを含んでいるか否かを判定する(ステップSE5)。可視化可能なMIDIデータとは、鍵盤やペダルのように演奏中に用いられる操作子の動きに変換することができるMIDIデータである。ここでは、MIDI楽器41Bに供給したMIDIデータはMIDI音源412の音色の設定のためのMIDIデータであるから、この判定結果は「NO」となる。よって、CPU21は可視化処理を行わない。
Further, the
一方、移動処理において、CPU21は、メンバーA用の即時再生領域221に書き込まれている演奏データが無くなるまで、再生タイミングを過ぎた演奏データを当該即時再生領域221からメンバーA用のMIDI領域237へ移動する処理を繰り返す(ステップSF1:NO、SF2、SF3)。メンバーA用の即時再生領域221から全ての演奏データが移動されると、CPU21は、移動処理および即時再生処理を終了する(ステップSF1:YES、SE1:YES)。
On the other hand, in the movement process, the
これと同様の処理が、生徒端末2Cにおいても行われる。こうして、MIDI楽器41B及び41CのMIDI音源412の音色が、MIDI楽器41Aにおける音色と同様に設定される。
A process similar to this is also performed at the
[2−7:メンバーAの演奏]
図17の教習例では、次に、メンバーAがMIDI楽器41Aを用いて演奏する。このときにも、教師端末2AのCPU21は、本体領域P31に演奏データ(動的データ)を格納したパケットを生成し、配信装置1宛で送信する。ただし、このパケット内の演奏データに含まれているMIDIデータは、MIDI音源412の音色を設定するためのデータではなく、メンバーAによる鍵盤やペダルの操作に応じたデータである。
[2-7: Performance of member A]
In the learning example of FIG. 17, member A then performs using the MIDI
配信装置1のCPU11は、教師端末2Aからのパケットを受信し、パケット処理を行う(ステップSA1、SA2:NO、SA4:YES、SA5)。受信されたパケットの種別領域P33には演奏データである旨の種別データが格納されており、かつ、本体領域P31内の演奏データにはダンプリクエスト及びダンプレスポンスのいずれも含まれておらず、かつ、生成元領域P32に格納されたメンバーIDのメンバーの属性は「教師」である。よって、パケット処理において、CPU11は、当該パケットの本体領域P31内の演奏データからMIDI音源412の音色を設定するためのMIDIデータを抽出しようとする(ステップSD1:NO、SD2:NO、SD3:YES、SD11:NO、SD12、YES、SD13)。
The
しかし、当該パケットの本体領域P31内のMIDIデータは鍵盤やペダルの操作の内容に応じたデータであり、MIDI音源412の音色を設定するためのデータではないから、CPU11は上記の抽出に失敗する。よって、ここでは、共有領域131にMIDIデータが書き込まれることはない。次に、CPU11は、当該パケットのデータ領域P3内のデータを抽出し、抽出したデータをデータ領域P3に格納したパケットを生成し、生成したパケットを生徒端末2B及び2C宛で送信する(ステップSD4)。
However, since the MIDI data in the main body region P31 of the packet is data corresponding to the operation contents of the keyboard and pedal, and is not data for setting the tone of the
生徒端末2BのCPU21は配信装置1からのパケットを受信し、前述と同様の処理を行う。ただし、受信されたパケットの本体領域P31内の演奏データに含まれているMIDIデータは鍵盤やペダルの操作の内容に応じたデータであるから、MIDI楽器41Bから当該MIDIデータに従って楽音が放音される。つまり、メンバーAの演奏に応じた楽音がMIDI楽器41Bから出力される。
The
また、受信されたパケットの本体領域P31内の演奏データに含まれているMIDIデータは鍵盤やペダルの操作の内容に応じたデータであるから、その可視化が可能である。よって、CPU21は可視化処理を行う(ステップSE5:YES、SE6)。
可視化処理では、CPU21は、再生タイミングを迎えた演奏データ内のMIDIデータが鍵盤の操作の内容に応じたデータであれば、当該MIDIデータとMIDI楽器41の鍵盤に模した図形とを用いて、鍵盤の操作の内容を表す画像データを生成する。一方、再生タイミングを迎えた演奏データ内のMIDIデータがペダルの操作の内容に応じたデータであれば、当該MIDIデータとMIDI楽器41のペダルに模した図形とを用いて、ペダルの操作の内容を表す画像データを生成する。
Further, since the MIDI data included in the performance data in the main body area P31 of the received packet is data according to the contents of the operation of the keyboard or pedal, it can be visualized. Therefore, the
In the visualization process, the
そして、CPU21は、生成した画像データと、教材領域231内の教材データと、メンバーB及びCの画像データ、カメラ44Aからの画像データ、画面領域233内の教習画面データ132、対応領域234内の対応テーブルT2、及び選択領域235内の選択テーブルT3を用いて、教習画面を表す画像データを生成し、この画像データをディスプレイ26のフレームメモリに書き込む。この結果、ディスプレイ26には、図25に示す教習画面が表示される。この教習画面の表示領域R8内には鍵盤の操作の内容を鍵盤に模した図形を用いて表現した画像が表示されており、表示領域R9内にはペダルの操作の内容をペダルに模した図形を用いて表現した画像が表示されている。この教習画面においては、押下されている鍵の色と押下されていない鍵の色とが異なっており、踏み込まれているペダルの表示位置と踏み込まれていないペダルの表示位置とが異なっている。
Then, the
これと同様の処理が生徒端末2Cにおいても行われる。こうして、教師Aの演奏に応じた楽音がMIDI楽器41B及び41Cから出力され、生徒端末2B及び2Cでは教師AによるMIDI楽器41Aの操作の内容が鍵盤やペダルを模した図形を用いて表示される。
A process similar to this is also performed at the
[2−8:メンバーBの演奏]
図17の教習例では、次に、メンバーBがMIDI楽器41Bを用いて演奏する。この場合、生徒端末2BのCPU21は、本体領域P31に演奏データを格納したパケットを生成し、配信装置1宛で送信する。このパケット内の演奏データは鍵盤やペダルの操作の内容に応じたMIDIデータと時刻データとを対応付けたデータである。また、このパケットの生成元領域P32にはメンバーID「B」が格納されている。
[2-8: Performance of member B]
In the learning example of FIG. 17, member B then performs using the MIDI instrument 41B. In this case, the
配信装置1のCPU11は、生徒端末2Bからのパケットを受信し、パケット処理を行う(ステップSA1、SA2:NO、SA4:YES、SA5)。受信されたパケットの種別領域P33には演奏データである旨の種別データが格納されており、かつ、このパケットの本体領域P31内の演奏データにはダンプリクエスト及びダンプレスポンスのいずれも含まれておらず、かつ、このパケットの生成元領域P32に格納されたメンバーIDのメンバーの属性は「生徒」である。よって、パケット処理において、CPU11は、当該パケットの本体領域P31に格納された演奏データがMIDI音源412の音色を設定するためのMIDIデータを含んでいるか否かを判定する(ステップSD1:NO、SD2:NO、SD3:YES、SD11:NO、SD12、NO、SD14)。
The
このパケットの本体領域P31に格納された演奏データが含んでいるMIDIデータは、鍵盤やペダルの操作の内容に応じたデータであるから、この判定結果は「NO」となる。よって、CPU11は、配信モードが共有モードであるか否かをモードフラグ135を参照して判定する(ステップSD15)。この時点では、配信モードは共有モードであるから、CPU11は、このパケットのデータ領域P3に格納されたデータを抽出し、抽出したデータをデータ領域P3に格納したパケットを生成し、生成したパケットを教師端末2A及び生徒端末2C宛で送信する(ステップSD15:YES、SD4)。
Since the MIDI data included in the performance data stored in the main body region P31 of this packet is data according to the contents of the operation of the keyboard or pedal, the determination result is “NO”. Therefore, the
教師端末2AのCPU21は配信装置1からのパケットを受信し、前述と同様の即時再生処理および移動処理を行う。これと同様の処理が生徒端末2Cにおいても行われる。この結果、生徒Bの演奏に応じた楽音がMIDI楽器41A及び41Cから放音され、教師端末2A及び生徒端末2Cでは生徒BによるMIDI楽器41Bの操作の内容が鍵盤やペダルを模した図形を用いて表示される。
The
なお、メンバーBがMIDI楽器41Bを操作してMIDI音源412の音色を設定すれば、演奏データを本体領域P31に格納したパケットが生徒端末2Bから配信装置1宛で送信されるが、当該パケットの生成元領域P32に格納されたメンバーIDのメンバーの属性は生徒であり、当該パケットの本体領域P31に格納された演奏データはMIDI音源412の音色を設定するためのMIDIデータを含んでいるから、配信装置1のCPU11は、当該パケットを受信して破棄する(ステップSD12:NO、SD14:YES)。つまり、共有メンバーのうち、MIDI音源412の音色を設定するためのMIDIデータを配信することができるのは教師Aのみである。
If member B operates MIDI instrument 41B to set the tone of
[2−9:メンバーB及びCの同時演奏]
図17の教習例では、次に、メンバーAが教師端末2Aの操作部25を操作して、配信モードを変更する旨の指示を教師端末2Aに入力する。この結果、モード変更コマンドを本体領域P31に格納したパケットが、教師端末2Aから配信装置1宛で送信される。このパケットの生成元領域P32にはメンバーID「A」が格納されており、種別領域P33にはコマンドである旨の種別データが格納されている。
[2-9: Simultaneous performance of members B and C]
In the learning example of FIG. 17, next, the member A operates the
配信装置1のCPU11は、このパケットを受信し、パケット処理を行う(ステップSA1、SA2:NO、SA4:YES、SA5)。このパケットの種別領域P33にはコマンドである旨の種別データが格納されており、かつ当該パケットの本体領域P31内のコマンドは正当なログアウトコマンドではなく、かつ当該パケットの生成元領域P32には教師AのメンバーID「A」が格納されており、かつ当該パケットの本体領域P31内のコマンドは教材配信コマンドではない。よって、パケット処理では、CPU11は当該パケットの本体領域P31内のコマンドがモード変更コマンドであるか否かを判定する(ステップSD1:YES、SD5:NO、SD6:YES、SD7:NO、SD16)。
The
このパケットの本体領域P31内のコマンドはモード変更コマンドであるから、この判定結果は「YES」となる。よって、CPU11は演奏データの配信モードを変更する(ステップSD17)。具体的には、ハードディスク13に書き込まれているモードフラグ135を更新する。この更新により、モードフラグ135の内容は、共有モードを示す内容から個別モードを示す内容に変化する。
Since the command in the main body region P31 of this packet is a mode change command, the determination result is “YES”. Therefore, the
メンバーAは、次に、教師端末2Aの操作部25を操作して、表示領域R4のみを選択する旨の指示を教師端末2Aに入力する。これを受けて、教師端末2AのCPU21は表示領域R4のみが選択されるように、選択領域235内の選択テーブルT3を更新する。この結果、教師端末2Aのディスプレイ26には図26に示す教習画面が表示される。この教習画面においては、表示領域R4のみが太枠で強調されている。
Next, the member A operates the
次に、メンバーB及びCが同時に演奏する。これにより、生徒端末2B及び2Cからパケットが送信されて配信装置1に届く。当該パケットの本体領域P31には鍵盤やペダルの操作の内容に応じたMIDIデータと時刻データとが対応付けられた演奏データが格納されており、種別領域P33には演奏データである旨の種別データが格納されている。また、生徒端末2Bから送信されたパケットの生成元領域P32にはメンバーID「B」が格納されており、生徒端末2Cから送信されたパケットの生成元領域P32にはメンバーID「C」が格納されている。
Next, members B and C perform simultaneously. Thereby, the packet is transmitted from the
配信装置1のCPU11は生徒端末2B及び2Cからのパケットを受信し、パケット処理を行う(ステップSA1、SA2:NO、SA4:YES、SA5)。当該パケットの種別領域P33には演奏データである旨の種別データが格納されており、本体領域P31内の演奏データにはダンプリクエスト及びダンプレスポンスのいずれも含まれておらず、生成元領域P32には生徒B又はCのメンバーIDが格納されており、本体領域P31に格納された演奏データはMIDI音源412の音色を設定するためのMIDIデータを含んでいない。また、この時点で、モードフラグ135により示されている配信モードは個別モードである。よって、パケット処理において、CPU11は、当該パケットのデータ領域P3に格納されたデータを抽出し、抽出したデータをデータ領域P3に格納したパケットを生成し、生成したパケットを教師端末2A宛で送信する(ステップSD15:NO、SD18)。この際、生成されたパケットが生徒端末2Bや生徒端末2C宛で送信されることはない。
The
教師端末2AのCPU21は配信装置1からのパケットを受信する。受信されたパケットの種別領域P33には演奏データである旨の種別データが格納されており、かつ、本体領域P31には時刻データを含む演奏データが格納されており、かつ、生成元領域P32にはメンバーID「B」又は「C」が格納されている。よって、CPU21は、受信した各パケットの本体領域P31内の演奏データを該当する即時再生領域221に書き込むとともに、前述と同様の即時再生処理および移動処理を行う。ただし、再生タイマは、メンバーB用の即時再生領域221とメンバーC用の即時再生領域221とのいずれかに演奏データが書き込まれたときにスタートする。
The
このとき、メンバーBに対応付けられている表示領域R4は選択されているが、メンバーCに対応付けられている表示領域R5は選択されていない。よって、即時再生処理において、CPU21は、メンバーB用の即時再生領域221に書き込まれている演奏データ、すなわちメンバーBの演奏データについては再生処理および可視化処理を行うが(ステップSE1:NO、SE2:YES、SE3:YES、SE4、SE5:YES、SE6)、メンバーC用の即時再生領域221に書き込まれている演奏データ、すなわちメンバーCの演奏データについては再生処理および可視化処理を行わない(ステップSE1:NO、SE2:YES、SE3:NO)。
At this time, the display area R4 associated with the member B is selected, but the display area R5 associated with the member C is not selected. Therefore, in the immediate reproduction process, the
この結果、MIDI楽器41Aから放音される楽音は生徒Bの演奏に応じた楽音となり、教師端末2Aにおいて鍵盤やペダルを模した図形を用いて表示されるのは生徒BによるMIDI楽器41Bの操作の内容となる。
As a result, the musical sound emitted from the MIDI
なお、即時再生処理および移動処理の終了後に、メンバーAが教師端末2Aの操作部25を操作して、表示領域R5のみを選択する旨の指示を教師端末2Aに入力し、更にメンバーC用のMIDI領域237に書き込まれているMIDIデータを再生する旨の指示を教師端末2Aに入力すると、教師端末2Aの教習画面においては、メンバーCによるMIDI楽器41Cの操作の内容が鍵盤やペダルを模した図形を用いて表示され、MIDI楽器41Aからは、メンバーCの演奏に応じた楽音が放音される。
Note that after the immediate reproduction process and the movement process are completed, the member A operates the
[2−10:書き込み]
図17の教習例では、次に、メンバーAが教師端末2Aの操作部25を操作して、楽譜に図形を書き込む旨の指示を教師端末2Aに入力する。この結果、教師端末2AのCPU21は、この指示に応じた書き込みデータを生成して教材領域231に書き込む。これにより、ディスプレイ26には、図27に示す教習画面が表示される。この教習画面の表示領域R1には楽譜の内容が表示されており、この内容は楽譜に図形が書き込まれていることを示す内容となっている。また、CPU21は、生成した書き込みデータ(動的データ)を本体領域P31に格納したパケットを生成し、配信装置1宛で送信する。このパケットの生成元領域P32にはメンバーID「A」が格納されており、種別領域P33には教材データである旨の種別データが格納されている。
[2-10: Write]
In the learning example of FIG. 17, next, the member A operates the
配信装置1のCPU11は、このパケットを受信し、パケット処理を行う(ステップSA1、SA2:NO、SA4:YES、SA5)。このパケットの種別領域P33には教材データである旨の種別データが格納されており、生成元領域P32には教師AのメンバーIDが格納されている。よって、パケット処理では、CPU11は、このパケットの本体領域P31内の書き込みデータを共有領域131に書き込む(ステップSD1:NO、SD2:YES、SD9:YES、SD10)。次に、CPU11は、このパケットのデータ領域P3に格納されたデータを抽出し、抽出したデータをデータ領域P3に格納したパケットを生成し、生徒端末2B及び2C宛で送信する(ステップSD4)。
The
生徒端末2BのCPU21は配信装置1からのパケットを受信する。このパケットの種別領域P33には教材データである旨の種別データが格納されており、本体領域P31には書き込みデータが格納されている。よって、CPU21は、この書き込みデータを教材領域231に追記する。この結果、生徒端末2Bの教習画面の表示領域R1には、教師Aにより書き込まれた図形が楽譜の内容とともに表示される。これと同様の処理が、生徒端末2Cにおいても行われる。
The
なお、生徒Bの誤操作等のミスにより、書き込みデータを本体領域P31に格納したパケットが、生徒端末2Bから配信装置1宛で送信された場合、このパケットの生成元領域P32には生徒BのメンバーID「B」が格納されているから、配信装置1のCPU11は上述の処理を行うことなくパケット処理を終了する(ステップSD9:NO)。つまり、共有メンバーのうち、楽譜に書き込みを行うことができるのは教師Aのみである。
When a packet storing the write data in the main body area P31 is transmitted from the
[2−11:メンバーDのログイン]
図17の教習例では、次に、メンバーDが生徒端末2Dを用いてログイン作業を行う。このログイン作業や、このログイン作業に起因して行われる各種処理は、追従データの配信が行われる点を除いて、前述したものと同様である。よって、以降では、追従データの配信に関する動作のみについて説明する。
[2-11: Member D login]
In the learning example of FIG. 17, next, the member D performs a login operation using the
配信装置1のCPU11は、生徒端末2Dから、正当なログインコマンドを本体領域P31に格納したパケットを受信すると、ログイン処理を行う(ステップSA1、SA2:YES、SA3)。このパケットの本体領域P31内のログインコマンドに含まれているメンバーIDは生徒DのメンバーID「D」である。また、共有領域131には追従データが書き込まれている。よって、CPU11は、メンバーDを共有メンバーとする共有処理を行った後に追従データの送信処理を行う(ステップSB1、SB2:NO、SB3:YES、SB4)。
When the
追従データの送信処理では、CPU11は共有領域131から楽譜データ133(静的データ)、表示ページデータ(動的データ)、及び書き込みデータ(動的データ)を読み出し、これらを本体領域P31に格納したパケットを生成し、生成したパケットを生徒端末2D宛で送信する。当該パケットの種別領域P33には教材データである旨の種別データが格納されている。また、CPU11は共有領域131からMIDIデータ(動的データ)を読み出し、これを本体領域P31に格納したパケットを生成し、生成したパケットを生徒端末2D宛で送信する。当該パケットの種別領域P33には演奏データである旨の種別データが格納されている。
In the follow-up data transmission process, the
生徒端末2DのCPU21は、これらのパケットを受信する。受信したパケットの種別領域P33に教材データである旨の種別データが格納されている場合、CPU21は、当該パケットの本体領域P31に格納されている追従データを教材領域231に書き込む。この結果、生徒端末2Dの教習画面の表示領域R1には、他の端末2の教習画面の表示領域R1に表示されている画像と同一の画像が表示される。
The
また、受信したパケットの種別領域P33に演奏データである旨の種別データが格納されている場合、当該パケットの本体領域P31には時刻データが格納されていないから、CPU21は、当該MIDIデータをMIDI楽器41Dに供給する。この結果、MIDI楽器41DのMIDI音源412の音色が、他のMIDI楽器41A、41B及び41Cにおける音色と同様に設定される。
In addition, when type data indicating performance data is stored in the type area P33 of the received packet, since the time data is not stored in the main body area P31 of the packet, the
[2−12:メンバーDのログアウト]
図17の教習例では、次に、メンバーDが生徒端末2Dを用いてログアウト作業を行う。ログアウト作業では、まず、メンバーBが操作部25を用いて予め配布された所定のURLとメンバーID「D」を送信して教室からログアウトする旨の指示を生徒端末2Bに入力する。この結果、所定のURLを含むログアウトコマンドを本体領域P31に格納したパケットが、生徒端末2Dから配信装置1宛で送信される。このパケットの生成元領域P32にはメンバーID「D」が格納されている。この処理の後、CPU11は端末プログラム236の実行を終了する。
[2-12: Member D logout]
In the learning example of FIG. 17, next, the member D performs a logout operation using the
配信装置1のCPU11は、このパケットを受信し、パケット処理を行う(ステップSA1、SA2:NO、SA4:YES、SA5)。このパケットの種別領域P33にはコマンドである旨の種別データが格納されており、本体領域P31には所定のURLを含むログアウトコマンドが格納されており、生成元領域P32には共有メンバーである生徒DのメンバーID「D」が格納されている。よって、CPU11はログアウト処理を行う(ステップSD1:YES、SD5:YES、SD19)。
The
ログアウト処理では、CPU11は、このパケットの生成元領域P32に格納されているメンバーIDのメンバーを非共有メンバーとし、メンバーテーブルT1を更新する。この更新では、メンバーDの状態が「ログイン」から「ログアウト」に変化し、メンバーDが使用している端末2の通信アドレスがメンバーテーブルT1から削除される。さらに、ログアウト処理において、CPU11は、前述の第3のパケットと同様のパケットを、教師端末2A、生徒端末2B及び生徒端末2C宛で送信する。当該パケットの本体領域P31には、最新のメンバーテーブルT1を含む共有状況通知コマンドが格納されている。
以降の動作については、以上の説明から自明であるから、その説明を省略する。
In the logout process, the
Since the subsequent operation is obvious from the above description, the description thereof is omitted.
以上、説明したように、配信装置1のCPU11は、メンバーテーブルT1に登録されているメンバーIDを受信すると、このデータを送信した端末の通信アドレスを当該メンバーIDに対応付けてメンバーテーブルT1に登録し、また、教材の配信を要求する教材配信コマンドを受信すると、このコマンドを送信した端末の通信アドレスに対応付けてメンバーテーブルT1に登録されている属性が「教師」であるか否かを判定し、「教師」であれば、教材を、メンバーテーブルT1に通信アドレスが登録されている全ての端末へ送信する。つまり、メンバーAは、教師端末2Aに教材をダウンロードする旨の指示を入力するだけで、教室にログインしている全てのメンバーに教材を共有させることができる。また、CPU11はログインしたメンバーの環境を先にログインしているメンバーの環境に追従させるための処理を自動的に行うから、メンバーにかかる負担はより低減される。
As described above, when receiving the member ID registered in the member table T1, the
[3:補足]
上述した実施形態を以下に列記するように変形してもよい。
例えば、教習画面の表示領域R8に表示される鍵盤の操作内容を表現する画像において、押下されている鍵の色が打鍵強度に応じて変化するようにしてもよい。
また、鍵盤楽器ではない楽器の教習に適用してもよい。例えば、ドラム等の打楽器の教習に適用してもよい。
また、MIDIデータの可視化を送信側の端末において行うようにしてもよい。つまり、送信側の端末において鍵盤やペダルの操作の内容を鍵盤に模した図形を用いて表現した画像を生成して送信し、受信側の端末において受信した画像を表示するようにしてもよい。
また、ログインしたメンバーの環境を先にログインしているメンバーの環境に追従させるための処理を行わないようにしてもよい。
また、配信装置が、教師端末から送信されたデータだけではなく、生徒端末から送信されたデータをも共有領域に書き込むようにしてもよい。
また、共有するデータは上記の例に限らず、例えば教師から生徒への指示を表すテキストデータであってもよい。
また、上記の配信装置の機能を教師端末に持たせてもよい。
また、配信装置と端末との間に複数の通信コネクションを確立して、送信するデータの種別毎に通信コネクションを使い分ける態様としてもよい。この通信コネクションがTCP/IP(Transmission Control Protocol/Internet Protocol)における通信コネクションの場合、前述の種別データの代わりにTCPにおけるポート番号が用いられることになる。
[3: Supplement]
The above-described embodiments may be modified as listed below.
For example, in the image representing the operation content of the keyboard displayed in the display area R8 of the learning screen, the color of the pressed key may be changed according to the keystroke strength.
Moreover, you may apply to the learning of the musical instrument which is not a keyboard musical instrument. For example, the present invention may be applied to the teaching of percussion instruments such as drums.
Further, visualization of MIDI data may be performed at a terminal on the transmission side. In other words, an image in which the contents of the operation of the keyboard or pedal are expressed using a figure imitating the keyboard at the transmitting terminal may be generated and transmitted, and the received image may be displayed at the receiving terminal.
Further, the process for causing the logged-in member's environment to follow the environment of the previously logged-in member may not be performed.
Further, the distribution apparatus may write not only the data transmitted from the teacher terminal but also the data transmitted from the student terminal in the shared area.
The data to be shared is not limited to the above example, and may be text data representing an instruction from the teacher to the student, for example.
Further, the teacher terminal may be provided with the function of the above-described distribution apparatus.
Moreover, it is good also as an aspect which establishes several communication connections between a delivery apparatus and a terminal, and uses a communication connection properly for every classification of the data to transmit. When this communication connection is a TCP / IP (Transmission Control Protocol / Internet Protocol) communication connection, a TCP port number is used instead of the above-described type data.
1…配信装置、11,21…CPU、12,22…RAM、13,23…ハードディスク、14…通信部、2A…教師端末、2B,2C,2D…生徒端末、24…通信部、25…操作部、26…ディスプレイ、27…MIDIインタフェース。
DESCRIPTION OF
Claims (4)
端末から送信されたデータをネットワーク経由で受信する受信手段と、
前記メンバー記憶手段に記憶されている識別子が前記受信手段により受信されると、該識別子を送信した端末の通信アドレスを該識別子に対応付けて前記メンバー記憶手段に書き込む追加手段と、
特定のデータの送信を要求するデータが前記受信手段により受信されると、該データを送信した端末の通信アドレスに対応付けて前記メンバー記憶手段に記憶されている属性が所定の属性であるか否かを判定し、所定の属性であれば、前記特定のデータを前記メンバー記憶手段に通信アドレスが記憶されている全ての端末へ前記ネットワーク経由で送信する静的同報手段と、
第1のモードと第2のモードのいずれかを示すモードフラグを記憶するフラグ記憶手段と、
前記モードフラグの内容が前記第1のモードを示しているときに、当該モードフラグの変更を要求するデータが前記受信手段により受信されると、該データを送信した端末の通信アドレスに対応付けて前記メンバー記憶手段に記憶されている属性が所定の属性であるか否かを判定し、所定の属性であれば、前記フラグ記憶手段に記憶される前記モードフラグの内容を前記第2のモードに変更する変更手段と、
前記所定の属性に対応付けて記憶されている通信アドレスの端末以外の端末から、当該端末以外の端末へ送信すべきデータが前記受信手段により受信されると、前記フラグ記憶手段が記憶する前記モードフラグの内容が第1のモードを示している場合には、該データを前記メンバー記憶手段に通信アドレスが記憶されている全ての端末から該データの送信元の端末を除外した端末へ前記ネットワーク経由で送信し、前記フラグ記憶手段が記憶する前記モードフラグの内容が第2のモードを示している場合には、該データを前記メンバー記憶手段において前記所定の属性に対応付けて記憶されている通信アドレスの端末へ前記ネットワーク経由で送信する動的同報手段と
を有する配信装置。 Member storage means for storing, for each member, attribute data indicating an identifier for identifying the member and an attribute of the member;
Receiving means for receiving data transmitted from the terminal via the network;
When the identifier stored in the member storage unit is received by the receiving unit, an adding unit that writes the communication address of the terminal that transmitted the identifier in the member storage unit in association with the identifier;
When data for requesting transmission of specific data is received by the receiving means, whether the attribute stored in the member storage means in association with the communication address of the terminal that sent the data is a predetermined attribute Static broadcast means for transmitting the specific data to all terminals whose communication addresses are stored in the member storage means via the network if the predetermined attribute is determined,
Flag storage means for storing a mode flag indicating either the first mode or the second mode;
When the content of the mode flag indicates the first mode and data for requesting the change of the mode flag is received by the receiving means, the data is associated with the communication address of the terminal that transmitted the data. It is determined whether or not the attribute stored in the member storage means is a predetermined attribute. If the attribute is a predetermined attribute, the content of the mode flag stored in the flag storage means is changed to the second mode. Change means to change;
The mode stored in the flag storage unit when the receiving unit receives data to be transmitted to a terminal other than the terminal from a terminal other than the terminal having the communication address stored in association with the predetermined attribute. When the content of the flag indicates the first mode, the data is sent from all the terminals whose communication addresses are stored in the member storage means to the terminals excluding the terminal that has transmitted the data via the network If the content of the mode flag stored in the flag storage means indicates the second mode, the data is stored in the member storage means in association with the predetermined attribute. And a dynamic broadcast means for transmitting to the terminal having the address via the network.
前記特定のデータの送信を要求するデータが前記受信手段により受信されると、該データを送信した端末の通信アドレスに対応付けて前記メンバー記憶手段に記憶されている属性が所定の属性であるか否かを判定し、所定の属性であれば、前記特定のデータを前記共有記憶手段に書き込む静的書き込み手段と、
前記メンバー記憶手段に記憶されている識別子が前記受信手段により受信されると、前記共有記憶手段にデータが書き込まれているか否かを判定し、書き込まれている場合には前記共有記憶手段に書き込まれているデータを該識別子に対応付けて前記メンバー記憶手段に通信アドレスが記憶されている端末へ送信する静的追従手段と
を有することを特徴とする請求項1に記載の配信装置。 Shared storage means into which data is written;
When the data requesting the transmission of the specific data is received by the receiving means, whether the attribute stored in the member storage means in association with the communication address of the terminal that transmitted the data is a predetermined attribute A static writing means for writing the specific data to the shared storage means if it is a predetermined attribute;
When the identifier stored in the member storage means is received by the receiving means, it is determined whether data is written in the shared storage means, and if it is written, it is written in the shared storage means. The distribution apparatus according to claim 1, further comprising: a static tracking unit that associates the stored data with the identifier and transmits the data to a terminal in which a communication address is stored in the member storage unit.
他の端末へ送信すべきデータが前記受信手段により受信されると、該データを送信した端末の通信アドレスに対応付けて前記メンバー記憶手段に記憶されている属性が所定の属性であるか否かを判定し、所定の属性であれば、該データを前記共有記憶手段に書き込む動的書き込み手段と、
前記メンバー記憶手段に記憶されている識別子が前記受信手段により受信されると、前記共有記憶手段にデータが書き込まれているか否かを判定し、書き込まれている場合には前記共有記憶手段に書き込まれているデータを該識別子に対応付けて前記メンバー記憶手段に通信アドレスが記憶されている端末へ前記ネットワーク経由で送信する動的追従手段と
を有することを特徴とする請求項1に記載の配信装置。 Shared storage means into which data is written;
When data to be transmitted to another terminal is received by the receiving unit, whether or not the attribute stored in the member storage unit in association with the communication address of the terminal that transmitted the data is a predetermined attribute If it is a predetermined attribute, dynamic writing means for writing the data to the shared storage means;
When the identifier stored in the member storage means is received by the receiving means, it is determined whether data is written in the shared storage means, and if it is written, it is written in the shared storage means. 2. The distribution according to claim 1, further comprising: dynamic tracking means for associating the stored data with the identifier and transmitting the data to a terminal whose communication address is stored in the member storage means via the network. apparatus.
端末から送信されたデータをネットワーク経由で受信する受信手段と、
メンバーを識別するための識別子およびメンバーの属性を示す属性データがメンバー毎に登録されているメンバーテーブル内の識別子が前記受信手段により受信されると、該識別子を送信した端末の通信アドレスを該識別子に対応付けて前記メンバーテーブルに登録する追加手段と、
特定のデータの送信を要求するデータが前記受信手段により受信されると、該データを送信した端末の通信アドレスに対応付けて前記メンバーテーブルに登録されている属性が所定の属性であるか否かを判定し、所定の属性であれば、前記特定のデータを前記メンバーテーブルに通信アドレスが登録されている全ての端末へ前記ネットワーク経由で送信する静的同報手段と、
前記記憶手段に記憶された第1のモードと第2のモードのいずれかを示すモードフラグの内容が前記第1のモードを示しているときに、当該モードフラグの変更を要求するデータが前記受信手段により受信されると、該データを送信した端末の通信アドレスに対応付けて前記メンバーテーブル内の属性が所定の属性であるか否かを判定し、所定の属性であれば、前記記憶手段に記憶される前記モードフラグの内容を前記第2のモードに変更する変更手段と、
前記所定の属性に対応付けて記憶されている通信アドレスの端末以外の端末から、他の端末へ送信すべきデータが前記受信手段により受信されると、前記記憶手段が記憶する前記モードフラグの内容が第1のモードを示している場合には、該データを前記メンバーテーブルに通信アドレスが登録されている全ての端末から該データの送信元の端末を除外した端末へ前記ネットワーク経由で送信し、前記記憶手段が記憶する前記モードフラグの内容が第2のモードを示している場合には、該データを前記メンバーテーブルにおいて前記所定の属性に対応付けて登録されている通信アドレスの端末へ前記ネットワーク経由で送信する動的同報手段
として機能させるためのプログラム。 A computer comprising storage means ;
Receiving means for receiving data transmitted from the terminal via the network;
When an identifier in a member table in which attribute data indicating an identifier for identifying a member and an attribute of the member is registered for each member is received by the receiving unit, a communication address of a terminal that has transmitted the identifier is determined as the identifier. Adding means for registering in the member table in association with
When data for requesting transmission of specific data is received by the receiving means, whether or not the attribute registered in the member table in association with the communication address of the terminal that transmitted the data is a predetermined attribute Static broadcast means for transmitting the specific data to all terminals whose communication addresses are registered in the member table via the network, if the predetermined attribute ,
When the content of the mode flag indicating either a first mode and a second mode in which previously stored Symbol storage means indicates the first mode, data requesting the change of the mode flag is the Once received by the receiving means, an attribute in said member table in association with the communication address of the terminal that sent the data is equal to or a predetermined attribute, if predetermined attribute, the Symbol憶Changing means for changing the content of the mode flag stored in the means to the second mode;
From a terminal other than the communication address stored in association with the predetermined attribute, the data to be transmitted to another terminal is received by the receiving means, the mode flag the Symbol憶means stores When the content indicates the first mode, the data is transmitted via the network from all terminals whose communication addresses are registered in the member table to terminals excluding the terminal that has transmitted the data. , the content of the mode flag the Symbol憶means stores is if they represent a second mode, to the terminal of the communication address registered in association with the predetermined attribute in the member table the data A program for functioning as a dynamic broadcast means for transmitting via the network.
Priority Applications (6)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2004060976A JP4649851B2 (en) | 2004-03-04 | 2004-03-04 | Distribution apparatus and program |
EP05101531A EP1583299B1 (en) | 2004-03-04 | 2005-03-01 | Data delivery apparatus and method, and terminal apparatus for example for the teaching of music |
AT05101531T ATE385105T1 (en) | 2004-03-04 | 2005-03-01 | DEVICE AND METHOD FOR TRANSMITTING AND OUTPUTING DATA, FOR EXAMPLE FOR MUSIC LESSONS |
DE602005004439T DE602005004439T2 (en) | 2004-03-04 | 2005-03-01 | Device and method for transmitting and outputting data, for example for music lessons |
CNB2005100526855A CN100425021C (en) | 2004-03-04 | 2005-03-03 | Data delivery apparatus and method, and terminal apparatus |
US11/071,760 US7792938B2 (en) | 2004-03-04 | 2005-03-03 | Data delivery apparatus and method, and terminal apparatus |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2004060976A JP4649851B2 (en) | 2004-03-04 | 2004-03-04 | Distribution apparatus and program |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2005250152A JP2005250152A (en) | 2005-09-15 |
JP4649851B2 true JP4649851B2 (en) | 2011-03-16 |
Family
ID=35030681
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2004060976A Expired - Fee Related JP4649851B2 (en) | 2004-03-04 | 2004-03-04 | Distribution apparatus and program |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP4649851B2 (en) |
Families Citing this family (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP4821366B2 (en) * | 2006-02-28 | 2011-11-24 | ヤマハ株式会社 | Group music learning system |
JP4848797B2 (en) * | 2006-02-28 | 2011-12-28 | ヤマハ株式会社 | Music network system |
JP4702202B2 (en) * | 2006-06-29 | 2011-06-15 | ヤマハ株式会社 | Group music learning system management device and group music learning system |
JP4677929B2 (en) * | 2006-02-28 | 2011-04-27 | ヤマハ株式会社 | Group music learning system |
JP2019061006A (en) * | 2017-09-26 | 2019-04-18 | 株式会社河合楽器製作所 | Performance practice support device |
Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2000172161A (en) * | 1998-10-02 | 2000-06-23 | Hitachi Electronics Service Co Ltd | Education system, communication support method in the same and recording medium |
JP2000311257A (en) * | 1999-04-28 | 2000-11-07 | Ntt Data Corp | Shared virtual space display system, construction method of distributed object mechanism and recording medium |
JP2002082895A (en) * | 2000-09-06 | 2002-03-22 | Nippon Telegr & Teleph Corp <Ntt> | Three-dimensional virtual space shared communication system and user information managing method in the same system |
JP2003058031A (en) * | 2001-08-10 | 2003-02-28 | Koichi Sekii | System for distributing learning contents |
JP2003107986A (en) * | 2001-09-27 | 2003-04-11 | Yamaha Corp | Information processor, and control method, control program and recording medium therefor |
JP2003157225A (en) * | 2002-07-25 | 2003-05-30 | Fujitsu Hokuriku Systems:Kk | Server |
US20030108000A1 (en) * | 2001-12-07 | 2003-06-12 | Telefonaktiebolaget Lm Ericsson (Pub1) | Service access system and method in a telecommunications network |
JP2004037568A (en) * | 2002-06-28 | 2004-02-05 | Matsushita Electric Ind Co Ltd | Education support system, education support program and terminal |
-
2004
- 2004-03-04 JP JP2004060976A patent/JP4649851B2/en not_active Expired - Fee Related
Patent Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2000172161A (en) * | 1998-10-02 | 2000-06-23 | Hitachi Electronics Service Co Ltd | Education system, communication support method in the same and recording medium |
JP2000311257A (en) * | 1999-04-28 | 2000-11-07 | Ntt Data Corp | Shared virtual space display system, construction method of distributed object mechanism and recording medium |
JP2002082895A (en) * | 2000-09-06 | 2002-03-22 | Nippon Telegr & Teleph Corp <Ntt> | Three-dimensional virtual space shared communication system and user information managing method in the same system |
JP2003058031A (en) * | 2001-08-10 | 2003-02-28 | Koichi Sekii | System for distributing learning contents |
JP2003107986A (en) * | 2001-09-27 | 2003-04-11 | Yamaha Corp | Information processor, and control method, control program and recording medium therefor |
US20030108000A1 (en) * | 2001-12-07 | 2003-06-12 | Telefonaktiebolaget Lm Ericsson (Pub1) | Service access system and method in a telecommunications network |
JP2004037568A (en) * | 2002-06-28 | 2004-02-05 | Matsushita Electric Ind Co Ltd | Education support system, education support program and terminal |
JP2003157225A (en) * | 2002-07-25 | 2003-05-30 | Fujitsu Hokuriku Systems:Kk | Server |
Also Published As
Publication number | Publication date |
---|---|
JP2005250152A (en) | 2005-09-15 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP1583299B1 (en) | Data delivery apparatus and method, and terminal apparatus for example for the teaching of music | |
US8242344B2 (en) | Method and apparatus for composing and performing music | |
JP2007025447A (en) | Automatic music playing system | |
JP2002372970A (en) | Electronic music device and server device capable of transferring performance setting information, performance setting information transfer method and program | |
JP2003271143A (en) | Device and method for providing playing sound, communication terminal, program and recording medium | |
JP4649851B2 (en) | Distribution apparatus and program | |
JP3903821B2 (en) | Performance sound providing system | |
JP2008178442A (en) | Game terminal, game system, and program | |
JP2006119320A (en) | Electronic music device system, server side electronic music device, and client side electronic music device | |
US7723603B2 (en) | Method and apparatus for composing and performing music | |
JP2005250153A (en) | Musical performance display terminal and musical performance display system | |
JP2004333525A (en) | Bidirectional communication system, server, electronic lecture method, and program | |
JP2001167031A (en) | Device and method for providing information | |
JP2002182553A (en) | Playing training apparatus and playing training method | |
JP5249546B2 (en) | Karaoke system using the Internet | |
JP2009183567A (en) | Game system, game device, and program | |
JP4549994B2 (en) | Method for handling karaoke video letter in communication karaoke system, communication karaoke system, karaoke device | |
JP3922207B2 (en) | Net session performance device and program | |
JP4483356B2 (en) | Network music learning system and server device | |
JP2020091438A (en) | Voice generation program, and voice generation device | |
JP2002024143A (en) | Receiving terminal, communication terminal and animation character display method | |
JP5146974B1 (en) | Method and apparatus for creating program image | |
JP3987172B2 (en) | Interactive communication terminal device | |
JP2023051140A (en) | karaoke system | |
JPS60135764U (en) | Computer learning/gaming equipment |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20070221 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20100309 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20100506 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20100720 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20100909 |
|
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: 20101116 |
|
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20101129 |
|
R150 | Certificate of patent or registration of utility model |
Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20131224 Year of fee payment: 3 |
|
LAPS | Cancellation because of no payment of annual fees |