WO2015194423A1 - 文字に基づく音声生成のためのコントローラ及びシステム - Google Patents

文字に基づく音声生成のためのコントローラ及びシステム Download PDF

Info

Publication number
WO2015194423A1
WO2015194423A1 PCT/JP2015/066659 JP2015066659W WO2015194423A1 WO 2015194423 A1 WO2015194423 A1 WO 2015194423A1 JP 2015066659 W JP2015066659 W JP 2015066659W WO 2015194423 A1 WO2015194423 A1 WO 2015194423A1
Authority
WO
WIPO (PCT)
Prior art keywords
voice
character
pitch
selector
characters
Prior art date
Application number
PCT/JP2015/066659
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 EP15809992.9A priority Critical patent/EP3159892B1/en
Priority to CN201580032999.0A priority patent/CN106463111B/zh
Priority to US15/530,259 priority patent/US10192533B2/en
Priority to JP2016529261A priority patent/JP6399091B2/ja
Publication of WO2015194423A1 publication Critical patent/WO2015194423A1/ja

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/0008Associated control or indicating means
    • 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/02Means for controlling the tone frequencies, e.g. attack or decay; Means for producing special musical effects, e.g. vibratos or glissandos
    • G10H1/04Means for controlling the tone frequencies, e.g. attack or decay; Means for producing special musical effects, e.g. vibratos or glissandos by additional modulation
    • G10H1/053Means for controlling the tone frequencies, e.g. attack or decay; Means for producing special musical effects, e.g. vibratos or glissandos by additional modulation during execution only
    • 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
    • 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
    • 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/033Voice editing, e.g. manipulating the voice of the synthesiser
    • 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/033Voice editing, e.g. manipulating the voice of the synthesiser
    • G10L13/0335Pitch control
    • 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/08Text analysis or generation of parameters for speech synthesis out of text, e.g. grapheme to phoneme translation, prosody generation or stress or intonation determination
    • G10L13/10Prosody rules derived from text; Stress or intonation
    • 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/155User input interfaces for electrophonic musical instruments
    • G10H2220/315User input interfaces for electrophonic musical instruments for joystick-like proportional control of musical input; Videogame input devices used for musical input or control, e.g. gamepad, joysticks
    • 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

Definitions

  • the present invention relates to a technology for generating text-based speech at a designated pitch.
  • Patent Document 1 discloses a technique of performing update control of the singing position in the lyrics indicated by the lyrics data in response to the reception of the performance data (pitch data). That is, there is disclosed a technique of playing a melody by user operation on an operation unit such as a keyboard and advancing a lyric in synchronization with the progression of the melody performance.
  • controllers of various shapes have been developed in electronic musical instruments, and provided with a grip portion by protruding from the main body of the keyboard musical instrument, in order to detect an arbitrary operation portion or an appropriate manual operation in the grip portion. It is known to provide a detection unit of (see, for example, Patent Documents 2 and 3).
  • Patent Document 4 a technique of displaying a plurality of lyrics on the display means, selecting an arbitrary section of the lyrics by the operation of the operation means, and outputting the selected section as singing voice of the designated pitch It is disclosed.
  • the disclosed syllable is pronounced at the pitch designated by the keyboard. It is done.
  • the present invention has been made in view of the above-mentioned point, and in the technology of generating a voice based on a predefined character string such as a lyrics according to the pitch to be played, a change of the voice to be generated, etc. It is an object of the present invention to make it possible to easily perform an ad-liberation performance, and thereby to make it possible to widen the range of expression in character-based speech generation. Another object of the present invention is to make it possible to select repeat objects without relying on vision.
  • a controller for a voice generation device said voice generation device being a voice corresponding to specified one or more characters in a predefined character string
  • a character selector configured to be operable by a user to designate the one or more characters in the string, and the controller is generated by the voice generation device.
  • a voice control operator configured to be operable by a user to control the state of the voice.
  • a system comprising the controller and the audio generation device.
  • a voice corresponding to the one or more characters in the character string designated according to the operation of the character selector is generated from the voice generation device, and the generated voice is operated by the voice control operator. Since the control can be arbitrarily performed in accordance with the above, it is possible to easily change the sound to be generated in response to the user's operation, etc., even though the sound is generated based on a predetermined character string. Therefore, in the case of generating the voice corresponding to the character such as the lyrics in synchronization with the music performance, the controllability by the user can be enhanced, and the ad-lib performance of the lyric voice generation can be easily performed. This makes it possible to widen the range of expression in character-based speech generation.
  • the controller comprises a grip suitable for being grasped by the user's hand, and the character selector and the voice control operator are respectively provided on the grip.
  • the character selector and the voice control operator are respectively provided on the grip in an arrangement that can be operated by different fingers of the user holding the grip.
  • one of the character selector and the voice control operator is operated by the thumb of the user, and the other is operated by the other finger of the user.
  • the character selector and the voice control operator are respectively disposed on different sides of the grip. As described above, in the configuration in which the character selector and the voice control operator are arranged on one grip, the character selector and the voice control operator can be operated by using either of the fingers of the user holding the grip. It is suitable to operate both properly. Therefore, it is possible to easily operate the character selector and the voice control operator on the grip while playing the keyboard instrument or the like with another hand.
  • a character information acquisition unit for acquiring information specifying one or more characters in a predetermined character string, and the specified one or more characters based on the acquired information.
  • the voice generation unit repeatedly generates a voice generation unit that generates a corresponding voice, a repeat target reception unit that receives information specifying the voice being generated as a repeat target, and the voice specified as the repeat target
  • An audio generation device comprising a processor configured to function as a repeat control unit to control. According to this, by listening to the audio sequentially generated by the audio generation unit as an audible sound, the user aurally quickly determines whether the audio generated in real time is suitable for designation as a repeat target. And it can be specified (selected). Therefore, characters to be repeated can be selected without relying on vision.
  • the flowchart which shows an example (key on processing) of voice generation processing.
  • the flowchart which shows an example (key off processing) of voice generation processing.
  • FIG. 6 is a flowchart illustrating an example of a repeat target selection process.
  • the figure which shows the example of a change of the grip shape of a controller.
  • the figure which shows an example of the character string of the Japanese lyrics.
  • the top view which shows another example of the character selector provided in a controller.
  • FIG. 8 is a view showing an example of syllable integration processing and syllable separation processing according to the operation of the character selector of FIG. 7;
  • FIG. 1A is a view schematically showing an electronic keyboard instrument 10 as a system provided with a controller 10a and an audio generation device 10b according to an embodiment of the present invention.
  • the keyboard instrument 10 includes a rectangular parallelepiped main body 10b and a prismatic controller 10a.
  • the main unit 10 b of the keyboard instrument 10 functions as an example of a sound generating device that electronically generates arbitrary musical tones and sounds, and includes a pitch selector 50 and an input / output unit 60.
  • the pitch selector 50 is an operator operated by the user to designate the pitch of the musical tone or voice to be played, and is constituted by a plurality of keys including, for example, a white key and a black key.
  • Shoulder straps are connected to the attachment positions P 1 and P 2 at both ends of the main body 10 b of the keyboard instrument 10 in the present embodiment.
  • the user can place the keyboard instrument 10 in front of the body with the shoulder strap held on the shoulder, and perform playing by operating the pitch selector (keyboard) 50 with one hand.
  • FIG. 1A upper, lower, left, and right directions viewed from the user when the user plays the keyboard instrument 10 in such a manner are noted.
  • the directions referred to in the present specification refer to the directions of up, down, left, right, front, and rear as viewed from the user who plays the keyboard instrument 10.
  • the pitch selector 50 is not limited to the keyboard type pitch operation specification operation elements, and any type of performance operation elements may be used. In short, it is necessary to specify some pitch in accordance with the user's operation. What is necessary is just to be configured to be able to
  • the input / output unit 60 includes an input unit for inputting an instruction or the like from the user, and an output unit (display and speaker) for outputting various information (image information and audio information) to the user.
  • an output unit display and speaker
  • FIG. 1A as an example, a rotation switch as an input unit and a display as an output unit included in the keyboard instrument 10 are shown in broken lines.
  • the controller 10a is in a direction (left direction seen from the user playing the keyboard instrument 10: see FIG. 1A) substantially perpendicular to the side (the left side in the example of FIG. 1A) of the main body (voice generation device) 10b. It protrudes.
  • the outer shape of the controller 10a is substantially columnar. The size of the outer periphery of the substantially columnar portion is such that the user can hold it with one hand, so that the portion of the controller 10a protruding from the main body 10b constitutes a grip G.
  • the shape of the cross section in the direction perpendicular to the axis extending in the longitudinal direction (left and right direction in FIG. 1A) of the grip G is constant regardless of the cutting position.
  • the controller 10a may be integrally and indivisiblely coupled to the main body (voice generation device) 10b, or may be configured to be detachable from the main body (voice generation device) 10b. Alternatively, it may be separated from the main body (voice generation device) 10b and can communicate with the main body (voice generation device) 10b in a wired or wireless manner.
  • FIG. 1B is a schematic view showing a state in which the controller 10a is viewed with the direction from the left to the right shown in FIG. 1A as the viewing direction, and shows an example in which the user grips the grip G.
  • the cross section in the direction perpendicular to the axis of the grip G is shaped like a rounded corner of a rectangle. That is, while the field which constitutes the front and back and the upper and lower sides of grip G is a plane, it is in the state where a curved surface or a slope was formed between each plane (the state where it was chamfered).
  • the grip G of the controller 10a is provided with a character selector 60a, an audio control operator 60b, and a repeat operator 60c that can function as part of the input / output unit 60 of the keyboard instrument 10. That is, a signal and / or information generated in response to the operation of any of the character selector 60a, the voice control operator 60b, and the repeat operator 60c provided in the controller 10a is the main body (voice generation device) of the keyboard instrument 10. 10b and treated as input signals and / or information by the user.
  • the character selector 60a is configured to be operable by the user to designate one or more characters in a predetermined character string (for example, lyrics), and includes a push button type switch as described later.
  • the character selector 60a is disposed on a curved surface or a bevel (a chamfered portion) formed between the upper surface and the rear surface of the grip (see FIG. 1B). By arranging the character selector 60 a in this manner, it becomes easy to operate the character selector 60 a with the thumb of the hand holding the grip G.
  • the repeat operator 60c is an operator for performing an input related to repeat performance.
  • the repeat operator 60c is also a push button type switch, and the repeat operator 60c is disposed on a curved surface or a slope (a chamfered portion) formed between planes forming the upper and the rear of the grip G. (See FIG. 1B).
  • the direction in which the grip G extends in the respective buttons Mcf, Mcb, Mpf, and Mpb of the character selector 60a and the button of the repeat operator 60c on the curved surface or inclined surface (the chamfered portion) (FIG. 1A) It is arranged in a line along the left and right direction).
  • the voice control operator 60b is configured to be operable by the user to control the state of the voice generated by the voice generation device 10b. As an example, according to the operation of the voice control operator 60b, the pitch of the generated voice can be controlled.
  • the voice control operator 60b is disposed on a plane that forms the front of the grip G (see FIG. 1B). As an example, the voice control operator 60b is a long thin film touch sensor, and detects a touch operation position (for example, a one-dimensional position in the longitudinal direction) of a detection target (a finger in this embodiment) on the operation surface It is configured to be able to.
  • the voice control operator 60b is disposed at the front of the grip G so that the short side of the rectangular touch sensor is parallel to the vertical direction and the long side of the rectangular is parallel to the horizontal direction (see FIG. 1A). It is attached to the surface.
  • the user operates the character selector 60a, the voice control operator 60b and the repeat operator 60c while holding the grip G of the controller 10a with the left hand as shown in FIG. 1B. Specifically, the user holds the grip G of the controller 10a from below with the palm of the left hand, and holds the grip G with the thumb placed backward and the other fingers placed forward.
  • the character selector 60a and the repeat operator 60c exist on the curved surface or the slope between the rear surface and the upper surface of the grip G, the character selector 60a and the repeat selector 60c can be easily operated by the thumb as shown in FIG. 1B.
  • the repeat operator 60c is disposed.
  • the voice control operator 60b when the user grips the grip G, the voice control operator 60b is present on the front face of the grip G, so fingers (forefinger etc.) other than the thumb as shown in FIG. 1B.
  • the voice control operator 60b is disposed at a position where it is easy to operate. Therefore, in the present embodiment, when the user operates the character selector 60a or the repeat operator 60c with the thumb while gripping the grip G, the voice control operator 60b is formed at the portion where the other finger is disposed. It will be.
  • the user while holding the grip G of the controller 10a with one hand, the user can operate the character selector 60a and the repeat operator 60c with the thumb of the hand, and the other finger of the hand Can operate the voice control operator 60b. Therefore, the voice control operator 60b and the character selector 60 (or the repeat operator 60c) can be easily operated simultaneously with one hand. Furthermore, the operation with respect to the voice control operator 60b with one hand as described above is similar to the operation when pressing the fret of the guitar, and the user performs the voice control operation in the same operation as the operation with the fret of the guitar. By touching the child 60b, the generation mode can be controlled in accordance with the contact position.
  • the portion where the hand contacts the controller 10a when the user holds the controller 10a is a flat surface or a curved surface or a slope, and the pointed portion does not touch the hand. Therefore, the user can slide the hand repeatedly along the longitudinal direction (left and right direction shown in FIG. 1A) of the voice control operator 60b without hurting the hand.
  • the arrangement for facilitating simultaneous operation of the character selector 60a and the voice control operator 60b is not limited to the example shown in the drawings. The point is that the character selector 60a and the character selector 60a may be operated by a finger holding the grip G It may be arranged such that while one of the voice control operators 60b is being operated, the other can be operated by another finger of the hand.
  • FIG. 1C is a block diagram showing a configuration for generating and outputting sound in the keyboard instrument 10.
  • the keyboard instrument 10 includes a CPU 20, a non-volatile memory 30, a RAM 40, a pitch selector 50, an input / output unit 60, and a sound output unit 70.
  • the sound output unit 70 may include a circuit for outputting sound and a speaker (not shown in FIG. 1A).
  • the CPU 20 can execute the program recorded in the non-volatile memory 30 using the RAM 40 as a temporary storage area.
  • the voice generation program 30a, the character information 30b, and the voice segment database 30c are recorded in advance.
  • the character information 30 b is information of a predefined character string such as a lyric, and includes, for example, information of a plurality of characters constituting the character string and information indicating the order of each character in the character string.
  • the character information 30 b is text data in which a code indicating a character is described in accordance with the order.
  • the data of the lyrics stored in advance in the non-volatile memory 30 may be for only one song, may be for a plurality of songs, or may be only one phrase of a part of the songs.
  • the voice segment database 30c is data for reproducing a person's singing voice, and in the present embodiment, the voice waveform when the voice indicated by the character is pronounced at the reference pitch is collected in advance, and the voice segment database 30c is short. It is generated by dividing into speech segments of a period and converting the waveform data indicating the speech segments into a database. That is, the voice
  • the speech segment database 30c includes CV (transition from consonant to vowel), VV (transition from vowel to other vowel), VC (transition from vowel to consonant), etc. It is a collection of waveform data such as a voice transition part (Articulation) and a vowel v unison sound (Stationary). That is, the voice
  • These speech segment data are data created on the basis of speech segments extracted from speech waveforms uttered by real people.
  • speech segment data to be combined when reproducing an arbitrary character or an arbitrary character string is determined in advance and recorded in the non-volatile memory 30 (not shown) ).
  • the CPU 20 refers to the non-volatile memory 30 according to an arbitrary character or character string indicated by the character information 30b, and selects voice segment data to be combined. Then, when the voice segment data selected by the CPU 20 are combined, waveform data for reproducing voice indicated by an arbitrary character or an arbitrary character string is generated.
  • the speech segment database 30c may be prepared for various languages, or may be prepared according to gender of the speaker, characteristics of the speech, and the like.
  • the waveform data constituting the voice segment database 30c may be data obtained by dividing a sample sequence obtained by sampling the waveform of the voice segment at a predetermined sampling rate into frames of a predetermined time length, or for the data It may be spectrum data (amplitude spectrum and phase spectrum) for each frame obtained by performing FFT (Fast Fourier Transform).
  • FFT Fast Fourier Transform
  • the CPU 20 can execute the voice generation program 30 a recorded in the non-volatile memory 30.
  • the CPU 20 performs processing of the voice generation program 30a to generate a voice signal corresponding to the character defined as the character information 30b at the pitch designated by the user with the pitch selector 50. Do. Then, the CPU 20 outputs, to the sound output unit 70, an instruction to output a sound in accordance with the generated sound signal.
  • the sound output unit 70 generates an analog waveform signal for outputting the sound, amplifies the signal, and outputs the sound from the speaker.
  • the character string defined in advance is not limited to the lyrics of an existing song previously associated with a predetermined music, and may be any character such as a poem, a rhyme, an ordinary sentence, etc. It may consist of a row. However, in the embodiment described below, it is assumed that the sound corresponding to the character string of the lyrics related to the specific music is generated. As is well known, the progression of notes and the progression of lyrics in the music are associated in advance with a predetermined relationship. In that case, one note may correspond to one syllable, may correspond to multiple syllables, or may be a sustained portion of a syllable generated corresponding to the immediately preceding note.
  • the units (numbers) of characters that can be associated with one note also differ.
  • one syllable can be expressed by one kana character
  • the lyrics can be associated with each note in one kana character unit.
  • one syllable is generally represented by one or more characters, and thus it is possible to correspond to individual notes in syllable units instead of one character units.
  • the number of characters constituting one syllable may be one or more. The concept derived from this is that the number of characters for specifying the speech to be generated corresponding to one syllable is one or more regardless of the character under any language system. In this sense, in the present invention, one or more characters designated for speech generation is sufficient to identify one or more syllables (including syllables containing only consonants) necessary for speech generation. It is.
  • one or more characters in a character string (lyric) are sequentially advanced according to the character progression order in the character string (lyric) in synchronization with the user's pitch designation operation using the pitch selector 50. Is adopted. To that end, each character in the character string (lyric) is divided into groups of one or more characters in association with the individual note to which it is assigned, and each group is ranked in order of progress. 6A and 6B show an example of such character group ranking.
  • FIG. 6A shows an example of a Japanese lyric string, and the notes of the corresponding melody are shown in staff notation.
  • FIG. 6B shows an example of an English lyric string, and the notes of the corresponding melody are shown in staff notation.
  • the character information 30b recorded in the volatile memory 30 includes character data stored readably in such a state that each character in the lyrics character string is divided into a group consisting of one or more characters, and And rank data indicating the rank.
  • each character group corresponding to ranks 1, 2, 3, 4, 5, 6, 9, 10 consists of one character
  • each character group corresponding to ranks 7 and 8 has multiple characters.
  • each character group corresponding to the order 1, 2, 4, 5, 6, 8, 9, 10, 11 is composed of a plurality of characters, and each character group corresponding to the order 3, 7 is 1 It consists of letters.
  • FIGS. 3A to 3C show an example of basic voice generation processing executed by the CPU 20.
  • FIG. FIG. 3A shows an example of the process of starting voice generation.
  • the CPU 20 determines that a song is selected in step S100, proceeds to step S101, and selects the lyrics of the selected song.
  • the character information 30 b of the character string is acquired from the non-volatile memory 30 and buffered in the RAM 40.
  • the character information 30b of the lyrics character string of the selected song to be buffered and stored in the RAM 40 is character data for each group consisting of one or more characters and rank data indicating the rank of the group And.
  • the CPU 20 sets the value of a pointer j (variable) for indicating the order of the character groups to be output to the initial value "1" (step S102).
  • the pointer j is maintained in the RAM 40.
  • a voice (syllable) indicated by the character data of one character group in the lyrics character string having the rank data corresponding to the value of the pointer j is generated at the next pronunciation opportunity.
  • the next sounding opportunity is that the user designates a desired pitch by means of the pitch selector 50.
  • the value 1 of the pointer j indicates the character group of the first rank 1 and the value 2 indicates the character group of the second rank 2 from the first.
  • FIG. 3B shows an example (key-on process) of a sound generation process of generating a sound in accordance with the pitch designation information.
  • the CPU 20 determines in step S103 that the key is on, and proceeds to step S104. Based on the output information of the sensor included in the high selector 50, the operation status (pitch designation information indicating the designated pitch and information indicating the velocity or strength at the time of the operation) is acquired. Next, the CPU 20 generates a voice corresponding to the output target character group designated by the pointer j with the designated pitch and volume strength (step S105).
  • the CPU 20 acquires, from the speech segment database 30c, speech segment data for reproducing the speech of the syllable indicated by the output target character group. Further, the CPU 20 executes pitch conversion processing on data corresponding to vowels in the acquired voice segment data, and converts the data into vowel voice segment data having the pitch designated by the pitch selector 50. Do. Furthermore, the CPU 20 substitutes data corresponding to vowels in the voice segment data for reproducing the speech of the syllable indicated by the character group to be output with the vowel voice segment data after the pitch conversion processing. The inverse FFT is performed on data obtained by combining these speech segment data. As a result, a speech signal (digital speech signal in the time domain) that reproduces the speech of the syllable indicated by the character group to be output is synthesized.
  • the pitch conversion process may be any process for converting a voice of a specific pitch to a voice of another pitch, and indicates, for example, the pitch designated by the pitch selector 50 and voice segment data. It is possible to obtain a difference from the reference pitch in the voice and move the spectrum distribution indicated by the waveform of the voice segment data in the frequency axis direction by a frequency corresponding to the difference.
  • the pitch conversion process can be realized by various other processes, and the process may be performed on the time axis.
  • the state (for example, pitch) of the voice to be synthesized is configured to be controlled according to the operation of the voice control operator 60b, which will be described later. explain.
  • various aspects (pitch, volume, timbre, etc.) of the voice to be synthesized may be adjustable, and for example, voice control to apply vibrato may be executed. .
  • the CPU 20 When an audio signal is generated, the CPU 20 outputs the audio signal to the sound output unit 70. As a result, the sound output unit 70 converts the audio signal into an analog waveform signal, amplifies it, and outputs it. Therefore, the sound output unit 70 outputs the sound of the syllable indicated by the character group to be output, and having the pitch and the volume strength designated by the pitch selector 50.
  • step S106 it is determined whether the repeat function is turned on according to the operation of the repeat operator 60c. Details of this will be described later. Normally, the repeat function is off, the process proceeds from step S106 NO to step S120 where the pointer j is incremented by one. Thus, the output target character group designated by the value of the pointer j corresponds to the voice to be generated at the next pronunciation opportunity.
  • FIG. 3C shows an example of a process (key-off process) of stopping the generation of the sound generated according to the pitch designation information.
  • the CPU 20 determines, based on the output information of the sensor included in the pitch selector 50, whether or not the key-off, that is, the pressing operation on the pitch selector 50 is released (step S107). If it is determined that the key is turned off, the CPU 20 stops (or attenuates) the sound being generated so that the sound signal output from the sound output unit 70 is muted (S108). As a result, the sound output from the sound output unit 70 is stopped.
  • 3B and 3C the key-on process and the key-off process
  • the CPU 20 causes the sound of the pitch and the intensity designated by the pitch selector 50 to be continuously output for the period designated by the pitch selector 50.
  • the CPU 20 increments a variable (pointer j) for specifying the output target character group each time the pitch selector 50 is operated once (step S120).
  • a variable (pointer j) for specifying the output target character group each time the pitch selector 50 is operated once (step S120).
  • the output target character group is a character group corresponding to the voice to be generated and output according to the next pronunciation instruction, in other words, a character group waiting for generation and output.
  • the CPU 20 may display the output target character group and at least the character group in the front or rear order thereof on the display of the input / output unit 60.
  • the display of the input / output unit 60 is provided with a lyric display frame for displaying a predetermined number (for example, m) of characters.
  • the CPU 20 refers to the RAM 40 and obtains a total of m characters before and / or after the character string including the one character group of the order indicated by the pointer j, and displays these characters as the lyric display of the display. Display in the frame.
  • the CPU 20 may display on the display of the input / output unit 60 in order to distinguish the output target character group from other characters.
  • the display can be realized by various modes, such as highlighting a character group to be output (flickering, changing color, adding an underline, etc.), or clearly indicating characters before or after the character group to be output (flickering, It is possible to employ changing of color, addition of underline, etc.
  • the CPU 20 switches the display content so that the output target character group is always displayed on the display of the input / output unit 60.
  • the switching can be realized in various modes, such as scrolling the display content of the display in response to the change of the output character group according to the change of the value of the pointer j, or setting a plurality of characters as a unit. It is possible to adopt such as switching the display content.
  • FIG. 2A is a diagram showing a basic example of character-based speech generation.
  • the horizontal axis is a time axis
  • the vertical axis is an axis indicating a pitch.
  • pitches corresponding to several floor names (Do, Re, Mi, Fa, So) in a certain scale are shown on the vertical axis.
  • the symbols L 1 , L 2 , L 3 , L 4 , L 4 , L 5 , L are used. 6 and L 7 show. Furthermore, in the graph shown in FIG.
  • the generated and output voices are indicated by rectangular regions, and the length in the horizontal direction (time axis direction) in the rectangle corresponds to the output duration of the voice, and is rectangular
  • the vertical position corresponds to the pitch.
  • the vertical center position of each rectangle corresponds to the pitch of the rectangle.
  • the user is in the order of floor names de, re, mi, fa, re, mi.
  • the sound generated and output when the pitch selector 50 is operated is shown.
  • the output target character group is L 1 , L 2 , L in synchronization with the user operating the pitch selector 50 of de, re, mi, f, de, mi, and mi. 3 , L 4 , L 5 , L 6 , L 7 sequentially change. Therefore, in the example shown in FIG.
  • L 1 , L 2 , L 3 , L 4 are synchronized in synchronization with the user operating the pitch selector 50 of D, M, F, D, R, M. , L 5, L 6, voice corresponding to each character group L 7 is indicated de, Re, Mi, fa, de, Re, will be sequentially outputted by Mi pitch.
  • the singing voice according to the lyrics in the predetermined order is as intended by the user Can be generated (automatically sing) at a pitch of
  • the characters in the character string advance in order in synchronization with the operation on the pitch selector 50 the operation of the pitch selector 50 is incorrect, and the progress of the actual song When different unplanned operations are performed, the singing voice progresses faster or slower than the progress of the song. For example, in the example shown in FIG.
  • the character selector 60a is provided in the controller 10a of the keyboard instrument 10 according to the present embodiment, and even if an unexpected operation is performed by the pitch selector 50, the user By operating the character selector 60a, the output target character group to be voice-generated can be returned to the character group according to the original music progression even if there is an erroneous operation. Further, by intentionally operating the combination of the pitch selector 50 and the character selector 60a by the user, it is possible to perform an ad-lib performance in which the original music progression is appropriately deformed.
  • the character selector 60a advances a character advance selection button Mcf for advancing the output object character group by one character group (one rank) in accordance with the progression order of the lyrics character string;
  • a character backward selection button Mcb for returning one character group (one rank) in the reverse direction to the progression order, and further, for advancing the output object character group in units of one phrase in accordance with the progression order of the lyrics character string
  • a phrase forward selection button Mpf and a phrase backward selection button Mpb for returning in phrase units in the reverse direction to the progress order are provided.
  • the phrase is a series of a plurality of characters, and the phrase is defined in advance by the delimitation of each phrase being described in the character information 30b of the lyric character string.
  • a code for example, a code indicating a space or the like
  • the order of the first character group of the immediately preceding phrase and the order of the first character group of the immediately following phrase are easily determined from the phrase definition possessed by the character information 30b of the corresponding lyric character string. Prove.
  • the character forward selection button Mcf and the phrase forward selection button Mpf correspond to a forward selector for advancing one or more characters according to the progression order of the character string
  • the character backward selection button Mcb and the phrase backward selection button Mpb It corresponds to a reverse selector for returning one or more characters in the reverse direction to the order of progress.
  • the character selection process is executed when any selection button of the character selector 60a is operated (when the push operation is canceled after the push operation).
  • the CPU 20 determines the operated character selector 60a (step S200). Specifically, when any one of the character forward selection button Mcf, the character reverse selection button Mcb, the phrase forward selection button Mpf, and the phrase reverse selection button Mpb in the character selector 60a is operated, the selection operated from each selection button A signal indicating the type of button and the operation content is output. Therefore, the CPU 20 determines which of the character forward selection button Mcf, the character reverse selection button Mcb, the phrase forward selection button Mpf, and the phrase reverse selection button Mpb the selection button operated based on the signal.
  • the CPU 20 advances the rank of the output target character group by one (step S205). That is, the CPU 20 increments the value of the pointer j by one.
  • the CPU 20 returns the rank of the output target character group to the first rank (step S210). That is, the CPU 20 decrements the value of the pointer j by one.
  • the CPU 20 advances the rank of the output target character group by one phrase (step S215). That is, the CPU 20 refers to the character information 30b of the lyric character string, and searches for the nearest phrase break existing between the character groups in the order (the numerical value indicating the order is large) earlier than the current output object character group. Do. Then, when the division is detected, the CPU 20 sets, in the pointer j, a numerical value indicating the rank of the character group located next to the division (that is, the rank of the first character group of the immediately following phrase).
  • the CPU 20 When the operated operator operated is the phrase back selection button Mpb, the CPU 20 returns the order of the output target character group by one phrase (step S220). That is, the CPU 20 refers to the character information 30b of the lyric character string, and searches for the nearest phrase segment existing between the character groups in the rank (the numerical value indicating the rank is small) before the current output target character group. Do. Then, when the break is detected, the CPU 20 sets, in the pointer j, a numerical value indicating the order of the character group located next to the break (that is, the order of the first character group of the immediately preceding phrase).
  • the user appropriately operates the pitch selector 50 at an appropriate timing substantially simultaneously with or after the value of the pointer j is appropriately advanced or returned.
  • the CPU 20 executes the processing of FIG. 3B, and it is determined YES in the step S103.
  • the processing after step S104 described above is executed, and a voice corresponding to the character group (one or more characters) designated according to the operation of the character selector 60a is generated and output.
  • Example of correction of erroneous operation As described above, if the order of character groups to be voice-generated can be corrected by the operation of the character selector 60a, even if the pitch designation operation by the pitch selector 50 is erroneous, The order of character groups to be sound-generated can be restored to the proper order along the music progression.
  • FIG. 2B shows an example in the case where the operation by the pitch selector 50 is mistaken in the process of playing the same music as FIG. 2A and an example for correcting this erroneous operation. Specifically, in the example illustrated in FIG.
  • the user can change the output target character group in units of one character group or in units of phrases in accordance with the order indicated by the character information by operating the character selector 60a. Therefore, the output target character group can be corrected with a simple configuration, and it is also possible to correct the output target character group by blind touch if the user correctly stores the order of the lyrics character strings.
  • a voice corresponding to the output target character group is generated in synchronization with the operation on the pitch selector 50, and thereafter the pointer j indicating the order of the output target character group is incremented. Therefore, when a voice is generated in response to an operation on the pitch selector 50, a character group next to a character group relating to the voice becomes an output target.
  • the user can grasp the progress of the singing voice by listening to the voice output at the current point, and therefore, when operating any character selector 60a at the current point, the voice of what kind of lyric character is next You can easily figure out if you can For example, if the character reverse selection button Mcb is operated, the character group relating to the currently output voice (or the voice output at the end of the voice whose output is completed) is output by returning the output target character group to one rank. It can be recognized that the output target character group can be set again. Therefore, the user can change the output target character group by operating the character selector 60a based on the information acquired by hearing, and it becomes easier to correct the output target character group by the blind touch.
  • the user controls the features of the generated voice by operating the voice control operator 60b (for example, It is configured to be able to adjust the pitch).
  • the voice control operator 60b is operated by the user's finger during generation of voice according to the operation of the pitch selector 50
  • the CPU 20 acquires the touch position of the finger on the voice control operator 60b.
  • the CPU 20 acquires a correction amount associated in advance with the contact position. According to this correction amount, the feature (one of pitch, volume, timbre, etc.) of the voice being generated is controlled.
  • FIG. 4A shows an example of adjusting the pitch in accordance with the operation of the voice control operator 60b, as an example of the voice control process executed by the CPU 20 by the voice generation program 30a.
  • This voice control process is executed when the voice control operator 60b is operated (when a finger is touched).
  • the CPU 20 determines whether a voice is being generated (step S300). For example, between the time when the CPU 20 outputs from the pitch selector 50 a signal indicating that the pressing operation for pitch designation has been performed and immediately before the signal indicating that the pressing operation has been canceled is output, It is determined that voice is being generated. If it is not determined in step S300 that a voice is being generated, there is no voice to be controlled, and the CPU 20 ends the voice control process.
  • step S300 If it is determined in step S300 that a voice is being output, the CPU 20 acquires a touch position (step S305). That is, the CPU 20 obtains a signal indicating the touch position output from the voice control operator 60b. Next, the CPU 20 acquires a correction amount (step S310). That is, the CPU 20 uses the pitch designated by the pitch selector 50 as a reference pitch, and acquires the correction amount for the reference pitch based on the touch position of the finger on the voice control operator 60b.
  • the voice control operator 60b is a sensor including an elongated rectangular surface as a finger contact detection surface, and is configured to detect at least one-dimensional operation position (linear position).
  • the center position in the long side direction of the voice control operator 60b corresponds to the position of the reference pitch, and the contact position is farther from the center position in the long side direction of the voice control operator 60b.
  • the correction amount for each touch position is determined in advance so that the correction amount of the pitch becomes large.
  • the correction amount in the case of raising the pitch is associated with each contact position on one side across the center position of the voice control operator 60b, and the center position of the voice control operator 60b is interposed.
  • a correction amount in the case of lowering the pitch is associated with each contact position on the other side.
  • the positions of both ends in the long side direction of the voice control manipulator 60b become the position indicating the highest pitch and the position indicating the lowest pitch.
  • the center position in the long side direction of the voice control operator 60b corresponds to the standard pitch, and one end in the long side direction.
  • a pitch corresponding to four semitones higher than the reference pitch is associated with the part, and a pitch two semitones higher than the reference pitch is associated with the middle position between the one end and the center position.
  • the other end in the long side direction of the voice control operator 60b is associated with a pitch that is four semitones lower than the reference pitch, and the reference sound is located in the middle between the other end and the center position.
  • a pitch that is two semitones lower than high is associated.
  • the CPU 20 acquires a signal indicating the contact position from the voice control operator 60b, the CPU 20 sets the contact position to the contact position.
  • the difference in frequency between the corresponding pitch and the reference pitch is obtained as a correction amount.
  • step S315) the CPU 20 sets the pitch designated by the pitch selector 50 during the pressing operation, that is, the pitch during voice generation in step S300 as the reference pitch, and according to the correction amount acquired in step S310, Adjust the pitch of the voice being generated (pitch conversion). Specifically, the CPU 20 outputs the voice at the corrected pitch by, for example, moving the spectrum distribution indicated by the waveform of the voice segment data for outputting the voice at the reference pitch in the direction of the frequency axis. Execute pitch conversion processing to generate speech segment data for Further, the CPU 20 generates an audio signal based on the voice segment data after the pitch conversion process, and outputs the audio signal to the sound output unit 70.
  • the sound output unit 70 outputs a sound whose pitch has been corrected.
  • the operation of the voice control operator 60b is detected to obtain the correction amount and pitch conversion processing, but the voice control operator 60b is operated before voice output is started.
  • the pitch selector 50 is operated, during the generation of the voice according to the operation of the pitch selector 50, the operation of the voice control operator 60b immediately before the generation of the voice is reflected to generate the correction amount. Acquisition or pitch conversion may be performed.
  • FIG. 2C combines the singing ad lib performance by the operation of the character selector 60a and the voice control by the operation of the voice control operator 60b in the process of playing the same song as FIG. 2A.
  • the operation for the character backward selection button Mcb character selector 60a shows an example performed twice at time t b.
  • pitch of pitch selector 50 fa when at time t 4 pitch of pitch selector 50 fa is operated, become sound corresponding to the character group of L 4 is generated at pitch fa, and, output target character group indicated by the pointer j becomes L 5.
  • Repeated subsequent operations for the character backward selection button Mcb at time t b is 2 times, accordingly, is returned rank 2 rank output target character group, L 3 is the output target character group.
  • the sound corresponding to the character group L 3 is generated in real pitch.
  • the generation of the sound corresponding to the character group L 3 is started, the output target character group indicated by the pointer j is changed to L 4 in the following order of L 3.
  • the generation period of the speech corresponding to the character group L 3 is, the pushing operation starting pitch selector 50 that specifies the Mi pitch from (time t 5) until the pressing operation is released (time t 6) It is a period.
  • audio corresponding to the output target character group L 4 is generated at pitch fa.
  • the voices indicated by the character groups L 5 and L 6 should be output at the pitch of the do and the re during the period from time t 5 to time t 7 .
  • the voices indicated by the character groups L 3 and L 4 are output at the pitches of mi and fa in the period from time t 5 to time t 7 .
  • These character groups and pitch is a character group and pitch at time t 3 ⁇ time t 5 immediately before, that it repeats the same words and pitch even in the period of time t 5 ⁇ time t 7 become.
  • Such a performance example is the case where the part that outputs the voices indicated by the character groups L 3 and L 4 at the pitches of mi and fa is the chorus of the song, and a chorus that repeats the same content following the singing of the main vocal is inserted It is used when it swells up in the process of playing. In this way, singing ad-lib can be performed appropriately.
  • the state of the singing voice to be repeated in a period of the first time t 5 ⁇ time t 7, singing in the period following time t 3 ⁇ time t 5
  • the degree of completion of the performance is improved if the state of the voice is different.
  • the user since the keyboard instrument 10 is provided with the voice control operator 60b, the user operates the voice control operator 60b to change the state of the singing voice at the first and second times of the repetitive performance. It can be done easily.
  • FIG. 2C vibrato is performed to change the pitch up and down in the period from time t 5 to time t 7 which is a repetitive performance. That is, the user between times t c1 ⁇ time t 6 and, between the time t c2 ⁇ time t 7, the voice control manipulator 60b in a state where the finger touches the voice control operator 60b at the longitudinal center of the The contact position was moved in the lateral direction shown in FIG. 1A centering on the position. In this case, as shown in FIG.
  • the user can play the same lyric part sound in different control modes in the first and second times of the repetitive performance.
  • the user can flexibly perform the correction of the lyrics and the control of the voice.
  • FIG. 2C shows an example in which the user has performed an operation (push operation and release of the push operation) on the character advance selection button Mcf twice at time t f . That is, since the output target character groups by operating the pitch selector 50 at time t 6 has become L 5, time t output target character group if the user operates the character forward selection button Mcf 2 times in f is L 7 It becomes. As a result, the user, by operating the pitch of the pitch selector 50 of the Mi at time t 7, the sound indicated by the letter L 7 is outputted by Mi pitch, returns to the order and pitch of the original lyric character Can make the song progress.
  • a character forward selection button Mcf and audio It is easy to simultaneously operate the control operator 60b. That is, in the controller 10a according to the present embodiment, the voice control operator 60b is provided on a plane that constitutes the front surface of the grip seen by the user, and character advancing selection is performed between the planes that constitute the upper and rear of the grip. A button Mcf is provided. Therefore, as shown in FIG. 1B, the user can operate the character advance selection button Mcf with his / her thumb (for example) and the voice control operator 60b with another finger (such as a forefinger) while holding the grip G with one hand. Can be operated at the same time.
  • the voice control operator 60b it is possible to play singing voice with more various variations. For example, as in the present embodiment, even if the order of character groups advances each time one pitch selector 50 is operated once, two or more consecutive voices indicated by one character group are displayed. It becomes possible to generate at the pitch of. For example, a song to play a character group L 1 de, Les the character group L 2, character group L 3 a real and files, character group L 4 soil, the character group L 5 Les, a character group L 6 in the order that Mi Assume. In this case, the user operates the pitch selector 50 of De, Re, and Mi at each of times t 1 , t 2 , and t 3 shown in FIG.
  • the reference pitch is set by the voice control operator 60b. Perform an operation to raise the pitch of Mi, which is a semitone, that is, a fan.
  • the character group L 1 is sound indicates is generated by de pitch
  • voice represented by character group L 2 is generated by the record of the pitch
  • the sound indicated by the character group L 3 is generated in real pitches After that, it is generated at the pitch of the fa.
  • the voice indicated by the character group L 4 is output at the pitch of the de
  • voice represented by character group L 6 is output at Mi pitch.
  • the user can output the sound indicated by one character group at two or more consecutive pitches.
  • the change in pitch from Mi to Fa is continuously performed according to the speed at which the user operates the voice control operator 60b. Therefore, it is possible to generate a voice closer to the voice when singing in human voice.
  • the user can use the controller 10a to instruct to generate voice based on characters in various expressions. Furthermore, in the process of the user playing the keyboard instrument 10 and outputting the voice, the user repeats arbitrary lyrics such as chorus and chorus and changes intonation according to the increase of the tune, etc. And the control of the generation mode of. Moreover, when the same lyric is repeated by correction of a lyric, it is also possible to change intonation of the same lyric by controlling a generation
  • the user can operate the repeat operator 60c to make it possible to easily perform ad-lib performance of lyrics in more various ways. It is configured to be able to indicate the range (start and end). Specifically, when the push operation on the repeat operator 60c is performed, the CPU 20 starts selection of a character group to be repeated. Further, when the push operation on the repeat operator 60c is released, the CPU 20 ends the selection of the character group to be repeated. The CPU 20 sets the range of the character group selected while the repeat operator 60c is pressed as a repeat target.
  • FIG. 4B shows an example in which processing for selecting a repeat target is performed.
  • FIG. 2E shows an example in which a character to be repeated is set in the process of playing the same song as that of FIG. 2A and a performance to repeat the character to be repeated is performed. Specifically, in FIG. 2E, the pushing operation on repeat operating element 60c is performed at time t s , the operation for releasing the pushing operation on repeat operating element 60c is performed at time t e , and the repeat operation at time t t An example in which the pressing operation on the child 60c is performed is shown.
  • step S400 the CPU 20 determines whether the repeat function is off. That is, the CPU 20 refers to the repeat flag recorded in the RAM 40 and determines whether the repeat function is off.
  • step S400 If it is determined in step S400 that the repeat function is off, the CPU 20 turns on the repeat function (step S405). That is, in the present embodiment, when the user performs the pressing operation of the repeat operator 60c in a state where the repeat function is off, the CPU 20 considers that the repeat function is switched on and the repeat flag recorded in the RAM 40 Is rewritten to a value indicating that the repeat function is on. Then, after the repeat function is turned on, the CPU 20 performs processing for setting a range of character groups to be repeated in a period until the push operation of the repeat operator 60c is released.
  • the CPU 20 sets the output target character group as the first character group to be repeated (step S410). That is, the CPU 20 acquires the current value of the pointer j and records it in the RAM 40 as a numerical value indicating the order of the first character group to be repeated.
  • the output target character group indicated by the current value of the pointer j indicates the voice generated at the next pronunciation opportunity (when the pitch selector 50 is operated next). For example, in the example shown in FIG. 2E, together with the generation of sounds corresponding to the character group L 2 by the operation of the pitch selector 50 at time t 2 is started, the output target character group is updated to L 3. Therefore, the step S410 in response to the pushing operation of the repeat operator 60c at time t s is performed, character groups L 3 indicated by pointer j is set to the first character group in the repeat object.
  • the CPU 20 stands by until it is determined that the push operation of the repeat operator 60c is released (step S415). Even during the standby, the CPU 20 executes the above-described sound generation processing (FIGS. 3B and 3C) according to the operation on the pitch selector 50. Therefore, when the pitch selector 50 is operated, the characters to be output advance in the order indicated by the character information 30b in synchronization with the operation. For example, when the pitch selector is operated at time t 3 or t 4 after time t s , the output target character group changes to L 4 or L 5 .
  • step S420 the CPU 20 sets the character group one before the output object character group as the last character group to be repeated (step S420). That is, the CPU 20 acquires the current value of the pointer j, and stores a numerical value (j-1) obtained by subtracting 1 from the numerical value in the RAM 40 as a numerical value indicating the order of the last character group to be repeated.
  • the immediately preceding character group of the output target character group designated by j-1 corresponds to the currently generated speech or the last generated speech.
  • the output target character group is updated to L 5. Therefore, when the step S420 is executed in response to release of the pressing operation of the repeat operator 60c at time t e, the character group L 4 indicating the sound being generated is set as the last character group repeat target. Therefore, in the example shown in FIG. 2E, the first character group to be repeated is L 3 , the last character group to be repeated is L 4 , and the repeat object is set to the range of character groups L 3 and L 4.
  • the voice of the character group range to be repeated may be repeated one or more times until the repeat function is turned off. it can. Therefore, it is possible to repeat the voice of the character group range to be repeated as many times as desired by the user. Therefore, as shown in FIG. 2E, the voice indicated by the character to be repeated is repeated once (the same lyric is repeated twice), and not only the performance but also a specific phrase according to the excitement of the audience at the live performance etc. It will be possible to use it over and over again.
  • the CPU 20 sets the first character group to be repeated as the output character group (step S425). That is, the CPU 20 refers to the RAM 40 to obtain a numerical value indicating the order of the first character group to be repeated, and sets the numerical value to the pointer j. As a result, when the pitch designation information is acquired next according to the operation of the pitch selector 50, a voice corresponding to the first character group to be repeated is generated.
  • step S425 when a pitch designation operation is performed by the pitch selector 50, the CPU 20 goes from YES in step S103 of FIG. 3B to step S104, and indicates the designated pitch. Get specified information. Then, in step S105, the voice corresponding to the character group of the order designated by the pointer j (that is, the first character group to be repeated) is generated at the designated pitch. Next, in step S106, the CPU 20 determines whether the repeat function is on. In this case, since the repeat function is turned on, step S106 is YES, and the process proceeds to step S110.
  • step S110 the CPU 20 determines whether the output target character group indicated by the pointer j is the last character group to be repeated. If it is not the last character group to be repeated, the process proceeds from the step S110 NO to the step S120, and the value of the pointer j is incremented by one.
  • step S110 is determined as YES, and the process proceeds to step S115.
  • step S115 the value of the pointer j is set to the order of the first character group to be repeated.
  • step S105 voices from the first to the last character group to be repeated are sequentially generated each time a pitch designation operation is performed, and then the voice generation is repeated by returning to the first character group.
  • Such repeat sound generation processing is repeated as long as the repeat function is turned on.
  • step S430 the repeat function is turned off. That is, the CPU 20 considers that the repeat function is switched to the off state when the user performs the pressing operation of the repeat operator 60c in the on state of the repeat function, and the repeat function is off in the repeat flag recorded in the RAM 40. Rewrite to a value that indicates that there is.
  • the CPU 20 clears the setting of the character group range to be repeated (step S435). That is, the CPU 20 erases from the RAM 40 a numerical value indicating the order of the first character group to be repeated and the last character group.
  • the value of the pointer j that is, the output target character group is not changed. Therefore, for example, in the example shown in FIG. 2E, when the repeat function is turned off in response to pressing operation on the repeat operator 60c at time t t , the output target character group remains L 5. .
  • the user in the example shown in FIG. 2E, the voice of L 4 sound output when performing the pushing operation for repeat operator 60c listening to, in the example shown in the output target character group (FIG. 2E, L 5 Can be grasped, it is possible to set a desired character group as an output object character group by operating the character selector 60a until the next sound generation timing.
  • the user at the timing before time t 7 by operating the character forward selection button Mcf 2 times, it is possible to set the output target character group L 7.
  • the user at time t 7 the user by operating the pitch selector 50, audio indicated by the character group L 7 is output.
  • the character information 30b if between the character groups L 6 and character group L 7 is set to delimit phrases, the user, a phrase forward selection button Mpf at the timing before time t 7 1 once the operation by, it is possible to set the output target character group L 7.
  • the audio corresponding to the character group L 7 is output.
  • the CPU 20 may automatically move the value of the pointer j to the original advancing position.
  • the CPU 20 may be configured to sequentially advance the reference pointer assuming that the repeat is not performed during the repeat performance according to the pitch designation operation.
  • the CPU 20 uses the reference pointer as a pointer output target character group to be indicated by j is identified as the L 7.
  • various methods can be adopted for automatically moving the value of the pointer j to the original advancing position when the repeat function is off.
  • the CPU 20 counts the number of times of operation of the pitch operator 50 during the period when the repeat function is on, and uses the count value and the value of the pointer j at the start of the repeat to make the pointer j at the end of the repeat You may want to correct the value of.
  • FIG. 2F is a diagram showing an example in the case of performing the same performance as FIG. 2C using the repeat operator 60c and the voice control operator 60b. Specifically, in FIG.
  • the push operation on repeat operator 60c is performed at time t s
  • the operation to release the push operation on repeat operator 60 c is performed at time t e
  • vibrato is applied by voice control operating elements 60b
  • pushing operation to repeat operator 60c is an example performed at time t t.
  • the character groups L 3 and L 4 are repeated twice as in FIG. 2C, and the performance is performed in a second vibrato-applied state.
  • the CPU 20 repeatedly generates a voice corresponding to the character group range to be repeated, which is arbitrarily set, in accordance with the operation on the repeat operator 60c. Further, in the present embodiment, it is possible to control the repetition timing of the sound indicated by the character to be repeated according to the user's instruction (the operation of the pitch selector 50).
  • the user can designate an arbitrary character range in the lyric character string as a repeat target and repeatedly output the voice, it is possible to repeat the performance at the same place for learning or storage of musical instrument performance. The user can easily specify the repeat range, and can play repeatedly.
  • this repeat function not only for musical instrument performance, for example, for acquisition of a foreign language, etc.
  • a desired character range is repeated voice generation It can be done. Furthermore, when creating the character information 30b, creation of the second and subsequent character groups to be repeated can be omitted. Therefore, the work of creating the character information 30b can be simplified, and the capacity of the character information 30b can be reduced. Furthermore, in the process of generating speech on the basis of the character information 30b by the speech generation device, it is possible to select and repeat an arbitrary part from a character string of a predetermined order defined as the character information 30b. It is possible to modify the existing order of the columns for speech generation. In addition, various modes are assumed as a mode of correction of the existing order of character strings.
  • a mode of performing accompaniment repeating a rising part (sabi) in a song, repeating a scat such as "La La La", or repeating a part having a high degree of difficulty in playing for practice.
  • the repeat operator 60c which is one push button type switch. Therefore, it becomes possible to perform designation of a character range to be repeated and control of repeat performance timing by extremely simple operation.
  • the user can select the character to be repeated in real time by listening to the voice sequentially output from the sound output unit 70. Therefore, characters to be repeated can be selected without relying on vision.
  • FIGS. 5A to 5E are views of various shapes of the grip G of the controller 10a as viewed from one end of the grip G.
  • FIG. 5 (A) is a parallelogram
  • (B) is a triangle
  • (E) is an example of a rectangle
  • FIG. 5C may be an example of an ellipse
  • FIG. 5D may be an example of a semicircle.
  • the shape and size of the cross section do not need to be constant regardless of the cutting position, and the cross sectional area and the curvature may be changed as the main body 10b is approached.
  • the character selector 60a or the repeat operator 60c when the character selector 60a or the repeat operator 60c is operated with an arbitrary finger, these operators are formed at positions where the voice control operator 60b can be operated with another finger. good.
  • the character selector 60a (or the repeat operator 60c) and the voice control operator 60b are formed in the portion where the finger is disposed when the grip G is held by one hand.
  • the character selector 60a (or the repeat operator 60c) and the voice control operator 60b are not on the same plane but on different planes. It is possible to adopt a configuration in which and are formed. With this configuration, erroneous operations on the character selector 60a (or the repeat operator 60c) and the voice control operator 60b are suppressed, and the user can easily perform simultaneous operations on these operators. .
  • the character selector 60a (or the repeat operator 60c) and the voice control operator 60b are positioned opposite to each other across the center of gravity of the grip G in order for the user to hold the grip stably with one hand. It is preferable not to exist in two surfaces (for example, the surface which comprises front and back in FIG. 5 (A), (E)). According to this configuration, it is possible to suppress that the user erroneously operates the character selector 60a (or the repeat operator 60c) or the voice control operator 60b in accordance with the operation of gripping the grip G.
  • connection aspect of the controller 10a and the main body 10b is not limited to the aspect shown to FIG. 1A.
  • the connection position between the controller 10a and the main body 10b is not limited to one, and the controller 10a is configured of a bent columnar member such as a U-shaped member, and both ends of the columnar member are connected to the main body 10b.
  • the controller 10 a may be detachable from the keyboard instrument 10. In this case, the operation output of the operation element of the controller 10a is transmitted to the CPU 20 of the main body 10b by wired or wireless communication.
  • the application object of the present invention is not limited to the keyboard instrument 10, and may be another type of electronic musical instrument provided with the pitch selector 50.
  • it may be a singing voice generation device that automatically sings the lyrics defined by the character information 30b according to the created pitch information (MIDI information etc.), or it is a reproduction device of recording information and recording information.
  • the CPU 20 acquires pitch designation information (MIDI event etc.) to be reproduced automatically according to the automatic performance sequence, and the pointer is designated by the pitch designated by the acquired pitch designation information (MIDI event etc.)
  • the voice of the character group designated by j may be generated, and the value of the pointer j may be advanced according to the acquired pitch designation information (MIDI event etc.).
  • the embodiment for acquiring the pitch specification information of such an automatic performance method when the character selector 60a is operated, the acquisition of the pitch specification information according to the automatic performance sequence is suspended temporarily, and instead, the user operation is performed. Accordingly, the pitch designation information given from the pitch selector 50 is acquired, and the voice of the character group designated by the pointer j changed by the operation of the character selector 60a is generated at the pitch according to the acquired pitch designation information. You may do it.
  • the automatic performance is performed according to the change of the value of the pointer j according to the operation of the character selector 60a.
  • the pitch selector 50 is unnecessary.
  • the instruction means for that purpose is not limited to the pitch selector 50, and may be another appropriate switch or the like.
  • the information indicating the pitch of the voice to be generated may be acquired from the automatic sequence data of the music, and the tone generation timing may be designated according to the operation of the appropriate switch by the user.
  • the CPU 20 may be configured to obtain the rate of change of the pitch from the reference pitch based on the contact position of the voice control operator 60b, and change the pitch based on the rate of change. Furthermore, in the state where the voice is output at the standard pitch, the CPU 20 regards the position where the user first touched the voice control operator 60b as the standard pitch, and the touch position is determined from the position. When changing, the correction amount of the pitch or the change rate of the pitch may be specified based on the distance between the two positions.
  • the correction amount of the pitch per unit distance and the change rate of the pitch are specified in advance.
  • the CPU 20 acquires the change distance of the touch position from the position where the user first touched. Further, the CPU 20 specifies the change amount and the change rate by multiplying the value obtained by dividing the change distance by the unit distance by the correction amount of the pitch per unit distance and the change rate of the pitch. Furthermore, in the configuration in which the CPU 20 specifies the correction amount of the pitch and the rate of change of the pitch based on the change (the moving speed etc.) of the contact position of the voice control operator 60b instead of the contact position to the voice control operator 60b It may be.
  • the width of the pitch that can be changed by the voice control operator 60b various examples (for example, one octave) can be adopted other than the above example. Further, the width may be variable according to the user's instruction or the like. Furthermore, the control target by the voice control operator 60b may be selectable from among the pitch, the volume, and the properties of the voice (such as the gender of the speaker and the characteristics of the voice) by the user's instruction.
  • the voice control operator 60b may be disposed separately from the grip G provided with the character selector 60a without being disposed on the grip G provided with the character selector 60a.
  • an existing tone control operator provided in the input / output unit 60 of the main body 10b of the keyboard instrument 10 may be used as the voice control operator 60b.
  • the acquisition method of the character information 30b is not limited to that described above.
  • the keyboard instrument 10 may be captured from an external recording medium in which the character information 30 b is recorded, through wired or wireless communication.
  • the singing voice being sung in real time may be picked up by a microphone and buffered and stored in the RAM 40 in the keyboard instrument 10, and the character information 30b may be acquired based on the buffered audio waveform data.
  • the character information 30b defining a previously defined character string such as lyrics may be information that can substantially define the order of a plurality of characters and each character, and the data expression format is text data, image data , Audio data, etc. may consist of any data representation. For example, it may be expressed by code information that indicates a time-series change of syllable corresponding to a character, or may be expressed by time-series audio waveform data. Regardless of which data representation form the character string in the character information 30b is, the point is that each character group (one or more characters corresponding to syllables) in the character string can be individually identified. It may be encoded as such, and may be configured to be able to generate an audio signal according to such a code.
  • the voice generation device may be any device having a function of generating voice indicated by the character according to the order of the characters, that is, as long as the pronunciation of the word indicated by the character can be reproduced as voice based on the character information. Good. Furthermore, any of various methods can be arbitrarily adopted as a method for generating speech corresponding to a character group, and the character indicated by the character information is pronounced based on the waveform information indicating the pronunciation of various syllables. It is possible to adopt a configuration for generating a waveform to be used.
  • the voice control operator can change the element to be controlled, specify the change from the reference of the element to be controlled, the numerical value of the element to be controlled, the state after the change of the element to be controlled, etc. It may be a sensor capable of The voice control operator is not limited to the touch sensor, but may be a push button switch or the like. Furthermore, in the voice control operator, the generation mode of the voice indicated by the character may be controlled at least for the character selected as the output target by the character selector. However, the present invention is not limited to this. It may be possible to control the speech generation mode independently.
  • the character selector 60a may include means for selecting (specifying) other types of characters in addition to the four types of selection buttons Mcf, Mcb, Mpf, and Mpb described above.
  • FIG. 7 shows a modification of such a character selector 60a.
  • the character selector 60a includes a syllable separation selector Mcs and a syllable integration selector Mcu, in addition to the four types of selection buttons Mcf, Mcb, Mpf, and Mpb described above.
  • the syllable separation selector Mcs is for instructing separation and advance of a predetermined one-character group into, for example, two syllables.
  • the syllable integration selector Mcu is for instructing integration of, for example, two consecutive character groups to produce one sound. For example, assuming a case of generating voice according to a lyric character string as shown in FIG. 6B, an example of syllable separation and integration control by the syllable separation selector Mcs and the syllable integration selector Mcu is shown in FIG. FIG. 8 shows an example in which the syllable integration selector Mcu is turned on before voice generation of the character group "won" of the order "4" is started.
  • the CPU 20 sets an "integration" flag as additional information, and performs syllable integration processing according to the acquisition of the pitch designation information immediately thereafter.
  • the process of step S105 (FIG. 3B) is modified to the character group "won" designated by the current value "4" of the pointer j and the characters corresponding to the next rank "5". Integrate the group "der” to generate a polysyllabic voice “wonder” and modify the process of step S120 (FIG. 3B) to add "2" to the current value "4" of the pointer j. And advance the value of the pointer j two places.
  • the syllable integration selector Mcu integrates the successive plural character groups included in the predefined character string and instructs to generate the speech of the integrated plural character groups at one sounding timing. Act as an integrated selector.
  • FIG. 8 shows an example in which the syllable separation selector Mcs is turned on before voice generation of the character group “why” of the order “6” is started.
  • the CPU 20 sets a "separation" flag as additional information according to the turning on of the syllable separation selector Mcs, and performs syllable separation processing according to the acquisition of the pitch designation information immediately thereafter.
  • step S105 FIG. 3B
  • step S105 is modified to divide the character group "why" designated by the current value "6" of the pointer j into two, "wh-" and "y".
  • step S120 The voice of the first syllable (character group) "wh-" separated into syllables and separated is generated, and the process of step S120 (FIG. 3B) is modified to generate the current value "6" of the pointer j.
  • the value 0.5 is added, and the value of the pointer j is set to a half value "6.5".
  • the voice of the separated second syllable (character group) “y” is generated, and the current value “6.5” of the pointer j is “0”. .5 ", and the value of the pointer j is" 7 ".
  • the syllable separation processing is completed, and in accordance with the acquisition of the next pitch designation information, the voice of the character group "I" corresponding to the value "7" of the pointer j is generated.
  • the character group to be syllable separated consists of one character (for example, “I”). If it can be separated into two syllables (eg, "a” and "i"), it is separated as such to generate speech. Also, if syllables can not be separated by any means, only the voice of the first syllable should be generated, and at the timing of sounding the second syllable, it may be silent or the voice of the first syllable should be sustained. .
  • the syllable separation selector Mcs separates the voice of one character group consisting of one or more characters included in a predefined character string into a plurality of syllables, and generates the voices of the separated syllables at different pronunciation timings. Act as a separate selector to direct
  • the CPU 20 advances or retracts the pointer j artificially in response to the operation of the character selector 60a and / or automatically in accordance with the progress of the automatic performance sequence.
  • the character string j is configured to specify (acquire) one character group consisting of one or more characters (S102, S105, S200 to S220, etc.), and a function performed by such a CPU 20 is a character string defined in advance. It corresponds to a function as an information acquisition unit that acquires information specifying one or more characters.
  • the CPU 20 is configured to generate a voice corresponding to the character group of the order designated by the pointer j at such designated pitch (S105), and the voice thus generated is output as a voice. It is outputted from the unit 70.
  • Such a function performed by the CPU 20 corresponds to a function as a voice generation unit that generates a voice corresponding to the designated one or more characters based on the acquired information.
  • the CPU 20 performs processing for arbitrarily setting the range of the character string to be repeated according to the user operation by the processing of FIG. 4B.
  • Such a function performed by the CPU 20 corresponds to a function as a repeat target reception unit that receives information specifying the sound being generated as a repeat target.
  • the CPU 20 sets the order of the first character group to be repeated to the pointer j by the process of step S425 (FIG. 4B), and returns from the end of the repeat object to the beginning to generate voice. It functions to repeat (S105).
  • Such a function performed by the CPU 20 corresponds to a function as a repeat control unit that controls the sound generation unit to repeatedly generate the sound designated as the repeat target.

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Acoustics & Sound (AREA)
  • Multimedia (AREA)
  • Computational Linguistics (AREA)
  • Health & Medical Sciences (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Human Computer Interaction (AREA)
  • Electrophonic Musical Instruments (AREA)

Abstract

 音声生成装置(10b)は、予め規定された文字列中の指定された1または複数文字に対応する音声を生成するように構成されている。前記音声生成装置のためのコントローラ(10a)は、前記文字列中の前記1または複数文字を指定するためにユーザによって操作可能なように構成された文字セレクタ(60a)と、前記音声生成装置によって生成される前記音声の状態を制御するためにユーザによって操作可能なように構成された音声制御操作子(60b)とを備える。コントローラ(10a)はユーザの手によって握られるのに適したグリップ(G)を備えており、前記文字セレクタと前記音声制御操作子は、該グリップ上にそれぞれ設けられている。また、前記文字セレクタと前記音声制御操作子は、前記グリップを握ったユーザの異なる指でそれぞれ操作可能な配置で、前記グリップ上にそれぞれ設けられている。

Description

文字に基づく音声生成のためのコントローラ及びシステム
 本発明は、文字に基づく音声を指定された音高で生成する技術に関する。
 従来、メロディに従って音高を変化させながら歌詞の音声を合成することで歌唱音声を生成する装置が知られている。例えば、特許文献1においては、演奏データ(音高データ)が受信されるのに応じて歌詞データが示す歌詞における歌唱位置の更新制御を行う技術が開示されている。すなわち、鍵盤等の操作部に対するユーザ操作によってメロディ演奏を行い、該メロディ演奏の進行に同期させて歌詞を進行させる技術が開示されている。また、従来より、電子楽器においては種々の形状のコントローラが開発されており、鍵盤楽器の本体から突出させて把持部を設け、該把持部において任意の操作部や適宜の手操作を検出するための検出部を設けることが知られている(例えば、特許文献2,3参照)。
 また、例えば、特許文献4には、複数の歌詞を表示手段に表示させ、操作手段の操作により歌詞の任意の区間を選択し、選択した区間を指定されたピッチの歌唱音声として出力する技術が開示されている。また、ユーザがタッチパネルに表示された歌詞の中の1音節を指示し、その後、3回にわたって鍵盤の押鍵を行うと、指示された音節が鍵盤で指定されたピッチで発音される構成が開示されている。
特開2008-170592号公報 特開平01-38792号公報 特開平06-118955号公報 特開2014-10190号公報
 従来の、歌唱音声を生成する装置など、文字に基づき音声を生成する装置においては、音声生成によってもたらし得るユーザ表現等、様々な演奏表現の幅が狭かった。具体的には、ライブ演奏等においては、曲の盛り上がりに応じて任意の歌詞部分のフレーズを繰り返したり、同じフレーズの繰り返しであっても各繰り返し毎に歌詞表現及び/又は演奏の抑揚等を適宜変化させるなど、柔軟な歌詞の修正及び/又は音声の発生態様(状態)の制御が行えること、つまり、柔軟なアドリブ演奏が行えること、が望まれる。しかし、従来の装置においては、そのような柔軟なアドリブ演奏を容易に行うことができなかった。例えば、演奏中にユーザが所望する楽曲の部分的範囲を繰り返すように設定したり、同じフレーズを繰り返す際に各繰り返し毎に歌詞や抑揚を変化させるなど、柔軟に音声生成態様を制御することが容易にはできなかった。
 また、従来、リピート対象を容易に選択できるようにするための多様な技術の開発が望まれていた。すなわち、上述の特許文献4において歌詞を繰り返すためには、表示手段に表示された歌詞を選択する必要がある。しかし、歌唱音声の出力中に表示手段の視認が必要であり、また、表示された歌詞の選択操作が必要である場合、演奏者の演奏態様が表示手段の視認や選択操作が可能な態様に拘束される。例えば、ライブ中において、演奏者は表示手段を備えた演奏装置を視認することが必須となる。従って、演奏者がブラインドタッチで演奏装置を演奏することは困難になり、演奏者の可動範囲や演奏姿勢等が表示手段の視認や選択操作が可能な範囲や姿勢等に拘束される。
 本発明は、上述の点に鑑みてなされたもので、歌詞のような予め規定された文字列に基く音声を、演奏される音高に応じて、生成する技術において、生成する音声の変更等のアドリブ演奏を容易に行えるようにすることを目的とし、もって、文字に基づく音声生成における表現の幅を広げることを可能にすることを目的とする。また、本発明は、視覚に頼ることなくリピート対象を選択できるようにすることを目的とする。
 上述の目的を達成するため、本発明によれば、音声生成装置のためのコントローラであって、前記音声生成装置は、予め規定された文字列中の指定された1または複数文字に対応する音声を生成するように構成されており、前記コントローラは、前記文字列中の前記1または複数文字を指定するためにユーザによって操作可能なように構成された文字セレクタと、前記音声生成装置によって生成される前記音声の状態を制御するためにユーザによって操作可能なように構成された音声制御操作子とを備えるコントローラが提供される。また、本発明によれば、前記コントローラと前記音声生成装置とを備えるシステムが提供される。
 本発明によれば、文字セレクタの操作に応じて指定される文字列中の前記1または複数文字に対応する音声を音声生成装置から生成させ、かつ、該生成する音声を音声制御操作子の操作に応じて任意に制御することができるので、予め規定された文字列に基づく音声を生成する構成でありながら、ユーザ操作に応じて生成する音声の変更等を容易に行うことができる。従って、音楽演奏に同期して歌詞等の文字に対応する音声を生成する場合において、ユーザによる制御可能性を高めることができ、もって、歌詞音声生成のアドリブ演奏を容易に行うことができる。これにより、文字に基づく音声生成における表現の幅を広げることができる。
 一実施例において、前記コントローラは、ユーザの手によって握られるのに適したグリップを備えており、前記文字セレクタと前記音声制御操作子は、前記グリップ上にそれぞれ設けられる。一実施例において、前記文字セレクタと前記音声制御操作子は、前記グリップを握ったユーザの異なる指でそれぞれ操作可能な配置で、前記グリップ上にそれぞれ設けられている。一実施例において、前記文字セレクタと前記音声制御操作子の一方が前記ユーザの親指で操作され、他方が前記ユーザの他の指で操作されるように構成されている。一実施例において、前記文字セレクタと前記音声制御操作子は、前記グリップの異なる側面にそれぞれ配置されている。このように1つのグリップ上に前記文字セレクタと前記音声制御操作子を配置する構成は、該グリップを握ったユーザの片手のいずれかの指を駆使して前記文字セレクタと前記音声制御操作子の両方を適切に操作するのに適している。従って、別の手でキーボード楽器等を演奏しつつ、該グリップ上の前記文字セレクタと前記音声制御操作子を操作するようなことを容易に行うことができる。
 本発明の別の観点によると、予め規定された文字列中の1または複数文字を指定する情報を取得する文字情報取得部と、前記取得した情報に基づき、前記指定された1または複数文字に対応する音声を生成する音声生成部と、生成中の音声をリピート対象として指定する情報を受け付けるリピート対象受付部と、前記リピート対象として指定された前記音声を前記音声生成部が繰り返し生成するように制御するリピート制御部、として機能するように構成されたプロセッサを備える音声生成装置が提供される。これによれば、ユーザは、音声生成部によって順次生成される音声を可聴音として聞くことによって、リアルタイムに生成されている音声がリピート対象として指定するのにふさわしいかどうかを聴感的に素早く判断しかつ指定(選択)することができる。従って、視覚に頼ることなくリピート対象の文字を選択することができる。
本発明の一実施形態にかかるコントローラを備えたシステムとしての鍵盤楽器の模式図。
前記コントローラのグリップが握られた状態を示す図。
前記鍵盤楽器の制御系統を示すブロック図。
文字に基づく音声生成の実例を説明するための図。
文字に基づく音声生成の実例を説明するための図。
文字に基づく音声生成の実例を説明するための図。
文字に基づく音声生成の実例を説明するための図。
文字に基づく音声生成の実例を説明するための図。
文字に基づく音声生成の実例を説明するための図。
音声生成の開始処理の一例を示すフローチャート。
音声生成処理の一例(キーオン処理)を示すフローチャート。
音声生成処理の一例(キーオフ処理)を示すフローチャート。
文字選択処理の一例を示すフローチャート。
音声制御処理の一例を示すフローチャート。
リピート対象選択処理の一例を示すフローチャート。
コントローラのグリップ形状の変更例を示す図。
日本語の歌詞の文字列の一例を示す図。
英語の歌詞の文字列の一例を示す図。
コントローラに設けられる文字セレクタの別の例を示す平面図。
図7の文字セレクタの操作に応じて音節統合処理及び音節分離処理の一例を示す図。
 (1)システム構成
 図1Aは、本発明の一実施形態にかかるコントローラ10a及び音声生成装置10bを備えたシステムとしての電子的鍵盤楽器10を模式的に示す図である。鍵盤楽器10は、直方体状の本体10bと角柱状のコントローラ10aとを備えている。鍵盤楽器10の本体10bは、任意の楽音及び音声を電子的に生成する音声生成装置の一例として機能するもので、音高セレクタ50と入出力部60とを備えている。音高セレクタ50は演奏すべき楽音又は音声の音高を指定するためにユーザによって操作される操作子であり、例えば白鍵および黒鍵からなる複数の鍵によって構成される。本実施形態における鍵盤楽器10の本体10bの両端の取付位置P1,P2には、図示しないショルダーストラップが接続されるように構成されている。ユーザは、当該ショルダーストラップを肩にかけた状態で鍵盤楽器10を身体の前方に配置し、片手で音高セレクタ(鍵盤)50を操作することで演奏を行うことができる。図1Aにおいては、このような態様でユーザが鍵盤楽器10を演奏する際にユーザから見た上下左右方向を付記してある。以下、本明細書において言及する方向は、鍵盤楽器10を演奏するユーザから見た上下左右前後の方向を言う。なお、音高セレクタ50は、鍵盤タイプの音高指定用演奏操作子に限らず、任意のタイプの演奏操作子を用いてよく、要は、ユーザの操作に応じて何らかの音高を指定することができるような構成からなるものであればよい。
 入出力部60は、ユーザからの指示等を入力する入力部とユーザに各種の情報(画像情報や音声情報)を出力する出力部(ディスプレイ及びスピーカ)とを含んでいる。図1Aにおいては、一例として、鍵盤楽器10が備える入力部としての回転スイッチと出力部としてのディスプレイとが破線内に示されている。
 コントローラ10aは、本体(音声生成装置)10bの一側面(図1Aの例では左側面)において当該面に略垂直な方向(鍵盤楽器10を演奏するユーザから見た左方向:図1A参照)に突出している。当該コントローラ10aの外形は略柱状である。当該略柱状の部位の外周の大きさはユーザが片手で握れる大きさであり、従って、本体10bから突出するコントローラ10aの部位はグリップGを構成している。当該グリップGの長手方向(図1Aの左右方向)に延びる軸に垂直な方向の断面の形状は、切断位置によらず一定である。なお、後述するように、コントローラ10aは、本体(音声生成装置)10bと一体不可分に結合されていてもよいし、本体(音声生成装置)10bとに対して着脱自在に構成されていてもよいし、あるいは、本体(音声生成装置)10bから分離していて有線又は無線式に本体(音声生成装置)10bと通信可能となっていてもよい。
 図1Bは、図1Aに示す左側から右側の方向を視線方向としてコントローラ10aを眺めた状態を示す模式図であり、ユーザがグリップGを握った状態の例を示している。同図1Bに示すように、グリップGの軸に垂直な方向の断面は長方形の角部分を丸くしたような形状である。すなわち、グリップGの前後上下を構成する面は平面であるとともに、各平面の間に曲面又は斜面が形成された状態(面取りされた状態)となっている。
 コントローラ10aのグリップGには、鍵盤楽器10の入出力部60の一部として機能し得る文字セレクタ60aと音声制御操作子60bとリピート操作子60cとが設けられている。すなわち、コントローラ10aに設けられた文字セレクタ60a、音声制御操作子60b、リピート操作子60cのいずれかの操作に応じて発生される信号及び/又は情報が、鍵盤楽器10の本体(音声生成装置)10bに伝送され、ユーザによる入力信号及び/又は情報として取り扱われる。文字セレクタ60aは、予め規定された文字列(例えば歌詞)中の1または複数文字を指定するためにユーザによって操作可能なように構成されており、後述するように、押しボタンタイプのスイッチからなる複数の選択ボタンMcf,Mcb,Mpf,Mpbを含む。この文字セレクタ60aは、グリップの上部の面および後部の平面の間に形成された曲面又は斜面(面取りされた部位)に配置される(図1B参照)。このように文字セレクタ60aを配置することにより、グリップGを握った手の親指で該文字セレクタ60aを操作し易いものとなる。
 リピート操作子60cは、リピート演奏に関連する入力を行うための操作子である。本実施形態においてはリピート操作子60cも押しボタンタイプのスイッチからなり、グリップGの上部および後部を構成する平面の間に形成された曲面又は斜面(面取りされた部位)にリピート操作子60cが配置される(図1B参照)。本実施形態においては、当該曲面又は斜面(面取りされた部位)上で、文字セレクタ60aの各ボタンMcf,Mcb,Mpf,Mpbとリピート操作子60cのボタンとが該グリップGが延びる方向(図1Aに示す左右方向)に沿って一列に並べられている。
 音声制御操作子60bは、音声生成装置10bによって生成される前記音声の状態を制御するためにユーザによって操作可能なように構成されている。一例として、音声制御操作子60bの操作に応じて、生成する音声の音高を制御することができるように構成されている。当該音声制御操作子60bは、グリップGの前方を構成する平面に配置される(図1B参照)。一例として、音声制御操作子60bは、長手状の薄膜状のタッチセンサからなり、操作面に対する検出対象(本実施形態においては指)の接触操作位置(例えば長手方向の1次元的位置)を検出することができるように構成されている。本実施形態において、音声制御操作子60bは、矩形状タッチセンサの短辺が上下方向に平行、矩形の長辺が左右方向に平行になるように(図1A参照)、グリップGの前部の面に取り付けられる。
 以上の構成において、ユーザは、コントローラ10aのグリップGを図1Bのように左手で握りながら文字セレクタ60aと音声制御操作子60bとリピート操作子60cとを操作する。具体的には、ユーザは、コントローラ10aのグリップGを左手の手のひらで下から支えながら親指が後方、他の指が前方に配置された状態でグリップGを握る。この状態において、文字セレクタ60aおよびリピート操作子60cがグリップGの後部面と上部面との間の曲面又は斜面に存在するため、図1Bに示すように親指で操作し易い位置に文字セレクタ60aおよびリピート操作子60cが配置される。
 また、図1Bに示すようにユーザがグリップGを握った状態において、音声制御操作子60bがグリップGの前部面上に存在するため、図1Bに示すように親指以外の指(人差し指等)で操作し易い位置に音声制御操作子60bが配置される。従って、本実施形態においては、ユーザがグリップGを握りながら親指で文字セレクタ60aやリピート操作子60cを操作した場合に、他の指が配置される部位に音声制御操作子60bが形成されていることになる。
 この構成によれば、ユーザは、片手でコントローラ10aのグリップGを握りながら、その手の親指で文字セレクタ60aやリピート操作子60cを操作することが可能であり、かつ、その手の他の指で音声制御操作子60bを操作することができる。このため、片手で容易に音声制御操作子60bと文字セレクタ60(またはリピート操作子60c)とを同時操作することができる。さらに、上述のような片手での音声制御操作子60bに対する操作は、ギターのフレットを押さえるときのような操作に類似しており、ユーザが、ギターのフレットに対する操作と同様の操作で音声制御操作子60bに触れることにより、接触位置に応じて発生態様を制御することができる。さらに、以上の構成において、ユーザがコントローラ10aを握った状態において手とコントローラ10aとが接触する部位は平面または曲面又は斜面であり、手に対して尖った部位が触れることはない。従って、ユーザは、手を痛めることなく音声制御操作子60bの長手方向(図1Aに示す左右方向)に沿って繰り返し手をスライド移動させることができる。なお、文字セレクタ60aと音声制御操作子60bが同時に操作され易くするための配置は、図示例に限定されるものではなく、要は、グリップGを握った手の或る指で文字セレクタ60aと音声制御操作子60bの一方を操作している最中に、他方を該手の別の指で操作できるような配置であればよい。
 図1Cは鍵盤楽器10において音声を生成し出力するための構成を示すブロック図である。図1Cに示すように、鍵盤楽器10は、CPU20と不揮発性メモリ30とRAM40と音高セレクタ50と入出力部60と音出力部70とを備える。音出力部70は、音声を出力するための回路およびスピーカー(図1Aには図示せず)を備えていてよい。CPU20は、RAM40を一時記憶領域として利用して不揮発性メモリ30に記録されたプログラムを実行可能である。
 また、不揮発性メモリ30には、音声生成プログラム30aと文字情報30bと音声素片データベース30cとが予め記録される。文字情報30bは、歌詞のような予め規定された文字列の情報であり、例えば、該文字列を構成する複数の文字の情報および該文字列における各文字の順序を示す情報を含む。本実施形態において文字情報30bは、文字を示すコードが当該順序に従って記述されたテキストデータである。むろん、不揮発性メモリ30に予め記憶する歌詞のデータは1曲分のみであっても良いし、複数曲分であっても良く、あるいは、曲の一部の1フレーズのみであってもよい。所望の歌唱もしくは文字列の音声を生成しようとする場合に、1曲分すなわち1文字列分の文字情報30bが選択される。音声素片データベース30cは、人の歌声を再現するためのデータであり、本実施形態においては、予め、文字が示す音声が基準の音高で発音される際の音声の波形を収集し、短い期間の音声素片に分割し、当該音声素片を示す波形データをデータベース化することによって生成される。すなわち、音声素片データベース30cは、複数の音声素片を示す波形データで構成されている。当該音声素片を示す波形データを組み合わせると、任意の文字が示す音声を再現することができる。
 具体的には、音声素片データベース30cは、CV(子音から母音への遷移部)、VV(母音から他の母音への遷移部)、VC(母音から子音への遷移部)などのような音声の遷移部分(Articulation)や母音Vの伸ばし音(Stationary)などの波形データの集合体である。すなわち、音声素片データベース30cは、歌唱音声の素材となる各種の音声素片を示す音声素片データの集合体である。これらの音声素片データは、実際の人間が発した音声波形から抽出された音声素片に基づいて作成されたデータである。本実施形態においては、任意の文字や任意の文字列が示す音声を再現する際に結合されるべき音声素片データが予め決められており、不揮発性メモリ30に記録されている(図示せず)。CPU20は、文字情報30bが示す任意の文字や文字列に応じて不揮発性メモリ30を参照し、結合すべき音声素片データを選択する。そして、CPU20が選択した音声素片データを結合すると、任意の文字や任意の文字列が示す音声を再現するための波形データが生成される。なお、音声素片データベース30cは、各種の言語用に用意されていても良いし、発音者の性別や音声の特性等に応じて用意されていても良い。また、音声素片データベース30cを構成する波形データは、音声素片の波形を所定のサンプリングレートでサンプリングしたサンプル列を一定時間長のフレームに分割したデータであっても良いし、当該データに対してFFT(高速フーリエ変換)を行うことにより得られたフレーム毎のスペクトルデータ(振幅スペクトルおよび位相スペクトル)であってもよい。ここでは、波形データが後者である例を説明する。
 本実施形態において、CPU20は、不揮発性メモリ30に記録された音声生成プログラム30aを実行することができる。音声生成プログラム30aが実行されると、CPU20は、音声生成プログラム30aの処理により、ユーザが音高セレクタ50で指示した音高で、文字情報30bとして定義された文字に対応するの音声信号を生成する。そして、CPU20は、当該生成された音声信号に従って音声を出力する指示を音出力部70に対して出力する。この結果、音出力部70は、当該音声を出力するためのアナログ波形信号を生成し、増幅してスピーカーから音声を出力する。
 (2)文字列の一例
 本発明において、予め規定された文字列とは、予め所定の楽曲と関連づけられている既存の歌の歌詞に限らず、詩、韻文、通常の文章等、任意の文字列からなるものであってよい。しかし、以下説明する実施例においては、特定の楽曲に関連した歌詞の文字列に対応する音声を生成するものとする。公知のように、楽曲における音符進行と歌詞進行とは予め所定の関係に対応づけられている。その場合、1つの音符は、1音節に対応することもあれば、複数音節に対応することもあり、また、直前の音符に対応して発生した或る音節の持続部分であることもある。公知のように、言語のタイプに応じて、1つの音符に対応づけられ得る文字の単位(数)も異なる。例えば、日本語では、一般に、1音節が1つの仮名文字で表現され得るので、歌詞は1つの仮名文字単位で個々の音符に対応づけられ得る。これに対して、その他の多くの言語、例えば英語、においては、一般に、1音節は1又は複数の文字で表現されるので、1文字単位ではなく音節単位で個々の音符に対応づけられることになり、そして、1音節を構成する文字数は1又は複数であり得る。ここから導き出される概念は、どのような言語体系下の文字にあっても、1音節に対応して生成すべき音声を特定するための文字数は1又は複数である、ということである。この意味で、本発明において、音声生成のために指定される1又はまたは複数文字とは、音声生成のために必要な1又は複数の音節(子音のみの音節も含む)を特定するに足るものである。
 一実施例として、音高セレクタ50を用いたユーザの音高指定操作に同期して、文字列(歌詞)中の1または複数文字が該文字列(歌詞)における文字進行順序に従って順次進められる構成が採用される。そのために、該文字列(歌詞)中の各文字が、それが割り当てられる個々の音符に対応づけて、1又は複数文字からなるグループに分けられ、各グループが進行順に順位づけられる。図6A及び6Bは、そのような文字グループの順位付けの一例を示す。図6Aは、日本語の歌詞の文字列の一例を示し、それに対応するメロディの音符を五線譜で示している。図6Bは、英語の歌詞の文字列の一例を示し、それに対応するメロディの音符を五線譜で示している。図6A及び6Bにおいて、歌詞文字列における各文字グループの下段に記された数字は、該各文字グループの順位を示す。前記揮発性メモリ30に記録された文字情報30bは、このような、歌詞文字列内の各文字を1又は複数文字からなるグループに区分けした状態で読み出し可能に記憶した文字データと、各グループの順位を示す順位データとを含む。例えば、図6Aの例では、順位1,2,3,4,5,6,9,10に対応する各文字グループが1文字からなり、順位7,8に対応する各文字グループが複数文字からなる。また、図6Bの例では、順位1,2,4,5,6,8,9,10,11に対応する各文字グループが複数文字からなり、順位3,7に対応する各文字グループが1文字からなる。なお、本発明においては、楽曲の音符データ(例えばMIDIデータ)を持つ必要はないので、図6A及び6Bの上段に示された楽譜は単なる参考にすぎない。しかし、後述するように、変更例として、楽曲の音符データ(例えばMIDIデータ)を利用することも可能である。
 (3)基本的な音声生成処理の一例
 図3A~3Cは、CPU20によって実行される基本的な音声生成処理の一例を示す。図3Aは、音声生成の開始処理の一例を示す。ユーザが入出力部60を操作して音声生成の対象となる曲を選択すると、CPU20は、ステップS100で曲選択がなされたことを判定して、ステップS101に進み、当該選択された曲の歌詞文字列の文字情報30bを不揮発性メモリ30から取得し、RAM40にバッファ記憶する。なお、RAM40にバッファ記憶される前記選択された曲の歌詞文字列の文字情報30bは、前述したように、1又は複数文字からなる各グループ毎の文字データと、該グループの順位を示す順位データとを含む。次に、CPU20は、出力対象の文字グループの順位を指示するためのポインタj(変数)の値を初期値「1」に設定する(ステップS102)。該ポインタjはRAM40において維持される。該ポインタjの値に対応する順位データを持つ前記歌詞文字列中の1文字グループの前記文字データによって示される音声(音節)が、次の発音機会において生成されることになる。次の発音機会とは、ユーザが音高セレクタ50によって所望の音高を指定することである。例えば、該ポインタjの値1が最初の順位1の文字グループ、値2が最初から2番目の順位2の文字グループを示す。
 図3Bは、音高指定情報に応じて音声を生成する音声生成処理の一例(キーオン処理)を示す。ユーザが音高セレクタ50を押し込み操作して何らかの音高(好ましくは当該楽曲の楽譜に従う音高)を選択(指定)すると、CPU20は、ステップS103でキーオンと判定して、ステップS104に進み、音高セレクタ50が備えるセンサの出力情報に基づいて、操作状況(該指定された音高を示す音高指定情報及び該操作時のベロシティ若しくは強度等を示す情報)を取得する。次に、CPU20は、前記ポインタjによって指示される出力対象文字グループに対応する音声を、当該指定された音高および音量強度等で、生成する(ステップS105)。具体的には、CPU20は、音声素片データベース30cから該出力対象文字グループが示す音節の音声を再現するための音声素片データを取得する。さらに、CPU20は、取得された音声素片データの中の母音に対応したデータに対して音高変換処理を実行し、音高セレクタ50で指定された音高を持つ母音音声素片データに変換する。さらに、CPU20は、前記出力対象の文字グループが示す音節の音声を再現するための音声素片データの中の母音に対応したデータを、前記音高変換処理後の母音音声素片データに置換し、これらの音声素片データを組み合わせたデータに対して逆FFTを施す。この結果、前記出力対象の文字グループが示す音節の音声を再現する音声信号(時間領域のデジタル音声信号)が合成される。
 なお、前記音高変換処理は、特定の音高の音声を他の音高の音声に変換する処理であれば良く、例えば、音高セレクタ50で指示された音高と音声素片データが示す音声における基準の音高との差分を求め、当該差分に相当する周波数だけ音声素片データの波形が示すスペクトル分布を周波数軸方向に移動させる処理等によって実行可能である。むろん、音高変換処理は、他にも種々の処理によって実現可能であり、当該処理は時間軸上で行われてもよい。なお、ステップS105における音声生成処理においては、合成される前記音声の状態(例えば音高)を、前記音声制御操作子60bの操作に従って制御するようにも構成されているが、この点については追って説明する。ステップS105における音声生成処理においては、合成される前記音声の種々の態様(音高、音量、音色等)が調整可能であっても良く、例えばビブラート等を付与する音声制御が実行されても良い。
 音声信号が生成されると、CPU20は、当該音声信号を音出力部70に対して出力する。この結果、音出力部70は、当該音声信号をアナログ波形信号に変換し、増幅して出力する。従って、音出力部70から、出力対象の文字グループが示す音節の音声であって、音高セレクタ50で指定された音高及び音量強度等を持つ該音声が出力される。
 ステップS106では、前記リピート操作子60cの操作に応じてリピート機能がオンされているか否かを判定する。この詳細については後述する。通常はリピート機能はオフであり、ステップS106のNOからステップS120に進み、ポインタjが1増加される。これにより、ポインタjの値によって指示される出力対象文字グループは、次の発音機会において生成すべき音声に対応するものとなる。
 図3Cは、前記音高指定情報に応じて生成された音声の生成を停止する処理(キーオフ処理)の一例を示す。CPU20は、音高セレクタ50が備えるセンサの出力情報に基づいて、キーオフ、つまり音高セレクタ50に対する押し込み操作が解除された、か否かを判定する(ステップS107)。キーオフがなされたと判定された場合、CPU20は、生成中の音声を停止(又は減衰)し、音出力部70から出力される音声信号が消音されるようにする(S108)。この結果、音出力部70からの音声出力が停止する。図3B及び3Cの処理(キーオン処理及びキーオフ処理)により、CPU20は、音高セレクタ50で指定された音高および強度の音声を、音高セレクタ50で指定された期間継続して出力させる。
 以上のような処理において、CPU20は、音高セレクタ50が1回操作されるたびに、出力対象文字グループを特定するための変数(ポインタj)をインクリメントする(ステップS120)。本実施形態において、CPU20は、音高セレクタ50で指定された音高で出力対象文字グループに対応する音声を生成及び出力する処理を開始した後、該音声の生成及び出力が停止したか否かにかかわらず、該変数(ポインタj)をインクリメントする。従って、本実施形態において、出力対象文字グループとは、次の発音指示によって生成及び出力されるべき音声に対応する文字グループであり、言い換えると生成及び出力待機中の文字グループである。
 (4)音声生成すべき文字の表示
 なお、本実施形態において、CPU20は、出力対象文字グループと、少なくともその前方または後方の順序の文字グループを入出力部60のディスプレイに表示するようにしてよい。例えば、入出力部60のディスプレイには、既定の数(例えばm)の文字を表示するための歌詞表示枠が設けられている。CPU20は、RAM40を参照し、文字列の中からポインタjが示す順位の1文字グループを含む、その前及び/又は後の合計m個の文字を取得し、これらの文字を前記ディスプレイの歌詞表示枠内に表示する。
 さらに、CPU20は、入出力部60のディスプレイにおいて、出力対象文字グループと他の文字とを区別するための表示を行うようにしてよい。当該表示は、種々の態様によって実現可能であり、出力対象文字グループを強調表示(点滅、色の変更、下線追記等)することや、出力対象文字グループの前または後の文字を明示(点滅、色の変更、下線追記等)すること等を採用可能である。さらにCPU20は、出力対象文字グループが入出力部60のディスプレイに常に表示されるように、表示内容を切り替える。当該切り替えは、種々の態様で実現可能であり、ポインタjの値の変化に伴って出力対象文字グループが変化することに応じてディスプレイの表示内容をスクロールさせることや、複数個の文字を単位にして表示内容を切り替えること等を採用可能である。
 (5)文字に基づく音声生成の基本的な実例
 図2Aは、文字に基づく音声生成の基本的な実例を示す図である。同図2Aにおいて横軸は時間軸であり、縦軸は音高を示す軸である。図2Aにおいては、ある音階におけるいくつかの階名(ド、レ、ミ、ファ、ソ)に相当する音高が縦軸に示されている。また、図2Aにおいては、音声生成されるべき文字列の1番目の順位の文字グループから7番目の順位の文字グループまでを、符号L1,L2,L3,L4,L5,L6,L7で示している。さらに、同図2Aに示すグラフにおいては、生成及び出力される音声を矩形の領域で示しており、矩形における横方向(時間軸方向)の長さが音声の出力継続期間に相当し、矩形の縦方向の位置が音高に相当する。なお、ここでは、各矩形の縦方向の中央の位置が当該矩形の音高に該当する。
 また、図2Aにおいては、時刻t1,t2,t3,t4,t5,t6,t7において、ユーザが階名ド,レ,ミ,ファ,ド,レ,ミの順で音高セレクタ50を操作した場合に生成及び出力される音声が示されている。このような操作が行われると、ユーザがド,レ,ミ,ファ,ド,レ,ミの音高セレクタ50を操作したことに同期して、出力対象文字グループがL1,L2,L3,L4,L5,L6,L7のように順次変化する。従って、図2Aに示す例においては、ユーザがド,レ,ミ,ファ,ド,レ,ミの音高セレクタ50を操作したことに同期して、L1,L2,L3,L4,L5,L6,L7が示す各文字グループに対応する音声がド,レ,ミ,ファ,ド,レ,ミの音高で順次出力されることになる。
 以上のような基本的な実例によれば、ユーザは、音高セレクタ50により音声の音高と文字の進行とを制御することができるため、既定の順序の歌詞に従う歌唱音声をユーザの意図通りの音高で生成する(自動的に歌わせる)ことができる。しかし、このような基本例においては、音高セレクタ50に対する操作に同期して文字列内の文字が順序通りに進んでしまうため、音高セレクタ50の操作を誤るなど、実際の曲の進行とは異なる予定外の操作が行われると、曲の進行よりも歌唱音声の進行が早くなったり、または遅くなってしまう。例えば、図6Bの例において、順位1,2,3の歌詞「sometimes I」を歌唱させる小節において、シ、ド、#ド、の3つの音高を順次指定すべきところを、シ、ド、#ド、#ド、と誤操作した場合、「sometimes I won-」と音声合成されてしまい、次の小節の先頭の歌詞音節「won-」が前の小節の末尾で出力されてしまい、以後、歌詞進行が早くなってしまう。音高セレクタ50によって任意の音高を指定することができても、文字の進行を戻したり、進めたりすることはできない。
 (6)文字セレクタ60aの具体例
 そこで、本実施形態にかかる鍵盤楽器10のコントローラ10aには文字セレクタ60aが設けられており、音高セレクタ50で予定外の操作が行われたとしても、ユーザが文字セレクタ60aを操作することによって、誤操作があつとしても、音声生成すべき出力対象文字グループを本来の楽曲進行に従う文字グループに戻すことができるように構成されている。また、ユーザが意図的に音高セレクタ50と文字セレクタ60aを組み合わせて操作することによって、本来の楽曲進行を適宜変形したアドリブ演奏を行うことができるようにもなっている。
 具体的には、図1Aに示すように、文字セレクタ60aは、出力対象文字グループを、該歌詞文字列の進行順序に従って1文字グループ(1順位)だけ進めるための文字前進選択ボタンMcfと、当該進行順序とは逆向きに1文字グループ(1順位)だけ戻すための文字後退選択ボタンMcbとを備え、更に、出力対象文字グループを、該歌詞文字列の進行順序に従って1フレーズ単位で進めるためのフレーズ前進選択ボタンMpfと、当該進行順序とは逆向きにフレーズ単位で戻すためのフレーズ後退選択ボタンMpbとを備えている。なお、フレーズとは、複数の文字の連なりであり、各フレーズの区切りが当該歌詞文字列の文字情報30bにおいて記述されることによって予めフレーズが定義されている。例えば、文字情報30bにおいて、文字列の各文字コードの配列の途中において、フレーズの区切りであることを示すコード(例えば空白を示すコード等)が挿入されている。従って、ポインタjの現在値に関して、その直前のフレーズの先頭の文字グループの順位、及びその直後のフレーズの先頭の文字グループの順位は、当該歌詞文字列の文字情報30bが持つフレーズ定義から容易に判明する。なお、文字前進選択ボタンMcfおよびフレーズ前進選択ボタンMpfは、当該文字列の進行順序に従って1または複数文字だけ進めるための前進セレクタに相当し、文字後退選択ボタンMcbとフレーズ後退選択ボタンMpbは、前記進行順序とは逆向きに1または複数文字だけ戻すための後退セレクタに相当する。
 (7)文字選択処理
 図3Dに従い、CPU20が音声生成プログラム30aによって実行する文字選択処理の一例を説明する。文字選択処理は、文字セレクタ60aのいずれかの選択ボタンが操作されると(押し込み操作後に押し込み操作の解除が行われると)実行される。文字選択処理において、CPU20は、操作された文字セレクタ60aを判定する(ステップS200)。具体的には、文字セレクタ60aの中の文字前進選択ボタンMcf、文字後退選択ボタンMcb、フレーズ前進選択ボタンMpf、フレーズ後退選択ボタンMpbのいずれかが操作されると、各選択ボタンから操作した選択ボタンの種類および操作内容を示す信号が出力される。そこで、CPU20は、当該信号に基づいて操作された選択ボタンが文字前進選択ボタンMcf、文字後退選択ボタンMcb、フレーズ前進選択ボタンMpf、フレーズ後退選択ボタンMpbのいずれであるのかを判定する。
 操作された選択ボタンが文字前進選択ボタンMcfである場合、CPU20は、出力対象文字グループの順位を1順位進める(ステップS205)。すなわち、CPU20は、ポインタjの値を1インクリメントする。操作された操作子が文字後退選択ボタンMcbである場合、CPU20は、出力対象文字グループの順位を1順位戻す(ステップS210)。すなわち、CPU20は、ポインタjの値を1デクリメントする。
 操作された操作子がフレーズ前進選択ボタンMpfである場合、CPU20は、出力対象文字グループの順位を1フレーズ進める(ステップS215)。すなわち、CPU20は、当該歌詞文字列の文字情報30bを参照し、現在の出力対象文字グループよりも先(順位を示す数値が大きい)の順位の文字グループ間に存在する最も近いフレーズの区切りを検索する。そして、当該区切りが検出された場合、CPU20は、当該区切りの次に位置する文字グループの順位(つまり、直後のフレーズの先頭の文字グループの順位)を示す数値を、ポインタjにセットする。
 操作された操作子がフレーズ後退選択ボタンMpbである場合、CPU20は、出力対象文字グループの順位を1フレーズ戻す(ステップS220)。すなわち、CPU20は、当該歌詞文字列の文字情報30bを参照し、現在の出力対象文字グループよりも前(順位を示す数値が小さい)の順位の文字グループ間に存在する最も近いフレーズの区切りを検索する。そして、当該区切りが検出された場合、CPU20は、当該区切りの次に位置する文字グループの順位(つまり、直前のフレーズの先頭の文字グループの順位)を示す数値を、ポインタjにセットする。
 このようにしてユーザによる文字セレクタ60aの操作に応じてポインタjの値を適宜進める又は戻すのとほぼ同時に又はその直後の適切なタイミングで、ユーザが音高セレクタ50を操作することにより適宜の音高を指定すると、CPU20は、前記図3Bの処理を実行し、前記ステップS103においてYESと判定される。これにより、前述したステップS104以降の処理が実行され、前記文字セレクタ60aの操作に応じて指定された文字グループ(1または複数文字)に対応する音声が生成され出力される。すなわち、文字前進選択ボタンMcfが操作された場合は(S205)1順位進められた文字グループの音声が生成され、文字後退選択ボタンMcbが操作された場合は(S210)1順位戻された文字グループの音声が生成され、フレーズ前進選択ボタンMpfが操作された場合は(S215)次のフレーズの先頭の文字グループの音声が生成され、フレーズ後退選択ボタンMpbが操作された場合は(S220)直前のフレーズの先頭の文字グループの音声が生成される。こうして、文字セレクタ60aのユーザ操作に応じて適宜修正された又はアドリブ演奏される歌詞文字の音声が生成される。
 (8)誤操作の修正例
 このように、音声生成する文字グループの順序を文字セレクタ60aの操作によって修正することができると、音高セレクタ50による音高指定操作を誤った場合であっても、音声生成する文字グループの順序を、楽曲進行に沿う適正な順序に戻すことができる。図2Bは、図2Aと同様の曲を演奏する過程で音高セレクタ50による操作を誤った場合の例及びこの誤操作を修正する例を示している。具体的には、図2Bに示す例においては、時刻t5~t6の期間においてドの音高音高セレクタ50のみを操作すべきところ、ユーザがドの音高の音高セレクタ50に対する押し込み操作を行った直後(時刻t0)において、ドの音高の音高セレクタ50に対する押し込み操作を解除してレの音高の音高セレクタ50の押し込み操作を行ってしまった場合の例を示している。
 このような場合、本実施形態においては音高セレクタ50の操作に同期して出力対象文字グループの順位が変化するため、図2Bに示すように、時刻t5からL5の文字グループに対応する音声の生成が開始された後、時刻t0からはL5の文字グループに対応する音声の生成が終了するとともにL6の文字グループに対応する音声の生成が開始される。従って、誤った音高の音声が出力されるのみならず、以後の歌詞文字が不適切に進行してしまう。しかし、このような場合であっても、本実施例によれば、ユーザが、例えば、時刻tbにおいて文字後退選択ボタンMcbを操作すれば、出力対象文字グループが1順位戻される。従って、ユーザが再度時刻t9においてドの音高セレクタ50を操作すれば、適正なL5の文字グループに対応する音声が適正な音高(ド)で出力される。従って、音高セレクタ50による音高指定操作の誤りを適正に修正することができる。また、前述のように、図6Bの例において、順位1,2,3の歌詞「some- times I」を歌唱させる小節において、シ、ド、#ド、の3つの音高を順次指定すべきところを、シ、ド、#ド、#ド、と誤操作した場合は、すぐに文字後退選択ボタンMcbを1回操作すれば、次の小節の先頭から正しい歌詞音節「won-」が始まるように修正できる。
 以上の構成によれば、ユーザは、文字セレクタ60aを操作することにより、文字情報が示す順序に従って1文字グループずつ、または、フレーズ単位で出力対象文字グループを変化させることができる。従って、簡易な構成によって出力対象文字グループを修正することができ、ユーザが歌詞文字列の順序を正しく記憶していれば、ブラインドタッチによって出力対象文字グループの修正を行うことも可能になる。
 さらに、以上の構成においては、音高セレクタ50に対する操作に同期して出力対象文字グループに対応する音声が生成され、その後に出力対象文字グループの順位を指示するポインタjがインクリメントされる。従って、音高セレクタ50に対する操作に応じて音声が生成されると、その音声に係る文字グループの次の順位の文字グループが出力対象となる。このため、ユーザは、現時点で出力された音声を聞くことで、歌唱音声の進行状況を把握することができるので、現時点で何らかの文字セレクタ60aを操作した場合、次にどのような歌詞文字の音声を発生させることができるかが容易に把握できる。例えば、文字後退選択ボタンMcbを操作すれば、出力対象文字グループを1順位戻すことにより、現在出力中の音声(または出力が完了した音声の中で最後に出力された音声)に係る文字グループを再度出力対象文字グループとすることができると認識することができる。従って、ユーザは、聴覚によって取得した情報に基づいて文字セレクタ60aを操作することにより出力対象文字グループを変化させることができ、ブラインドタッチによって出力対象文字グループの修正を行うことがより容易になる。
 (9)音声制御処理
 さらに、本実施形態においては、鍵盤楽器10の楽器としての性能を高めるため、ユーザが音声制御操作子60bを操作することによって、生成される音声の特徴を制御する(例えば音高を調整する)ことができるように構成されている。具体的には、音高セレクタ50の操作に応じた音声の生成中に音声制御操作子60bがユーザの指で操作されると、CPU20は、音声制御操作子60bに対する指の接触位置を取得する。そして、CPU20は、当該接触位置に対して予め対応づけられた補正量を取得する。この補正量に応じて生成中の音声の特徴(音高、音量、音色等のいずれか)を制御する。
 図4Aは、CPU20が音声生成プログラム30aによって実行する音声制御処理の一例として、音声制御操作子60bの操作に応じて音高を調整する例を示す。この音声制御処理は、音声制御操作子60bが操作されると(指が接触すると)実行される。音声制御処理において、CPU20は、音声が生成中であるか否かを判定する(ステップS300)。例えば、CPU20は、音高セレクタ50から音高指定のための押し込み操作したことを示す信号が出力されたときから該押し込み操作が解除されたことを示す信号が出力される直前までの間において、音声が生成中であると判定する。ステップS300において音声が生成中であると判定されなかった場合は、制御対象となる音声が存在しないため、CPU20は、音声制御処理を終了する。
 ステップS300において、音声が出力中であると判定された場合、CPU20は、接触位置を取得する(ステップS305)。すなわち、CPU20は、音声制御操作子60bから出力される接触位置を示す信号を取得する。次に、CPU20は、補正量を取得する(ステップS310)。すなわち、CPU20は、音高セレクタ50によって指定された音高を基準の音高とし、該基準の音高に対する補正量を音声制御操作子60bに対する指の接触位置に基づいて取得する。
 具体的には、音声制御操作子60bは細長い矩形の面を指の接触の検出面として備えるセンサであり、少なくとも1次元的な操作位置(直線位置)を検出するように構成されている。一実施例において、音声制御操作子60bの長辺方向の中央の位置が基準の音高の位置に対応しており、接触位置が音声制御操作子60bの長辺方向の中央の位置から離れるほど音高の補正量が大きくなるように接触位置毎の補正量が予め決められている。また、音声制御操作子60bの中央の位置を挟んで一方側の各接触位置には音高を高くする場合の補正量が対応づけられており、音声制御操作子60bの中央の位置を挟んで他方側の各接触位置には音高を低くする場合の補正量が対応づけられている。
 従って、音声制御操作子60bの長辺方向の両端の位置が最も高い音高を示す位置および最も低い音高を示す位置になる。例えば、基準の音高から4半音分の補正を可能にする構成においては、音声制御操作子60bの長辺方向の中央の位置が基準の音高が対応づけられ、長辺方向の一方の端部に基準の音高よりも4半音分高い音高が対応づけられ、当該一方の端部と中央の位置との中間の位置に基準の音高よりも2半音分高い音高が対応づけられる。音声制御操作子60bの長辺方向の他方の端部に基準の音高よりも4半音分低い音高が対応づけられ、当該他方の端部と中央の位置との中間の位置に基準の音高よりも2半音分低い音高が対応づけられる。本実施形態においては、このように接触位置に補正後の音高が対応づけられているため、CPU20が、音声制御操作子60bから接触位置を示す信号を取得すると、CPU20は、当該接触位置に対応する音高と基準の音高との間の周波数の差分を補正量として取得する。
 次に、CPU20は、音高変換を行う(ステップS315)。すなわち、CPU20は、押し込み操作中の音高セレクタ50により指定される音高、すなわち、ステップS300において音声生成中の音高を基準の音高とし、ステップS310で取得された補正量に応じて、当該生成中の音声の音高調整(音高変換)を行う。具体的には、CPU20は、基準の音高で音声を出力するための音声素片データの波形が示すスペクトル分布を周波数軸方向に移動させる処理等により、補正後の音高で音声を出力するための音声素片データを生成する音高変換処理を実行する。さらに、CPU20は、音高変換処理後の音声素片データに基づいて音声信号を生成し、音出力部70に対して出力する。この結果、音出力部70から、音高が補正された後の音声が出力される。なお、上記例では、音声生成中に音声制御操作子60bの操作を検出して補正量の取得や音高変換処理を行っているが、音声出力を開始する前に音声制御操作子60bが操作され、その後、音高セレクタ50が操作された場合に、音高セレクタ50の操作に応じた音声の生成中に、当該音声の生成直前の音声制御操作子60bの操作を反映させて補正量の取得や音高変換を行ってもよい。
 (10)歌唱アドリブ演奏及び音声制御の実例
 図2Cは、図2Aと同様の曲を演奏する過程で、文字セレクタ60aの操作による歌唱アドリブ演奏と音声制御操作子60bの操作による音声制御とを組み合わせて行う例を示している。具体的には、図2Cにおいては、時刻tbにおいて文字セレクタ60aの文字後退選択ボタンMcbに対する操作(押し込みおよび押し込み操作の解除)が2回行われた例を示している。図2Cに示す例においては、時刻t4にてファの音高の音高セレクタ50が操作されると、L4の文字グループに対応する音声がファの音高で生成されるようになり、かつ、ポインタjによって指示される出力対象文字グループはL5となる。その後の時刻tbにおいて文字後退選択ボタンMcbに対する操作が2回繰り返され、これに応じて、出力対象文字グループの順位が2順位戻されて、L3が出力対象文字グループとなる。
 従って、次の時刻t5にて音高セレクタ50の操作によりミの音高が指定されると、文字グループL3に対応する音声がミの音高で生成される。この場合、文字グループL3に対応する音声の生成が開始されると、ポインタjによって指示される出力対象文字グループはL3の次の順位のL4に変化する。当該文字グループL3に対応する音声の生成期間は、ミの音高を指定する音高セレクタ50の押し込み操作開始時(時刻t5)から押し込み操作が解除される時(時刻t6)までの期間である。そして、時刻t6にて音高セレクタ50の操作によりファの音高が指定されると、L4の出力対象文字グループに対応する音声がファの音高で生成される。
 この例において、曲の構成通りに演奏する場合、時刻t5~時刻t7の期間において文字グループL5,L6が示す音声をド,レの音高で出力すべきであるが、図2Cに示す例では時刻t5~時刻t7の期間において文字グループL3,L4が示す音声をミ,ファの音高で出力している。これらの文字グループおよび音高は、その直前の時刻t3~時刻t5における文字グループおよび音高であり、時刻t5~時刻t7の期間においても同様の歌詞および音高を繰り返していることになる。このような演奏例は、文字グループL3,L4が示す音声をミ,ファの音高で出力する部分が曲のサビであり、メインボーカルの歌唱に続けて同じ内容を繰り返すコーラスを入れる場合など、演奏の過程で盛り上がった場合等に利用される。このようにして、歌唱アドリブ演奏を適宜行うことができる。
 さらに、このような場合、同じ歌詞文字を繰り返しているとしても、最初の時刻t5~時刻t7の期間において繰り返される歌唱音声の状態が、次の時刻t3~時刻t5の期間における歌唱音声の状態とは異なる方が演奏の完成度が高まる場合が多い。本実施形態においては、鍵盤楽器10は音声制御操作子60bを備えているため、ユーザは、当該音声制御操作子60bを操作することによって繰り返し演奏の1回目と2回目で歌唱音声の状態を変化させることが容易にできる。
 図2Cにおいては、繰り返し演奏である時刻t5~時刻t7の期間において音高を上下に変化させるビブラートを行っている。すなわち、ユーザは、時刻tc1~時刻t6の間および、時刻tc2~時刻t7の間において、音声制御操作子60bに指が触れた状態で音声制御操作子60bの長手方向の中央の位置を中心に接触位置を図1Aに示す左右方向に移動させた。この場合、図2Cに示すように、時刻tc1~時刻t6の間において、文字グループL3を示す音声がミの音高を中心に上下に揺れ、文字グループL4を示す音声がファの音高を中心に上下に揺れる。従って、ユーザは、繰り返し演奏の1回目と2回目で同一の歌詞部分音声を異なる制御態様で演奏することができる。このように、ユーザは、歌詞の修正と音声の制御とを柔軟に行うことができる。また、同一の歌詞部分を、抑揚を変えて複数回演奏することも可能である。従って、文字に基づく音声の表現の幅を広げることが可能である。
 なお、図2Cに示す例においては、アドリブ演奏として行った歌詞の繰り返し部分が終了した場合に歌詞文字の順序を本来の進行位置まで移動する(時刻t7で発音すべき文字グループをL7に設定する)ため、ユーザは、文字前進選択ボタンMcfを操作する必要がある。図2Cにおいては、ユーザが時刻tfにおいて文字前進選択ボタンMcfに対する操作(押し込み操作と押し込み操作の解除)を2回行った例を示している。すなわち、時刻t6における音高セレクタ50の操作で出力対象文字グループはL5になっているため、時刻tfにおいてユーザが文字前進選択ボタンMcfを2回操作すれば出力対象文字グループがL7となる。この結果、ユーザが、時刻t7においてミの音高の音高セレクタ50を操作すれば、文字L7が示す音声がミの音高で出力され、元の歌詞文字の順序および音高に戻って曲を進行させることができる。
 なお、時刻tfにおいて、ユーザは、文字前進選択ボタンMcfと音声制御操作子60bとを同時に操作する必要があるが、本実施形態にかかるコントローラ10aを利用すれば、文字前進選択ボタンMcfと音声制御操作子60bとを同時に操作することが容易に行える。すなわち、本実施形態にかかるコントローラ10aにおいては、ユーザから見たグリップの前方の面を構成する平面に音声制御操作子60bが設けられ、グリップの上方および後方を構成する平面の間に文字前進選択ボタンMcfが設けられている。従って、ユーザは、図1Bに示すように、グリップGを片手で握りながら文字前進選択ボタンMcfを親指、音声制御操作子60bを他の指(人差し指等)で操作することができ、両操作子を同時に操作することができる。
 なお、以上のように、音声制御操作子60bが設けられていることにより、より多様なバリエーションで歌唱音声を演奏することが可能になる。例えば、本実施形態のように、1個の音高セレクタ50が1回操作されるたびに文字グループの順序が進行する構成であっても、1個の文字グループが示す音声を連続する2以上の音高で生成させることが可能になる。例えば、文字グループL1をド、文字グループL2をレ、文字グループL3をミおよびファ、文字グループL4をド、文字グループL5をレ、文字グループL6をミという順に演奏する歌を想定する。この場合、ユーザは、図2Dに示す時刻t1,t2,t3のそれぞれで、ド,レ,ミの音高セレクタ50を操作し、時刻tcにおいて音声制御操作子60bによって基準の音高であるミの音高を半音分、つまりファまで上昇させる操作を行う。この結果、文字グループL1が示す音声がドの音高で生成され、文字グループL2が示す音声がレの音高で生成され、文字グループL3が示す音声がミの音高で生成された後にファの音高で生成される。この後、ユーザが、時刻t5,t6,t7のそれぞれで、ド,レ,ミの音高セレクタ50を操作すれば、文字グループL4が示す音声がドの音高で出力され、文字グループL5が示す音声がレの音高で出力され、文字グループL6が示す音声がミの音高で出力される。このように、本実施形態によれば、ユーザは、1個の文字グループが示す音声を連続する2以上の音高で出力させることが可能である。なお、以上の構成において、ミからファへの音高の変化は、ユーザが音声制御操作子60bを操作する速度に応じて連続的に行われる。従って、人の声で歌っている場合の音声により近い音声を生成することができる。
 以上の構成によれば、ユーザは、コントローラ10aを利用して、文字に基づく音声を多様な表現で生成するように指示することが可能である。さらに、ユーザが鍵盤楽器10を演奏し、音声を出力している過程において、ユーザは曲の盛り上がりに応じてコーラスやサビなどの任意の歌詞を繰り返すとともに抑揚を変化させるなど、歌詞の修正と音声の発生態様の制御とを柔軟に行うことができる。また、歌詞の修正によって同一の歌詞が繰り返される場合において、発生態様を制御することにより、同一の歌詞の抑揚を変化させることも可能である。従って、文字に基づく音声の表現の幅を広げることが可能である。
 (11)リピート機能
 本実施形態においては、さらに、より多様な手法で容易に歌詞のアドリブ演奏をできるようにするため、ユーザがリピート操作子60cを操作することによって、リピート対象とする文字グループの範囲(開始および終了)を指示できるように構成されている。具体的には、リピート操作子60cに対する押し込み操作が行われると、CPU20は、リピート対象の文字グループの選択を開始する。また、CPU20は、リピート操作子60cに対する押し込み操作が解除されるとリピート対象の文字グループの選択を終了する。CPU20は、リピート操作子60cが押されている間において選択された文字グループの範囲をリピート対象として設定する。
 まず、リピート対象を選択する処理の一例について、図4Bを参照して説明する。図4Bに示すリピート対象選択処理は、リピート操作子60cに対する押し込み操作が行われると実行される。図2Eは、図2Aと同様の曲を演奏する過程でリピート対象の文字を設定し、リピート対象の文字を繰り返す演奏が行われた場合の例を示している。具体的には、図2Eにおいては、時刻tsにおいてリピート操作子60cに対する押し込み操作が行われ、時刻teにおいてリピート操作子60cに対する押し込み操作を解除する操作が行われ、時刻ttにおいてリピート操作子60cに対する押し込み操作が行われた例を示している。
 以下においては、当該図2Eを参照しながらリピート対象選択処理を説明する。この例においては、時刻tsにおけるリピート操作子60cに対する押し込み操作をトリガにしてリピート対象選択処理の実行が開始される。当該リピート対象選択処理において、CPU20は、リピート機能がオフであるか否かを判定する(ステップS400)。すなわち、CPU20は、RAM40に記録されたリピートフラグを参照し、リピート機能がオフであるか否かを判定する。
 ステップS400において、リピート機能がオフであると判定された場合、CPU20は、リピート機能をオンにする(ステップS405)。すなわち、本実施形態においては、リピート機能がオフの状態でユーザがリピート操作子60cの押し込み操作を行うと、CPU20は、リピート機能がオンの状態に切り替えられたと見なし、RAM40に記録されたリピートフラグをリピート機能がオンであることを示す値に書き換える。そして、CPU20は、リピート機能がオンになった後においては、リピート操作子60cの押し込み操作が解除されるまでの期間においてリピート対象となる文字グループの範囲を設定するための処理を行う。
 次に、CPU20は、出力対象文字グループをリピート対象の最初の文字グループとして設定する(ステップS410)。すなわち、CPU20は、ポインタjの現在値を取得し、リピート対象の最初の文字グループの順位を示す数値としてRAM40に記録する。ポインタjの現在値によって指示される出力対象文字グループは、次の発音機会(次に音高セレクタ50が操作されたとき)に生成される音声を示す。例えば、図2Eに示す例では、時刻t2における音高セレクタ50への操作によって文字グループL2に対応する音声の生成が開始されるとともに、出力対象文字グループがL3に更新される。従って、時刻tsにおけるリピート操作子60cの押し込み操作に応じてステップS410が実行されると、ポインタjによって指示される文字グループL3がリピート対象の最初の文字グループに設定される。
 次に、CPU20は、リピート操作子60cの押し込み操作が解除されたと判定されるまで待機する(ステップS415)。当該待機中であっても、CPU20は、音高セレクタ50に対する操作に応じて上述の音声生成処理(図3B及び図3C)を実行する。従って、音高セレクタ50が操作されると、当該操作に同期して出力対象の文字は文字情報30bが示す順序に従って進行する。例えば、時刻tsより後の時刻t3,t4で音高セレクタが操作されると、出力対象文字グループはL4,L5に変化する。
 ステップS415において、リピート操作子60cの押し込み操作が解除されたと判定されると、CPU20は、出力対象文字グループの1個前の文字グループをリピート対象の最後の文字グループとして設定する(ステップS420)。すなわち、CPU20は、ポインタjの現在値を取得し、当該数値から1減じた数値(j-1)を、リピート対象の最後の文字グループの順位を示す数値としてRAM40に記録する。j-1によって指示される出力対象文字グループの1個前の文字グループは、現在生成中の音声または生成済みの最後の音声に対応している。
 例えば、図2Eに示す例では、時刻t4における音高セレクタ50への操作によって文字グループL4に対応する音声の生成が開始されるとともに、出力対象文字グループがL5に更新される。従って、時刻teにおけるリピート操作子60cの押し込み操作の解除に応じてステップS420が実行されると、生成中の音声を示す文字グループL4がリピート対象の最後の文字グループとして設定される。従って、図2Eに示す例においては、リピート対象の最初の文字グループがL3であり、リピート対象の最後の文字グループがL4となり、リピート対象が文字グループL3,L4の範囲に設定されることになる。このようにリピート対象の文字グループ範囲が設定されることに応じて、後述するように、リピート対象の文字グループ範囲の音声を,該リピート機能がオフにされるまで、1乃至複数回繰り返すことができる。従って、ユーザ所望の回数だけリピート対象の文字グループ範囲の音声を繰り返すことが可能になる。このため、図2Eに示すようにリピート対象の文字が示す音声を1回繰り返す(同一の歌詞を2回繰り返す)演奏のみならず、ライブ演奏の際などに観客の盛り上がりに応じて特定のフレーズを何度も繰り返すといった使い方が可能になる。
 上記のようにリピート対象たる文字グループの範囲が設定されると、CPU20は、リピート対象の最初の文字グループを出力対象文字グループとして設定する(ステップS425)。すなわち、CPU20は、RAM40を参照してリピート対象の最初の文字グループの順位を示す数値を取得し、当該数値を、ポインタjにセットする。これにより、音高セレクタ50の操作に応じて次に音高指定情報を取得したとき、リピート対象の最初の文字グループに対応する音声が生成されることになる。
 次に、上記のように選択されたリピート対象の文字グループ範囲の音声を繰り返し生成する処理の一例について図3Bを参照して説明する。前記ステップS425の処理が行われた後に、音高セレクタ50による音高指定操作がなされると、CPU20は、図3BのステップS103のYESからステップS104に行き、指定された音高を示す音高指定情報を取得する。そして、ステップS105において、ポインタjによって指示される順位の文字グループ(つまり、リピート対象の最初の文字グループ)に対応する音声を、該指定された音高で生成する。次に、ステップS106において、CPU20は、リピート機能がオンであるか否かを判定する。この場合、リピート機能がオンされているので、ステップS106はYESであり、ステップS110に進む。
 ステップS110において、CPU20は、ポインタjが示す出力対象文字グループがリピート対象の最後の文字グループであるか否かを判定する。リピート対象の最後の文字グループでなければ、ステップS110のNOから前記ステップS120に進み、ポインタjの値を1増加する。
 こうして、音高セレクタ50による音高指定操作がなされる毎に図3Bの処理が行われ、リピート対象の最後の文字グループに達するまで、ステップS110のNOから前記ステップS120に進む経路の処理が繰り返される。リピート対象の最後の文字グループに達すると、ステップS110はYESと判定され、ステップS115に進む。ステップS115では、ポインタjの値を、リピート対象の最初の文字グループの順位にセットする。その後、音高セレクタ50による音高指定操作がなされると、前記ステップS105の処理により該最初の文字グループに対応する音声が再び生成される。こうして、リピート対象の最初から最後の文字グループまでの音声を、音高指定操作がなされる毎に順次生成し、それから、最初の文字グループに戻って音声生成を繰り返す。リピート機能がオンされている限り、このようなリピート音声生成処理が繰り返される。
 オンされているリピート機能をオフするためには、リピート操作子60cをもう一度押し込み操作する。これに応じて、図4Bの処理が行われ、リピート機能がオンであるため、ステップS400ではNOと判定され、ステップS430に進む。ステップS430では、リピート機能をオフにする。すなわち、CPU20は、リピート機能がオンの状態でユーザがリピート操作子60cの押し込み操作を行うと、リピート機能がオフの状態に切り替えられたと見なし、RAM40に記録されたリピートフラグをリピート機能がオフであることを示す値に書き換える。
 次に、CPU20は、リピート対象の文字グループ範囲の設定をクリアする(ステップS435)。すなわち、CPU20は、リピート対象の最初の文字グループ及び最後の文字グループの順位を示す数値をRAM40から消去する。なお、一実施例として、リピート機能がオフにされた場合であっても、ポインタjの値つまり出力対象文字グループは変化させないようにしている。従って、例えば、図2Eに示す例において、時刻ttにおいてリピート操作子60cに対する押し込み操作が行われたことに応じてリピート機能がオフになった場合、出力対象文字グループはL5のままである。
 ユーザは、リピート操作子60cに対する押し込み操作を行う際に出力されている音声(図2Eに示す例では、L4の音声)を聴いて、出力対象文字グループ(図2Eに示す例では、L5)を把握することができるため、次の発音タイミングまでの間に文字セレクタ60aを操作することで、所望の文字グループを出力対象文字グループとして設定することができる。
 例えば、ユーザが、時刻t7より前のタイミングにおいて文字前進選択ボタンMcfを2回操作することで、出力対象を文字グループL7に設定することができる。この場合、時刻t7においてユーザが音高セレクタ50を操作すれば、文字グループL7が示す音声が出力される。また、文字情報30bにおいて、文字グループL6と文字グループL7との間がフレーズの区切りに設定されている場合、ユーザが、時刻t7より前のタイミングにおいてフレーズ前進選択ボタンMpfを1回操作することで、出力対象文字グループをL7に設定することができる。この場合も、時刻t7においてユーザが音高セレクタ50を操作すれば、文字グループL7に対応する音声が出力される。
 なお、ステップS435において行う処理の変形例として、CPU20が、ポインタjの値を自動で本来の進行位置まで移動させるようにしても良い。具体的には、CPU20が、リピート演奏中においてリピートがなされていないと仮定する基準ポインタを音高指定操作に応じて順次進行させるように構成すればよい。例えば、図2Eに示す例において、時刻ttにおいてリピート操作子60cに対する押し込み操作(リピート機能オフ)が行われたことに応じてステップS435が実行された場合、CPU20は、前記基準ポインタによって、ポインタjによって指示されるべき出力対象文字グループがL7であると特定する。なお、前記基準ポインタに限らず、リピート機能オフ時にポインタjの値を本来の進行位置まで自動的に移動させるための手法は、種々のものを採用し得る。例えば、CPU20が、リピート機能がオンである期間中における音高操作子50の操作回数をカウントし、該カウント値とリピート開始時のポインタjの値とを使用して、リピート終了時のポインタjの値を修正するようにしてよい。
 なお、リピート操作子60cによる操作と音声制御操作子60bによる音声制御とを組み合わせると、多様な演奏を行うことが可能である。例えば、文字セレクタ60aを利用することなく図2Cと同様の演奏を行うことが可能である。図2Fは、リピート操作子60cと音声制御操作子60bとを利用して図2Cと同様の演奏を行う場合の例を示す図である。具体的には、図2Fにおいては、時刻tsにおいてリピート操作子60cに対する押し込み操作が行われ、時刻teにおいてリピート操作子60cに対する押し込み操作を解除する操作が行われ、時刻tc1~時刻t6の間および、時刻tc2~時刻t7の間において、音声制御操作子60bでビブラートがかけられ、時刻ttにおいてリピート操作子60cに対する押し込み操作が行われた例を示している。このような操作が行われると、図2Cと同様に文字グループL3,L4を2回繰り返し、2回目にビブラートがかけられた状態で演奏が行われる。
 以上の構成によれば、CPU20は、リピート操作子60cに対する操作に応じて、任意に設定したリピート対象の文字グループ範囲に対応する音声を繰り返し生成する。また、本実施形態においては、ユーザの指示(音高セレクタ50の操作)に応じてリピート対象の文字が示す音声の繰り返しタイミングを制御することができる。また、ユーザが歌詞文字列中の任意の文字範囲をリピート対象に指定してその音声を繰り返して出力させることができるため、楽器演奏の習熟や記憶等のために同一箇所の演奏を繰り返す際に、ユーザは、容易にリピート範囲を指定することができ、繰り返し演奏を行わせることができる。また、楽器演奏に限らず、例えば外国語の習得等のために、このリピート機能を利用することも可能であり、例えば、外国語等のリスニング学習のために、所望の文字範囲を繰り返し音声発生させることができる。さらに、文字情報30bを作成する際に、リピートされる2回目以降の文字群の作成は省略することもできる。従って、文字情報30bの作成作業を簡略化し、また、文字情報30bの容量を低減することができる。さらに、音声生成装置によって文字情報30bに基づいて音声を生成している過程において、文字情報30bとして定義された所定の順序の文字列から任意の部分を選択してリピートさせることができるため、文字列の既存の順序を修正して音声生成を行うことが可能である。なお、文字列の既存の順序の修正の態様としては、種々の態様が想定される。例えば、輪唱を行ったり、曲の中の盛り上がる部分(サビ)を繰り返したり、「ラララ」などのスキャットを繰り返したり、演奏難易度の高い部分を練習のために繰り返したりする態様等があり得る。さらに、本実施形態においては、1個の押しボタン式スイッチであるリピート操作子60cによって、リピート対象の文字範囲の指定と、リピート演奏の開始およびと終了の指示を行うことができる。従って、極めて簡易な操作によってリピート対象の文字範囲の指定とリピート演奏タイミングの制御とを行うことが可能になる。また、少ない操作でリピートに関する制御を行うことが可能になる。さらに、利用者は、音出力部70から順次出力される音声を聞くことによって、リアルタイムにリピート対象の文字を選択することができる。従って、視覚に頼ることなくリピート対象の文字を選択することができる。
 (12)他の実施形態:
  以上の実施形態は本発明を実施するための一例であり、他にも種々の実施形態を採用可能である。例えば、コントローラ10aの形状は、図1Aに示す態様に限定されない。図5(A)~(E)は、コントローラ10aのグリップGの種々の形状について、該グリップGの一端から見た図である。これらの図に示すように、グリップGの断面は、多角形(図5(A)は平行四辺形、(B)は三角形、(E)は長方形の例)であってもよいし、閉曲線(図5(C)は楕円の例)、直線と曲線で構成される図形(図5(D)は半円の例)であってもよい。むろん、断面の形状や大きさが切断位置によらず一定である必要もなく、本体10bに近づくにつれ断面積や曲率が変化するように構成してもよい。
 なお、グリップGにおいては、文字セレクタ60aまたはリピート操作子60cを任意の指で操作した場合に、他の指で音声制御操作子60bが操作可能な位置にこれらの操作子が形成されていれば良い。このためには、グリップGを片手で握った場合に指が配置される部分に文字セレクタ60a(またはリピート操作子60c)と音声制御操作子60bとを形成する構成を採用可能である。例えば、図5(A),(B),(D),(E)に示すように、同一平面上ではなく、異なる面上に文字セレクタ60a(またはリピート操作子60c)と音声制御操作子60bとが形成される構成を採用可能である。この構成であれば、文字セレクタ60a(またはリピート操作子60c)と音声制御操作子60bとに対する誤操作が抑制されるとともに、ユーザは、これらの操作子の同時操作を容易に行うことが可能である。
 さらに、ユーザがグリップを片手で握りながら安定的に保持するためには、文字セレクタ60a(またはリピート操作子60c)と音声制御操作子60bとが、グリップGの重心を挟んだ反対側に位置する2面(例えば、図5(A),(E)において前方および後方を構成する面)に存在しないことが好ましい。この構成によれば、グリップGを握る動作に伴って、ユーザが文字セレクタ60a(またはリピート操作子60c)や音声制御操作子60bに対して誤操作することを抑制することができる。
 さらに、コントローラ10aと本体10bとの接続態様は、図1Aに示す態様に限定されない。例えば、コントローラ10aと本体10bとの接続箇所は1カ所に限定されず、U字状の部材などの屈曲した柱状の部材でコントローラ10aが構成され、柱状の部材の両端が本体10bに接続されるとともに柱状の部材の一部がグリップとなる構成等を採用可能である。さらに、コントローラ10aが鍵盤楽器10から脱着可能であっても良い。この場合、コントローラ10aの操作子の操作出力は有線または無線通信によって本体10bのCPU20に伝達される。
 さらに、本発明の適用対象は、鍵盤楽器10に限定されず、音高セレクタ50を備えた他のタイプの電子楽器であってもよい。また、作成済みの音高情報(MIDI情報等)に従って、文字情報30bで定義された歌詞を自動的に歌唱させる歌唱音声生成装置であってもよいし、録音情報や録画情報の再生装置であってもよい。その場合、CPU20は、自動演奏シーケンスに従って自動的に再生される音高指定情報(MIDIイベント等)を取得し、該取得した音高指定情報(MIDIイベント等)によって指定される音高で、ポインタjによって指示される文字グループの音声を生成し、かつ、該取得した音高指定情報(MIDIイベント等)に応じてポインタjの値を進めるようにしてよい。そのような自動演奏方式の音高指定情報を取得する実施例においては、文字セレクタ60aが操作されたとき、自動演奏シーケンスに従う音高指定情報の取得を一時中断し、それに代えて、ユーザ操作に応じて音高セレクタ50から与えられる音高指定情報を取得し、該取得した音高指定情報に従う音高で、文字セレクタ60aの操作によって変更されたポインタjによって指示される文字グループの音声を生成するようにしてよい。自動演奏シーケンスに従って音高指定情報を取得する実施例における別の例としては、文字セレクタ60aが操作されたとき、該文字セレクタ60aの操作に応じたポインタjの値の変更に応じて自動演奏の進行を変更する(進める又は戻す)ように構成し、こうして変更された自動演奏の進行に従って自動的に生成される音高指定情報を取得し、該取得した音高指定情報に従う音高で、文字セレクタ60aの操作によって変更されたポインタjによって指示される文字グループの音声を生成するようにしてよい。そのような場合は、音高セレクタ50は不要である。また、ユーザ操作によって音声生成(出力)タイミングを指示する場合でも、そのための指示手段は、音高セレクタ50に限定されず、他の適宜のスイッチ等であっても良い。例えば、生成すべき音声の音高を示す情報は曲の自動シーケンスデータから取得し、その発音タイミングはユーザによる適宜のスイッチの操作に応じて指定されるような構成であってもよい。
 さらに、音声制御操作子60bに基づいて音高を変化させるための構成は、上述の実施形態以外にも種々の構成を採用可能である。例えば、CPU20が、音声制御操作子60bにおける接触位置に基づいて基準の音高からの音高の変化率を取得し、当該変化率に基づいて音高を変化させる構成であっても良い。さらに、基準の音高で音声が出力されている状態において、CPU20が、音声制御操作子60bに対してユーザが最初に触れた位置が基準の音高であるとみなし、当該位置から接触位置が変化した場合に両位置の距離に基づいて音高の補正量や音高の変化率を特定しても良い。
 この場合、単位距離当たりの音高の補正量や音高の変化率は予め特定される。この状態において、CPU20は、ユーザが最初に触れた位置からの接触位置の変化距離を取得する。さらに、CPU20は、当該変化距離を単位距離で除した値に単位距離当たりの音高の補正量や音高の変化率を乗じることで変化量や変化率を特定する。さらに、音声制御操作子60bに対する接触位置ではなく、CPU20が、音声制御操作子60bの接触位置の変化(移動速度等)に基づいて音高の補正量や音高の変化率を特定する構成であっても良い。むろん、音声制御操作子60bによって変化させることが可能な音高の幅は、上述の例以外にも種々の例(例えば、1オクターブ分)を採用可能である。また、ユーザの指示等によって当該幅が可変であってもよい。さらに、ユーザの指示等によって、音高、音量、音声の性質(発音者の性別や音声の特性等)等の中から音声制御操作子60bによる制御対象が選択可能であっても良い。
 なお、音声制御操作子60bは、文字セレクタ60aを設けたグリップG上に配置することなく、該文字セレクタ60aを設けたグリップGから分離して配置してもよい。例えば、鍵盤楽器10の本体10bの入出力部60に設けられている既存の楽音制御操作子を、音声制御操作子60bとして使用するようにしてもよい。
 文字情報30bの取得手法は、上述したものに限らない。例えば、文字情報30bが記録された外部の記録媒体から有線又は無線通信を介して鍵盤楽器10内に取り込むようにしてもよい。あるいは、リアルタイムに歌われている歌唱音声をマイクロホンでピックアップして鍵盤楽器10内のRAM40にバッファ記憶し、バッファ記憶したオーディオ波形データに基づいて文字情報30bを取得するようにしてもよい。
 また、歌詞等のあらかじめ規定された文字列を定義する文字情報30bは実質的に複数の文字および各文字の順序を定義し得る情報であればよく、そのデータ表現形式は、テキストデータ、画像データ、オーディオデータなど、どのようなデータ表現からなっていてもよい。例えば、文字に相当する音節の時系列の変化を指示するコード情報で表現されても良いし、時系列のオーディオ波形データで表現されても良い。文字情報30bにおける文字列がどのようなデータ表現形式からなるものであっても、要は、該文字列内の各文字グループ(音節に対応する1又は複数の文字)がそれぞれ個別に識別されうるようにコード化されていればよく、そのようなコードに従って音声信号を生成しうるように構成されていればよい。
 また、音声生成装置は、文字の順序に従って文字が示す音声を生成する機能を備えているものであればよく、すなわち、文字情報に基づいて文字が示す言葉の発音を音声として再現することができればよい。さらに、文字グループに対応する音声を生成するための手法としては、種々の手法のいずれかを任意に採用可能であり、種々の音節の発音を示す波形情報に基づいて文字情報が示す文字を発音するための波形を生成する構成等を採用可能である。
 音声制御操作子は、制御対象となる要素を変化させることができればよく、制御対象の要素の基準からの変化、制御対象の要素の数値、制御対象の要素の変化後の状態等を指定することが可能なセンサであっても良い。音声制御操作子は、タッチセンサに限らず、押しボタン式スイッチ等であっても良い。さらに、音声制御操作子においては、少なくとも文字セレクタによって出力対象として選択された文字について、当該文字が示す音声の発生態様を制御することができればよいが、これに限らず、文字セレクタによる選択とは無関係に音声の発生態様を制御することができてもよい。
 また、文字セレクタ60aは、前述した4タイプの選択ボタンMcf,Mcb,Mpf,Mpbに限らず、その他のタイプの文字選択(指定)を行う手段を備えていてもよい。図7は、そのような文字セレクタ60aの変形例を示す。図7において、文字セレクタ60aは、前述した4タイプの選択ボタンMcf,Mcb,Mpf,Mpbのほかに、音節分離セレクタMcsと音節統合セレクタMcuとを含む。音節分離セレクタMcsは、所定の1文字グループを例えば2音節に分離して進行させることを指示するためのものである。音節統合セレクタMcuは、連続する例えば2文字グループを統合して1音の音声として発音させることを指示するためのものである。例えば、前記図6Bに示したような歌詞文字列に従う音声を生成する場合を想定し、音節分離セレクタMcs及び音節統合セレクタMcuによる音節分離及び統合制御の一例を図8に示す。図8においては、順位「4」の文字グループ「won」の音声生成が開始される前に、音節統合セレクタMcuがオンされた例を示している。この音節統合セレクタMcuのオンに応じてCPU20は付加情報として“統合”フラグを立て、その直後における音高指定情報の取得に応じて、音節統合処理を行う。この音節統合処理においては、前記ステップS105(図3B)の処理を変形して、ポインタjの現在値「4」によって指示される文字グループ「won」とその次の順位「5」に該当する文字グループ「der」を統合して「wonder」という複音節の音声を生成し、かつ、前記ステップS120(図3B)の処理を変形して、ポインタjの現在値「4」に「2」をプラスし、ポインタjの値を2順位進める。こうして、音節統合セレクタMcuは、予め規定された文字列内に含まれる連続する複数文字グループを統合して、該統合した複数文字グループの音声を1回の発音タイミングで生成するよう指示するための統合セレクタとして機能する。
 また、図8においては、順位「6」の文字グループ「why」の音声生成が開始される前に、音節分離セレクタMcsがオンされた例を示している。この音節分離セレクタMcsのオンに応じてCPU20は付加情報として“分離”フラグを立て、その直後における音高指定情報の取得に応じて、音節分離処理を行う。この音節分離処理においては、前記ステップS105(図3B)の処理を変形して、ポインタjの現在値「6」によって指示される文字グループ「why」を、「wh-」と「y」の2音節に分離し、分離した最初の音節(文字グループ)「wh-」の音声を生成し、かつ、前記ステップS120(図3B)の処理を変形して、ポインタjの現在値「6」に「0.5」をプラスし、ポインタjの値を半端な値「6.5」とする。そして、その次の音高指定情報の取得に応じて、前記分離した2番目の音節(文字グループ)「y」の音声を生成し、かつ、ポインタjの現在値「6.5」に「0.5」をプラスし、ポインタjの値を「7」とする。これにより、音節分離処理は終了し、その次の音高指定情報の取得に応じて、ポインタjの値「7」に応じた文字グループ「I」の音声が生成される。なお、音節分離処理において、音節分離する対象の文字グループが1文字(例えば「I」)からなる場合であっても。2音節(例えば「a」と「i」)に分離できる場合は、そのように分離して、音声生成する。また、どうしても音節分離できない場合は、1番目の音節の音声のみを生成し、2番目の音節の発音タイミングでは、無音とするか、若しくは、1番目の音節の音声をサステインさせるようにすればよい。こうして、音節分離セレクタMcsは、予め規定された文字列内に含まれる1または複数文字からなる1文字グループの音声を複数の音節に分離して、分離した各音節の音声を異なる発音タイミングで生成するよう指示するための分離セレクタとして機能する。
 リピート機能に関して、上記実施例をまとめると、CPU20は、文字セレクタ60aの操作に応じて人為的に及び/又は自動演奏シーケンスの進行に応じて自動的に、ポインタjを前進又は後退し、該ポインタjによって1または複数文字からなる1文字グループを特定する(取得する)ように構成されており(S102,S105,S200~S220等)、このようなCPU20の果たす機能が、予め規定された文字列中の1または複数文字を指定する情報を取得する情報取得部としての機能に相当する。
 また、CPU20は、ポインタjによって指示される順位の文字グループに対応する音声を、このような指定された音高で生成するように構成されており(S105)、こうして生成された音声が音声出力部70から出力されるようになっている。このようなCPU20の果たす機能が、前記取得した情報に基づき、前記指定された1または複数文字に対応する音声を生成する音声生成部としての機能に相当する。
 また、CPU20は、図4Bの処理によって、リピート対象となる文字列の範囲を、ユーザ操作に応じて任意に設定するための処理を行っている。このようなCPU20の果たす機能が、生成中の音声をリピート対象として指定する情報を受け付けるリピート対象受付部としての機能に相当する。また、CPU20は、リピート機能がオンである限り、ステップS425(図4B)の処理によってリピート対象の最初の文字グループの順位をポインタjにセットし、リピート対象の終わりから初めに戻って音声生成を繰り返すように機能している(S105)。このようなCPU20の果たす機能が、前記リピート対象として指定された前記音声を前記音声生成部が繰り返し生成するように制御するリピート制御部としての機能に相当する。

Claims (21)

  1.  音声生成装置のためのコントローラであって、前記音声生成装置は、予め規定された文字列中の指定された1または複数文字に対応する音声を生成するように構成されており、前記コントローラは、
     前記文字列中の前記1または複数文字を指定するためにユーザによって操作可能なように構成された文字セレクタと、
     前記音声生成装置によって生成される前記音声の状態を制御するためにユーザによって操作可能なように構成された音声制御操作子と
    を備えるコントローラ。
  2.  ユーザの手によって握られるのに適したグリップを備えており、前記文字セレクタと前記音声制御操作子は、前記グリップ上にそれぞれ設けられて、請求項1のコントローラ。
  3.  前記文字セレクタと前記音声制御操作子は、前記グリップを握ったユーザの異なる指でそれぞれ操作可能な配置で、前記グリップ上にそれぞれ設けられている、請求項2のコントローラ。
  4.  前記文字セレクタと前記音声制御操作子の一方が前記ユーザの親指で操作され、他方が前記ユーザの他の指で操作されるように構成されている、請求項3のコントローラ。
  5.  前記文字セレクタと前記音声制御操作子は、前記グリップの異なる面にそれぞれ配置されている、請求項2乃至4のいずれかのコントローラ。
  6.  前記音声制御操作子は、操作面に対する接触操作位置を検出するように構成された、タッチセンサからなる、請求項1乃至5のいずれかのコントローラ。
  7.  前記文字セレクタは、前記文字列の進行順序に従って1または複数文字だけ進めるための前進セレクタと、前記進行順序とは逆向きに1または複数文字だけ戻すための後退セレクタとを含む、請求項1乃至6のいずれかのコントローラ。
  8.  前記文字セレクタは、前記文字列内に含まれる1または複数文字からなる1文字グループの音声を複数の音節に分離して、分離した各音節の音声を異なる発音タイミングで生成するよう指示するための分離セレクタと、前記文字列内に含まれる連続する複数文字グループを統合して、該統合した複数文字グループの音声を1回の発音タイミングで生成するよう指示するための統合セレクタとを含む、請求項1乃至7のいずれかのコントローラ。
  9.  前記指定された1または複数文字に対応する音声を繰り返すことを指示するために、ユーザによって操作可能なように構成されたリピート操作子、をさらに備える、請求項1乃至8のいずれかのコントローラ。
  10.  請求項1乃至9のいずれかのコントローラと、
     前記音声生成装置と
    を備えるシステム。
  11.  前記音声生成装置は、
      生成すべき音声の音高を指定する音高指定情報を取得し、
      前記文字セレクタの操作に従って指定された前記1または複数文字の音声を、前記取得した音高指定情報により指定された音高で合成し、かつ、
      合成される前記音声の状態を、前記音声制御操作子の操作に従って制御する、
    ように構成されたプロセッサを備える、請求項10のシステム。
  12.  前記プロセッサは、さらに、
      前記音声の合成のために指定されるべき1または複数文字の前記文字列における順位を示すポインタを維持し、かつ、
      前記音高指定情報が取得されることに応じて、前記ポインタを順次進める、
    ように構成されており、
     前記文字セレクタの操作に従って前記1または複数文字を指定することは、前記ポインタによって示される順位を該文字セレクタの操作に応じて前進又は後退させることからなる、請求項11のシステム。
  13.  前記プロセッサは、前記ポインタが示す順位によって指定される前記1または複数文字の音声を、前記取得した音高指定情報により指定された音高で合成するように構成されている、請求項12のシステム。
  14.  前記音声生成装置は、さらに、
      前記生成すべき音声の音高を指定するためにユーザによって操作可能なように構成された音高セレクタを備える、請求項11乃至13のいずれかのシステム。
  15.  前記音声生成装置は、電子楽器である、請求項14のシステム。
  16.  コントローラを使用して音声の生成を制御する方法であって、前記コントローラは、予め規定された文字列中の1または複数文字を指定するためにユーザによって操作可能なように構成された文字セレクタと、生成される音声の状態を制御するためにユーザによって操作可能なように構成された音声制御操作子とを備えており、前記方法は、
     生成すべき音声の音高を指定する音高指定情報を取得するステップと、
     前記文字セレクタから、前記文字列中の1または複数文字を指定するための情報を受け取るステップと、
     前記音声制御操作子から、生成されるべき音声の状態を制御するための情報を受け取るステップと、
     前記文字セレクタから受け取った前記情報に従って指定される前記1または複数文字の音声を、前記取得した音高指定情報により指定された音高で合成するステップと、
     合成される前記音声の状態を、前記音声制御操作子から受け取った前記情報に従って制御するステップと
    を備える方法。
  17.  予め規定された文字列中の1または複数文字を指定する情報を取得する情報取得部と、
     前記取得した情報に基づき、前記指定された1または複数文字に対応する音声を生成する音声生成部と、
     生成中の音声をリピート対象として指定する情報を受け付けるリピート対象受付部と、
     前記リピート対象として指定された前記音声を前記音声生成部が繰り返し生成するように制御するリピート制御部、
    として機能するように構成されたプロセッサを備える音声生成装置。
  18.  前記リピート対象受付部は、1又は複数の音声が時系列的に生成されている間に、ユーザ操作に応じて、前記リピート対象となる最初の音声を指定する情報と、前記リピート対象となる最後の音声を指定する情報とを受け付けるように構成されており、
     前記リピート制御部は、時系列的に生成された前記1又は複数の音声のうち、前記指定された最初の音声から最後の音声までをリピート対象として前記音声生成部が繰り返し生成するように制御するように構成されている、請求項17の音声生成装置。
  19.  前記プロセッサは、さらに、生成すべき音声の音高を指定する音高指定情報を取得する音高指定情報取得部として機能するように構成されており、
     前記音声生成部は、前記指定された1または複数文字に対応する音声を、前記取得した音高指定情報により指定された音高で、生成する、請求項17又は18の音声生成装置。
  20.  予め規定された文字列中の1または複数文字を指定する情報を取得することと、
     前記取得した情報に基づき、前記指定された1または複数文字に対応する音声を生成することと、
     生成中の音声をリピート対象として指定する情報を受け付けることと、
     前記リピート対象として指定された前記音声が繰り返し生成されるように制御すること、
    からなる方法。
  21.  非一過性のコンピュータ読み取り可能な記憶媒体であって、
     予め規定された文字列中の1または複数文字を指定する情報を取得することと、
     前記取得した情報に基づき、前記指定された1または複数文字に対応する音声を生成することと、
     生成中の音声をリピート対象として指定する情報を受け付けることと、
     前記リピート対象として指定された前記音声が繰り返し生成されるように制御すること、
    からなる音声生成方法を実行するためにプロセッサにより実行可能な命令群を記憶している、記憶媒体。
PCT/JP2015/066659 2014-06-17 2015-06-10 文字に基づく音声生成のためのコントローラ及びシステム WO2015194423A1 (ja)

Priority Applications (4)

Application Number Priority Date Filing Date Title
EP15809992.9A EP3159892B1 (en) 2014-06-17 2015-06-10 Controller and system for voice generation based on characters
CN201580032999.0A CN106463111B (zh) 2014-06-17 2015-06-10 基于字符的话音生成的控制器与系统
US15/530,259 US10192533B2 (en) 2014-06-17 2015-06-10 Controller and system for voice generation based on characters
JP2016529261A JP6399091B2 (ja) 2014-06-17 2015-06-10 文字に基づく音声生成のためのコントローラ及びシステム

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
JP2014124092 2014-06-17
JP2014124091 2014-06-17
JP2014-124091 2014-06-17
JP2014-124092 2014-06-17

Publications (1)

Publication Number Publication Date
WO2015194423A1 true WO2015194423A1 (ja) 2015-12-23

Family

ID=54935410

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2015/066659 WO2015194423A1 (ja) 2014-06-17 2015-06-10 文字に基づく音声生成のためのコントローラ及びシステム

Country Status (5)

Country Link
US (1) US10192533B2 (ja)
EP (1) EP3159892B1 (ja)
JP (2) JP6399091B2 (ja)
CN (1) CN106463111B (ja)
WO (1) WO2015194423A1 (ja)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2017162176A (ja) * 2016-03-09 2017-09-14 ヤマハ株式会社 歌詞生成装置および歌詞生成方法
CN107617214A (zh) * 2017-09-23 2018-01-23 深圳市谷粒科技有限公司 一种游戏手柄的自动学习控制方法
WO2018198379A1 (ja) * 2017-04-27 2018-11-01 ヤマハ株式会社 歌詞表示装置
WO2019026233A1 (ja) * 2017-08-03 2019-02-07 ヤマハ株式会社 効果制御装置
US20210366448A1 (en) * 2020-05-21 2021-11-25 Parker J. Wonser Manual music generator

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6728754B2 (ja) * 2015-03-20 2020-07-22 ヤマハ株式会社 発音装置、発音方法および発音プログラム
US12020686B2 (en) * 2017-03-23 2024-06-25 D&M Holdings Inc. System providing expressive and emotive text-to-speech
JP6497404B2 (ja) * 2017-03-23 2019-04-10 カシオ計算機株式会社 電子楽器、その電子楽器の制御方法及びその電子楽器用のプログラム
JP6610714B1 (ja) * 2018-06-21 2019-11-27 カシオ計算機株式会社 電子楽器、電子楽器の制御方法、及びプログラム
JP6610715B1 (ja) 2018-06-21 2019-11-27 カシオ計算機株式会社 電子楽器、電子楽器の制御方法、及びプログラム
JP7059972B2 (ja) 2019-03-14 2022-04-26 カシオ計算機株式会社 電子楽器、鍵盤楽器、方法、プログラム

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH05341777A (ja) * 1992-06-08 1993-12-24 Yamaha Corp 電子楽器のパラメータ制御装置
JP2005189454A (ja) * 2003-12-25 2005-07-14 Casio Comput Co Ltd テキスト同期音声再生制御装置及びプログラム
JP2012083569A (ja) * 2010-10-12 2012-04-26 Yamaha Corp 歌唱合成制御装置および歌唱合成装置
JP2014010190A (ja) * 2012-06-27 2014-01-20 Yamaha Corp 歌唱合成を行うための装置およびプログラム

Family Cites Families (24)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS6438792A (en) 1988-02-25 1989-02-09 Yamaha Corp Electronic keyed instrument
JP2508937B2 (ja) 1991-10-25 1996-06-19 ヤマハ株式会社 電子鍵盤楽器
GB2279172B (en) * 1993-06-17 1996-12-18 Matsushita Electric Ind Co Ltd A karaoke sound processor
KR0135792B1 (ko) * 1994-12-08 1998-05-15 김광호 노래반주용 곡프로그램 및 이에 적합한 노래반주장치
JPH1063287A (ja) * 1996-08-21 1998-03-06 Brother Ind Ltd 発音訓練装置
US5875427A (en) * 1996-12-04 1999-02-23 Justsystem Corp. Voice-generating/document making apparatus voice-generating/document making method and computer-readable medium for storing therein a program having a computer execute voice-generating/document making sequence
JP3900580B2 (ja) * 1997-03-24 2007-04-04 ヤマハ株式会社 カラオケ装置
JP3317181B2 (ja) * 1997-03-25 2002-08-26 ヤマハ株式会社 カラオケ装置
JP3365354B2 (ja) * 1999-06-30 2003-01-08 ヤマハ株式会社 音声信号または楽音信号の処理装置
JP2002251185A (ja) * 2001-02-27 2002-09-06 Casio Comput Co Ltd 自動演奏装置および自動演奏方法
JP4153220B2 (ja) * 2002-02-28 2008-09-24 ヤマハ株式会社 歌唱合成装置、歌唱合成方法及び歌唱合成用プログラム
JP2004205605A (ja) * 2002-12-24 2004-07-22 Yamaha Corp 音声および楽曲再生装置およびシーケンスデータフォーマット
JP3823930B2 (ja) 2003-03-03 2006-09-20 ヤマハ株式会社 歌唱合成装置、歌唱合成プログラム
JP4487632B2 (ja) * 2004-05-21 2010-06-23 ヤマハ株式会社 演奏練習装置および演奏練習用コンピュータプログラム
US20090063152A1 (en) * 2005-04-12 2009-03-05 Tadahiko Munakata Audio reproducing method, character code using device, distribution service system, and character code management method
JP4557919B2 (ja) * 2006-03-29 2010-10-06 株式会社東芝 音声処理装置、音声処理方法および音声処理プログラム
JP4735544B2 (ja) 2007-01-10 2011-07-27 ヤマハ株式会社 歌唱合成のための装置およびプログラム
US7973230B2 (en) * 2007-12-31 2011-07-05 Apple Inc. Methods and systems for providing real-time feedback for karaoke
JP5223433B2 (ja) 2008-04-15 2013-06-26 ヤマハ株式会社 音声データ処理装置およびプログラム
JP2012150874A (ja) * 2010-12-28 2012-08-09 Jvc Kenwood Corp 再生装置、コンテンツ再生方法およびコンピュータプログラム
US8729374B2 (en) * 2011-07-22 2014-05-20 Howling Technology Method and apparatus for converting a spoken voice to a singing voice sung in the manner of a target singer
JP5821824B2 (ja) 2012-11-14 2015-11-24 ヤマハ株式会社 音声合成装置
JP6083764B2 (ja) 2012-12-04 2017-02-22 国立研究開発法人産業技術総合研究所 歌声合成システム及び歌声合成方法
JP6171711B2 (ja) * 2013-08-09 2017-08-02 ヤマハ株式会社 音声解析装置および音声解析方法

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH05341777A (ja) * 1992-06-08 1993-12-24 Yamaha Corp 電子楽器のパラメータ制御装置
JP2005189454A (ja) * 2003-12-25 2005-07-14 Casio Comput Co Ltd テキスト同期音声再生制御装置及びプログラム
JP2012083569A (ja) * 2010-10-12 2012-04-26 Yamaha Corp 歌唱合成制御装置および歌唱合成装置
JP2014010190A (ja) * 2012-06-27 2014-01-20 Yamaha Corp 歌唱合成を行うための装置およびプログラム

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2017162176A (ja) * 2016-03-09 2017-09-14 ヤマハ株式会社 歌詞生成装置および歌詞生成方法
WO2018198379A1 (ja) * 2017-04-27 2018-11-01 ヤマハ株式会社 歌詞表示装置
WO2019026233A1 (ja) * 2017-08-03 2019-02-07 ヤマハ株式会社 効果制御装置
CN107617214A (zh) * 2017-09-23 2018-01-23 深圳市谷粒科技有限公司 一种游戏手柄的自动学习控制方法
US20210366448A1 (en) * 2020-05-21 2021-11-25 Parker J. Wonser Manual music generator
US12106739B2 (en) * 2020-05-21 2024-10-01 Parker J Wosner Manual music generator

Also Published As

Publication number Publication date
JP2018112748A (ja) 2018-07-19
CN106463111A (zh) 2017-02-22
JP6399091B2 (ja) 2018-10-03
CN106463111B (zh) 2020-01-21
US20170169806A1 (en) 2017-06-15
US10192533B2 (en) 2019-01-29
EP3159892B1 (en) 2020-02-12
EP3159892A1 (en) 2017-04-26
EP3159892A4 (en) 2018-03-21
JPWO2015194423A1 (ja) 2017-04-20
JP6562104B2 (ja) 2019-08-21

Similar Documents

Publication Publication Date Title
JP6562104B2 (ja) 音声生成装置及び方法並びにプログラム
US10002604B2 (en) Voice synthesizing method and voice synthesizing apparatus
US6392132B2 (en) Musical score display for musical performance apparatus
US9159307B1 (en) MIDI controller keyboard, system, and method of using the same
JP6465136B2 (ja) 電子楽器、方法、及びプログラム
JP7259817B2 (ja) 電子楽器、方法及びプログラム
JP6728754B2 (ja) 発音装置、発音方法および発音プログラム
US9711133B2 (en) Estimation of target character train
JP7180587B2 (ja) 電子楽器、方法及びプログラム
JP2023118866A (ja) 電子楽器、方法及びプログラム
Ritchie Before the Chinrest: A Violinist's Guide to the Mysteries of Pre-chinrest Technique and Style
JP6977741B2 (ja) 情報処理装置、情報処理方法、演奏データ表示システム、およびプログラム
JP4929604B2 (ja) 歌データ入力プログラム
US20220044662A1 (en) Audio Information Playback Method, Audio Information Playback Device, Audio Information Generation Method and Audio Information Generation Device
JP6809608B2 (ja) 歌唱音生成装置及び方法、プログラム
WO2023153033A1 (ja) 情報処理方法、プログラム、および情報処理装置
JP7528488B2 (ja) 電子楽器、方法及びプログラム
JPH065455B2 (ja) 歌唱指導装置
JP6787491B2 (ja) 音発生装置及び方法
Slatkin Eight Symphonic Masterworks of the Twentieth Century: A Study Guide for Conductors
JP2024089976A (ja) 電子機器、電子楽器、アドリブ演奏方法及びプログラム
JP2022010066A (ja) 情報処理装置、情報処理方法、およびプログラム
WO2018198380A1 (ja) 歌詞表示装置及び方法
KAMPELA et al. SARAH BROOKE HORNSBY
JP2006251173A (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: 15809992

Country of ref document: EP

Kind code of ref document: A1

ENP Entry into the national phase

Ref document number: 2016529261

Country of ref document: JP

Kind code of ref document: A

WWE Wipo information: entry into national phase

Ref document number: 15530259

Country of ref document: US

NENP Non-entry into the national phase

Ref country code: DE

REEP Request for entry into the european phase

Ref document number: 2015809992

Country of ref document: EP

WWE Wipo information: entry into national phase

Ref document number: 2015809992

Country of ref document: EP