# Patent

## Title
Performance system

## Abstract

A performance system includes a plurality of performance information output devices, a storage device, and a plurality of automatic performance devices. At least one performance information output device transmits performance data having the combination of an identifier, time information, and the performance information to at least one automatic performance device through the storage device without passing through a video distribution server. The at least one performance information output device transmits a synchronization signal to the at least one automatic performance device through the video distribution server. The at least one automatic performance device reproduces the performance information in synchronization with a video distributed at the time when the synchronization signal is distributed, at the timing corresponding to the time indicated by the time information and the time indicated by the synchronization signal.

## Background
CROSS-REFERENCE TO RELATED APPLICATIONS
This application is a National Phase application under 35 U.S.C. §371 of International Application No. PCT/JP2011/050298 filed Jan. 11, 2011, the content of which is herein incorporated by reference in its entirety for all intended purposes.
TECHNICAL FIELD
The present invention relates to a technology for carrying out an automatic performance in synchronization with video.
BACKGROUND ART
A technology is available which reproduces an instrument performance carried out at a remote place by carrying out an automatic performance using an automatic performance device. Patent Document 1 discloses that in a system for transmitting and receiving performance data, such as MIDI data, to be used for an automatic performance, and an audio/video signal indicating distributed video and distributed audio through separate transmission systems, the audio/video signal and the performance data are reproduced synchronously at a receiving-side system. More specifically, in the case that a click signal is generated, a transmitting-side system transmits the click signal in a state of being included in the audio signal while a time stamp is added to click time data indicating the click generation time on the basis of the internal clock of the transmitting-side system. The receiving-side system corrects its internal clock so that the time when the click signal was received becomes coincident with the time indicated by the click time data, and carries out an automatic performance in synchronization with the video on the basis of the corrected internal clock.
DISCLOSURE OF THE INVENTION
Problem that the Invention is to Solve
In the technology disclosed in Patent Document 1, the transmitting-side system almost simultaneously transmits the click generation time specified on the basis of the internal clock and the click signal generated regardless of the internal clock through separate transmission systems. However, the relative delay between the click signal and the click time data at the time when received at the receiving-side system is not considered particularly in the technology disclosed in Patent Document 1. In the technology, the click signal and the click time data, the time difference therebetween being within a predetermined time interval, are corresponded to each other by assuming that they have been transmitted at the same time; however, in the case that the communication delay in one of the transmission paths is extremely large, for example, the click signal and click time data having been transmitted almost simultaneously are not corresponded to each other properly, whereby the internal clock at the receiving-side system may not be corrected properly in some cases.
In consideration of the above-mentioned problem, an object of the present invention is to carry out automatic performances in synchronization with distributed video at a plurality of automatic performance devices while suppressing the influence of the state of the communication path passing through a video distribution server.
Means for Solving the Problem
For the purpose of attaining the above-mentioned object, the present invention is characterized in that there is provided a performance system comprising:
a plurality of performance information output devices that output performance information;
a storage device; and
a plurality of automatic performance devices that reproduce the performance information in synchronization with a video distributed by a video distribution server for distributing the video and an audio,
wherein the performance information output device includes:
a first identifier storing unit that stores any one of identifiers allocated to the plurality of performance information output devices so as to be different from one another;
a performance information generating unit that generates performance information;
a docking unit that measures time; and
a first performance data transmitting unit that transmits performance data having the combination of the identifier stored in the first identifier storing unit, time information indicating the time measured by the docking unit, and the performance information to the storage device without passing through the video distribution server each time the performance information is generated by the performance information generating unit;
wherein at least one of the plurality of performance information output devices includes a synchronization signal transmitting unit that transmits a synchronization signal indicating the time being measured by the docking unit to the video distribution server using the audio signal transmission path for the audio;
wherein the storage device includes:
a first performance data receiving unit that receives the performance data transmitted through the first performance data transmitting unit;
a performance data storing unit that stores the performance data received by the performance data receiving unit, and
a second performance data transmitting unit that transmits the performance data stored in the performance data storing unit to any one of the plurality of automatic performance devices without passing through the video distribution server in parallel with the storing of the performance data received by the performance data storing unit; and
wherein the automatic performance device includes:
a second identifier storing unit that stores any one of the identifiers stored in the first identifier storing unit and allocated to the plurality of automatic performance devices so as to be different from one another;
a second performance data receiving unit that receives the performance data transmitted through the second performance data transmitting unit;
a synchronization signal receiving unit that receives the synchronization signal transmitted through the synchronization signal transmitting unit from the video distribution server using the transmission path; and
a reproducing unit that reproduces the performance information of the performance data in synchronization with the video distributed at the time when the synchronization signal is distributed, at the timing corresponding to the time indicated by the time information of the performance data including the identifier received by the second performance data receiving unit and stored in the second identifier storing unit and the time indicated by the synchronization signal received by the synchronization signal receiving unit.
With the present invention, automatic performances synchronized with distributed video can be carried out at the plurality of automatic performance devices while suppressing the influence of the state of the communication path passing through the video distribution server.
The present invention may be configured as follows: the plurality of performance information output devices include a first performance information output device and a second performance information output device other than the first performance information output device, the first performance information output device includes the synchronization signal transmitting unit, and the synchronization signal transmitting unit transmits the common synchronization signals to the video distribution server and the second performance information output device, the second performance information output device includes a dock correcting unit that receives the synchronization signal transmitted through the synchronization signal transmitting unit and corrects the time of the dock unit of the second performance information output device on the basis of the time indicated by the received synchronization signal so that the times measured by the dock units of the plurality of performance information output devices become coincident, and the synchronization signal receiving units of the plurality of automatic performance devices receive the common synchronization signals transmitted through the synchronization signal transmitting unit.
The present invention may be configured as follows: the automatic performance device includes: a second identifier setting unit that sets an identifier to be allocated to the automatic performance device itself and stores the identifier in the second identifier storing unit; and a second identifier transmitting unit that transmits the identifier set by the second identifier setting unit or an identifier which can be set in the automatic performance device other than the automatic performance device itself to any one of the automatic performance devices in which the identifier thereof is not yet set by the second identifier setting unit, and in a case that the identifier transmitted by the second identifier transmitting unit other than that of the automatic performance device itself is received, the second identifier setting unit sets an identifier to be allocated to the automatic performance device itself on the basis of the received identifier.
The present invention may be configured as follows: each of the first and second performance information output devices includes: a first identifier storing unit that sets an identifier to be allocated to the automatic performance device itself and stores the identifier in the first identifier storing unit; and a first identifier transmitting unit that transmits the identifier set by the first identifier setting unit or an identifier which can be set in the automatic performance device other than the automatic performance device itself to any one of the automatic performance devices in which the identifier thereof is not yet set by the first identifier setting unit, and in a case that the identifier transmitted by the first identifier transmitting unit other than that of the automatic performance device itself is received, the first identifier setting unit sets an identifier to be allocated to the automatic performance device itself on the basis of the received identifier.



BRIEF DESCRIPTION OF THE DRAWINGS
FIG. 1 is a view showing a schematic configuration of a performance system 100;
FIG. 2 is a block diagram showing a configuration of a transmitting-side system 1;
FIG. 3 is a block diagram showing a hardware configuration of a server device 20;
FIG. 4 is a block diagram showing a configuration of a receiving-side system 3;
FIG. 5 is a view showing a data structure of a synchronization signal;
FIG. 6 is a view showing a data structure of a performance data group 241;
FIG. 7 is a functional block diagram showing a functional configuration of the performance system 100;
FIG. 8 is a sequence chart showing a procedure to be carried out by the performance system 100;
FIG. 9 is a sequence chart showing another procedure to be carried out by the performance system 100;
FIG. 10 is a function block diagram showing a functional configuration of the transmitting-side system 1;
FIG. 11 is a function block diagram showing a functional configuration of the receiving-side system 3;
FIG. 12 is a function block diagram showing another functional configuration of the transmitting-side system 1;
FIG. 13 is a function block diagram showing another functional configuration of the receiving-side system 3;
FIG. 14 is a view illustrating a procedure for setting instrument IDs;
FIG. 15 is a functional block diagram showing another functional configuration of the performance system 100;
FIG. 16 is a view showing a format example of a performance table;
FIG. 17 is a functional block diagram showing still another functional configuration of the performance system 100;
FIG. 18 is a view showing a circuit configuration of a synthesizing section 105;
FIG. 19 is a view showing a circuit configuration of a separation section 302; and
FIG. 20 is a view showing a data structure of a synchronization signal.



DESCRIPTION OF REFERENCE NUMERALS AND SIGNS


    
    
        1 . . . transmitting-side system, 10, 10a, 10b . . . instrument terminal, 100 . . . performance system, 101 . . . video camera, 102 . . . HDD recorder, 103 . . . delay device, 104, 301 . . . PC, 105 . . . synthesizing section, 11 . . . control section, 111, 311 . . . clock section, 112 . . . performance information generation section, 113 . . . second performance data transmission section, 114 . . . synchronization signal transmission section, 115 . . . synchronization signal receiving section, 116 . . . clock correction section, 117a, 117b . . . first instrument ID setting section, 118 . . . first instrument ID transmission section, 12 . . . storage section, 13 . . . musical sound generation section, 14 . . . speaker, 15 . . . operation section, 16 . . . display section, 17 . . . communication section, 18 . . . performance section, 19 . . . signal transmission section, 20 . . . server device, 21 . . . control section, 211 . . . first performance data receiving section, 212 . . . second performance data transmission section, 22 . . . first communication section, 23 . . . second communication section, 24 . . . storage section, 241, 241a, 241b . . . performance data group, 3 . . . receiving-side system, 30 . . . automatic performance instrument, 302 . . . separation section, 31 . . . control section, 312 . . . second performance data receiving section, 313 . . . buffering section, 314 . . . synchronization signal receiving section, 315 . . . dock correction section, 316 . . . reproduction section, 317a, 317b . . . second instrument ID setting section, 318 . . . second instrument ID transmission section 32 . . . storage section, 33 . . . operation section, 34 . . . display section, 35 . . . signal receiving section, 36 . . . communication section, 37 . . . data buffer, 38 . . . performance section, 40 . . . video distribution server, 90 . . . communication network
    
    


BEST MODES FOR CARRYING OUT THE INVENTION
First Embodiment
(Configuration of Performance System 100)
An embodiment according to the present invention will be described below referring to the drawings.
FIG. 1 is a view showing a schematic configuration of a performance system 100 according to this embodiment. As shown in FIG. 1, the performance system 100 includes a transmitting-side system 1, a server device 20 and a receiving-side system 3, and these are connected via a communication network 90. The communication network 90 is a communication network including the Internet in this configuration. In addition to the respective devices of the performance system 100, a video distribution server 40 is connected to the communication network 90. The video distribution server 40 provides the so-called moving image sharing service for distributing moving images including video and audio accessible by unspecified users. The video distribution server 40 provides a platform for video streaming, for example, thereby being capable of distributing moving images (hereafter referred to as “live moving images”) including video and audio. In this embodiment, the video distribution server 40 can communicate with both the transmitting-side system 1 and the receiving-side system 3, thereby realizing a function of distributing the live moving images provided by the transmitting-side system 1 to the receiving-side system 3.
The live moving images according to this embodiment include a moving image that is distributed while being delayed by a predetermined time by a delaying process after the image is taken.
The transmitting-side system 1 is configured at a place where a concert or the like in which musical instruments are played is held. The transmitting-side system 1 includes, for example, apparatuses required for distributing video in which the scene of an instrument performance was photographed to the video distribution server 40 and apparatuses required for allowing the instrument performance to be reproduced by carrying out an automatic performance at the receiving-side system 3. The receiving-side system 3 is configured at a place on the side of the audience of the automatic performance and is equipped with apparatuses required for the user to watch the video in which the scene of the instrument performance was photographed and apparatuses required for reproducing the instrument performance by carrying out the automatic performance. The server device 20 can communicate with both the transmitting-side system 1 and the receiving-side system 3 and serves as a storage device having a role of relaying data required for the automatic performance between the two systems.
The transmitting-side system 1 transmits data to the receiving-side system 3 through two kinds of communication paths being different from each other. First, the transmitting-side system 1 transmits performance data through a first path via the communication network 90 and the server device 20 and without passing through the video distribution server 40. The performance data will be described later in detail. Secondly, the transmitting-side system 1 transmits data, such as a video signal, for use in the broadcast of live moving images through a second path via the communication network 90 and the video distribution server 40 without passing through the server device 20. In addition, the data to be transmitted through the second path further includes a synchronization signal that is used to synchronize the video represented by a video signal on the side of the receiving-side system 3 with the automatic performance that is carried out on the basis of the performance data. The synchronization signal is transmitted and received via an audio signal transmission path with two channels, L and R channels
The first path and the second path are common in some portions because they pass through the communication network 90 but they are made different in the other portions. Since it may be said that the first path and the second path are transmission systems being independent of each other as described above, the communication situations thereof (for example, the degree of communication delay) may be different from each other.
(Configuration of Transmitting-Side System 1)
FIG. 2 is a block diagram showing a configuration of the transmitting-side system 1. As shown in FIG. 2, the transmitting-side system 1 includes instrument terminals 10, a video camera 101, an HDD (Hard Disc Drive) recorder 102, and a PC (Personal Computer) 104.
First, the configuration of the instrument terminal 10 is described. The instrument terminal 10 is an electronic piano in this configuration and includes a control section 11, a storage section 12, a musical sound generation section 13, a speaker 14, an operation section 15, a display section 16, a communication section 17, a performance section 18, and a signal transmission section 19. As shown in FIG. 2, the respective sections of the instrument terminal 10, excluding the speaker 14, are connected mutually through a bus, and signal transfer is carried out among the respective sections via the bus.
The control section 11 includes a CPU (Central Processing Unit), a ROM (Read Only Memory) in which programs for controlling the respective sections of the instrument terminal 10 are stored, and a RAM (Random Access Memory) to be used as a work area when the programs are executed. The CPU executes the programs stored in the ROM and controls the respective sections of the instrument terminal 10. The control section 11 includes a clock section 111 and measures date/time (herein, the current date/time) using the clock section 111. Furthermore, the control section 11 generates a MIDI (Musical Instrument Digital Interface: registered trade name) message depending on the operation (hereafter referred to as “performance operation”) carried out at the performance section 18 and generates performance data having the combination of the generated MIDI message, date/time information indicating the date/time when the performance was carried out, and an identifier (hereafter referred to as “instrument ID”) for identifying the instrument terminal 10 itself. The MIDI message is MIDI format performance information representing the contents of the performance carried out by the instrument terminal 10. The date/time information is information including both date information indicating date and time information indicating time.
The date/time when the performance was carried out by the instrument terminal 10 is specified by the date/time measured by the clock section 111.
In addition, the control section 11 generates a synchronization signal that is used to carry out an automatic performance in synchronization with the video distributed by the video distribution server 40. FIG. 6 is a view showing a data structure of the synchronization signal. As shown in FIG. 6, the synchronization signal is a signal indicating “instrument ID” and “time code.” The time code is the date/time measured by the clock section 111 and can be regarded as the date/time (that is, including absolute time) when the video signal and the synchronization signal are transmitted from the transmitting-side system 1 to the video distribution server 40. The time code is used to specify which date/time's performance the video distributed from the video distribution server 40 corresponds to at the receiving-side system 3 having received the respective signals. It is preferable that the synchronization signal should be generated so as to have frequency components similar to those of white noise and should not be unpleasant to the ears when a human being hears a sound equivalent to the synchronization signal.
Although it is assumed that the date/time values measured by the clock sections 111 at the instrument terminals 10a and 10b are coincident with each other, the coincidence of these is not used as an essential condition in this embodiment.
The storage section 12 includes a non-volatile memory and is used as first identifier storing unit for storing, for example, an instrument ID for identifying the instrument terminal 10. The storage section 12 of the instrument terminal 10a herein stores “0001” as the instrument ID allocated to the instrument itself. The storage section 12 of the instrument terminal 10b stores “0002” as the instrument ID allocated to the instrument itself. The instrument ID may be determined beforehand at the production stage, may be set by the user of the instrument terminal 10, or may be set automatically by the control section 11 at the performance start time. The musical sound generation section 13 generates a musical sound signal corresponding to the MIDI message on the basis of the MIDI message and supplies the generated musical sound signal to the speaker 14. The speaker 14 outputs the performance sound of the instrument terminal 10 depending on the musical sound signal generated by the musical sound generation section 13. The operation section 15 includes various buttons for operating the instrument terminal 10, and various instructions for the instrument terminal 10 are input by the user. The display section 16 includes a liquid crystal display and displays various screens required for operating the instrument terminal 10.
The communication section 17 is connected to the communication network 90 and includes an interface for carrying out communication via the communication network 90. The performance section 18 includes, for example, a plurality of keys, and when the keys are operated by the user acting as the performer of the instrument terminal 10, the performance of the instrument terminal 10 is carried out. When the keys are operated by the user, the performance section 18 outputs an operation signal corresponding to the key operation to the control section 11. The signal transmission section 19 has a terminal to which an audio cable for connection to the HDD recorder 102 is connected, and transmits the synchronization signal supplied from the control section 11 to the HDD recorder 102 via the audio cable connected to this terminal.
The instrument terminal 10 having the above-mentioned configuration functions as a performance information output device for generating and outputting performance information. The configuration of the instrument terminal 10 has been described in the above.
The video camera 101 is used to photograph, for example, a scene in which the user is playing the instrument terminal 10 and to generate a video signal indicating the video (video image) thereof. The video camera 101 transmits the generated video signal to the HDD recorder 102. The HDD recorder 102 is a video recorder in which the video signal transmitted from the video camera 101 and the synchronization signal transmitted from the signal transmission section 19 are corresponded to each other at each date/time on the same time axis and recorded temporarily in the HDD thereof. In this recording, the HDD recorder 102 records the synchronization signal from the instrument terminal 10a using the L channel of stereo channels and also records the synchronization signal from instrument terminal 10b using the R channel.
Furthermore, the HDD recorder 102 incorporates a delay device 103. The delay device 103 carries out a delay process for the video signal and the synchronization signals recorded in the HDD. This delay process is carried out to delay the transmission timing of each signal supplied from the HDD recorder 102 approximately 1 minute, for example. The reason why the delay process is carried out is that the automatic performance at an automatic performance piano 30 can be carried out more securely, and the action thereof will be described later.
It is assumed that the relationship between the video signal and the synchronization signal at each date/time on the time axis remains unchanged before and after the delay process. Furthermore, it may be possible that the delay device 103 is externally connected between the HDD recorder 102 and the PC 104, instead of being incorporated in the HDD recorder 102.
The PC 104 includes an interface for connection to the communication network 90, whereby the video signal and the synchronization signal transmitted from the HDD recorder 102 are transmitted to the video distribution server 40 via the communication network 90. The video distribution server 40 distributes the video signal and the synchronization signal received from the PC 104. These respective signals are received by the receiving-side system 3.
It takes, for example, approximately one minute from the time when the video distribution server 40 received the video signal and the synchronization signal from the PC 104 to the time when the video distribution server 40 distributes these signals to the receiving-side system 3. The delay is due to the delay process carried out intentionally by the video distribution server 40 and is adopted in general moving image sharing service in some cases.
As described above, it may be assumed that the transmitting-side system 1 transmits various signals in a streaming format via the video distribution server 40.
(Configuration of Server Device 20)
FIG. 3 is a block diagram showing the hardware configuration of the server device 20. As shown in FIG. 3, the server device 20 includes a control section 21, a first communication section 22, a second communication section 23, and a storage section 24.
The control section 21 includes a CPU, a ROM in which programs for controlling the respective sections of the server device 20 are stored, and a RAM to be used as a work area when the programs are executed. The CPU executes the programs stored in the ROM and controls the respective sections of the server device 20. The first communication section 22 includes an interface for connection to the communication network 90, thereby communicating with the instrument terminal 10. The second communication section 23 includes an interface for connection to the communication network 90, thereby communicating with the automatic performance piano 30. The reason why the two communicating sections, i.e., the first communication section 22 and the second communication section 23, are provided is so that the control section 21 can carry out the process for receiving performance data from the instrument terminal 10 and for storing the performance data in the storage section 24 and the process for reading the performance data from the storage section 24 and for transmitting the performance data to the automatic performance piano 30 in parallel. Hence, provided that the parallel processes can be realized, the respective communicating sections may not be required to be independent of each other.
The storage section 24 includes a hard disc device in which performance data groups 241a and 241b including the performance data transmitted from the instrument terminal 10 and server programs for realizing server functions in the performance system 100 are stored. The CPU of the control section 21 executes the server programs, stores the performance data received from the instrument terminal 10 in the storage section 24, and transmits the performance data stored in the storage section 24 to the automatic performance piano 30. It is herein assumed that the performance data group including the performance data received from the instrument terminal 10a is referred to as “performance data group 241a” and that the performance data group including the performance data received from the instrument terminal 10b is referred to as “performance data group 241b.”
FIG. 5 is a view showing a data structure of the performance data groups 241a and 241b. In the performance data groups 241a and 241b, the performance data corresponding to each performance at the instrument terminal 10 is formed of a group of an instrument ID, date/time information, and a MIDI message. For example, in the case that key operation is carried out at the instrument terminal 10a, as shown in the first line of FIG. 5(a), the performance data having the combination of the instrument ID “0001” of the instrument terminal 10, the date/time information “2010-12-28T19:00:00:00” (indicating 19 o'clock 00 minutes 00 seconds 00 on Dec. 28, 2010) indicating the date/time when the key operation was carried out, and the performance information “MIDI message # a1” is included in the performance data group 241a. The performance data corresponding to each of the other lines and each of the lines of the performance data group 241b has a data structure similar to this structure. In the case that the performance data groups 241a and 241b are not particularly required to be distinguished, the groups are hereafter generally referred to as “performance data group 241” in some cases.
(Configuration of Receiving-Side System 3)
FIG. 4 is a block diagram showing a configuration of the receiving-side system 3. As shown in FIG. 4, the receiving-side system 3 includes two automatic performance pianos 30a and 30b and a PC 301. Since the automatic performance pianos 30a and 30b have a common configuration, they are generally referred to as “automatic performance piano 30” in some cases in the following description in the case that they are not particularly required to be distinguished. The PC 301 communicates with the video distribution server 40 via the communication network 90 and receives the video signal and the synchronization signal distributed from the video distribution server 40. The PC 301 reproduces the video signal among the received signals and outputs a live moving image using the monitor thereof or an external monitor. Furthermore, the PC 301 transmits the synchronization signal that is reproduced simultaneously with the video signal to the automatic performance pianos 30a and 30b connected thereto via audio cables. The PC 301 is herein connected to the respective automatic performance pianos 30a and 30b so as to transmit the instrument ID of the instrument terminal 10a to the automatic performance piano 30a and to transmit the instrument ID of the instrument terminal 10b to the automatic performance piano 30b. 
Next, the configuration of the automatic performance piano 30 will be described. The automatic performance piano 30 has a function of carrying out an automatic performance on the basis of the MIDI message. The automatic performance piano 30 includes a control section 31, a storage section 32, an operation section 33, a display section 34, a signal receiving section 35, a communication section 36, a data buffer 37, and a performance section 38. The respective sections of the automatic performance piano 30 are connected mutually through a bus, and signal transfer is carried out among the respective sections via the bus.
The control section 31 includes a CPU, a ROM in which programs for controlling the respective sections of the automatic performance piano 30 are stored, a RAM, etc. The CPU of the control section 31 reads and executes the programs stored in the ROM, thereby controlling the respective sections of the automatic performance piano 30. In addition, the control section 31 includes a clock section 311 and measures date/time using the clock section 311. Furthermore, the control section 31 decodes the instrument ID and the time code from the synchronization signal received from the PC 301 through the signal receiving section 35 and stores the result of the decoding in the storage section 32. The control section 31 corrects the date/time measured by the clock section 311 on the basis of the decoded time code, and specifies the performance data to be reproduced by using the decoded instrument ID. Moreover, the control section 31 buffers the performance data received through the communication section 36 in the data buffer 37, and in parallel with this, the control section 31 reads the performance data buffered in the data buffer 37, reproduces the MIDI message included in the performance data, and allows the performance section 38 to carry out a performance (in other words, an automatic performance is carried out).
The storage section 32 includes a hard disc device in which various programs, etc. are stored. When the synchronization signal is received from the PC 301 by the automatic performance piano 30, the storage section 32 serves as second identifier storing unit for storing the instrument ID indicated by the synchronization signal. Although the storage section 32 has stored beforehand an instrument ID that is different for each automatic performance piano 30, when the synchronization signal is received, the storage section 32 newly stores the instrument ID indicated by the synchronization signal. The operation section 33 includes various buttons for operating the automatic performance piano 30, and various instructions for the automatic performance piano 30 are input by the user. The display section 34 includes a liquid crystal display and displays various screens required for operating the automatic performance piano 30.
The signal receiving section 35 has a terminal to which the audio cable for connection to the PC 301 is connected, and receives the synchronization signal transmitted from the PC 301 that is connected to this terminal via the audio cable. The communication section 36 includes an interface for connection to the communication network 90 and communicates with the server device 20. The data buffer 37 has a buffer area in which the performance data is buffered under the control of the control section 31. The control section 31 reads the performance data buffered in the data buffer 37 and supplies the MIDI message included in the performance data to the performance section 38 at the timing corresponding to the date/time information included in the performance data and the specified time code indicated by the synchronization signal received from the PC 301, thereby reproducing the MIDI message. According to the MIDI message, performance sound is output from the automatic performance piano 30.
The performance section 38 outputs performance sound according to the MIDI message extracted from the performance data and further outputs performance sound generated through the pressing operation of keys, not shown, by the user. The former is referred to as “automatic performance” and the latter is referred to as “manual performance.”
The performance section 38 has a drive mechanism 38a, a key sensor 38b, a pedal sensor 38c, a piano electronic circuit 38d, a piano sound source 38e, a mixer 38f, an amplifier 38g, and a speaker 38h. The drive mechanism 38a has a plurality of keys and a plurality of pedals, and further has, for example, a group of drive solenoids provided so as to correspond to the respective keys. The key sensor 38b and the pedal sensor 38c are used for a manual performance and provided so as to correspond to each of the plurality of keys and the plurality of pedals. The key sensor 38b and the pedal sensor 38c detect the intensity, depth, etc. when the key and the pedal are pressed, and supply the results of the detection including the key number and the pedal number for specifying the key and the pedal detected, velocity information, etc. to the piano electronic circuit 38d. In the case that an automatic performance is carried out, the piano electronic circuit 38d supplies a MIDI message to the piano sound source 38e. The piano sound source 38e generates an audio signal for outputting the performance sound instructed by the MIDI message. Furthermore, the piano electronic circuit 38d controls the group of the drive solenoids provided in the drive mechanism 38a. More specifically, upon receiving a MIDI message indicating note ON (key pressing) for a certain performance sound, the piano electronic circuit 38d applies a drive current to the solenoid corresponding to the key of the performance sound, whereby a magnetic force required for pressing the key is generated by the solenoid. On the other hand, upon receiving an event indicating note OFF (key release) for a certain performance sound, the piano electronic circuit 38d applies a drive current to the solenoid corresponding to the key of the performance sound, whereby a magnetic force required for releasing the key is generated by the solenoid. What's more, in the case that a manual performance is carried out, the piano electronic circuit 38d generates an event on the basis of the results of the detection supplied from the key sensor 38b and the pedal sensor 38c, and supplies the event to the piano sound source 38e. The piano sound source 38e generates an audio signal for outputting the designated performance sound according to the MIDI message.
The audio signal generated by the piano sound source 38e as described above is output to the mixer 38f. The mixer 38f mixes the audio signal output from the piano sound source 38e with other audio signals as necessary, and outputs the obtained signal to the amplifier 38g. The signal is amplified by the amplifier 38g and output from the speaker 38h as the performance sound.
(Functional Configuration of Performance System 100)
FIG. 7 is a functional block diagram showing a functional configuration of the performance system 100 relating to an automatic performance.
The instrument terminal 10 realizes functions corresponding to the clock section 111, a performance information generation section 112, a first performance data transmission section 113, and a synchronization signal transmission section 114. The server device 20 realizes functions corresponding to a first performance data receiving section 211 and a second performance data transmission section 212. The automatic performance piano realizes functions corresponding to the dock section 311, a second performance data receiving section 312, a buffering section 313, a synchronization signal receiving section 314, a dock correction section 315, and a reproduction section 316.
The dock section 111 measures date/time as described above. The performance information generation section 112 generates a MIDI message serving as the performance information of the instrument terminal 10 depending on the performance operation of the performance section 18. Each time the performance information (MIDI message) is generated by the performance information generation section 112, the first performance data transmission section 113 transmits the performance data having the combination of the date/time information indicating the date/time being measured by the dock section 111, the performance information, and the instrument ID stored in the storage section 12 to the server device 20. The synchronization signal transmission section 114 generates a synchronization signal indicating a time code serving as the date/time being measured by the dock section 111 and the instrument ID stored in the storage section 12, and transmits the generated synchronization signal to the video distribution server 40.
The first performance data receiving section 211 receives the performance data transmitted from the first performance data transmission section 113. The performance data received by the first performance data receiving section 211 is included in the performance data group 241. In parallel with the storage of the performance data in the storage section 24, the second performance data transmission section 212 transmits the performance data corresponding to the performance data request message received from the automatic performance piano 30 and serving as the performance data request message including the instrument ID and the date/time information among the performance data group 241 stored in the storage section 24 to the automatic performance piano 30. More specifically, the second performance data transmission section 212 transmits performance data including the instrument ID that is common to the performance data request message in the chronological order of the date/time starting from the date/time indicated by the date/time information included in the performance data request message.
The clock section 311 measures date/time as described above. The second performance data receiving section 312 receives the performance data transmitted through the second performance data transmission section 212 without passing through the video distribution server 40. The second performance data receiving section 312 transmits the performance data request message to the server device 20, and receives the performance data transmitted from the server device 20 according to the performance data request message. The buffering section 313 buffers the performance data received through the second performance data receiving section 312 in the buffer area thereof. The synchronization signal receiving section 314 receives the synchronization signal transmitted through the synchronization signal transmission section 114 via the video distribution server 40. The clock correction section 315 corrects the date/time measured by the clock section 311 on the basis of the time code obtained by decoding the synchronization signal. The dock correction section 315 corrects the date/time measured by the dock section 311 so that the date/time being coincident with the time code is measured, for example.
At the timing corresponding to the date/time indicated by the date/time information of the performance data received by the second performance data receiving section 312 and including the instrument ID allocated to the device itself and stored in the storage section 32 and the time code (in other words, the date/time measured by the dock section 311 after the correction) indicated by the synchronization signal received by the synchronization signal transmission section 314 and in synchronization with the video distributed at the time when the synchronization signal was distributed, the reproduction section 316 reproduces the MIDI message of the performance data. For example, the reproduction section 316 alters the reproduction interval of the MIDI message from the length stipulated by the date/time information, changes the tempo at the time when the MIDI message is reproduced, or alters the MIDI message to be reproduced (in other words, skipping is done) to provide interlocking so that a predetermined relationship is established between the date/time measured by the dock section 311 and the date/time indicated by the date/time information included in the performance data and to synchronize the distributed video with the performance sound. The reproduction section 316 herein obtains, from the buffering section 313, the MIDI message of the performance data including the date/time indicating the time before a predetermined time (herein, before 500 ms) from the/time measured by the clock section 311, and reproduces the MIDI message. A certain time is required after the MIDI message was supplied to the performance section 38 and until the respective sections of the performance section 38 operates as described above and the performance sound corresponding to the reproduction of the MIDI message is output (in other words, a delay occurs in the process at the performance section 38). Hence, the reproduction section 316 determines the reproduction timing of each piece of the performance information in anticipation of this delay in the process, whereby the live moving image is synchronized with the performance sound that is output by reproducing the MIDI message using the reproduction section 316. The reproduction timing may be determined in consideration of the delay in the process at the time when the PC 301 displays the live moving image, for example.
Operation of Embodiment
Next, the operation of the performance system 100 will be described.
First, when the user turns on the power of the instrument terminal 10, the CPU executes the programs stored in the ROM of the control section 11. Then, the instrument terminal 10 can realize the functions of the electronic piano and can carry out communication with the communication network 90.
Next, prior to the start of a performance, the control section 11 of each of the instrument terminals 10a and 10b generates a synchronization signal indicating the instrument ID stored in the storage section 12 to determine the automatic performance piano 30 by which an automatic performance is carried out to reproduce the performance of the instrument itself, and transmits the synchronization signal to the HDD recorder 102 through the signal transmission section 19. The HDD recorder 102 receives an instrument ID “0001” from the instrument terminal 10a at the L channel and receives an instrument ID “0002” from the instrument terminal 10b at the R channel, and then records these. Then, the HDD recorder 102 transmits the instrument IDs “0001” and “0002” to the video distribution server 40 using the L and R channel transmission paths serving as transmission paths being independent of each other. The video distribution server 40 transmits the synchronization signal of each time to the PC 301 in synchronization with the distributed video. The PC 301 transmits the synchronization signal received at the L channel to the automatic performance piano 30a and transmits the synchronization signal received at the R channel to the automatic performance piano 30b. The control section 31 of each of the automatic performance pianos 30a and 30b causes the instrument ID indicated by the received synchronization signal to be stored in the storage section 32 of the device itself. Hence, the instrument ID “0001” is stored in the storage section 32 of the automatic performance piano 30a, and the instrument ID “0002” is stored in the storage section 32 of the automatic performance piano 30b. When the instrument ID is stored in the storage section 32, the setting of the instrument ID of each automatic performance piano 30 is completed.
The above is the operation to be carried out before the start of an instrument performance. In the case that the user on the side of the receiving-side system 3 can know the instrument IDs (for example, through a notification on a web page), the instrument Ds may be set in the automatic performance pianos 30a and 30b through manual input by the user. Each of the instrument IDs to be set in the automatic performance pianos 30 is either one of the instrument IDs stored in the storage sections 12 of the instrument terminals 10a and 10b and may have any format, provided that the instrument IDs have been allocated to the automatic performance pianos 30a and 30b so as to be different from each other.
Next, the operation to be carried out after the start of the performance will be described referring to FIGS. 8 and 9. FIGS. 8 and 9 are sequence charts showing procedures to be carried out by the instrument terminal 10, the server device 20 and the automatic performance piano 30 during an automatic performance.
When the user presses a key of the instrument terminal 10 (at step S1), the control section 11 generates a MIDI message including performance operation information, such as the note ON message, the note number corresponding to the pressed key, and the velocity corresponding to the operation on the key. Furthermore, by using the clock section 111, the control section 11 generates date/time information indicating the date/time when this note ON MIDI message is generated. The control section 11 generates performance data including the generated performance information, the generated date/time information and the instrument ID stored in the storage section 12, and transmits the performance data to the server device 20 through the communication section 17 (at step S2).
On the other hand, the control section 11 transmits the MIDI message to the musical sound generation section 13. When the MIDI message is supplied, the musical sound generation section 13 generates a musical sound signal corresponding to the note number and the velocity designated by the MIDI message, and supplies the generated signal to the speaker 14. When the signal supplied from the musical sound generation section 13 is supplied to the speaker 14, the musical sound corresponding to the supplied signal is delivered from the speaker 14.
Upon receiving the performance data transmitted from the instrument terminal 10 through the first communication section 22, the control section 21 of the server device 20 stores the received performance data in the storage section 24 (at step S3). For example, upon receiving the performance data having the combination of the date/time information “2010-12-28T19:00:00:00,” the instrument ID “0001” and the performance information “MIDI message # a1” from the instrument terminal 10a, the control section 21 stores the performance data in the storage section 24 so that the performance data is included in the performance data group 241a (refer to the first line of FIG. 5(a)).
Next, the control section 11 of the instrument terminal 10 generates a synchronization signal by encoding the time code indicating the date/time measured by the clock section 111 and the instrument ID stored in the storage section 12, and transmits this synchronization signal to the HDD recorder 102 through the signal transmission section 19 (at step S4). The synchronization signal is transmitted from the HDD recorder 102 to the video distribution server 40 by the PC 104. As described above, the instrument terminal 10a transmits the synchronization signal indicating the instrument ID “0001” and the instrument terminal 10b transmits the synchronization signal indicating the instrument ID “0002.” In this embodiment, it is assumed that the control section 11 transmits the synchronization signal only once in one second on the basis of the date/time measured by the clock section 111.
The synchronization signal is subjected to the delay process carried out the delay device 103 and passes through the video distribution server 40. In this embodiment, the time when the synchronization signal generated at a certain time is received by the receiving-side system 3 is delayed approximately two minutes than the time when the performance data including the performance information generated at the same time is received by the server device 20.
Next, in the instrument ID, when the user releases his finger from the pressed key (at step S5), the control section 11 generates a MIDI message including performance operation information, such as the note OFF message, the note number corresponding to the released key, and the velocity corresponding to the operation on the key. Furthermore, by using the clock section 111, the control section 11 generates date/time information indicating the date/time when this note OFF MIDI message is generated. The control section 11 generates performance data including the generated MIDI message, the generated date/time information and the instrument ID stored in the storage section 12, and transmits the performance data through the communication section 17 (at step S6). Furthermore, the control section 11 transmits the MIDI message to the musical sound generation section 13. When the note OFF MIDI message is supplied, the musical sound generation section 13 stops the generation of the musical sound signal corresponding to the note number designated by the MIDI message. As a result, the output of the performance sound from the musical sound speaker 14 is stopped.
Upon receiving the performance data transmitted from the instrument terminal 10 through the first communication section 22, the control section 21 stores the received performance data in the storage section 24 (at step S7).
Herein, upon receiving the performance data having the combination of the date/time information “2010-12-28T19:00:00:00,” the instrument ID “0001” and “MIDI message # a2” from the instrument terminal 10, the control section 21 stores the performance data in the storage section 24 so that the performance data is included in the performance data group 241a (refer to the second line of FIG. 5(a)).
The instrument terminal 10 hereafter generates performance information each time performance operation is carried out and transmits the performance data to the server device 20 through the communication section 17. In the server device 20, upon receiving the performance data from the instrument terminal 10 through the first communication section 22, the control section 21 stores the received performance data in the storage section 24. Moreover, the instrument terminal 10 repeats the process of transmitting the synchronization signal every second (at steps S8 and S9).
In parallel with the transmission and storage of the performance data described above, the following process relating to an automatic performance is carried out between the server device 20 and the automatic performance piano 30. As a result, it is assumed that such a performance data group as shown in FIG. 5 has been stored in the server device 20.
When the synchronization signal transmitted from the instrument terminal 10 is received by the PC 301, the control section 31 of the automatic performance piano 30 receives the synchronization signal through the signal receiving section 35. Next, the control section 31 decodes the received synchronization signal and specifies the instrument ID and the time code (at step S10). According to the instrument ID and the time code, it is possible to specify which instrument is used and at which date/time the live moving image to be output at the PC 301 is taken.
According to the instrument ID stored in the storage section 32, the control section 31 obtains the performance data including the MIDI message to be reproduced from the server device 20.
Next, the control section 31 corrects the date/time measured by the clock section 311 on the basis of the synchronization signal including the instrument ID that is common to the instrument ID stored in the storage section 32 and according to the time code specified by the process at step S10 (at step S11). The control section 31 herein corrects the date/time to the date/time that is common to the date/time indicated by the time code. As a result, the date/time measured by the dock section 111 of the instrument terminal 10a is synchronized with the date/time measured by the dock section 311 of the automatic performance piano 30a. In addition, the date/time measured by the dock section 111 of the instrument terminal 10b is synchronized with the date/time measured by the dock section 311 of the automatic performance piano 30b. 
Next, on the basis of the instrument ID and the time code specified by the process at step S11, the control section 31 transmits a performance data request message including the instrument ID and the date/time information (at step S12). The control section 31 herein designates the date/time indicated by the newest time code and the instrument ID stored in the storage section 32 and then transmits the performance data request message.
As described above, the HDD recorder 102 has the delay device 103, and the time code and the instrument ID are received by the PC 301 from the side of the instrument terminal 10 while being delayed approximately one minute. On the other hand, this delay is not generated intentionally in the transmission of the performance data from the instrument terminal 10 to the server device 20. It is assumed that the performance data that is requested by the automatic performance piano 30 so as to be transmitted has been stored securely in the server device 20.
Upon receiving the performance data request message through the second communication section 23, the control section 21 of the server device 20 transmits performance data including the instrument ID that is common to the performance data request message in the chronological order of the date/time starting from the performance data including the date/time information at the date/time designated by the transmission request message on the basis of the performance data group 241 stored in the storage section 24 (at step S13). Herein, in the case that the date/time designated by the performance data request message from the automatic performance piano 30a is “19 o'clock 00 minutes 00 seconds 00 on Dec. 28, 2010” and the instrument ID is “0001,” the control section 21 first transmits performance data including date/time information “2010-12-28T19:00:00:00” and then transmits the performance data corresponding to “2010-12-28T19:00:02:24” and the performance data corresponding to “2010-12-28T19:00:03:59” sequentially. On the other hand, in the case that the date/time designated by the performance data request message from the automatic performance piano 30b is “19 o'clock 00 minutes 00 seconds 00 on Dec. 28, 2010” and the instrument ID is “0002,” the control section 21 first transmits performance data including date/time information “2010-12-28T19:00:00:02” and then transmits the performance data corresponding to “2010-12-28T19:00:01:43” and the performance data corresponding to “2010-12-28T19:00:04:21” sequentially.
As described above, once each of the automatic performance pianos 30a and 30b has received one synchronization signal from the instrument terminal 10 corresponding to the device itself, the automatic performance piano receives plural pieces of performance data in chronological order sequentially. On the other hand, the control section 21 of the server device 20 keeps the performance data transmitted to the automatic performance piano 30 and the performance data including the date/time information of the past in the storage section 24. Hence, even after a certain time has passed from the time when a performance was carried out using the instrument terminal 10, the automatic performance piano 30 can obtain the performance data and reproduce the performance information. In addition, this accumulation of the performance data can reduce the storage capacity of the buffer area in the data buffer 37 of the automatic performance piano 30.
Upon receiving the performance data through the communication section 36, the control section 31 of the automatic performance piano 30 buffers the performance data in the data buffer 37 sequentially (at step S14). At this time, in the case that the reception and buffering of the performance data is stopped temporarily, for example, in the case that a buffering amount relative to the storage capacity of the data buffer 37 has become equal to or more than a threshold value, the control section 31 may request the server device 20 to stop the buffering so that the performance data is prevented from vanishing.
Next, the control section 31 of the automatic performance piano 30 supplies the MIDI message to the performance section 38 at the timing corresponding to the date/time indicated by the date/time information of the performance data received through the communication section 36 and the date/time measured by the clock section 311 (in other words, the time code indicated by the received synchronization signal) and reproduces the MIDI message (at step S15). The control section 31 herein reproduces the MIDI message that is combined with the date/time information obtained 500 ms before the date/time measured by the dock section 311. In other words, when the date/time measured by the clock section 311 become 500 ms before the date/time indicated by the date/time information that is combined with the MIDI message, the MIDI message is reproduced. In this way, when the video at the distribution time of the synchronization signal used for the correction of the clock section 311 is output, the control section 31 adjusts the reproduction timing of the MIDI message using the time code indicated by the synchronization signal, thereby realizing synchronized reproduction (automatic performance).
In the automatic performance described above, the automatic performance piano 30a adjusts the reproduction timing of the MIDI message of the performance data generated by the instrument terminal 10a depending on the synchronization signal transmitted from the instrument terminal 10a, and the automatic performance piano 30b adjusts the reproduction timing of the MIDI message of the performance data generated by the instrument terminal 10b depending on the synchronization signal transmitted from the instrument terminal 10b. Although the reproduction timing of the MIDI message is adjusted at each of the automatic performance pianos 30a and 30b depending on each of the independent synchronization signals as described above, since the synchronization signals are recorded and transmitted along the same time axis, the automatic performances of the automatic performance piano 30a and 30b are synchronized with each other, regardless of whether the date/time values measured by the dock sections 111 of the instrument terminals 10a and 10b are synchronized with each other.
The control section 31 erases the reproduced performance data from the data buffer 37, thereby ensuring the storage capacity thereof.
The control section 31 hereafter continuously reads the MIDI data from the data buffer 37 in chronological order and carries out reproduction. Since the control section 31 reproduces the MIDI message of each piece of the performance data according to the date/time measured by the dock section 311 even during a period in which no synchronization signal is received, the live moving image is synchronized with the automatic performance at this time.
Then, the control section 31 of the automatic performance piano 30 receives the synchronization signal from the video distribution server 40 (at step S16). Also in this case, the control section 31 decodes the received synchronization signal and specifies both the instrument ID and the time code (at step S17). Next, the control section 31 corrects the date/time measured by the dock section 311 according to the time code specified by the process at step S15 (at step S18). And then, the control section 31 reproduces the MIDI message at the timing synchronized with the video output from the PC 301 by following the above-mentioned procedure.
Then, for example, in the case that the storage capacity of the data buffer 37 becomes equal to or less than the threshold value, the control section 31 transmits the performance data request message again to the server device 20 (at step S19). Also at this time, the control section 31 designates the date/time measured by the clock section 311 and transmits the performance data request message to the automatic performance piano 30. Then, the control section 31 buffers the performance data received according to the performance data request message in the data buffer 37 (at step S20) and continues the automatic performance on the basis of the MIDI message by following the above-mentioned procedure.
The above-mentioned operation continues after the performance at the instrument terminal 10 was ended and until the automatic performance at the automatic performance piano 30 is ended.
In the performance system 100 according to the first embodiment described above, automatic performances synchronized with the distributed video can be carried out at the plurality of automatic performance instruments 30 while suppressing the influence of the state of the communication path passing through the video distribution server 40. More specifically, the synchronization signal transmitted from each instrument terminal 10 and transmitted while the audio signal transmission path is divided for each instrument terminal 10 is the signal that passes through the video distribution server 40. Hence, each of the automatic performance pianos 30a and 30b of the receiving-side system 3 can specify the instrument ID to be allocated to the device itself according to the synchronization signal transmitted through each of the transmission paths independent of each other. As a result, each of the automatic performance pianos 30a and 30b can obtain the performance data including the MIDI message to be reproduced in synchronization with the video from the server device 20 and can reproduce the obtained MIDI message.
Furthermore, the performance data does not pass through the video distribution server 40. For this reason, even in the case that the distribution of the synchronization signal, the video signal and the audio signal is delayed due to too much access to the video distribution server 40, due to occurrence of system down for any cause, or due to the state of communication, the automatic performance piano 30 can carry out an automatic performance by using the performance data received through a path different from this path. Moreover, even if the live moving image is interrupted temporarily, the user of the automatic performance piano 30 does not have any uncomfortable feeling caused due to the interruption of the performance sound thereof for the reason that the automatic performance of the automatic performance piano 30 continues. What's more, since the date/time is specified according to the time code in the automatic performance piano 30, even if the distribution of each signal of the video distribution server 40 is interrupted and then restored, the automatic performance can be started from the timing after the restoration.
Additionally, in this embodiment, since the respective sections of the performance section 38, such as the keys, are operated in synchronization with the video and the operation of the instrument terminal 10 is reproduced, the user of the automatic performance piano 30 can experience the realistic sensation of a concert hall at a distant place.
Still further, even In the case that the transmitting-side systems 1 are provided at a plurality of halls simultaneously and live performances are carried out, the present invention is applicable. In this case, the video distribution server 40 may simply be allocated to each transmitting-side system 1 (concert hall) for each channel. In other words, the synchronization signal corresponding to the channel set at the PC 301 at present is received by the automatic performance piano 30. After channel switching, the automatic performance piano 30 can specify the instrument ID and the date/time information on the basis of the synchronization signal received by the automatic performance piano 30 and can carry out an automatic performance.
Second Embodiment
Next, a second embodiment according to the present invention will be described.
In the first embodiment described above, the instrument terminals 10 and the automatic performance pianos 30, two in number respectively, are provided, and the instrument terminal 10 transmits the synchronization signal to be transmitted to each automatic performance piano 30 through the L and R channel transmission paths. In this configuration, the audio signal indicating the sound picked up by the video camera 101 is not transmitted, and the receiving-side system 3 cannot output the audio represented by the audio signal. On the other hand, in this second embodiment, the audio output from the PC 301 is made possible. In other words, in the performance system 100 according to this embodiment, the synchronization signal is transmitted through one of the two channels, i.e., the L and R channels, and the audio signal representing the audio picked up by the video camera 101 is transmitted through the other channel. It is assumed that each of the instrument IDs to be allocated to the automatic performance pianos 30 is manually set by the user on the side of the receiving-side system 3. In the following description, the components of the performance system according to this embodiment, common to those according to the first embodiment, are designated by the same reference codes, and their configurations and illustrative representations are omitted as necessary.
FIG. 10 is a block diagram showing functional configurations of the instrument terminals 10a and 10b in the transmitting-side system 1. FIG. 11 is a block diagram showing functional configurations of the automatic performance pianos 30a and 30b in the receiving-side system 3.
In this embodiment, the instrument terminal 10a serves as a master terminal (first instrument) and the instrument terminal 10b other than that serves as a slave terminal (second instrument), whereby the instrument terminal 10b operates according to the synchronization signal received from the instrument terminal 10a. More specifically, the synchronization signal transmission section 114 of the instrument terminal 10a transmits the synchronization signal indicating the instrument ID of the instrument terminal 10a and the time code to not only the video distribution server 40 (automatic performance pianos 30) but also the instrument terminal 10b serving as the slave terminal. In other words, the synchronization signal to be transmitted to the respective automatic performance pianos 30 and the synchronization signal to be transmitted to the instrument terminal 10b are all common.
The synchronization signal receiving section 115 of the instrument terminal 10b receives the synchronization signal transmitted from the instrument terminal 10a. On the basis of the time code specified by the synchronization signal received by the synchronization signal receiving section 115, the clock correction section 116 thereof corrects the date/time measured by the clock section 111 of the instrument terminal 10b so that the date/time becomes coincident with the date/time of the time code. As a result, the date/time values measured by the clock sections 111 of the instrument terminals 10a and 10b become coincident with each other. As described above, in this embodiment, the date/time values measured by the clock sections 111 of the instrument terminals 10a and 10b are required to be in synchronization with each other after the correction by the clock correction section 116.
Hence, in the performance data to be transmitted from the instrument terminals 10a and 10b, date/time information indicating the same time of the same date is included in the performance data corresponding to the performances carried out simultaneously, for example.
As shown in FIG. 11, the synchronization signal receiving sections 314 of the automatic performance pianos 30a and 30b respectively receive the common synchronization signal. Then, the reproduction section 316 thereof reproduces the MIDI message of the performance data at the timing corresponding to the time code obtained from the synchronization signal as in the case of the first embodiment. Although the synchronization signal includes the instrument ID of the instrument terminal 10a, each of the automatic performance pianos 30a and 30b refers to the time code and selects the performance data that is received from the server device 20 according to the instrument ID stored in the storage section 32 of the device itself. The operation to be carried out after each of the automatic performance pianos 30a and 30b has received the performance data is the same as that in the above-mentioned first embodiment. As described above, since the clock sections 111 of the automatic performance pianos 30a and 30b operate in synchronization with each other, even if a plurality of automatic performance pianos 30 of the receiving-side system 3 carry out automatic performances according to the time code of the common synchronization signal, the performance timing values of the automatic performance pianos 30, essentially coincident, are not displaced.
With the configuration described above, while a live moving image including video and audio is output from the PC 301, automatic performances in synchronization with this video can be realized. In order to supply the synchronization signal to a plurality of terminals, the PC 104 and the PC 301 may have a function of distributing the synchronization signal, or a signal processing device provided separately may realize this function.
Third Embodiment
Next, a third embodiment according to the present invention will be described.
In the second embodiment described above, since the common synchronization signal is transmitted to both the automatic performance pianos 30a and 30b, the respective instrument IDs are required to be set manually. On the other hand, in this embodiment, both the instrument terminal 10 and the automatic performance piano 30 have a function of automatically setting the instrument IDs. In the following description, the components of the performance system according to this embodiment, common to those according to the first embodiment, are designated by the same reference codes, and their configurations and illustrative representations are omitted as necessary.
FIG. 12 is a block diagram showing functional configurations of the instrument terminals 10a and 10b of the sending-side system 1. FIG. 13 is a block diagram showing functional configurations of the automatic performance pianos 30a and 30b of the receiving-side system 3.
In the instrument terminal 10a, the first instrument ID setting section 117a thereof sets an instrument ID to be allocated to the instrument terminal 10a and stores the instrument ID in the storage section 12. In the instrument terminal 10a serves as the master terminal, it is assumed that the first instrument ID setting section 117a sets an instrument ID “0001.” In addition, the first instrument ID setting section 117a converts the instrument ID of the instrument terminal 10a according to a predetermined rule, thereby generating an instrument ID to be allocated to the instrument terminal 10b. The first instrument ID setting section 117a herein adds “1” to the instrument ID “0001” of the instrument terminal 10a to generate an instrument ID “0002” and supplies this to a first instrument ID transmission section 118. The first instrument ID transmission section 118 transmits the instrument ID “0002” supplied from the first instrument ID setting section 117a to the instrument terminal 10b in which the instrument ID thereof is not yet set. The transmission path for the instrument ID is different from the transmission path for the synchronization signal.
In the instrument terminal 10b, the first instrument ID setting section 117b thereof receives the instrument ID transmitted from the first instrument ID transmission section 118 and sets the instrument ID as the instrument ID to be allocated to the instrument terminal 10b. In other words, the first instrument ID setting section 117b sets the instrument ID “0002” as an instrument ID to be allocated to the instrument terminal 10b and stores the instrument ID in the storage section 12.
The setting of the instrument IDs of the instrument terminals 10a and 10b has been completed by following the above-mentioned procedure.
As shown in FIG. 13, the synchronization signal receiving section 314 of the automatic performance piano 30a receives the synchronization signal transmitted through the synchronization signal transmission section 114 of the instrument terminal 10a. A second instrument ID setting section 317a sets the same instrument ID as the instrument ID indicated by the synchronization signal received by the synchronization signal receiving section 314 as the instrument ID of the automatic performance piano 30a and stores the instrument ID in the storage section 32. Furthermore, the second instrument ID setting section 317a converts the instrument ID having been set in the automatic performance piano 30a according to the rule common to the instrument terminal 10 to generate an instrument ID to be allocated to the automatic performance piano 30b. In other words, the second instrument ID setting section 317a herein adds “1” to the instrument ID “0001” of the automatic performance piano 30a to generate an instrument ID “0002” and supplies this to a second instrument ID transmission section 318. The second instrument ID transmission section 318 transmits the instrument ID “0002” supplied from the second instrument ID setting section 317a to the automatic performance piano 30b in which the instrument ID thereof is not yet set.
In the automatic performance piano 30b, a second instrument ID setting section 317b is realized. The second instrument ID setting section 317b receives the instrument ID transmitted from the second instrument ID transmission section 318, and sets the instrument ID as an instrument ID to be allocated to the automatic performance piano 30b. In other words, the second instrument ID setting section 317b sets the instrument ID “0002” as the instrument ID to be allocated to the automatic performance piano 30b and stores the instrument ID in the storage section 32 of the device itself.
The setting of the instrument IDs of the automatic performance pianos 30a and 30b has been completed by following the above-mentioned procedure.
Automatic performances are realized hereafter by using the same procedure as that of the above-mentioned second embodiment. With this embodiment, it is not necessary to set the instrument IDs beforehand in both the transmitting-side system 1 and the receiving-side system 3, and the effort for the setting can be saved.
Although the instrument terminal 10a herein generates the instrument ID of the instrument terminal 10b serving as the transmission destination of the instrument ID, it may be possible that the instrument terminal 10a transmits the instrument ID thereof to the instrument terminal 10b and that the instrument terminal 10b converts the instrument ID of the instrument terminal 10a to generate an instrument ID to be allocated to the instrument itself and then set the instrument ID. Similarly, it may be possible that the automatic performance piano 30a transmits the instrument ID thereof to the automatic performance piano 30b and that the automatic performance piano 30b converts the instrument ID of the automatic performance piano 30a and sets the obtained instrument ID to be allocated to the device itself. In addition, the method for converting the instrument ID conforms to a predetermined rule, and this rule may be commonly used for the instrument terminal 10 and the automatic performance piano 30; for example, decrement may be done instead of increment.
Other Embodiments
The present invention is not limited to the above-mentioned embodiments but can be modified variously. Some of modification examples will be described hereafter. Among the following modification examples, two or more thereof may be used in combination. In the following description, the components designated by the same reference codes as those used in the embodiments are the same as the components of the embodiments, and their descriptions are omitted as necessary.
Modification Example 1
In the performance system 100 according to the respective embodiments described above, the instrument terminals 10 and the automatic performance pianos 30, two in number respectively, are provided. However, in the configurations according to the second and third embodiments, the instrument terminals 10 and the automatic performance pianos 30, three or more in number respectively, can also be provided.
In the case of the configuration according to the second embodiment, a plurality of instrument terminals 10 serving as slave terminals are merely provided, and in each of the instrument terminal 10 serving as a slave terminal, the date/time measured by the clock section 111 may be corrected by the clock correction section 116 on the basis of the synchronization signal from the instrument terminal 10 serving as the master terminal. Furthermore, also in the automatic performance piano 30, the second performance data receiving section 312 may disregard the instrument ID included in the received synchronization signal and may receive performance data from the server device 20 on the basis of the time code.
In the case of the configuration according to the third embodiment, the instrument ID is set by the procedure shown in FIG. 14.
First, when the instrument terminal 10a sets the instrument ID “0001” thereof, the instrument terminal 10a generates an instrument ID “0002” by adding “1” to the instrument ID and transmits the generated instrument ID to the instrument terminal 10b. The instrument terminal 10b sets the instrument ID “0002” transmitted from the instrument terminal 10a as the instrument ID thereof, generates an instrument ID “0003” by adding “1” to the instrument ID and transmits the generated instrument ID to the instrument terminal 10c. The instrument terminal 10c generates the instrument ID “0003” transmitted from the instrument terminal 10b and sets the instrument ID as the instrument ID thereof. The instrument terminal 10c generates an instrument ID “0004” by adding “1” to the instrument ID and transmits the generated instrument ID to another instrument terminal 10 in which the instrument ID thereof is not yet set. In this way, in the transmitting-side system 1, the setting and transmission of instrument IDs are repeated depending on the number of the instrument terminals 10.
On the other hand, the instrument terminal 10a transmits the instrument ID “0001” thereof to the automatic performance piano 30a. When the automatic performance piano 30a sets the instrument ID “0001” thereof, the automatic performance piano 30a generates an instrument ID “0002” by adding “1” to the instrument ID and transmits the generated instrument ID to the automatic performance piano 30b. The automatic performance piano 30b sets the instrument ID “0002” transmitted from the automatic performance piano 30a as the instrument ID thereof, generates an instrument ID “0003” by adding “1” to the instrument ID and transmits the generated instrument ID to the automatic performance piano 30c. The automatic performance piano 30c sets the instrument ID “0003” transmitted from the automatic performance piano 30b as the instrument ID thereof. The automatic performance piano 30c generates an instrument ID “0004” by adding “1” to the instrument ID and transmits the generated instrument ID to another automatic performance piano 30 in which the instrument ID thereof is not yet set. In this way, also in the receiving-side system 3, the setting and transmission of instrument IDs are repeated depending on the number of the automatic performance pianos 30.
The instrument IDs can be automatically set by following the above-mentioned procedure, regardless of the number of the instrument terminals 10 and the number of the automatic performance pianos 30. Furthermore, also in this configuration, decrement may be done instead of increment, for example. Moreover, it may be possible that the instrument terminal 10a serving as the master terminal 10a generates beforehand a set of a plurality of instrument IDs that can be set, and that each instrument terminal 10 selects only one instrument ID from among this set and uses the instrument ID as the instrument ID thereof and transmits the rest of the instrument IDs as instrument IDs that can be set for the other instrument terminals 10 to another instrument terminal 10 in which the instrument ID thereof is not yet set. Similarly, it may be possible that when the automatic performance piano 30a receives, from the instrument terminal 10a, a set of a plurality of instrument IDs that can be set, each automatic performance piano 30 selects only one instrument ID from among this set and uses the instrument ID as the instrument ID thereof and transmits the rest of the instrument IDs as instrument IDs that can be set by the other automatic performance pianos 30 to another automatic performance piano 30 in which the instrument ID thereof is not yet set.
However, the instrument IDs may be set manually only for the instrument terminals 10 or the automatic performance pianos 30.
Still further, even in the configuration of the first embodiment, in the case that the audio signal transmission path has “3” or more channels, automatic performances can be realized by using the instrument terminals 10 and the automatic performance pianos 30 as many as the number. In this case, in the instrument terminals 10 as many as the number of the channels of the transmission path, the above-mentioned synchronization signal transmission section 114 is realized.
Modification Example 2
In the embodiments and the modification example described above, although the number of the instrument terminals 10 is the same as the number of the automatic performance pianos 30, the numbers may be different from each other.
For example, if the number of the automatic performance pianos 30 is less than the number of the instrument terminals 10, it may be possible that an automatic performance piano 30 stores the instrument IDs of a plurality of instruments, receives the performance data generated by the corresponding plurality of instrument terminals 10 from the server device 20, and reproduces MIDI messages on the basis of all the received performance data. Furthermore, if the number of the automatic performance pianos 30 is more than the number of the instrument terminals 10, it may be possible that the instrument ID of one instrument terminal 10 is allocated to a plurality of automatic performance pianos 30, whereby the plurality of automatic performance pianos 30 carry out automatic performances corresponding to the same instrument.
Modification Example 3
In the respective embodiments described above, upon receiving the synchronization signal, the automatic performance piano 30 transmits a performance data request message to the server device 20 and receives the performance data to be buffered in the data buffer 37. Instead of this configuration, the automatic performance piano 30 may have a configuration not having the data buffer 37. FIG. 15 is a block diagram showing a functional configuration of the performance system 100 according to this modification example. Among these functions, the same functions as those of the above-mentioned embodiments are designated by the same reference codes, and their descriptions are omitted. As shown in FIG. 15, in this modification example, the buffering section 313 is not realized in the automatic performance piano 30.
In the case that a highly reliable communication path is used for the connection between the automatic performance piano 30 and the server device 20, for example, in the case that the connection therebetween is made via a communication path capable of providing high-speed data communication, it is possible to specify accurately, to some extent, the total time of the communication delay between the automatic performance piano 30 and the server device 20 and the time required for the performance section 38 to output performance sound after performance information was supplied thereto. Hence, the control section 31 transmits a performance data request message to the server device 20 so as to receive the performance data including the information of the date/time before approximately the total time from the date/time measured by the clock section 311. Furthermore, upon receiving the performance data, the control section 31 stores the performance data in the RAM and reads and reproduces the MIDI message included in the performance data at the timing in synchronization with the video distributed by the video distribution server 40.
In this modification example, the storage section 24 of the server device 20 can have a function equivalent to that of the data buffer 37, whereby the configuration of the automatic performance piano 30 can be simplified.
Modification Example 4
In the above-mentioned respective embodiments, the control section 31 of the automatic performance piano 30 receives the synchronization signal through the communication section 36 in a predetermined cycle (herein, one second). In this case, if the control section 31 has not received the synchronization signal within a predetermined period (for example, one minute) longer than this reception cycle, the control section 31 continuously reproduces the MIDI message; however, if the synchronization signal has not been received beyond this predetermined period, the control section 31 may stop the reproduction of the MIDI message.
For example, if an accident has occurred in the video distribution server 40, a state continues in which the automatic performance piano 30 can receive the performance data but cannot receive the synchronization signal. At this time, since the automatic performance piano 30 can receive the performance data even after the accident has occurred, the automatic performance piano 30 can continue its automatic performance. For this reason, with the performance system 100, the user does not have an uncomfortable feeling that is caused due to sudden stop of the automatic performance. On the other hand, if the synchronization signal is not received for a certain time or more, the timing of the video distributed by the video distribution server 40 is significantly displaced from the timing of the automatic performance, whereby it is conceivable that an undesirable situation occurs. For this reason, if the control section 31 cannot receive the synchronization signal for a certain period and if the period extends beyond the period in which no problem occurs even if the synchronization signal is not received, the control section 31 stops the supply of the performance information to the performance section 38, thereby discontinuing the automatic performance.
In this modification example, the automatic performance piano 30 may resume the automatic performance when the reception of the synchronization signal is resumed.
Modification Example 5
The above-mentioned respective embodiments are based on the assumption that an automatic performance in synchronization with a live moving image taken from a live performance is realized; however, the present invention is also applicable to a performance system in which recorded video is used instead of the live moving image. In this case, the server device 20 accumulates performance data when the performance is recorded. When the automatic performance is realized, the server device 20 transmits the accumulated video signal and the synchronization signal to the video distribution server 40. Then, the video distribution server 40 distributes the video signal and the synchronization signal. Furthermore, the recording of these signals may be carried out using the HDD recorder 102. On the other hand, the receiving-side system 3 carries out an automatic performance on the basis of the respective signals received from the video distribution server 40 by following a procedure similar to those of the above-mentioned embodiments.
In the configuration of this modification example, the server device 20 may file and record the received performance data. The reason for this is that when one instrument terminal 10 carried out a plurality of performances, for example, there is a case in which performances desired to be carried out automatically are desired to be distinguished. Furthermore, in the server device 20, it is considered desirable that performance data is merged with respect to concert or music in the management of the performance data. In this filing, plural pieces of performance information may be merged and filed manually with respect to concert or music, but it is preferable that the filing can be realized without manual operation. In this case, the server device 20 is desired to perform the filing by following the procedure described below. In this configuration, it is assumed that the server device 20 has a dock section for measuring date/time.
While the instrument terminal 10 carries out a performance, the control section 21 of the server device 20 receives the performance data thereof through the first communication section 22 and stores the data in the RAM. When the performance at the instrument terminal 10 is ended with time, the performance data is not transmitted from the instrument terminal 10 to the server device 20. When the performance data is not transmitted from the instrument terminal 10, in the server device 20, the difference between the date/time measured by the clock section thereof and the date/time indicated by the date/time information of the performance data received last becomes larger gradually. Hence, when the difference between the date/time measured by the dock section thereof and the date/time indicated by the date/time information of the performance data received last becomes equal to or more than a threshold value (herein, 5 seconds), the control section 21 judges that the performance at the instrument terminal 10 specified by the instrument ID “0001” has been ended. In this case, the control section 21 files the performance data stored in the RAM and then carries out a process for storing the data in the storage section 24. More specifically, the control section 21 generates a performance file obtained by merging all the performance data including the instrument ID “0001” stored in the RAM among the performance data stored in the RAM into a single file. Furthermore, the control section 21 generates a performance file identifier for uniquely identifying the performance file and stores the performance file including the performance file identifier in the storage section 24. It may be said that the file identifier is an identifier to be allocated to a performance information group serving as a group of performance information classified with respect to concert or music, for example.
Moreover, it may be possible that the control section 21 obtains the instrument ID included in the performance data of the performance file, also obtains the performance starting date/time indicated by the earliest date/time information and the performance ending date/time indicated by the latest date/time information among the date/time values included in the performance data in the performance file, and then stores these while these are made to correspond to one another.
FIG. 16 is a view showing a structure of a performance table in which a group of an instrument ID, a performance starting date/time, a performance ending date/time and a performance file identifier is described. The storage section 24 stores this performance table. For example, in the case that the earliest date/time information included in the performance data in the performance file is “2010-12-28T19:00:00:00,” the date/time information included in the performance data transmitted from the instrument terminal 10 at the end of the performance is “2010-12-28T19:31:23:05,” the instrument ID is “0001” and “F0001” is generated as a file identifier, these pieces of information are stored in the same line of the performance table as shown in FIG. 16. When the user turns on the instrument terminal 10 and then carries out a performance using the instrument terminal 10, the performance file including the MIDI message representing the performance carried out by the user is stored in the server device 20 as described above, without any need for the user to carry out button operation for starting and ending the recording of the performance. The above-mentioned operation is carried out each time the user carries out a performance, and in the server device 20, a performance file is stored for each performance carried out by the user.
In addition, in this modification example, it is desirable that the automatic performance piano 30 should specify the performance data to be received from the server device 20 by using the file identifier. Hence, the instrument terminal 10 generates a synchronization signal by using the file identifier instead of the instrument ID or by using the file identifier together with the instrument ID and then transmits the synchronization signal. On the other hand, it is desirable that the automatic performance piano 30 should receive only the performance data including the file identifier indicated by the synchronization signal and should not receive the performance data not including the file identifier indicated by the synchronization signal.
In a mode in which recorded video is distributed as in this modification example, even in the case that video skipping, fast-forwarding or rewinding is carried out and the reproduction position of a moving image is altered, the signal to be distributed from the video distribution server 40 is adapted so as to correspond to the altered reproduction position, whereby the automatic performance piano 30 can realize an automatic performance in synchronization with the moving image.
Modification Example 6
Although the audio signal and the synchronization signal are transmitted through the separate channels of the audio signal transmission path in the above-mentioned second and third embodiments, it may be possible that the synchronization signal is superimposed on (synthesized with) the audio signal by using the so-called watermarking technology and then transmitted.
FIG. 17 is a block diagram showing a functional configuration of the performance system 100 according to this modification example. Among these functions, the same functions as those of the above-mentioned embodiments are designated by the same reference codes, and their descriptions are omitted. As shown in FIG. 17, in this modification example, a synthesizing section 105 is provided on the side of the transmitting-side system 1 but it is provided outside the instrument terminal 10. Furthermore, a separation section 302 is provided on the receiving-side system 3 but it is provided outside the automatic performance piano 30.
The synthesizing section 105, for example, phase-modulates a carrier signal representing a carrier for carrying an audio signal on the basis of watermark information, thereby superimposing (synthesizing) the watermark information in a band higher than the frequency components of the audio signal. Furthermore, it may be possible that the synthesizing section 105 synthesizes the watermark information with the audio signal by carrying out the so-called OFDM (Orthogonal Frequency-Division Multiplexing) modulation. The separation section 302 separates the audio signal from the synchronization signal by using a method corresponding to the method for synthesizing the synchronization signal in the synthesizing section 105. Furthermore, the synthesizing and separation may be carried out by using the following procedure.
FIG. 18 is a view showing a circuit configuration of the synthesizing section 105 for synthesizing the synchronization signal S with the audio signal A. In the following description, the signal obtained by inverting the phase of the audio signal A is represented by “audio signal—A” and the signal obtained by inverting the phase of the synchronization signal S is represented by “synchronization signal −S.”
The synthesizing section 105 has input terminals c1 and c2. The input terminal c1 is a terminal to which the audio signal A is input. The input terminal c2 is a terminal to which the synchronization signal S is input. An inversion section c3 inverts the phase of a signal input thereto and outputs the inverted signal. The inversion section c3 herein inverts the phase of the synchronization signal S input to the input terminal c2 and outputs the synchronization signal −S. Each of addition sections c4 and c5 is used to add signals input thereto and to output the obtained signal. The addition section c4 adds the audio signal A input to the input terminal c1 to the synchronization signal −S output from the inversion section c3 and outputs the result of the addition as a first difference signal md (=A−S) to an output terminal c6. In other words, the inversion section c3 and the addition section c4 are used to generate a difference signal representing the difference between the audio signal and the synchronization signal. The addition section c5 adds the audio signal A input to the input terminal c1 to the synchronization signal S input to the input terminal c2 and outputs the result of the addition as a first sum signal ms (=A+S) to an output terminal c7. The addition section c5 generates a sum signal representing the sum of the audio signal and the synchronization signal.
The output terminal c6 corresponds to one channel (herein, the L channel) and outputs the first difference signal md. The output terminal c7 corresponds to the other channel (herein, the R channel) and outputs the first sum signal ms. The PC 104 transmits the two-channel signals encoded as described above to the video distribution server 40 via the audio signal transmission path.
FIG. 19 is a view showing a circuit configuration of the separation section 302 for separating the synchronization signal S from the audio signal A. In the following description, the signal obtained by inverting the phase of the first difference signal md is represented by “first difference signal −md” and the signal obtained by inverting the phase of the first sum signal ms is represented by “first sum signal −ms.” Furthermore, each of the integers ahead of the signals “A” and “S” means that each of the amplitudes of the signals “A” and “S” is multiplied by the integer.
An input terminal c11 corresponds to the L channel and is a terminal to which the first difference signal md (=A−S) is input. An input terminal c12 corresponds to the R channel and is a terminal to which the first sum signal ms (=A+S) is input. An inversion section c13 inverts the phase of a signal input thereto and outputs the inverted signal. The inversion section c13 herein inverts the phase of the first difference signal md input to the input terminal c11 and outputs the inverted signal. In other words, when the first difference signal md (=A−S) is input, the inversion section c13 outputs a first difference signal −md (=−A+S), that is, the opposite-phase signal thereof. Each of addition sections c14 and c15 is used to add signals input thereto and to output the obtained signal. The addition section c14 adds the first difference signal −md (=−A+S) output from the inversion section c13 to the first sum signal ms=A+S input to the input terminal c12 and outputs the result of the addition as a second difference signal dd (=2S) to an output terminal c16. In other words, the inversion section c13 and the addition section c14 are used to generate a difference signal representing the difference obtained when the first difference signal is subtracted from the first sum signal. The addition section c15 adds the first difference signal md (=A−S) input to the input terminal c11 to the first sum signal ms (=A+S) input to the input terminal c12 and outputs the result of the addition as a second sum signal ds (=2A) to an output terminal c17. In other words, the addition section c15 is used to generate a sum signal representing the sum of the first difference signal and the first sum signal.
The output terminal c16, for example, corresponds to the left channel and outputs the second difference signal dd as the synchronization signal. The output terminal c17, for example, corresponds to the right channel and outputs the second sum signal ds as the audio signal. The PC 301 outputs audio corresponding to the audio signal A separated as described above and transmits the synchronization signal S to the automatic performance piano 30.
In the case that the amplitudes of the second difference signal dd and the second sum signal ds are changed to the original amplitudes (in other words, 1⁄2), the signals are decoded to the audio signal A and the synchronization signal S, i.e., the original information before the encoding, thereby capable representing the contents thereof.
With this configuration, even in the case that the audio signal transmission path passing through the video distribution server 40 has two channels, a stereo audio signal can be transmitted from the transmitting-side system 1 to the receiving-side system 3. Furthermore, even in the case that at least a part of the frequency components of the synchronization signal S is included in the same band as that of the frequency components of the audio signal A, encoding and decoding can be made by the addition and subtraction of both the signals, whereby the quality of the musical sound signal can be suppressed from deteriorating.
In the case that the above-mentioned synthesis of the watermark information is carried out, it is preferable that in the performance system 100, the PCM (Pulse Code Modulation) system, for example, should be adopted, and that the respective signals should be transmitted while the sampling frequency thereof is raised. In addition, in the above-mentioned second and third embodiments, in the case that a stereo audio signal is desired to be transmitted, an audio signal transmission path with three or more channels may be provided in the communication path passing through the video distribution server 40. In the configuration of the first embodiment, the numbers of the instrument terminals 10 and the automatic performance pianos 30 may be made smaller than the number of the channels at least by “2” so that an audio signal transmission path with two channels can be obtained securely.
Modification Example 7
Although the PC 104 and the PC 301 are used to transmit and receive the synchronization signal in the above-mentioned respective embodiments, the instrument terminal 10, instead of the PC 104, may be connected to the communication network 90 and may transmit the synchronization signal. Furthermore, the automatic performance piano 30, instead of the PC 301, may be connected to the communication network 90 and may transmit the synchronization signal.
Moreover, the server device 20 and the instrument terminal 10 may be provided at the same place, and these may be connected via a communication path, such as a LAN (Local Area Network), instead of being connected via the communication network 90.
What's more, although both the communication path for the synchronization signal and the video signal and the communication path for the performance data include the communication network 90, the communication paths may be configured so as to pass through communication networks being independent of each other.
Besides, the video distribution server 40 is not limited to a device that can be used by an unspecified large number of users but may be provided exclusively for the performance system 100.
In addition, the HDD recorder 102 has the delay device 103. Instead of this configuration, it may be possible that the HDD recorder 102 does not have the delay device 103 and that the delay process function of the video distribution server 40 is used to delay the distribution timing of the video signal, the audio signal and the synchronization signal.
Modification Example 8
In the above-mentioned embodiments, the clock section 311 may measure the time elapsed from the start time of an automatic performance, for example. Even in this case, the clock correction section 315 corrects the date/time measured by the clock section 311 depending on the date/time indicated by the time code, whereby synchronized reproduction equivalent to that in the embodiments can be realized.
In addition, the instrument terminal 10 may transmit only the time information, instead of the date/time information including the date information and the time information, while the time information is included in the performance data, or the time thereof may be included in the time code. In this case, a configuration is obtained in which the “date/time information” in the above-mentioned embodiments is replaced with “time information”; however, in the case that a live performance is used for an automatic performance, the automatic performance can be realized, provided that only the time of performance operation is known on the side of the receiving-side system 3, even if the data cannot be specified.
Furthermore, although the synchronization signal is used to indicate an instrument ID and date/time information indicating the date/time when a performance was carried out in the above-mentioned embodiments, the synchronization signal may indicate information other than these. For example, as shown in FIG. 20, the synchronization signal may indicate an instrument ID, performance start time, that is, the time when a performance was carried out at the instrument terminal 10, and a time code indicating the time elapsed from the performance start time (that is, relative time). The performance start time represents “19 o'clock 00 minutes 00 seconds 00 on Dec. 28, 2010” in the case of the embodiments. Moreover, the time code is described as follows when the example shown in FIG. 5 is used. The time code represents “0 hours 0 minutes 00 seconds 00” in the performance data corresponding to the first line, represents “0 hours 0 minutes 02 seconds 24” in the performance data corresponding to the second line, and represents “0 hours 0 minutes 03 seconds 59” in the performance data corresponding to the third line.
The performance start time is included in all the synchronization signals to be transmitted from the instrument terminal 10; however, in the case that the automatic performance piano 30 can specify the performance start time, for example, in the case that the performance to be reproduced by the automatic performance piano 30 is unchanged, the performance start time may be included only in the first synchronization signal to be transmitted from the instrument terminal 10. In this case, during the performance at the instrument terminal 10, the automatic performance piano 30 specifies the performance start time on the basis of the performance start time indicated by the synchronization signal received at first.
In the case that the reproduction timing of the MIDI message is adjusted so that the time indicated by the time information of the performance data is interlocked with the time indicated by the received synchronization signal as described above, the automatic performance piano 30 can realize an automatic performance.
Modification Example 9
Furthermore, an automatic performance may be carried out at the automatic performance piano 30 such that the pitch thereof is made coincident with that of the instrument terminal 10. The method for this is also disclosed in Japanese Patent No. 3867579.
More specifically, the instrument terminal 10 detects the reference pitch thereof and transmits a signal indicating this reference pitch to the automatic performance piano 30 by using the same method as that used for transmitting the synchronization signal, for example. The reference pitch is a frequency obtained when a sound with a certain musical pitch is output from the performance section 18, and this frequency represents a pitch that is used as the reference in the performance system 100. However, the method for transmitting the signal indicating the reference pitch is not specified particularly.
Upon obtaining the reference pitch, the automatic performance piano 30 detects the reference pitch of the performance section 38 thereof and obtains the difference between the musical pitches. Furthermore, during an automatic performance, the automatic performance piano 30 reads the performance data from the data buffer 37 at a reading speed corresponding to the difference between the musical pitches and reproduces the performance data so that the frequency of the sound with the musical pitch becomes dose to (preferably coincident with) the reference pitch.
With the configuration of the modification example, the reference pitch of the instrument terminal 10 can be made dose to that of the automatic performance piano 30, and the influence due to the individual difference, etc. in the automatic performance piano 30, can be suppressed, whereby an automatic performance can be expected to be realized at musical pitches closer to those in a live performance.
Modification Example 10
In the above-mentioned performance system 100, it may be possible to charge money for a part or all of the service. For example, it is assumed that the server device 20 carries out this charging process and that the automatic performance piano 30 to which the performance data is transmitted is registered beforehand. Furthermore, the server device 20 checks the automatic performance piano 30 for authentication before the start of an automatic performance and permits the transmission of the performance data if the authentication is successful. Moreover, when it is desired to restrict the users who are permitted to use the service relating to the automatic performance, it may be possible that the automatic performance piano 30 to which the performance data is to be transmitted is registered beforehand by the server device 20, and that the server device 20 checks the automatic performance piano 30 for authentication before the start of the automatic performance and permits the automatic performance if the authentication is successful.
Modification Example 11
In the above-mentioned embodiments, the case in which the performance information output device according to the present invention is the instrument terminal 10, more particularly, an electronic piano, has been described; however, the device may be an automatic performance piano capable of outputting, for example, a MIDI message as the performance information corresponding to performance operation. In this case, automatic performance pianos of the same type can be used as the instrument terminal 10 and the automatic performance piano 30. Furthermore, the performance information output device according to the present invention may be an instrument terminal other than a piano, for example, a keyboard instrument, such as an Electone (registered trade name) or an organ, or a wind instrument, such as a flute or a clarinet, or a percussion instrument, such as a drum. Hence, the automatic performance device according to the present invention is not limited to an automatic performance piano, but may be a device capable of carrying out an automatic performance on the basis of a MIDI message.
Moreover, the performance information output device and the automatic performance device according to the present invention may be, for example, an information terminal, such as a smart phone, a slate terminal or a smart book, in which an application program for instrument performances has been installed, or a mobile music player, or a device having no manual performance function.
The performance information according to the present invention is not limited to that conforming to the MIDI format, but may be information representing the contents of a performance at the instrument terminal 10 and capable of being used for an automatic performance.
Modification Example 12
Programs to be executed by the control section 11 of the instrument terminal 10, the control section 21 of the server device 20 and the control section 31 of the automatic performance piano 30 according to the respective embodiments described above can be provided in a state of being recorded on computer-readable recording media, such as magnetic recording media (magnetic tape, magnetic discs (HDD and FD), etc.), optical recording media (optical discs (CD and DVD), etc.), magneto-optical recording media, and semiconductor memory. In addition, the programs can be downloaded via a network, such as the Internet. Furthermore, the functions to be realized by the respective devices of the performance system 100 may be realized by a single or a plurality of software products or may be realized by a single or a plurality of hardware products.

## Claims

1. A performance system comprising:
a plurality of performance information output devices that output performance information;
a storage device; and
a plurality of automatic performance devices that reproduce the performance information in synchronization with a video distributed by a video distribution server for distributing the video and an audio,
wherein the performance information output device includes:
a first identifier storing unit that stores any one of identifiers allocated to the plurality of performance information output devices so as to be different from one another;
a performance information generating unit that generates performance information;
a clocking unit that measures time; and
a first performance data transmitting unit that transmits performance data having the combination of the identifier stored in the first identifier storing unit, time information indicating the time measured by the clocking unit, and the performance information to the storage device without passing through the video distribution server each time the performance information is generated by the performance information generating unit;
wherein at least one of the plurality of performance information output devices includes a synchronization signal transmitting unit that transmits a synchronization signal indicating the time being measured by the docking unit to the video distribution server using an audio signal transmission path for the audio;
wherein the storage device includes:
a first performance data receiving unit that receives the performance data transmitted through the first performance data transmitting unit;
a performance data storing unit that stores the performance data received by the performance data receiving unit, and a second performance data transmitting unit that transmits the performance data stored in the performance data storing unit to any one of the plurality of automatic performance devices without passing through the video distribution server in parallel with the storing of the performance data received by the performance data storing unit; and wherein the automatic performance device includes:
a second identifier storing unit that stores any one of the identifiers stored in the first identifier storing unit and allocated to the plurality of automatic performance devices so as to be different from one another;
a second performance data receiving unit that receives the performance data transmitted through the second performance data transmitting unit;
a synchronization signal receiving unit that receives the synchronization signal transmitted through the synchronization signal transmitting unit from the video distribution server using the audio signal transmission path; and
a reproducing unit that reproduces the performance information of the performance data in synchronization with the video distributed at the time when the synchronization signal is distributed, at the timing corresponding to the time indicated by the time information of the performance data including the identifier received by the second performance data receiving unit and stored in the second identifier storing unit and the time indicated by the synchronization signal received by the synchronization signal receiving unit.

2. The performance system according to claim 1, wherein the plurality of performance information output devices include a first performance information output device and a second performance information output device other than the first performance information output device;
wherein the first performance information output device includes the synchronization signal transmitting unit, and the synchronization signal transmitting unit transmits the common synchronization signals to the video distribution server and the second performance information output device;
wherein the second performance information output device includes a dock correcting unit that receives the synchronization signal transmitted through the synchronization signal transmitting unit and corrects the time of the dock unit of the second performance information output device on the basis of the time indicated by the received synchronization signal so that the times measured by the dock units of the plurality of performance information output devices become coincident; and
wherein the synchronization signal receiving units of the plurality of automatic performance devices receive the common synchronization signals transmitted through the synchronization signal transmitting unit.

3. The performance system according to claim 2, wherein the automatic performance device includes:
a second identifier setting unit that sets an identifier to be allocated to the automatic performance device itself and stores the identifier in the second identifier storing unit; and
a second identifier transmitting unit that transmits the identifier set by the second identifier setting unit or an identifier which can be set in the automatic performance device other than the automatic performance device itself to any one of the automatic performance devices in which the identifier thereof is not yet set by the second identifier setting unit; and
wherein in a case that the identifier transmitted by the second identifier transmitting unit other than that of the automatic performance device itself is received, the second identifier setting unit sets an identifier to be allocated to the automatic performance device itself on the basis of the received identifier.

4. The performance system according to claim 3, wherein each of the first and second performance information output devices includes:
a first identifier storing unit that sets an identifier to be allocated to the automatic performance device itself and stores the identifier in the first identifier storing unit; and
a first identifier transmitting unit that transmits the identifier set by the first identifier setting unit or an identifier which can be set in the automatic performance device other than the automatic performance device itself to any one of the automatic performance devices in which the identifier thereof is not yet set by the first identifier setting unit; and
wherein in a case that the identifier transmitted by the first identifier transmitting unit other than that of the automatic performance device itself is received, the first identifier setting unit sets an identifier to be allocated to the automatic performance device itself on the basis of the received identifier.