WO2022208627A1 - 歌唱音出力システムおよび方法 - Google Patents

歌唱音出力システムおよび方法 Download PDF

Info

Publication number
WO2022208627A1
WO2022208627A1 PCT/JP2021/013379 JP2021013379W WO2022208627A1 WO 2022208627 A1 WO2022208627 A1 WO 2022208627A1 JP 2021013379 W JP2021013379 W JP 2021013379W WO 2022208627 A1 WO2022208627 A1 WO 2022208627A1
Authority
WO
WIPO (PCT)
Prior art keywords
sound
singing
information
syllable
data
Prior art date
Application number
PCT/JP2021/013379
Other languages
English (en)
French (fr)
Inventor
達也 入山
Original Assignee
ヤマハ株式会社
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by ヤマハ株式会社 filed Critical ヤマハ株式会社
Priority to PCT/JP2021/013379 priority Critical patent/WO2022208627A1/ja
Priority to JP2023509935A priority patent/JPWO2022208627A1/ja
Priority to CN202180096124.2A priority patent/CN117043846A/zh
Publication of WO2022208627A1 publication Critical patent/WO2022208627A1/ja
Priority to US18/475,309 priority patent/US20240021183A1/en

Links

Images

Classifications

    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10HELECTROPHONIC MUSICAL INSTRUMENTS; INSTRUMENTS IN WHICH THE TONES ARE GENERATED BY ELECTROMECHANICAL MEANS OR ELECTRONIC GENERATORS, OR IN WHICH THE TONES ARE SYNTHESISED FROM A DATA STORE
    • G10H1/00Details of electrophonic musical instruments
    • G10H1/36Accompaniment arrangements
    • G10H1/361Recording/reproducing of accompaniment for use with an external source, e.g. karaoke systems
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10HELECTROPHONIC MUSICAL INSTRUMENTS; INSTRUMENTS IN WHICH THE TONES ARE GENERATED BY ELECTROMECHANICAL MEANS OR ELECTRONIC GENERATORS, OR IN WHICH THE TONES ARE SYNTHESISED FROM A DATA STORE
    • G10H1/00Details of electrophonic musical instruments
    • G10H1/36Accompaniment arrangements
    • G10H1/361Recording/reproducing of accompaniment for use with an external source, e.g. karaoke systems
    • G10H1/366Recording/reproducing of accompaniment for use with an external source, e.g. karaoke systems with means for modifying or correcting the external signal, e.g. pitch correction, reverberation, changing a singer's voice
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10GREPRESENTATION OF MUSIC; RECORDING MUSIC IN NOTATION FORM; ACCESSORIES FOR MUSIC OR MUSICAL INSTRUMENTS NOT OTHERWISE PROVIDED FOR, e.g. SUPPORTS
    • G10G1/00Means for the representation of music
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10HELECTROPHONIC MUSICAL INSTRUMENTS; INSTRUMENTS IN WHICH THE TONES ARE GENERATED BY ELECTROMECHANICAL MEANS OR ELECTRONIC GENERATORS, OR IN WHICH THE TONES ARE SYNTHESISED FROM A DATA STORE
    • G10H1/00Details of electrophonic musical instruments
    • G10H1/0033Recording/reproducing or transmission of music for electrophonic musical instruments
    • G10H1/0041Recording/reproducing or transmission of music for electrophonic musical instruments in coded form
    • G10H1/0058Transmission between separate instruments or between individual components of a musical system
    • G10H1/0066Transmission between separate instruments or between individual components of a musical system using a MIDI interface
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10HELECTROPHONIC MUSICAL INSTRUMENTS; INSTRUMENTS IN WHICH THE TONES ARE GENERATED BY ELECTROMECHANICAL MEANS OR ELECTRONIC GENERATORS, OR IN WHICH THE TONES ARE SYNTHESISED FROM A DATA STORE
    • G10H2220/00Input/output interfacing specifically adapted for electrophonic musical tools or instruments
    • G10H2220/005Non-interactive screen display of musical or status data
    • G10H2220/011Lyrics displays, e.g. for karaoke applications
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10HELECTROPHONIC MUSICAL INSTRUMENTS; INSTRUMENTS IN WHICH THE TONES ARE GENERATED BY ELECTROMECHANICAL MEANS OR ELECTRONIC GENERATORS, OR IN WHICH THE TONES ARE SYNTHESISED FROM A DATA STORE
    • G10H2240/00Data organisation or data communication aspects, specifically adapted for electrophonic musical tools or instruments
    • G10H2240/325Synchronizing two or more audio tracks or files according to musical features or musical timings
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10HELECTROPHONIC MUSICAL INSTRUMENTS; INSTRUMENTS IN WHICH THE TONES ARE GENERATED BY ELECTROMECHANICAL MEANS OR ELECTRONIC GENERATORS, OR IN WHICH THE TONES ARE SYNTHESISED FROM A DATA STORE
    • G10H2250/00Aspects of algorithms or signal processing methods without intrinsic musical character, yet specifically adapted for or used in electrophonic musical processing
    • G10H2250/315Sound category-dependent sound synthesis processes [Gensound] for musical use; Sound category-specific synthesis-controlling parameters or control means therefor
    • G10H2250/455Gensound singing voices, i.e. generation of human voices for musical applications, vocal singing sounds or intelligible words at a desired pitch or with desired vocal effects, e.g. by phoneme synthesis
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L13/00Speech synthesis; Text to speech systems
    • G10L13/02Methods for producing synthetic speech; Speech synthesisers
    • G10L13/04Details of speech synthesis systems, e.g. synthesiser structure or memory management

Definitions

  • the present invention relates to a singing sound output system and method for outputting singing sounds.
  • a technique for generating singing sounds in response to performance operations is known.
  • the singing sound synthesizer disclosed in Patent Document 1 automatically advances lyrics one character or one syllable in accordance with real-time performance to generate singing sounds.
  • Patent Document 1 does not disclose outputting singing sounds in real time together with accompaniment. If a singing sound is output in real time together with an accompaniment, it is difficult to generate the singing sound exactly at the desired timing. For example, even if the performance operation is started at the desired timing, the actual start of singing is delayed because it takes a long time to synthesize and pronounce the singing sound. Therefore, there is room for improvement in terms of outputting the singing sound at the intended timing in accordance with the accompaniment.
  • One object of the present invention is to provide a singing sound output system and method capable of outputting singing sounds at the timing of inputting sound information in synchronization with accompaniment.
  • a teaching unit that indicates to the user the progression position in singing data that is temporally associated with accompaniment data and includes a plurality of syllables, and at least one piece of sound information input by a performance.
  • a singing sound output system comprising: an output unit for synchronizing and outputting accompaniment sounds based on accompaniment data.
  • the singing sound can be output in synchronization with the accompaniment at the timing when the sound information is input.
  • FIG. 1 is a block diagram of a singing sound output system
  • FIG. 1 is a diagram showing the overall configuration of a singing sound output system according to the first embodiment of the present invention.
  • This singing sound output system 1000 includes a PC (personal computer) 101 , a cloud server 102 and a sound output device 103 .
  • PC 101 and sound output device 103 are communicably connected to cloud server 102 via communication network 104 such as the Internet.
  • a keyboard 105, a wind instrument 106, and a drum 107 exist as items and devices for inputting sounds in the environment where the PC 101 is used.
  • the keyboard 105 and drums 107 are electronic musical instruments used to input MIDI (Musical Instrument Digital Interface) signals.
  • the wind instrument 106 is an acoustic instrument used for inputting monophonic analog sounds. Keyboard 105 and wind instrument 106 can also input pitch information. Note that the wind instrument 106 may be an electronic instrument, and the keyboard 105 and drum 107 may be acoustic instruments.
  • These musical instruments are examples of devices for inputting sound information, and are played by the user on the PC 101 side.
  • the utterance of the user on the PC 101 side may also be used as means for inputting analog sound, in which case the human voice is input as analog sound. Therefore, the concept of "performance" for inputting sound information in the present embodiment also includes the input of real voice.
  • the device for inputting sound information does not have to be in the form of a musical instrument.
  • the user on the PC 101 side plays the musical instrument while listening to the accompaniment.
  • PC 101 transmits singing data 51 , timing information 52 and accompaniment data 53 (all of which will be described later with reference to FIG. 3 ) to cloud server 102 .
  • the cloud server 102 synthesizes the singing sound based on the sound produced by the performance of the user on the PC 101 side.
  • Cloud server 102 transmits the singing sound, timing information 52 and accompaniment data 53 to sound output device 103 .
  • the sound output device 103 is a device having a speaker function.
  • the sound output device 103 outputs the received singing sound and accompaniment data 53 .
  • the sound output device 103 outputs the singing sound and the accompaniment data 53 in synchronization with each other based on the timing information 52 .
  • the form of "output" here is not limited to reproduction, but includes transmission to an external device and recording to a recording medium.
  • FIG. 2 is a block diagram of the singing sound output system 1000.
  • the PC 101 has a CPU 11 , a ROM 12 , a RAM 13 , a storage section 14 , a timer 15 , an operation section 16 , a display section 17 , a sound generation section 18 , an input section 8 and various I/Fs (interfaces) 19 . These components are connected together by a bus 10 .
  • the CPU 11 controls the PC 101 as a whole.
  • the ROM 12 stores programs executed by the CPU 11 as well as various data.
  • the RAM 13 provides a work area when the CPU 11 executes programs.
  • the RAM 13 temporarily stores various information.
  • Storage unit 14 includes a non-volatile memory.
  • a timer 15 measures time. Note that the timer 15 may be of a counter type.
  • the operation unit 16 includes a plurality of operators for inputting various kinds of information, and receives instructions from the user.
  • the display unit 17 displays various information.
  • the sound generator 18 includes a tone generator circuit, an effect circuit and a sound system.
  • the input unit 8 includes an interface for acquiring sound information from electronic sound information input devices such as the keyboard 105 and drums 107 .
  • the input unit 8 also includes a device such as a microphone for acquiring sound information from a device for inputting acoustic sound information such as the wind instrument 106 .
  • Various I/Fs 19 are connected to the communication network 104 (FIG. 1) wirelessly or by wire.
  • the cloud server 102 has a CPU 21, a ROM 22, a RAM 23, a storage section 24, a timer 25, an operation section 26, a display section 27, a sound generation section 28, and various I/Fs 29. These components are connected to each other by bus 20 . The configurations of these components are the same as those indicated by reference numerals 11 to 17 and 19 in the PC 101. FIG.
  • the sound output device 103 has a CPU 31, a ROM 32, a RAM 33, a storage section 34, a timer 35, an operation section 36, a display section 37, a sound generation section 38, and various I/Fs 39. These components are connected together by a bus 30 . The configurations of these components are the same as those indicated by reference numerals 11 to 19 in the PC 101. FIG.
  • FIG. 3 is a functional block diagram of the singing sound output system 1000.
  • the singing sound output system 1000 has functional blocks 110 .
  • the functional block 110 includes a teaching section 41, an acquiring section 42, a syllable specifying section 43, a timing specifying section 44, a synthesizing section 45, an output section 46, and a phrase generating section 47 as individual functional sections.
  • the functions of the teaching unit 41 and the acquiring unit 42 are implemented by the PC 101 as an example.
  • Each of these functions is implemented in software by a program stored in the ROM 12 .
  • each function is provided by the CPU 11 developing necessary programs in the RAM 13 and executing them, and controlling various calculations and hardware resources.
  • these functions are realized mainly by the cooperation of the CPU 11, ROM 12, RAM 13, timer 15, display section 17, sound generation section 18, input section 8 and various I/Fs 19.
  • the programs executed here include sequence software.
  • the functions of the syllable identification unit 43, the timing identification unit 44, the synthesis unit 45, and the phrase generation unit 47 are realized by the cloud server 102. Each of these functions is implemented in software by a program stored in the ROM 22 . These functions are realized mainly by the cooperation of the CPU 21, ROM 22, RAM 23, timer 25 and various I/Fs 29.
  • the function of the output unit 46 is realized by the sound output device 103 .
  • the functions of the output unit 46 are implemented in software by a program stored in the ROM 32 . These functions are realized mainly by the cooperation of the CPU 31, ROM 32, RAM 33, timer 35, sound generator 38 and various I/Fs 39. FIG.
  • the singing sound output system 1000 refers to singing data 51, timing information 52, accompaniment data 53 and phrase database 54.
  • the phrase database 54 is pre-stored in the ROM 12, for example. Note that the phrase generator 47 and the phrase database 54 are not essential in this embodiment. These will be described in a third embodiment, which will be described later.
  • the singing data 51, the timing information 52, and the accompaniment data 53 are associated with each other and stored in the ROM 12 in advance.
  • the accompaniment data 53 is information for reproducing the accompaniment of each piece of music recorded as sequence data.
  • the singing data 51 includes a plurality of syllables.
  • the singing data 51 includes lyric text data and a phoneme information database.
  • the lyric text data is data describing lyrics, and the lyrics of each song are described in units of syllables.
  • the accompaniment positions of the accompaniment data 53 and the syllables of the singing data 51 are temporally associated by the timing information 52 .
  • the teaching unit 41 indicates (teach) the progress position in the singing data 51 to the user.
  • the acquisition unit 42 acquires at least one piece of sound information N (see FIG. 4) input by a performance.
  • the syllable identification unit 43 identifies syllables corresponding to the acquired sound information N from a plurality of syllables in the singing data 51 .
  • the timing specifying unit 44 associates the sound information N with the difference ⁇ T (see FIG. 4) as relative information indicating relative timing with respect to the specified syllable.
  • the synthesizing unit 45 synthesizes singing sounds based on the identified syllables.
  • the output unit 46 synchronizes and outputs the synthesized singing sound and the accompaniment sound based on the accompaniment data 53 based on the relative information.
  • FIG. 4 is a timing chart of the process of outputting singing sounds through performance.
  • the syllable corresponding to the progression position in the singing data 51 is displayed to the user on the PC 101, as shown in FIG.
  • syllables are displayed in order like ⁇ sa'', ⁇ ku'', and ⁇ ra''.
  • the sounding start timing t (t1 to t3) is defined by the temporal correspondence with the accompaniment data 53, and is the sounding start timing of the original syllable defined in the singing data 51.
  • time t1 indicates the pronunciation start position of the syllable “sa” on the singing data 51 .
  • the accompaniment based on the accompaniment data 53 also progresses in parallel with the syllable progress instruction.
  • the user plays along with the progression of the indicated syllables.
  • a MIDI signal is input by playing the keyboard 105 capable of inputting pitch information.
  • the user who is the performer, sequentially presses the keys corresponding to the syllables in time with the start timings of the syllables "sa", "ku", and "ra”.
  • sound information N (N1 to N3) is obtained sequentially.
  • the sound generation length of each sound information N is the time from the input start timing s (s1 to s3) to the input end timing e (e1 to e3).
  • the input start timing s corresponds to note-on, and the input end timing e corresponds to note-off.
  • the sound information N includes pitch information and velocity.
  • the user may deliberately shift the actual input start timing s with respect to the pronunciation start timing t.
  • the lag time of the input start timing s with respect to the pronunciation start timing t is calculated as a temporal difference ⁇ T ( ⁇ T1 to T3) (relative information).
  • the difference ⁇ T is calculated for each syllable and associated with each syllable.
  • the cloud server 102 synthesizes a singing sound based on the sound information N and sends it to the sound output device 103 together with the accompaniment data 53 .
  • the sound output device 103 synchronizes and outputs the singing sound and the accompaniment sound based on the accompaniment data 53 . At this time, the sound output device 103 outputs the accompaniment sound at the set constant tempo. As for the singing sound, the sound output device 103 outputs while matching each syllable with the accompaniment position based on the timing information 52 . Processing time is required from the input of the sound information N to the output of the singing sound. Therefore, the sound output device 103 uses delay processing to delay the output of the accompaniment sound in order to match each syllable with the accompaniment position.
  • the sound output device 103 adjusts the output timing by referring to the difference ⁇ T corresponding to each syllable.
  • the singing sound is started to be output according to the input timing (at the input start timing s).
  • the output (pronunciation) of the syllable “ku” is started at a timing earlier than the pronunciation start timing t2 by the difference ⁇ T2.
  • the output (pronunciation) of the syllable "ra” is started at a timing later than the pronunciation start timing t3 by the difference ⁇ T3.
  • the pronunciation of each syllable ends (silenced) at the time corresponding to the input end timing e. Therefore, accompaniment sounds are output at a fixed tempo, and singing sounds are output at timings corresponding to performance timings. Therefore, the singing sound can be output at the timing when the sound information N is input in synchronization with the accompaniment.
  • FIG. 5 is a flow chart showing system processing for outputting singing sounds by a performance performed by the singing sound output system 1000.
  • PC processing executed by the PC 101 PC processing executed by the PC 101
  • cloud server processing executed by the cloud server 102 and sound output device processing executed by the sound output device 103 are executed in parallel.
  • the PC processing is realized by the CPU 11 developing a program stored in the ROM 12 in the RAM 13 and executing the program.
  • the cloud server processing is realized by the CPU 21 expanding the program stored in the ROM 22 into the RAM 23 and executing the program.
  • the sound output device processing is realized by the CPU 31 developing a program stored in the ROM 32 in the RAM 33 and executing the program. Each of these processes is started when the PC 101 is instructed to start the system process.
  • step S101 the CPU 11 of the PC 101 selects a song to be played this time (hereinafter referred to as a selected song) from among a plurality of prepared songs based on an instruction from the user.
  • the performance tempo of a song is determined in advance by default for each song.
  • the CPU 11 may change the tempo to be set based on instructions from the user when the piece of music to be played is selected.
  • step S102 the CPU 11 transmits related data (singing data 51, timing information 52, accompaniment data 53) corresponding to the selected song to the cloud server 102 through various I/Fs 19.
  • the CPU 11 starts teaching the advancing position.
  • the CPU 11 transmits to the cloud server 102 a notification that teaching of the advancing position has started.
  • the teaching process here is realized by executing sequence software as an example.
  • the CPU 11 (teaching unit 41) uses the timing information 52 to teach the current advancing position.
  • the display unit 17 displays lyrics corresponding to the syllables in the singing data 51 .
  • the CPU 11 tells the progression position on the displayed lyrics.
  • the teaching unit 41 indicates the progression position by changing the display mode such as the color of the lyrics at the current position, or by moving the cursor position or the position of the lyrics themselves.
  • the CPU 11 indicates the progress position by reproducing the accompaniment data 53 at the set tempo.
  • the method of indicating the advancing position is not limited to these exemplified modes, and various methods of visual or auditory recognition can be adopted. For example, a method of indicating the note at the current position on the displayed musical score may be used. Alternatively, after indicating the start timing, a metronome sound may be generated. At least one technique may be adopted, and a plurality of techniques may be combined.
  • step S104 the CPU 11 (acquisition unit 42) executes sound information acquisition processing.
  • the user for example, plays along with the lyrics while confirming the taught progression position (for example, while listening to the accompaniment).
  • the CPU 11 acquires, as the sound information N, MIDI data or analog sound produced by the performance.
  • the sound information N usually includes input start timing s, input end timing e, pitch information and velocity information. Note that the pitch information is not necessarily included as in the case where the drum 107 is played. Velocity information may be canceled.
  • the input start timing s and the input end timing e are defined by relative time to the accompaniment progression. Note that when an analog sound such as a human voice is acquired by a microphone, audio data is acquired as the sound information N.
  • step S105 the CPU 11 transmits the sound information N acquired in step S104 to the cloud server 102.
  • step S106 it is determined whether or not the selected piece of music has ended, that is, whether or not teaching of the progression position up to the last position in the selected piece of music has been completed. Then, if the selected song has not ended, the CPU 11 returns to step S104. Therefore, the sound information N acquired according to the performance of the music is transmitted to the cloud server 102 at any time until the selected music is finished. When the selected piece of music ends, the CPU 11 sends a notification to that effect to the cloud server 102 and terminates the PC processing.
  • step S201 when the CPU 21 of the cloud server 102 receives related data corresponding to the selected song through various I/Fs 29, the process proceeds to step S202.
  • step S202 CPU21 transmits the received related data to the sound output device 103 through various I/F29. Note that the singing data 51 need not be transmitted to the sound output device 103 .
  • the CPU 21 starts a series of processes (S204 to S209). At the start of this series of processing, the CPU 21 executes the sequence software and advances the time while waiting for reception of the next sound information N using the received related data. In step S204, the CPU 21 receives the sound information N.
  • step S205 the CPU 21 (syllable identification unit 43) identifies the syllable corresponding to the received sound information N.
  • the CPU 21 calculates, for each syllable, the difference ⁇ T between the input start timing s in the sound information N and the pronunciation start timing t in each of the plurality of syllables in the singing data 51 corresponding to the selected piece of music. Then, the CPU 21 identifies the syllable with the smallest difference ⁇ T among the plurality of syllables in the singing data 51 as the syllable corresponding to the sound information N received this time.
  • the CPU 21 identifies the syllable "ku" as the syllable corresponding to the sound information N2. In this way, for each sound information N, the syllable corresponding to the pronunciation start timing t closest to the input start timing s is specified as the corresponding syllable.
  • the CPU 21 determines the sounding/silencing timing, pitch, and velocity of the sound information N by analysis.
  • step S206 the CPU 21 (timing identification unit 44) executes timing identification processing. That is, the CPU 21 associates the sound information N received this time with the syllable specified as the syllable corresponding to the sound information N with the difference ⁇ T.
  • step S207 the CPU 21 (synthesizing unit 45) synthesizes singing sounds based on the identified syllables.
  • the pitch of the singing sound is determined by the pitch information of the corresponding sound information N. If the sound information N is a drum sound, the pitch of the singing sound may be, for example, a constant pitch.
  • the pronunciation timing and the silence timing are determined by the pronunciation start timing t and the input end timing e (or pronunciation length) of the corresponding sound information N.
  • FIG. Therefore, a singing sound is synthesized from the syllables corresponding to the sound information N at the pitch determined by the performance.
  • the input end timing e may be modified so that the sound is forcibly silenced before the original pronunciation timing of the next syllable.
  • step S208 the CPU 21 executes data transmission. That is, the CPU 21 transmits the synthesized singing sound, the difference ⁇ T corresponding to the syllables, and the velocity information at the time of performance to the sound output device 103 through various I/Fs 29 .
  • step S209 the CPU 21 determines whether or not the selected music has ended, that is, whether or not it has received a notification from the PC 101 that the selected music has ended. Then, if the selected song has not ended, the CPU 21 returns to step S204. Therefore, the singing sound based on the syllables corresponding to the sound information N is synthesized and transmitted at any time until the selected song is finished. It should be noted that the CPU 21 may determine that the selected piece of music has ended when a predetermined period of time has elapsed since the last received sound information N data has been processed. When the selected music ends, the CPU 21 ends the cloud server processing.
  • step S301 when the CPU 31 of the sound output device 103 receives related data corresponding to the selected song through various I/Fs 39, the process proceeds to step S302.
  • step S302 CPU 31 receives the data (singing sound, difference ⁇ T, velocity) transmitted from cloud server 102 in step S208.
  • step S303 the CPU 31 (output unit 46) executes synchronous output of the singing sound and the accompaniment based on the received singing sound and the difference ⁇ T, the already received accompaniment data 53, and the timing information 52.
  • the CPU 31 outputs accompaniment sounds based on the accompaniment data 53, and concurrently outputs singing sounds while adjusting the output timing based on the timing information and the difference ⁇ T.
  • reproduction is employed as a typical mode of synchronous output of accompaniment sounds and singing sounds. Therefore, the sound output device 103 can listen to the performance of the user of the PC 101 in synchronization with the accompaniment.
  • the mode of synchronous output is not limited to reproduction, and may be recorded as an audio file in the storage unit 34 or may be transmitted to an external device through various I/Fs 39 .
  • step S304 the CPU 31 determines whether or not the selected music has ended, that is, whether or not it has received a notification from the cloud server 102 indicating that the selected music has ended. Then, if the selected song has not ended, the CPU 31 returns to step S302. Therefore, the synchronous output of the received singing sound is continued until the selected song is finished. It should be noted that the CPU 31 may determine that the selected song has ended when a predetermined period of time has elapsed since the processing of the last received data ended. When the selected song ends, the CPU 31 terminates the sound output device processing.
  • the syllable corresponding to the sound information N obtained while indicating the progress position in the singing data 51 to the user is specified from a plurality of syllables in the singing data 51 .
  • Relative information (difference ⁇ T) is associated with sound information N, and singing sounds are synthesized based on the specified syllables.
  • the singing sound and the accompaniment sound based on the accompaniment data 53 are synchronously output. Therefore, the singing sound can be output at the timing when the sound information N is input in synchronization with the accompaniment.
  • the sound information N includes pitch information
  • the sound information N includes velocity information
  • the singing sound can be output at a volume corresponding to the strength of the performance.
  • the related data (singing data 51, timing information 52, accompaniment data 53) was transmitted to the cloud server 102 and the sound output device 103 after the selected music was determined, but is not limited to this.
  • the cloud server 102 or the sound output device 103 may store related data for a plurality of songs in advance. Then, when the selected music is determined, information specifying the selected music may be transmitted to the cloud server 102 and further to the sound output device 103 .
  • FIG. 6 is a timing chart of the process of outputting singing sounds through performance.
  • the order of a plurality of syllables in the singing data 51 is predetermined.
  • the singing sound output system 1000 indicates to the user the next syllable in the singing data while waiting for the input of the sound information N, and each time the sound information N is input, the progress is displayed.
  • the progress instruction of the accompaniment data also waits until there is a performance input together with the progress of the syllables.
  • the cloud server 102 identifies, as the syllable corresponding to the input sound information N, the syllable that was the next syllable in the order of progress when the sound information N was input. Therefore, the corresponding syllables are identified in order each time the key is turned on.
  • the actual input start timing s may deviate from the pronunciation start timing t.
  • the cloud server 102 calculates the shift time of the input start timing s from the pronunciation start timing t as a temporal difference ⁇ T ( ⁇ T1 to T3) (relative information).
  • the difference ⁇ T is calculated for each syllable and associated with each syllable.
  • the cloud server 102 synthesizes a singing sound based on the sound information N and sends it to the sound output device 103 together with the accompaniment data 53 .
  • the syllable pronunciation start timing t' (t1' to t3') is the syllable pronunciation start timing at the time of output.
  • the syllable pronunciation start timing t' is determined by the input start timing s.
  • the progression of accompaniment tones at the time of output also changes at any time depending on the syllable sounding start timing t'.
  • the sound output device 103 synchronizes and outputs the singing sound and the accompaniment sound based on the accompaniment data 53 by outputting while adjusting the output timing based on the timing information and the difference ⁇ T. At that time, the sound output device 103 outputs the singing sound at the syllable pronunciation start timing t'. The sound output device 103 outputs the accompaniment sound while matching each syllable with the accompaniment position based on the difference ⁇ T. The sound output device 103 uses delay processing to delay the output of the accompaniment sound in order to match each syllable with the accompaniment position. Therefore, the singing sounds are output at timings corresponding to the performance timings, and the tempo of the accompaniment sounds changes in accordance with the performance timings.
  • the CPU 11 uses the timing information 52 to teach the current progress position.
  • the CPU 11 acquire unit 42
  • the CPU 11 executes sound information acquisition processing.
  • the user plays and inputs the sound corresponding to the next syllable while confirming the progression position.
  • the CPU 11 waits for the syllable teaching progress and the accompaniment progress until the next sound information N is input. Therefore, the CPU 11 teaches the next syllable while waiting for input of the sound information N, and each time the sound information N is input, advances the syllable indicating the progress position to the next syllable.
  • the CPU 11 matches the progress of the accompaniment to the teaching progress of the syllables.
  • the CPU 21 advances time while waiting for reception of the sound information N.
  • the CPU 21 receives the sound information N as needed, and advances the time when the sound information N is received. Therefore, the progress of time is waited until the next sound information N is received.
  • the CPU 21 Upon receiving the sound information N, the CPU 21 (syllable identification unit 43) identifies the syllable corresponding to the received sound information N in step S205. Here, the CPU 21 identifies the syllable that was the next syllable in the order of progress when the sound information N was input as the syllable corresponding to the sound information N received this time. Therefore, the corresponding syllables are identified in order each time there is a key-on due to performance.
  • step S206 the CPU 21 calculates the difference ⁇ T and associates it with the specified syllable. That is, as shown in FIG. 6, the CPU 21 obtains, as a difference ⁇ T, the shift time between the input start timing s and the pronunciation start timing t corresponding to the specified syllable. Then, the CPU 21 associates the determined difference ⁇ T with the specified syllable.
  • the CPU 21 transmits the synthesized singing sound, the difference ⁇ T corresponding to the syllables, and the velocity at the time of performance to the sound output device 103 through various I/Fs 29.
  • the CPU 31 outputs the received singing sound and the difference ⁇ T based on the already received accompaniment data 53 and the timing information 52. synchronous output of singing voice and accompaniment.
  • the CPU 31 refers to the difference ⁇ T and adjusts the output timing of the accompaniment sound and the singing sound, thereby performing output processing while matching each syllable with the accompaniment position.
  • the singing sound starts to be output according to the input timing (at the input start timing s).
  • the output (pronunciation) of the syllable “ku” is started at a timing earlier than the pronunciation start timing t2 by the difference ⁇ T2.
  • the output (pronunciation) of the syllable "ra” is started at a timing later than the pronunciation start timing t3 by the difference ⁇ T3.
  • the pronunciation of each syllable ends at the time corresponding to the input end timing e.
  • the performance tempo of the accompaniment sound changes according to the performance timing.
  • the CPU 31 corrects the position of the sounding start timing t2 to the position of the sounding start timing t2' and outputs the accompaniment sound.
  • accompaniment sounds are output at a variable tempo
  • singing sounds are output at timings that correspond to performance timings. Therefore, the singing sound can be output at the timing when the sound information N is input in synchronization with the accompaniment.
  • the teaching unit 41 indicates the next syllable while waiting for input of the sound information N, and each time the sound information N is input, the syllable indicating the progress position is advanced to the next syllable. advance one. Then, the syllable specifying unit 43 specifies the syllable that was the next syllable in the order of progress when the sound information N was input as the syllable corresponding to the input sound information N.
  • FIG. Therefore, the same effects as in the first embodiment can be obtained in terms of outputting the singing sound at the timing when the sound information N is input in synchronization with the accompaniment. Moreover, even when the user performs the music at a free tempo, the singing sound can be output in synchronization with the accompaniment according to the user's performance tempo.
  • the relative information associated with the sound information N is not limited to the difference ⁇ T.
  • the relative information indicating the relative timing with respect to the specified syllable may be the relative time of the sound information N and the relative time of each syllable with respect to a certain time defined by the timing information 52 .
  • FIG. 1 A third embodiment of the present invention will be described with reference to FIGS. 1 to 3 and 7.
  • FIG. If a device such as a drum that cannot input pitch information can be used to produce singing sounds, the enjoyment will increase. Therefore, in this embodiment, the drum 107 is used for performance input.
  • a singing phrase is generated for each unit of a series of sound information N obtained thereby.
  • the basic configuration of the singing sound output system 1000 is the same as that of the first embodiment. In the present embodiment, it is assumed that performance input is performed on the drum 107, and since it is premised that there is no pitch information, control different from that in the first embodiment is applied.
  • the phrase generation unit 47 analyzes the accent of the series of sound information N from the velocity of each piece of sound information N in the series of sound information N, and based on the accent, a plurality of syllables corresponding to the series of sound information N. Generate Phrases.
  • the phrase generation unit 47 generates phrases corresponding to a series of sound information N by extracting phrases that match the accent from a phrase database 54 that includes a plurality of phrases prepared in advance. Phrases having the number of syllables forming a series of phonetic information N are extracted.
  • the accent of the series of sound information N refers to the accent of the relative strength of the sound.
  • Phrasal accent refers to the pitch accent due to the relative pitch of each syllable. Therefore, the intensity of the sound of the sound information N corresponds to the pitch of the phrase.
  • FIG. 7 is a flow chart showing system processing for outputting singing sounds by a performance performed by the singing sound output system 1000.
  • FIG. Execution subjects, execution conditions, and start conditions of the PC processing, the cloud server processing, and the sound output device processing in this system processing are the same as those of the system processing shown in FIG.
  • step S401 the CPU 11 of the PC 101 transitions to a performance start state based on an instruction from the user. At that time, the CPU 11 transmits a notification to the cloud server 102 through various I/Fs 19 to the effect that it has shifted to the performance start state.
  • step S402 when the user strikes the drum 107, the CPU 11 (acquisition unit 42) acquires the corresponding sound information N.
  • the sound information N is MIDI data or analog sound.
  • the sound information N includes at least information indicating input start timing (hitting on) and information indicating velocity.
  • step S403 the CPU 11 (acquisition unit 42) determines whether or not the current series of sound information N has been finalized. For example, when the first sound information N is input within a first predetermined period of time after the transition to the performance start state, the CPU 11 performs It is determined that a series of sound information N has been finalized.
  • a series of sound information N is assumed to be a collection of a plurality of sound information N, but may be one sound information N.
  • step S404 the CPU 11 transmits the acquired series of sound information N to the cloud server 102.
  • step S405 the CPU 11 determines whether or not the user has given an instruction to end the performance state. Then, the CPU 11 returns to step S402 if the end of the performance has not been instructed, and transmits a notification to that effect to the cloud server 102 if the end of the performance has been instructed, and terminates the PC processing. Therefore, each time a series of sound information N is determined, the series of sound information N is transmitted.
  • step S501 the CPU 21 receives a series of processes (S502 to S506) in step S501.
  • step S502 the CPU 21 receives a series of sound information N transmitted from the PC 101 at step S404.
  • step S503 the CPU 21 (phrase generation unit 47) generates one phrase for the current series of sound information N.
  • the method is exemplified below.
  • the CPU 21 analyzes the accent of a series of sound information N from the velocity of each sound information N, and extracts from the phrase database 54 a phrase that matches the accent and the number of syllables forming the series of sound information N. .
  • the extraction range may be narrowed down depending on the conditions.
  • the phrase database 54 is classified according to conditions, and the user can set at least one condition such as "noun", "fruit”, “stationery”, “color”, "size”, etc. good.
  • step S504 the CPU 21 (synthesizing unit 45) synthesizes singing sounds from the generated phrases.
  • the pitch of the singing sound may conform to the pitch of each syllable set in the phrase.
  • step S505 CPU21 transmits a singing sound to the sound output device 103 through various I/F29.
  • step S506 the CPU 21 determines whether or not it has received a notification from the PC 101 indicating that the performance has been finished. If the CPU 21 has not received the notification that the performance end has been instructed, the CPU 21 returns to step S502. When the CPU 21 receives the notification that the performance end has been instructed, the CPU 21 transmits the notification that the performance end has been instructed to the sound output device 103 and terminates the cloud server processing.
  • step S601 when the CPU 31 of the sound output device 103 receives the singing sound through various I/Fs 39, the process proceeds to step S602.
  • step S602 CPU 31 (output unit 46) outputs the received singing sound.
  • the output timing of each syllable depends on the input timing of the corresponding sound information N.
  • FIG. The mode of output referred to here is not limited to reproduction, as in the first embodiment.
  • step S603 it is determined whether or not a notification has been received from the cloud server 102 that an instruction to end the performance has been received.
  • the CPU 31 returns to step S601 if it has not received the notification that the performance end has been instructed, and terminates the sound output device processing if it has received the notification that the performance end has been instructed. Therefore, the CPU 31 outputs the phrase whenever it receives the singing sound of the phrase.
  • the timbre differs between hitting the head and hitting the rim (rim shot), so this difference in timbre may also be used as a parameter for phrase generation.
  • the conditions for extracting phrases may differ between head hits and rim shots.
  • the sound generated by striking is not limited to drums, and may be hand clapping.
  • the hitting position on the head may be detected, and the difference in hitting position may also be used as a parameter for phrase generation.
  • the pitch when the obtainable sound information N includes pitch information, the pitch may be replaced with an accent, and the same processing as when hitting the drum may be performed. For example, a phrase corresponding to the case where "do-mi-do" is played on the piano and "weak-strong-weak” on the drums may be extracted.
  • the singing voice to be used may be switched according to the sound information N.
  • the sound information N is audio data
  • the singing voice may be switched according to the timbre.
  • the sound information N is MIDI data
  • the singing voice may be switched according to the tone color set in the PC 101 and other parameters.
  • each functional unit shown in FIG. 3 may be realized by any device, or may be realized by one device. If each of the functional units described above is realized by a single integrated device, the device may not be called a singing sound output system, but may be called a singing sound output device.
  • each functional unit shown in FIG. 3 may be realized by AI (Artificial Intelligence).
  • the same effect as the present invention may be obtained by reading a storage medium storing a control program represented by software for achieving the present invention into the present system.
  • the read program code itself implements the novel functions of the present invention, and a non-transitory computer-readable recording medium storing the program code constitutes the present invention.
  • the program code may be supplied via a transmission medium or the like, in which case the program code itself constitutes the present invention.
  • ROM floppy disks, hard disks, optical disks, magneto-optical disks, CD-ROMs, CD-Rs, magnetic tapes, non-volatile memory cards, etc.
  • volatile memory e.g., DRAM (Dynamic Random Access Memory)
  • DRAM Dynamic Random Access Memory

Landscapes

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

Abstract

伴奏と同期させて、音情報を入力したタイミングで歌唱音を出力することができる歌唱音出力システムを提供する。歌唱音出力システムは、伴奏データに時間的に対応付けられ且つ複数の音節を含む歌唱用データにおける進行位置をユーザに対して示す教示部41と、音情報Nを取得する取得部42と、音情報に対応する音節を特定する音節特定部43と、音情報に、特定された音節に対する相対的なタイミングを示す差分ΔTを対応付けるタイミング特定部44と、特定された音節に基づいて歌唱音を合成する合成部45と、差分ΔTに基づいて、歌唱音と伴奏データに基づく伴奏音とを同期させて出力する出力部46と、を有する。

Description

歌唱音出力システムおよび方法
 本発明は、歌唱音を出力する歌唱音出力システムおよび方法に関する。
 演奏操作に応じて歌唱音を発生させる技術が知られている。例えば、特許文献1に開示された歌唱音合成装置は、リアルタイム演奏に応じて歌詞を自動的に1文字ずつあるいは1音節ずつ進めて歌唱音を発生させる。
特開2016-206323号公報
 しかしながら、特許文献1には、伴奏と合わせて歌唱音をリアルタイムで出力することは開示されてない。仮に、伴奏と合わせて歌唱音をリアルタイムで出力する場合、本来発生させたいタイミングで歌唱音を的確に発生させることは困難である。例えば、発音させたいタイミングで演奏操作を開始したとしても、歌唱音を合成して発音するまでに処理時間を要することから、実際の歌唱開始が遅延する。従って、伴奏に合わせて意図したタイミングで歌唱音を出力することに関し、改善の余地があった。
 本発明の一つの目的は、伴奏と同期させて、音情報を入力したタイミングで歌唱音を出力することができる歌唱音出力システムおよび方法を提供することである。
 本発明の一形態によれば、伴奏データに時間的に対応付けられ且つ複数の音節を含む歌唱用データにおける進行位置をユーザに対して示す教示部と、演奏によって入力された少なくとも1つの音情報を取得する取得部と、前記取得部により取得された前記音情報に対応する音節を前記歌唱用データにおける複数の音節から特定する音節特定部と、前記音情報に、前記特定された音節に対する相対的なタイミングを示す相対情報を対応付けるタイミング特定部と、前記特定された音節に基づいて歌唱音を合成する合成部と、前記相対情報に基づいて、前記合成部により合成された前記歌唱音と前記伴奏データに基づく伴奏音とを同期させて出力する出力部と、を有する、歌唱音出力システムが提供される。
 本発明の一形態によれば、伴奏と同期させて、音情報を入力したタイミングで歌唱音を出力することができる。
第1の実施の形態に係る歌唱音出力システムの全体構成を示す図である。 歌唱音出力システムのブロック図である。 歌唱音出力システムの機能ブロック図である。 演奏により歌唱音を出力する処理のタイミングチャートである。 システム処理を示すフローチャートである。 演奏により歌唱音を出力する処理のタイミングチャートである。 システム処理を示すフローチャートである。
 以下、図面を参照して本発明の実施の形態を説明する。
 (第1の実施の形態)
 図1は、本発明の第1の実施の形態に係る歌唱音出力システムの全体構成を示す図である。この歌唱音出力システム1000は、PC(パーソナルコンピュータ)101、クラウドサーバ102および音出力装置103を含む。PC101および音出力装置103は、インターネット等の通信ネットワーク104によってクラウドサーバ102と通信可能に接続されている。PC101が使用される環境内には、音を入力するアイテムやデバイスとして、キーボード105、管楽器106およびドラム107が存在する。
 キーボード105およびドラム107は、MIDI(Musical Instrument Digital Interface)信号を入力するために用いられる電子楽器である。管楽器106は、モノフォニックのアナログ音を入力するために用いられるアコースティック楽器である。キーボード105および管楽器106は、音高情報も入力することができる。なお、管楽器106が電子楽器であってもよく、キーボード105およびドラム107がアコースティック楽器であってもよい。なお、これらの楽器は、音情報を入力するためのデバイスの一例であり、PC101側のユーザによって演奏される。PC101側のユーザの発声も、アナログ音を入力するための手段として用いてもよく、その場合は肉声がアナログ音として入力される。従って、本実施の形態における音情報を入力するための「演奏」の概念には、肉声の入力も含まれる。また、音情報を入力するためのデバイスは、楽器という形態でなくてもよい。
 詳細は後述するが、歌唱音出力システム1000による代表的な処理を概説する。PC101側のユーザは、伴奏を聞きながら楽器を演奏する。PC101は、歌唱用データ51、タイミング情報52および伴奏データ53(いずれも図3で後述)をクラウドサーバ102へ送信する。クラウドサーバ102は、PC101側のユーザの演奏により生じた音に基づいて、歌唱音を合成する。クラウドサーバ102は、歌唱音、タイミング情報52および伴奏データ53を音出力装置103に送信する。音出力装置103は、スピーカ機能を備えるデバイスである。音出力装置103は、受信した歌唱音および伴奏データ53を出力する。その際、音出力装置103は、タイミング情報52に基づいて、歌唱音と伴奏データ53とを同期させて出力する。ここでいう「出力」の形態は、再生に限らず、外部装置への送信や記録媒体への記録も含まれる。
 図2は、歌唱音出力システム1000のブロック図である。PC101は、CPU11、ROM12、RAM13、記憶部14、タイマ15、操作部16、表示部17、音発生部18、入力部8、各種I/F(インターフェイス)19を有する。これらの構成要素はバス10により互いに接続されている。
 CPU11は、PC101の全体を制御する。ROM12には、CPU11が実行するプログラムのほか、各種データが格納されている。RAM13は、CPU11がプログラムを実行する際のワークエリアを提供する。RAM13は各種情報を一時的に記憶する。記憶部14は不揮発メモリを含む。タイマ15は時間を計測する。なお、タイマ15はカウンタ方式であってもよい。操作部16は、各種情報を入力するための複数の操作子を含み、ユーザからの指示を受け付ける。表示部17は各種情報を表示する。音発生部18は、音源回路、効果回路およびサウンドシステムを含む。
 入力部8は、キーボード105やドラム107等の電子的な音情報を入力するデバイスから音情報を取得するためのインターフェイスを含む。入力部8は、また、管楽器106等のアコースティックな音情報を入力するデバイスから音情報を取得するためのマイクロフォン等のデバイスを含む。各種I/F19は、無線または有線により通信ネットワーク104(図1)に接続する。
 クラウドサーバ102は、CPU21、ROM22、RAM23、記憶部24、タイマ25、操作部26、表示部27、音発生部28、各種I/F29を有する。これらの構成要素はバス20により互いに接続されている。これらの構成要素の構成は、PC101における符号11~17、19で示したものと同様である。
 音出力装置103は、CPU31、ROM32、RAM33、記憶部34、タイマ35、操作部36、表示部37、音発生部38、各種I/F39を有する。これらの構成要素はバス30により互いに接続されている。これらの構成要素の構成は、PC101における符号11~19で示したものと同様である。
 図3は、歌唱音出力システム1000の機能ブロック図である。歌唱音出力システム1000は、機能ブロック110を有する。機能ブロック110は、個々の機能部として、教示部41、取得部42、音節特定部43、タイミング特定部44、合成部45、出力部46およびフレーズ生成部47を含む。
 本実施の形態では、一例として、教示部41および取得部42の各機能はPC101により実現される。これらの各機能は、ROM12に格納されたプログラムによってソフトウェア的に実現される。つまり、CPU11が必要なプログラムをRAM13に展開して実行し、各種の演算や各ハードウェア資源を制御することによって各機能が提供される。言い換えると、これらの機能は、主としてCPU11、ROM12、RAM13、タイマ15、表示部17、音発生部18、入力部8および各種I/F19の協働により実現される。ここで実行されるプログラムには、シーケンスソフトが含まれる。
 また、音節特定部43、タイミング特定部44、合成部45およびフレーズ生成部47の各機能はクラウドサーバ102により実現される。これらの各機能は、ROM22に格納されたプログラムによってソフトウェア的に実現される。これらの機能は、主としてCPU21、ROM22、RAM23、タイマ25および各種I/F29の協働により実現される。
 また、出力部46の機能は音出力装置103により実現される。出力部46の機能は、ROM32に格納されたプログラムによってソフトウェア的に実現される。これらの機能は、主としてCPU31、ROM32、RAM33、タイマ35、音発生部38および各種I/F39の協働により実現される。
 歌唱音出力システム1000は、歌唱用データ51、タイミング情報52、伴奏データ53およびフレーズデータベース54を参照する。フレーズデータベース54は、例えば、ROM12に予め格納されている。なお、フレーズ生成部47およびフレーズデータベース54は、本実施の形態では必須でない。これらは後述する第3の実施の形態で説明する。
 歌唱用データ51、タイミング情報52および伴奏データ53は、曲ごとに互いに対応付けられて、ROM12に予め格納されている。伴奏データ53は、それぞれの曲の伴奏を再生するための情報がシーケンスデータとして記録されたものである。歌唱用データ51は複数の音節を含む。歌唱用データ51には、歌詞テキストデータおよび音韻情報データベースが含まれる。上記歌詞テキストデータは、歌詞を記述するデータであり、曲ごとの歌詞が音節単位で区切られて記述されている。それぞれの曲において、伴奏データ53の伴奏位置と歌唱用データ51における音節とは、タイミング情報52によって時間的に対応付けられている。
 機能ブロック110における各機能部による処理は図4、図5で詳細に説明する。ここでは概略を説明する。教示部41は、歌唱用データ51における進行位置をユーザに対して示す(教える)。取得部42は、演奏によって入力された少なくとも1つの音情報N(図4参照)を取得する。音節特定部43は、取得された音情報Nに対応する音節を、歌唱用データ51における複数の音節から特定する。タイミング特定部44は、音情報Nに、特定された音節に対する相対的なタイミングを示す相対情報として差分ΔT(図4参照)を対応付ける。合成部45は、特定された音節に基づいて歌唱音を合成する。出力部46は、上記相対情報に基づいて、合成された歌唱音と、伴奏データ53に基づく伴奏音とを同期させて出力する。
 図4は、演奏により歌唱音を出力する処理のタイミングチャートである。曲が選択されて処理が開始されると、図4に示すように、PC101において、歌唱用データ51における進行位置に該当する音節がユーザに対して示される。例えば、「さ」、「く」、「ら」のように音節が順番に表示される。発音開始タイミングt(t1~t3)は、伴奏データ53との時間的対応関係によって規定され、歌唱用データ51で規定されている本来の音節の発音開始タイミングである。例えば、時刻t1は、歌唱用データ51上における音節「さ」の発音開始位置を示している。音節の進行教示と並行して、伴奏データ53に基づく伴奏も進行していく。
 ユーザは、示された音節の進行に合わせて演奏する。ここでは、音高情報を入力可能なキーボード105の演奏によりMIDI信号が入力される例を挙げる。演奏者であるユーザは、音節「さ」、「く」、「ら」の各開始タイミングに合わせて、各音節に対応する鍵を順次押下する。このようにして音情報N(N1~N3)が順次取得される。各音情報Nの発音長さは、入力開始タイミングs(s1~s3)から入力終了タイミングe(e1~e3)までの時間である。入力開始タイミングsはノートオン、入力終了タイミングeはノートオフに相当する。音情報Nには、音高情報およびベロシティが含まれる。
 ユーザは、実際の入力開始タイミングsを発音開始タイミングtに対してあえてずらすことがある。クラウドサーバ102において、発音開始タイミングtに対する入力開始タイミングsのずれ時間が、時間的な差分ΔT(ΔT1~T3)(相対情報)として算出される。差分ΔTは、音節ごとに算出され、各音節に対応付けられる。クラウドサーバ102は、音情報Nに基づいて歌唱音を合成し、伴奏データ53とともに音出力装置103へ送る。
 音出力装置103は、歌唱音と、伴奏データ53に基づく伴奏音とを、同期させて出力する。その際、音出力装置103は、伴奏音については、設定された一定のテンポで出力する。歌唱音については、音出力装置103は、タイミング情報52に基づいて各音節と伴奏位置とを一致させながら出力する。なお、音情報Nの入力から歌唱音の出力までには処理時間を要する。そこで、音出力装置103は、各音節と伴奏位置とを一致させるために、ディレイ処理を用いて、伴奏音の出力を遅延させる。
 例えば音出力装置103は、各音節に対応する差分ΔTを参照して出力タイミングを調整する。その結果、歌唱音は入力タイミングの通りに(入力開始タイミングsで)出力開始される。例えば、発音開始タイミングt2より差分ΔT2だけ早いタイミングで音節「く」の出力(発音)が開始される。また、発音開始タイミングt3より差分ΔT3だけ遅いタイミングで音節「ら」の出力(発音)が開始される。各音節の発音は、入力終了タイミングeに対応する時刻に終了する(消音される)。従って、伴奏音は固定テンポで出力され、歌唱音は演奏タイミングに応じたタイミングで出力される。従って、伴奏と同期させて、音情報Nを入力したタイミングで歌唱音を出力することができる。
 図5は、歌唱音出力システム1000で実行される演奏により歌唱音を出力するシステム処理を示すフローチャートである。このシステム処理では、PC101で実行されるPC処理と、クラウドサーバ102で実行されるクラウドサーバ処理と、音出力装置103で実行される音出力装置処理とが並行して実行される。PC処理は、ROM12に格納されたプログラムをCPU11がRAM13に展開して実行することにより実現される。クラウドサーバ処理は、ROM22に格納されたプログラムをCPU21がRAM23に展開して実行することにより実現される。音出力装置処理は、ROM32に格納されたプログラムをCPU31がRAM33に展開して実行することにより実現される。これら各処理は、PC101において、システム処理の開始が指示されると開始される。
 まず、PC処理について説明する。ステップS101では、PC101のCPU11は、複数用意された曲の中から、ユーザからの指示に基づき、今回演奏する曲(以下、選択曲という)を選択する。曲の演奏テンポは予め曲ごとにデフォルトで決まっている。しかしCPU11は、演奏曲が選択される際に、ユーザからの指示に基づき、設定するテンポを変更してもよい。
 ステップS102では、CPU11は、各種I/F19を通じて、選択曲に対応する関連データ(歌唱用データ51、タイミング情報52、伴奏データ53)をクラウドサーバ102へ送信する。
 ステップS103では、CPU11は、進行位置の教示を開始する。これに伴い、CPU11は、進行位置の教示が開始した旨の通知をクラウドサーバ102へ送信する。ここでの教示処理は、一例として、シーケンスソフトウェアの実行により実現される。CPU11(教示部41)は、タイミング情報52を用いて現在の進行位置を教示する。
 例えば、表示部17には、歌唱用データ51における音節に対応して歌詞が表示される。CPU11は、表示された歌詞上で進行位置を教える。例えば、教示部41は、現在位置の歌詞を色などの表示態様を異ならせたり、カーソル位置や歌詞自体の位置を移動させたりすることによって、進行位置を示す。さらに、CPU11は、設定されたテンポで伴奏データ53を再生することで進行位置を示す。なお、進行位置を示す方法として、これら例示された態様に限定されず、視覚または聴覚によって認識させる各種の手法を採用可能である。例えば、表示した楽譜上において現在位置の音符を示す方法でよい。あるいは、開始タイミングを示した後、メトロノーム音を発生させてもよい。また、採用する手法は少なくとも1つであればよく、複数の手法を組み合わせてもよい。
 ステップS104では、CPU11(取得部42)は、音情報取得処理を実行する。ユーザは、例えば、教えられた進行位置を確認しながら(例えば伴奏を聞きながら)、歌詞に合わせるように演奏する。CPU11は、演奏によるMIDIデータまたはアナログ音を音情報Nとして取得する。音情報Nは通常、入力開始タイミングs、入力終了タイミングe、音高情報およびベロシティの情報を含んでいる。なお、ドラム107が演奏された場合のように、音高情報は必ずしも含まれない。ベロシティの情報はキャンセルされてもよい。入力開始タイミングs、入力終了タイミングeは、伴奏進行に対する相対時間により定義される。なお、肉声などのアナログ音をマイクロフォンで取得した場合は、音情報Nとしてオーディオデータが取得される。
 ステップS105では、CPU11は、ステップS104で取得した音情報Nをクラウドサーバ102へ送信する。ステップS106では、選択曲が終了したか、すなわち、選択曲における最後の位置までの進行位置の教示を完了したか否かを判別する。そして、選択曲が終了していない場合は、CPU11は、ステップS104に戻る。従って、選択曲が終了するまで、曲の進行と共に演奏に応じて取得された音情報Nが随時、クラウドサーバ102へ送信される。選択曲が終了すると、CPU11は、その旨の通知をクラウドサーバ102へ送信すると共に、PC処理を終了させる。
 次に、クラウドサーバ処理について説明する。ステップS201で、クラウドサーバ102のCPU21は、各種I/F29を通じて選択曲に対応する関連データを受信すると、ステップS202に進む。ステップS202では、CPU21は、受信した関連データを、各種I/F29を通じて音出力装置103へ送信する。なお、歌唱用データ51については音出力装置103へ送信する必要はない。
 ステップS203では、CPU21は、一連の処理(S204~S209)を開始する。この一連の処理開始においては、CPU21は、シーケンスソフトを実行し、受信した関連データを用いて、次の音情報Nの受信を待機しつつ時間を進行させる。ステップS204では、CPU21は、音情報Nを受信する。
 ステップS205では、CPU21(音節特定部43)は、受信した音情報Nに対応する音節を特定する。まず、CPU21は、音情報Nにおける入力開始タイミングsと、選択曲に対応する歌唱用データ51における複数の各音節における発音開始タイミングtとの差分ΔTを音節ごとに算出する。そしてCPU21は、歌唱用データ51における複数の音節のうち、差分ΔTが最も小さい音節を、今回受信された音情報Nに対応する音節として特定する。
 例えば、図4に示す例では、音情報N2については、入力開始タイミングs2と音節「く」の発音開始タイミングt2との差分ΔT2が、他の音節との差分と比べて最も小さい。従って、CPU21は、音節「く」を、音情報N2に対応する音節として特定する。このようにして、音情報Nごとに、入力開始タイミングsに最も近い発音開始タイミングtに対応する音節が、対応する音節として特定される。
 なお、音情報Nがオーディオデータの場合は、CPU21(音節特定部43)は、音情報Nの発音・消音タイミング、音高(ピッチ)およびベロシティを、解析により決定する。
 ステップS206では、CPU21(タイミング特定部44)は、タイミング特定処理を実行する。すなわち、CPU21は、今回受信した音情報Nと、音情報Nに対応する音節として特定された音節とに対して、差分ΔTを対応付ける。
 ステップS207では、CPU21(合成部45)は、特定された音節に基づいて歌唱音を合成する。歌唱音の音高は、対応する音情報Nの音高情報により決まる。なお、音情報Nがドラム音の場合は、歌唱音の音高は例えば一定音高としてもよい。歌唱音の出力タイミングについては、発音タイミングおよび消音タイミングは、対応する音情報Nの発音開始タイミングtと入力終了タイミングe(または発音長)とにより決まる。従って、音情報Nに対応する音節から、演奏により決まった音高にて、歌唱音が合成される。なお、演奏時の消音が遅すぎたために、今回の音節の発音期間が歌唱用データ上の次の音節の本来の発音タイミングと重なる場合がある。この場合、次の音節の本来の発音タイミング以前に強制消音されるように、入力終了タイミングeを修正してもよい。
 ステップS208では、CPU21は、データ送信を実行する。すなわち、CPU21は、合成した歌唱音と、音節に対応する差分ΔTと、演奏時のベロシティの情報とを、各種I/F29を通じて音出力装置103へ送信する。
 ステップS209では、CPU21は、選択曲が終了したか、すなわち、PC101から、選択曲が終了した旨の通知を受信したか否かを判別する。そして、選択曲が終了していない場合は、CPU21は、ステップS204に戻る。従って、選択曲が終了するまで、音情報Nに対応する音節に基づく歌唱音が合成され、随時送信される。なお、CPU21は、最後に受信した音情報Nデータの処理が終了してから所定時間が経過した場合に、選択曲が終了したと判別してもよい。選択曲が終了すると、CPU21は、クラウドサーバ処理を終了させる。
 次に、音出力装置処理を説明する。ステップS301で、音出力装置103のCPU31は、各種I/F39を通じて選択曲に対応する関連データを受信すると、ステップS302に進む。ステップS302では、CPU31は、ステップS208でクラウドサーバ102から送信されたデータ(歌唱音、差分ΔT、ベロシティ)を受信する。
 ステップS303では、CPU31(出力部46)は、受信した歌唱音および差分ΔTと、既に受信している伴奏データ53と、タイミング情報52とに基づいて、歌唱音および伴奏の同期出力を実行する。
 図4で説明したように、CPU31は、伴奏データ53に基づく伴奏音を出力し、これと並行して、タイミング情報と差分ΔTとに基づいて出力タイミングを調整しつつ歌唱音を出力する。ここで、伴奏音および歌唱音の代表的な同期出力の態様として、再生が採用される。従って、音出力装置103は、PC101のユーザの演奏を、伴奏と同期した状態で聴くことができる。
 なお、同期出力の態様は再生に限定されず、音声ファイルとして記憶部34へ記録してもよいし、各種I/F39を通じて外部装置へ送信してもよい。
 ステップS304では、CPU31は、選択曲が終了したか、すなわち、クラウドサーバ102から、選択曲が終了した旨の通知を受信したか否かを判別する。そして、選択曲が終了していない場合は、CPU31は、ステップS302に戻る。従って、選択曲が終了するまで、受信した歌唱音の同期出力が継続される。なお、CPU31は、最後に受信したデータの処理が終了してから所定時間が経過した場合に、選択曲が終了したと判別してもよい。選択曲が終了すると、CPU31は、音出力装置処理を終了させる。
 本実施の形態によれば、歌唱用データ51における進行位置をユーザに対して示しながら取得された音情報Nに対応する音節が、歌唱用データ51における複数の音節から特定される。音情報Nに相対情報(差分ΔT)が対応付けられ、特定された音節に基づいて歌唱音が合成される。相対情報に基づいて、歌唱音と伴奏データ53に基づく伴奏音とが同期して出力される。従って、伴奏と同期させて、音情報Nを入力したタイミングで歌唱音を出力することができる。
 また、音情報Nが音高情報を含む場合は、演奏により入力した音高で歌唱音を出力することができる。また、音情報Nがベロシティの情報を含む場合は、演奏した強さに応じた音量で歌唱音を出力することができる。
 なお、関連データ(歌唱用データ51、タイミング情報52、伴奏データ53)は、選択曲が決定された後にクラウドサーバ102や音出力装置103へ送信されたが、これに限定されない。例えば、事前に複数曲分の関連データをクラウドサーバ102や音出力装置103に予め保持させておいてもよい。そして、選択曲が決定されたときに、選択曲を特定する情報がクラウドサーバ102、さらには音出力装置103へ送信されるようにしてもよい。
 (第2の実施の形態)
 本発明の第2の実施の形態では、第1の実施の形態に対し、システム処理の一部が異なる。従って、図5、図6を参照し、主に第1の実施の形態との相違を説明する。第1の実施の形態では、演奏テンポは固定であったが、本実施の形態では、演奏テンポは可変であり、演奏者による演奏によって変化する。
 図6は、演奏により歌唱音を出力する処理のタイミングチャートである。歌唱用データ51における複数の音節の順番は予め決まっている。図6において、音節の進行表示においては、歌唱音出力システム1000は、音情報Nの入力を待つ状態で歌唱用データにおける次の音節をユーザに示し、音情報Nが入力されるごとに、進行位置を示す音節を次の音節へと1つ進行させる。従って、次の音節に対応する演奏入力があるまで、音節の進行表示は待ってくれる。なお、伴奏データの進行教示も、音節の進行と合わせて、演奏入力があるまで待ってくれる。
 クラウドサーバ102は、音情報Nが入力された時点で進行順における次の音節であったものを、入力された音情報Nに対応する音節として特定する。従って、キーオンするごとに対応する音節が順番に特定される。
 実際の入力開始タイミングsは、発音開始タイミングtに対してずれることがある。第1の実施の形態と同様に、クラウドサーバ102において、発音開始タイミングtに対する入力開始タイミングsのずれ時間が、時間的な差分ΔT(ΔT1~T3)(相対情報)として算出される。差分ΔTは、音節ごとに算出され、各音節に対応付けられる。クラウドサーバ102は、音情報Nに基づいて歌唱音を合成し、伴奏データ53とともに音出力装置103へ送る。
 図6において、音節発音開始タイミングt’(t1’~t3’)は、出力時の音節の発音開始タイミングである。音節発音開始タイミングt’は、入力開始タイミングsによって定まる。出力時の伴奏音の進行も、音節発音開始タイミングt’に依存して随時変化する。
 音出力装置103は、タイミング情報と差分ΔTとに基づいて出力タイミングを調整しつつ出力することで、歌唱音と、伴奏データ53に基づく伴奏音とを、同期させて出力する。その際、音出力装置103は、音節発音開始タイミングt’で、歌唱音を出力する。音出力装置103は、伴奏音については、差分ΔTに基づいて各音節と伴奏位置とを一致させながら出力する。音出力装置103は、各音節と伴奏位置とを一致させるために、ディレイ処理を用いて、伴奏音の出力を遅延させる。従って、歌唱音は演奏タイミングに応じたタイミングで出力され、伴奏音のテンポは演奏タイミングに合わせて変化する。
 図5のフローチャートに沿って、本実施の形態におけるシステム処理を説明する。特に言及しない部分は第1の実施の形態と同様である。
 PC101において、ステップS103で開始される教示処理では、CPU11(教示部41)は、タイミング情報52を用いて現在の進行位置を教示する。ステップS104では、CPU11(取得部42)は、音情報取得処理を実行する。ユーザは、進行位置を確認しながら、次の音節に対応する音を演奏入力する。CPU11は、次の音情報Nの入力があるまで音節の教示進行および伴奏進行を待機する。従って、CPU11は、音情報Nの入力を待つ状態で次の音節を教示し、音情報Nが入力されるごとに、進行位置を示す音節を次の音節へと1つ進行させる。CPU11は、伴奏進行も音節の教示進行に合わせる。
 クラウドサーバ102において、ステップS203で開始される一連の処理では、CPU21は、音情報Nの受信を待機しつつ時間を進行させる。ステップS204では、CPU21は、音情報Nを随時受信し、音情報Nを受信すると時間の進行を進める。従って、次の音情報Nの受信があるまで、時間の進行を待機する。
 音情報Nを受信すると、ステップS205で、CPU21(音節特定部43)は、受信した音情報Nに対応する音節を特定する。ここで、CPU21は、音情報Nが入力された時点で進行順における次の音節であったものを、今回受信した音情報Nに対応する音節として特定する。従って、演奏によるキーオンがあるごとに対応する音節が順番に特定される。
 音節を特定した後に、ステップS206で、CPU21は、差分ΔTを算出し、特定した音節に対応付ける。すなわち、図6に示すように、CPU21は、特定された音節に対応する発音開始タイミングtに対する入力開始タイミングsのずれ時間を差分ΔTとして求める。そして、CPU21は、特定された音節に、求めた差分ΔTを対応付ける。
 ステップS208でのデータ送信では、CPU21は、合成した歌唱音と、音節に対応する差分ΔTと、演奏時のベロシティとを、各種I/F29を通じて音出力装置103へ送信する。
 音出力装置103において、ステップS303で実行される同期出力処理では、CPU31(出力部46)は、受信した歌唱音および差分ΔTと、既に受信している伴奏データ53と、タイミング情報52とに基づいて、歌唱音および伴奏の同期出力を実行する。その際、CPU31は、差分ΔTを参照して伴奏音および歌唱音の出力タイミングを調整することで、各音節と伴奏位置とを一致させながら出力処理を行う。
 その結果、図6に示すように、歌唱音は入力タイミングの通りに(入力開始タイミングsで)出力開始される。例えば、発音開始タイミングt2より差分ΔT2だけ早いタイミングで音節「く」の出力(発音)が開始される。また、発音開始タイミングt3より差分ΔT3だけ遅いタイミングで音節「ら」の出力(発音)が開始される。各音節の発音は、入力終了タイミングeに対応する時刻に終了する。
 一方、伴奏音の演奏テンポは演奏タイミングに合わせて変化する。例えば、CPU31は、伴奏音については、発音開始タイミングt2の位置を発音開始タイミングt2’の位置に修正して出力する。
 従って、伴奏音は可変テンポで出力され、歌唱音は演奏タイミングに応じたタイミングで出力される。従って、伴奏と同期させて、音情報Nを入力したタイミングで歌唱音を出力することができる。
 本実施の形態によれば、教示部41は、音情報Nの入力を待つ状態で次の音節を示し、音情報Nが入力されるごとに、進行位置を示す音節を次の音節へと1つ進行させる。そして、音節特定部43は、音情報Nが入力された時点で進行順における次の音節であったものを、入力された音情報Nに対応する音節として特定する。よって、伴奏と同期させて、音情報Nを入力したタイミングで歌唱音を出力することに関し、第1の実施の形態と同様の効果を奏することができる。また、ユーザが自由なテンポで演奏した場合であっても、ユーザによる演奏テンポに従って、伴奏と同期させて歌唱音を出力することができる。
 なお、第1、第2の実施の形態において、音情報Nに対応付けられる相対情報は差分ΔTに限定されない。例えば、特定された音節に対する相対的なタイミングを示す相対情報は、タイミング情報52により規定されるある時刻を基準とした、音情報Nの相対時間および各音節の相対時間であってもよい。
 (第3の実施の形態)
 図1~図3、図7を参照して本発明の第3の実施の形態を説明する。ドラムのような、音高情報を入力できないデバイスを用いて歌唱音を発音させることができれば、楽しみが広がる。そこで、本実施の形態では、ドラム107を演奏入力に用いる。本実施の形態では、伴奏や音節の進行を教示することなく、ユーザがドラム107を自由に打撃演奏すると、それによって取得された1単位の一連の音情報Nごとに歌唱フレーズが生成される。歌唱音出力システム1000の基本構成は第1の実施の形態と同様である。本実施の形態では、ドラム107での演奏入力を想定しており、音高情報を有さないことが前提となるため、第1の実施の形態とは異なる制御が適用される。
 本実施の形態では、図3に示す教示部41、タイミング特定部44、歌唱用データ51、タイミング情報52、伴奏データ53は必須でない。フレーズ生成部47は、一連の音情報Nにおける個々の音情報Nのベロシティから、一連の音情報Nのアクセントを解析し、当該アクセントに基づいて一連の音情報Nに対応する複数の音節からなるフレーズを生成する。フレーズ生成部47は、予め用意された複数のフレーズを含んだフレーズデータベース54から、上記アクセントに合致するフレーズを抽出することで、一連の音情報Nに対応するフレーズを生成する。一連の音情報Nを構成する音節数を有するフレーズが抽出される。
 ここで、一連の音情報Nのアクセントは、音の相対的な強弱による強弱アクセントを指す。フレーズのアクセントは、各音節の相対的な音高の高低による高低アクセントを指す。従って、音情報Nの音の強弱が、フレーズの音高の高低に対応する。
 図7は、歌唱音出力システム1000で実行される演奏により歌唱音を出力するシステム処理を示すフローチャートである。このシステム処理における、PC処理、クラウドサーバ処理、音出力装置処理の実行主体、実行条件、開始条件は、図5で示したシステム処理と同様である。
 まず、PC処理について説明する。ステップS401では、PC101のCPU11は、ユーザからの指示に基づき、演奏開始状態へ移行する。その際、CPU11は、演奏開始状態へ移行した旨の通知を、各種I/F19を通じてクラウドサーバ102へ送信する。
 ステップS402では、CPU11(取得部42)は、ユーザがドラム107を打撃すると、それに応じた音情報Nを取得する。なお、音情報Nは、MIDIデータまたはアナログ音である。音情報Nは、入力開始タイミング(打撃オン)を示す情報とベロシティを示す情報とを少なくとも含む。
 ステップS403では、CPU11(取得部42)は、今回の一連の音情報Nが確定したか否かを判別する。例えばCPU11は、演奏開始状態への移行後、第1の所定時間内に最初の音情報Nが入力された場合において、最後の音情報Nが入力されてから第2の所定時間が経過すると、一連の音情報Nが確定したと判別する。一連の音情報Nとして、複数の音情報Nが一まとまりとなったものが想定されるが、1つの音情報Nであってもよい。
 ステップS404では、CPU11は、取得された一連の音情報Nをクラウドサーバ102へ送信する。ステップS405では、CPU11は、ユーザから、演奏状態の終了が指示されたか否かを判別する。そしてCPU11は、演奏終了が指示されていない場合はステップS402に戻り、演奏終了が指示された場合は、その旨の通知をクラウドサーバ102に送信すると共に、PC処理を終了させる。従って、一まとまりの一連の音情報Nが確定するごとに、当該一連の音情報Nが送信される。
 次に、クラウドサーバ処理について説明する。CPU21は、演奏開始状態へ移行した旨の通知を受信すると、ステップS501で、一連の処理(S502~S506)を開始する。ステップS502では、CPU21は、ステップS404でPC101から送信された一連の音情報Nを受信する。
 ステップS503では、CPU21(フレーズ生成部47)は、今回の一連の音情報Nに対して1つのフレーズを生成する。その手法を以下に例示する。例えば、CPU21は、個々の音情報Nのベロシティから一連の音情報Nのアクセントを解析し、当該アクセントと一連の音情報Nを構成する音節数とに合致するフレーズを、フレーズデータベース54から抽出する。その際、条件により抽出範囲を絞ってもよい。例えば、フレーズデータベース54は条件ごとに分類されていて、「名詞」、「くだもの」、「文房具」、「色」、「大きさ」等の条件の少なくとも1つをユーザが設定できるようにしてもよい。
 例えば、音情報Nの数が4つで、条件が「くだもの」の場合を考える。解析したアクセントが「強・弱・弱・弱」であったとすると、「ドリアン」が抽出され、アクセントが「弱・強・弱・弱」であったとすると、「オレンジ」が抽出される。音情報Nの数が4つで、条件が「文房具」の場合を考える。解析したアクセントが「強・弱・弱・弱」であったとすると、「コンパス」が抽出され、アクセントが「弱・強・弱・弱」であったとすると、「クレヨン」が抽出される。なお、条件を設定することは必須でない。
 ステップS504では、CPU21(合成部45)は、生成したフレーズから歌唱音を合成する。歌唱音の音高は、フレーズに設定されている各音節の音高に準じてもよい。ステップS505では、CPU21は、歌唱音を、各種I/F29を通じて音出力装置103へ送信する。
 ステップS506では、CPU21は、PC101から、演奏終了が指示された旨の通知を受信したか否かを判別する。そしてCPU21は、演奏終了が指示された旨の通知を受信していない場合は、ステップS502に戻る。CPU21は、演奏終了が指示された旨の通知を受信した場合は、演奏終了が指示された旨の通知を音出力装置103へ送信すると共に、クラウドサーバ処理を終了させる。
 次に、音出力装置処理を説明する。ステップS601で、音出力装置103のCPU31は、各種I/F39を通じて歌唱音を受信すると、ステップS602に進む。ステップS602では、CPU31(出力部46)は、受信した歌唱音を出力する。各音節の出力タイミングは、対応する音情報Nの入力タイミングに依存する。ここでいう出力の態様は、第1の実施の形態と同様に、再生に限らない。
 ステップS603では、クラウドサーバ102から、演奏終了が指示された旨の通知を受信したか否かを判別する。そしてCPU31は、演奏終了が指示された旨の通知を受信していない場合はステップS601に戻り、演奏終了が指示された旨の通知を受信した場合は、音出力装置処理を終了させる。従って、CPU31は、フレーズの歌唱音を受信するごとに随時出力する。
 本実施の形態によれば、演奏入力のタイミングと強さに応じた歌唱音を出力することができる。
 なお、本実施の形態において、ヘッドへの打撃とリムへの打撃(リムショット)とで音色が異なることから、この音色の違いもフレーズ生成のパラメータに用いてもよい。例えば、ヘッドへの打撃とリムショットとで、フレーズ抽出用の上記条件を異ならせてもよい。
 なお、打撃により音が発生するものとしては、ドラムに限定されず、手を叩く手拍子であってもよい。なお、電子ドラムを用いる場合は、ヘッドにおける打撃位置を検出し、打撃位置の違いもフレーズ生成のパラメータに用いてもよい。
 なお、本実施の形態において、取得できる音情報Nが音高情報を含む場合は、音高の高低をアクセントに置き換え、ドラム打撃時と同じような処理を行ってもよい。例えば、ピアノで「ド・ミ・ド」と演奏した場合、ドラムで「弱・強・弱」と演奏された場合に相当するフレーズを抽出してもよい。
 なお、上記各実施の形態において、音出力装置103で複数の歌唱ボイス(複数ジェンダー等)を備える場合は、音情報Nに応じて、使用する歌唱ボイスを切り替えてもよい。例えば、音情報Nがオーディオデータの場合、その音色に応じて歌唱ボイスを切り替えてもよい。音情報NがMIDIデータである場合、PC101で設定されている音色や他のパラメータに応じて歌唱ボイスを切り替えてもよい。
 なお、上記各実施の形態において、歌唱音出力システム1000が、PC101、クラウドサーバ102および音出力装置103を含むことは必須でない。クラウドサーバを経由するシステムに限定されることもない。すなわち、図3に示す各機能部が、いずれの装置で実現されてもよいし、1つの装置で実現されてもよい。仮に上記の各機能部が、一体となった1つの装置で実現される場合、その装置は歌唱音出力システムと呼称されなくてもよく、歌唱音出力装置と呼称されてもよい。
 なお、上記各実施の形態において、図3に示す各機能部の少なくとも一部を、AI(Artificial Intelligence)によって実現してもよい。
 以上、本発明をその好適な実施形態に基づいて詳述してきたが、本発明はこれら特定の実施形態に限られるものではなく、この発明の要旨を逸脱しない範囲の様々な形態も本発明に含まれる。上述の実施形態の一部を適宜組み合わせてもよい。
 なお、本発明を達成するためのソフトウェアによって表される制御プログラムを記憶した記憶媒体を、本システムに読み出すことによって、本発明と同様の効果を奏するようにしてもよく、その場合、記憶媒体から読み出されたプログラムコード自体が本発明の新規な機能を実現することになり、そのプログラムコードを記憶した、非一過性のコンピュータ読み取り可能な記録媒体は本発明を構成することになる。また、プログラムコードを伝送媒体等を介して供給してもよく、その場合は、プログラムコード自体が本発明を構成することになる。なお、これらの場合の記憶媒体としては、ROMのほか、フロッピディスク、ハードディスク、光ディスク、光磁気ディスク、CD-ROM、CD-R、磁気テープ、不揮発性のメモリカード等を用いることができる。非一過性のコンピュータ読み取り可能な記録媒体としては、インターネット等のネットワークや電話回線等の通信回線を介してプログラムが送信された場合のサーバやクライアントとなるコンピュータシステム内部の揮発性メモリ(例えばDRAM(Dynamic Random Access Memory))のように、一定時間プログラムを保持しているものも含む。
41 教示部
42 取得部
43 音節特定部
44 タイミング特定部
46 出力部
1000 歌唱音出力システム

Claims (20)

  1.  伴奏データに時間的に対応付けられ且つ複数の音節を含む歌唱用データにおける進行位置をユーザに対して示す教示部と、
     演奏によって入力された少なくとも1つの音情報を取得する取得部と、
     前記取得部により取得された前記音情報に対応する音節を前記歌唱用データにおける複数の音節から特定する音節特定部と、
     前記音情報に、前記特定された音節に対する相対的なタイミングを示す相対情報を対応付けるタイミング特定部と、
     前記特定された音節に基づいて歌唱音を合成する合成部と、
     前記相対情報に基づいて、前記合成部により合成された前記歌唱音と前記伴奏データに基づく伴奏音とを同期させて出力する出力部と、
    を有する、歌唱音出力システム。
  2.  前記音情報は、少なくとも音高情報を含み、
     前記合成部は、前記特定された音節と前記音高情報とに基づいて前記歌唱音を合成する、請求項1に記載の歌唱音出力システム。
  3.  前記教示部は、前記歌唱用データにおける音節に対応して表示された歌詞上で前記進行位置を示す、請求項1または2に記載の歌唱音出力システム。
  4.  前記教示部は、予め設定されたテンポで前記伴奏データを再生することで、前記歌唱用データにおける前記進行位置を示す、請求項1または2に記載の歌唱音出力システム。
  5.  前記音節特定部は、前記歌唱用データにおける複数の音節のうち、前記伴奏データとの時間的対応関係によって規定される発音開始タイミングと前記音情報の入力開始タイミングとの差分が最も小さい音節を、前記音情報に対応する音節として特定する、請求項1乃至4のいずれか1項に記載の歌唱音出力システム。
  6.  前記相対情報は前記差分である、請求項5に記載の歌唱音出力システム。
  7.  前記伴奏データと前記歌唱用データにおける複数の音節とは、タイミング情報によって時間的に対応付けられており、
     前記出力部は、前記伴奏音の出力と並行して、前記歌唱音を、前記タイミング情報と前記相対情報とに基づいて出力タイミングを調整しつつ出力することで、前記歌唱音と前記伴奏音とを同期させて出力する、請求項1乃至6のいずれか1項に記載の歌唱音出力システム。
  8.  前記歌唱用データにおける音節の順番は予め決まっており、
     前記教示部は、音情報の入力を待つ状態で前記歌唱用データにおける次の音節を示し、音情報が入力されるごとに、進行位置を示す音節を次の音節へと1つ進行させ、
     前記音節特定部は、音情報が入力された時点で進行順における次の音節であったものを、入力された前記音情報に対応する音節として特定する、請求項1乃至3のいずれか1項に記載の歌唱音出力システム。
  9.  前記伴奏データと前記歌唱用データにおける複数の音節とは、タイミング情報によって時間的に対応付けられており、
     前記タイミング特定部は、前記特定された音節の、前記伴奏データとの時間的対応関係によって規定される発音開始タイミングと前記音情報の入力開始タイミングとの差分を前記相対情報として求め、
     前記出力部は、前記歌唱音および前記伴奏音を、前記タイミング情報と前記差分とに基づいて出力タイミングを調整しつつ出力することで、前記歌唱音と前記伴奏音とを同期させて出力する、請求項8に記載の歌唱音出力システム。
  10.  タイミングを示す情報とベロシティを示す情報とを少なくとも含む一連の音情報を取得する取得部と、
     前記取得部により取得された前記一連の音情報における個々の音情報のベロシティから前記一連の音情報のアクセントを解析し、当該アクセントに基づいて前記一連の音情報に対応する複数の音節からなるフレーズを生成するフレーズ生成部と、
     前記フレーズ生成部により生成されたフレーズの音節に基づいて歌唱音を合成する合成部と、
     前記合成部により合成された歌唱音を出力する出力部と、を有する、歌唱音出力システム。
  11.  前記フレーズ生成部は、予め用意されたフレーズのデータベースから、前記アクセントに合致するフレーズを抽出することで前記一連の音情報に対応するフレーズを生成する、請求項10に記載の歌唱音出力システム。
  12.  伴奏データに時間的に対応付けられ且つ複数の音節を含む歌唱用データにおける進行位置をユーザに対して示し、
     演奏によって入力された少なくとも1つの音情報を取得し、
     取得された前記音情報に対応する音節を前記歌唱用データにおける複数の音節から特定し、
     前記音情報に、前記特定された音節に対する相対的なタイミングを示す相対情報を対応付け、
     前記特定された音節に基づいて歌唱音を合成し、
     前記相対情報に基づいて、合成された前記歌唱音と前記伴奏データに基づく伴奏音とを同期させて出力する、
    歌唱音出力方法。
  13.  前記音情報は、少なくとも音高情報を含み、
     前記歌唱音を合成する際、前記特定された音節と前記音高情報とに基づいて前記歌唱音を合成する、請求項12に記載の歌唱音出力方法。
  14.  前記進行位置を示す際、前記歌唱用データにおける音節に対応して表示された歌詞上で前記進行位置を示す、請求項12または13に記載の歌唱音出力方法。
  15.  前記進行位置を示す際、予め設定されたテンポで前記伴奏データを再生することで、前記歌唱用データにおける前記進行位置を示す、請求項12または13に記載の歌唱音出力方法。
  16.  前記音情報に対応する音節を特定する際、前記歌唱用データにおける複数の音節のうち、前記伴奏データとの時間的対応関係によって規定される発音開始タイミングと前記音情報の入力開始タイミングとの差分が最も小さい音節を、前記音情報に対応する音節として特定する、請求項12乃至15のいずれか1項に記載の歌唱音出力方法。
  17.  前記相対情報は前記差分である、請求項16に記載の歌唱音出力方法。
  18.  前記伴奏データと前記歌唱用データにおける複数の音節とは、タイミング情報によって時間的に対応付けられており、
     前記歌唱音を出力する際、前記伴奏音の出力と並行して、前記歌唱音を、前記タイミング情報と前記相対情報とに基づいて出力タイミングを調整しつつ出力することで、前記歌唱音と前記伴奏音とを同期させて出力する、請求項12乃至17のいずれか1項に記載の歌唱音出力方法。
  19.  前記歌唱用データにおける音節の順番は予め決まっており、
     前記進行位置を示す際、音情報の入力を待つ状態で前記歌唱用データにおける次の音節を示し、音情報が入力されるごとに、進行位置を示す音節を次の音節へと1つ進行させ、
     前記音情報に対応する音節を特定する際、音情報が入力された時点で進行順における次の音節であったものを、入力された前記音情報に対応する音節として特定する、請求項12乃至14のいずれか1項に記載の歌唱音出力方法。
  20.  前記伴奏データと前記歌唱用データにおける複数の音節とは、タイミング情報によって時間的に対応付けられており、
     前記音情報に前記相対情報を対応付ける際、前記特定された音節の、前記伴奏データとの時間的対応関係によって規定される発音開始タイミングと前記音情報の入力開始タイミングとの差分を前記相対情報として求め、
     前記歌唱音を出力する際、前記歌唱音および前記伴奏音を、前記タイミング情報と前記差分とに基づいて出力タイミングを調整しつつ出力することで、前記歌唱音と前記伴奏音とを同期させて出力する、請求項19に記載の歌唱音出力方法。
PCT/JP2021/013379 2021-03-29 2021-03-29 歌唱音出力システムおよび方法 WO2022208627A1 (ja)

Priority Applications (4)

Application Number Priority Date Filing Date Title
PCT/JP2021/013379 WO2022208627A1 (ja) 2021-03-29 2021-03-29 歌唱音出力システムおよび方法
JP2023509935A JPWO2022208627A1 (ja) 2021-03-29 2021-03-29
CN202180096124.2A CN117043846A (zh) 2021-03-29 2021-03-29 歌唱音输出系统及方法
US18/475,309 US20240021183A1 (en) 2021-03-29 2023-09-27 Singing sound output system and method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2021/013379 WO2022208627A1 (ja) 2021-03-29 2021-03-29 歌唱音出力システムおよび方法

Related Child Applications (1)

Application Number Title Priority Date Filing Date
US18/475,309 Continuation US20240021183A1 (en) 2021-03-29 2023-09-27 Singing sound output system and method

Publications (1)

Publication Number Publication Date
WO2022208627A1 true WO2022208627A1 (ja) 2022-10-06

Family

ID=83455800

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2021/013379 WO2022208627A1 (ja) 2021-03-29 2021-03-29 歌唱音出力システムおよび方法

Country Status (4)

Country Link
US (1) US20240021183A1 (ja)
JP (1) JPWO2022208627A1 (ja)
CN (1) CN117043846A (ja)
WO (1) WO2022208627A1 (ja)

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH09281970A (ja) * 1996-04-16 1997-10-31 Roland Corp 電子楽器
JP2014062969A (ja) * 2012-09-20 2014-04-10 Yamaha Corp 歌唱合成装置および歌唱合成プログラム
JP2016080827A (ja) * 2014-10-15 2016-05-16 ヤマハ株式会社 音韻情報合成装置および音声合成装置
JP2020013145A (ja) * 2019-09-10 2020-01-23 カシオ計算機株式会社 電子楽器、電子楽器の制御方法、及びプログラム

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH09281970A (ja) * 1996-04-16 1997-10-31 Roland Corp 電子楽器
JP2014062969A (ja) * 2012-09-20 2014-04-10 Yamaha Corp 歌唱合成装置および歌唱合成プログラム
JP2016080827A (ja) * 2014-10-15 2016-05-16 ヤマハ株式会社 音韻情報合成装置および音声合成装置
JP2020013145A (ja) * 2019-09-10 2020-01-23 カシオ計算機株式会社 電子楽器、電子楽器の制御方法、及びプログラム

Also Published As

Publication number Publication date
JPWO2022208627A1 (ja) 2022-10-06
CN117043846A (zh) 2023-11-10
US20240021183A1 (en) 2024-01-18

Similar Documents

Publication Publication Date Title
JP4735544B2 (ja) 歌唱合成のための装置およびプログラム
EP1849154B1 (en) Methods and apparatus for use in sound modification
JPH0944171A (ja) カラオケ装置
JP2008015195A (ja) 楽曲練習支援装置
JP7476934B2 (ja) 電子楽器、電子楽器の制御方法、及びプログラム
JP2003241757A (ja) 波形生成装置及び方法
JP2006215204A (ja) 音声合成装置およびプログラム
JP4274272B2 (ja) アルペジオ演奏装置
TW201027514A (en) Singing synthesis systems and related synthesis methods
JP4038836B2 (ja) カラオケ装置
JP4844623B2 (ja) 合唱合成装置、合唱合成方法およびプログラム
JP6171393B2 (ja) 音響合成装置および音響合成方法
WO2022208627A1 (ja) 歌唱音出力システムおよび方法
JP4304934B2 (ja) 合唱合成装置、合唱合成方法およびプログラム
JP6167503B2 (ja) 音声合成装置
JPH11282483A (ja) カラオケ装置
JP2002229567A (ja) 波形データ録音装置および録音波形データ再生装置
Dannenberg Human computer music performance
JP5106437B2 (ja) カラオケ装置及びその制御方法並びにその制御プログラム
JP2022065554A (ja) 音声合成方法およびプログラム
JP2001125599A (ja) 音声データ同期装置及び音声データ作成装置
JP2002221978A (ja) ボーカルデータ生成装置、ボーカルデータ生成方法および歌唱音合成装置
WO2022080395A1 (ja) 音声合成方法およびプログラム
WO2023171522A1 (ja) 音響生成方法、音響生成システムおよびプログラム
JP3457582B2 (ja) 楽曲の自動表情付装置

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 21934800

Country of ref document: EP

Kind code of ref document: A1

ENP Entry into the national phase

Ref document number: 2023509935

Country of ref document: JP

Kind code of ref document: A

WWE Wipo information: entry into national phase

Ref document number: 202180096124.2

Country of ref document: CN

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 21934800

Country of ref document: EP

Kind code of ref document: A1