The present invention relates to a musical information displaying apparatus incorporating an arrangement for preventing overlapped displays and a computer readable medium containing program instructions therefor, and more particularly to a musical information displaying apparatus and a computer readable medium containing program instructions capable of displaying musical notes in progression along the time axis on a musical staff together with chords and words based on the respective event data contained in a music performance data file representing a musical performance, wherein the chords are displayed at their event positions along the time axis and at vertical levels near the musical staff preventing mutual overlaps, and the words are displayed near the corresponding notes along the time axis with their horizontal positions adjusted to prevent mutual overlapping.
Various types of musical information displaying apparatuses capable of displaying a musical score in a better understandable appearance, i.e. in an improved layout of the notational symbols based on an automatic music performance data file. An example of such musical information displaying apparatuses is disclosed in U.S. Pat, No. 6,235,979 in which the length of a displayed measure and the allocation of displayed notes in the measure are properly adjusted so that the notes at different times should be displayed without an overlap between any adjacent notes. This patent, however, does not consider the chord names and the words to be displayed in association with the notes on the musical score.
Typically, a musical score describing musical information displayed along the time axis on a music score displaying apparatus contains chord names located near the musical staff to represent chords by a character string (sometime of a single character, and sometime of several characters). Usually, the left end (head position) of the displayed chord name indicates the time point along the time axis at which the displayed chord is to substitute the theretofore prevailing chord.
Under these circumstances, in the case of a chord name with a long character string such as, for example, the chord “C#M7aug” (C# major seventh augmented), the displayed character string may sometimes extend over to the display position of the next chord so that the chord names of the two chords might be partly intermingled to become illegible or hardly legible for the user. Further, in the case of a chord name with a non-root bass (often referred to as an “on-bass chord”) such as, for example, the chord “C on E” (C major on bass of E) or sometimes expressed as “C/E,” the tail character “E” indicating the bass note to be played with the constituent notes of the chord “C” may be confused with a new chord name, even though two consecutive chord names are not displayed overlapping with each other.
A musical score sometimes contains also words to the melody. In the case where the words are displayed in connection with the notes on the music score, the words are typically aligned along the time axis of the note progression and placed at the positions of the respectively corresponding note symbols. However, if the distance between the two displayed consecutive note symbols are too short, the two words may sometimes overlap in part with each other, just like in the case of the above-mentioned chord name display, and may be illegible or hardly legible.
It is, therefore, a primary object of the present invention to solve the drawbacks with the conventional apparatus, and to provide a novel type of musical information displaying system which can display a music score containing chord names and/or words together with the notes based on a music performance data file, in which the chord names and/or the words are displayed in a better appearance for the user to read by preventing overlapped displays and/or by highlighting the roots of the chords.
According to the present invention, the object is accomplished by providing an apparatus for displaying musical information including a plurality of chords in association with notes displayed along a time axis on a musical staff comprising: a music performance data providing device which provides music performance data containing note data representing notes in progression along a time axis to constitute a musical performance, and chord data representing chords in progression in association with the notes; a first determining device which determines a display length and a display position of each of the chords along the time axis based on the chord data contained in the music performance data; a detecting device which detects an overlap of chords in the direction of the time axis when displayed based on the determined display lengths and the determined display positions of the respective chords along the time axis; a second determining device which determines a vertical display position of a chord of which no overlap with another chord is detected to be at a predetermined standard vertical position in a direction perpendicular to the time axis, and determines a vertical display position of a chord of which an overlap with another chord is detected to be at a vertical position which is vertically apart from the other chord by at least a predetermined gap; and a display device which displays each of the chords at the position in the direction of the time axis as determined by the first determining device and at the vertical position as determined by the second determining device. Thus, an overlap of the adjacent chord names when displayed will be prevented by shifting the vertical position of the latter chord display with respect to the vertical position of the former chord display of the otherwise overlapping chord displays, keeping the positions of the respective chords along the time axis exact.
In an aspect of the present invention, the standard vertical position may be a position vertically nearest to the musical staff; and the detecting device may be so arranged to detect at least two consecutive overlaps among at least three consecutive chords; and the second determining device will determine a vertical position of a chord among said consecutive chords at a position vertically as near to the musical staff as possible, provided that the chord does not overlap with another of the consecutive chords in the direction of the time axis. Thus, an open space nearer to the musical staff can be efficiently utilized for the chord to be displayed so that the displayed chords will not become unnecessarily far from the musical staff.
According to the present invention, the object is further accomplished by providing an apparatus for displaying musical information including a plurality of chords in association with notes displayed along a time axis on a musical staff comprising: a music performance data providing device which provides music performance data containing note data representing notes in progression along a time axis to constitute a musical performance, and chord data representing at least a chord in association with the notes; and a display control device which controls the display device to display a chord name comprised of a character string based on the chord data contained in the music performance data such that a character representing the root of the chord is displayed in a different fashion from characters in the character string other than the character representing the root. Thus, the user can easily understand (or grasp) the chord names of the respective chords at their correct positions without confusion with the on-bass note names or the like.
According to the present invention, the object is still further accomplished by providing an apparatus for displaying musical information including a plurality of words in correspondence to notes displayed along a time axis on a musical staff comprising: a music performance data providing device which provides music performance data containing note data representing notes in progression along a time axis to constitute a musical performance, and word data representing words in progression in association with the notes; a determining device which determines a display length and a display position of each of the words along the time axis based on the word data contained in the music performance data; a detecting device which detects an overlap of words in the direction of the time axis when displayed based on the determined display lengths and the determined display positions of the respective words along the time axis successively from a top word to subsequent words; a modifying device which modifies, when the detecting device detects an overlap of two adjacent words in the direction of the time axis, the position of the latter of the two adjacent words to a position which is apart from the former of the two adjacent words by at least a predetermined word gap in the direction of the time axis; and a display device which displays the word of which the position is not modified at the position determined by the determining device, and displays the word of which the position is modified at the position modified by the modifying device. Thus, the words will be displayed without an overlap in line along the time axis near the respectively corresponding notes, not staggering vertically. The words can be easily read by the user.
In a further aspect of the present invention, the apparatus for displaying musical information may further comprise: a judging device which judges whether a word to be displayed at the rightmost end along the time axis on the musical staff overruns the right end of the musical staff; and a remodifying device which remodifies the position of the word which is judged to overrun the right end of the musical staff to a position which is right-justified with respect to the right end of said musical staff, and remodifies the positions of the preceding words to prevent overlapped display, if any, of such words; and the display device will display the right-justified word and the preceding word, if any, to be displayed at the positions remodified by the remodifying device. Thus, a musical score with words will be displayed in a further better appearance.
According to the present invention, the object is further accomplished by providing a computer readable medium containing program instructions executable by a computer for causing the computer to execute: a process of providing music performance data containing note data representing notes in progression along a time axis to constitute a musical performance, and chord data representing chords in progression in association with the notes; a process of determining a display length and a display position of each of the chords along the time axis based on the chord data contained in the music performance data; a process of detecting an overlap of chords in the direction of the time axis when displayed based on the determined display lengths and the determined display positions of the respective chords along the time axis; a process of determining a vertical display position of a chord of which no overlap with another chord is detected to be at a predetermined standard vertical position in a direction perpendicular to the time axis, and determining a vertical display position of a chord of which an overlap with another chord is detected to be at a vertical position which is vertically apart from the other chord by at least a predetermined gap; and a process of displaying each of the chords at the position in the direction of the time axis as determined by the process of determining a display length and a display position and at the vertical position as determined by the process of determining a vertical display position, thereby displaying musical information including a plurality of chords in correspondence to the notes displayed along the time axis on the musical staff. Thus, a computer system will work as the above-described apparatus for displaying musical information including chords in correspondence to notes, whereby an overlap of the adjacent chord names when displayed will be prevented by shifting the vertical position of the latter chord display with respect to the vertical position of the former chord display of the otherwise overlapping chord displays, keeping the positions of the respective chords along the time axis exact.
According to the present invention, the object is further accomplished by providing a computer readable medium containing program instructions executable by a computer and causing the computer to execute: a process of providing music performance data containing note data representing notes in progression along a time axis to constitute a musical performance, and word data representing words in progression in association with the notes; a process of determining a display length and a display position of each of the words along the time axis based on the word data contained in the music performance data; a process of detecting an overlap of words in the direction of the time axis when displayed based on the determined display lengths and the determined display positions of the respective words along the time axis successively from a top word to subsequent words; a process of modifying, when the process of detecting detects an overlap of two adjacent words in the direction of the time axis, the position of the latter of the two adjacent words to a position which is apart from the former of the two adjacent words by at least a predetermined word gap in the direction of the time axis; and a process of displaying the word of which the position is not modified at the position determined by the process of determining, and displaying the word of which the position is modified at the position modified by the process of modifying; thereby displaying musical information including a plurality of words in correspondence to the notes displayed along the time axis on the musical staff. Thus, a computer system will work as the above-described apparatus for displaying musical information including words in correspondence to notes, whereby the words will be displayed without an overlap in line along the time axis near the respectively corresponding notes, not staggering vertically so that the words can be easily read by the user.
As will be apparent from the above description, the present invention can be practiced not only in the form of an apparatus, but also in the form of a computer program to operate a computer or other data processing devices. The invention can further be practiced in the form of a method including the steps mentioned herein.
In addition, as will be apparent from the description herein later, some of the structural element devices of the present invention are structured by means of hardware circuits, while some are configured by a computer system performing the assigned functions according to the associated programs. The former may of course be configured by a computer system and the latter may of course be hardware structured discrete devices. Therefore, a hardware-structured device performing a certain function and a computer-configured arrangement performing the same function should be considered a same-named device or an equivalent to the other.
For a better understanding of the present invention, and to show how the same may be practiced and will work, reference will now be made, by way of example, to the accompanying drawings, in which:
a–2f are charts in musical notation illustrating the rules for displaying chord names and words according to embodiments of the present invention;
a and 3b show, in combination, a flow chart describing an example of the processing for creating chord display data conducted by a musical information displaying system according to an embodiment of the present invention;
a–4d show, in combination, a flow chart describing an example of the processing for creating word display data conducted by a musical information displaying system according to an embodiment of the present invention; and
The present invention will now be described in detail with reference to the drawings showing preferred embodiments thereof. It should, however, be understood that the illustrated embodiments are merely examples for the purpose of understanding the invention, and should not be taken as limiting the scope of the invention.
Overall System Configuration
The CPU 1 conducts various musical information processing including musical information displaying processing according to a given control program utilizing a clock signal from a timer 13. The RAM 2 is used as work areas for temporarily store various data necessary for the processing. The ROM 3 stores beforehand various control programs including the musical information displaying program and music performance data for a demonstration purpose for the execution of the processing.
The external storage device 4 may include a built-in storage medium such as a hard disk (HD) as well as various portable external storage media such as a compact disk read-only memory (CD-ROM), a flexible disk (FD), a magneto-optical (MO) disk, a digital versatile disk (DVD), a small-sized memory card like Smart Media (trademark) and so forth. Thus, the electronic musical apparatus can process any of the music performance data stored in any type of external storage device 4.
The play detection circuit 5 detects the user's operations of a music-playing device 14 such as a keyboard, and the control detection circuit 6 detects the user's operations of the setting controls 15 such as key switches and a mouse device. The both detection circuits 5 and 6 introduce the information (data) of the detected operations into the musical information displaying system. Among the setting controls 15 is further included, for example, a start/stop switch for commanding the start and the stop of the playback of music performance data.
The display circuit 7 is connected to a display device 16 (including various indicators) for displaying various screen images and pictures (and various indications), and controls the displayed contents and lighting conditions of these devices according to instructions from the CPU 1, and also presents GUIs for assisting the user in operating the various controls 15 and the music-playing device 14. Further, the display circuit 7 causes the display device 16 to display a music score which includes chord names and words on the display screen based on the music performance data from the memory 3 or the storage 4 during the musical information displaying processing.
The tone generator circuit 8 generates musical tone signals as determined by the musical tone data obtained from the processing of the real-time performance information based on the real-time music playing operation on the music-playing device 14 or of the music information based on the music performance data stored in the memory 3 or the storage 4. The effect circuit 9 includes an effect imparting DSP (digital signal processor) and imparts intended tone effects to the musical tone signals outputted from the tone generator circuit 8. To the effect circuit 9 is connected a sound system 17, which includes a D/A converter, an amplifier and a loudspeaker, and emits audible sounds based on the effect imparted musical tone signals. When a musical performance is played back by means of the musical performance outputting arrangement 8, 9 and 17 based on the music performance data (i.e. automatic performance data) stored in the memory 3 or the storage 4, the displaying arrangement 7 and 16 can display a music score based on the music performance data according to an instruction by the user.
To the MIDI interface 10 is connected another MIDI apparatus ED so that MIDI musical data including music performance data are exchanged and used in this system. The communication interface 11 is connected to a communication network CN such as the Internet and a local area network (LAN) so that a control program can be downloaded from an external server computer SV or the like, or so that a music performance data file can be received and temporarily stored in the RAM 2 or further in the external storage 4 for later use in this system.
While the system illustrated in
Displayed Chord Names and Words
A musical information displaying system according to an embodiment of the present invention analyzes the music performance data containing a progression of notes together with the chord names and/or the words in association with the notes to detect possible overlaps of the chord names or the words when displayed along the time axis of the music staff, and displays the chord names at vertically shifted positions to prevent overlapping and the words at horizontally shifted positions to prevent overlapping with the adjacent words, and also displays the chord names with their root note name in a highlighted appearance especially in the case of a non-root-bass chord or on chord.
Referring now to
The main rules for displaying the chord names and the words will be described in more detail herein-below with reference to
a–2f show a length of or parts of musical staff of some music piece as displayed based on the music performance data for the music piece, in which the time progresses from left to right in the Figures. In the Figures, the horizontal direction of the time progression is called the time direction (or time axis), and the positions along the time axis are called time positions. The direction perpendicular to the horizontal time direction (time axis) is called the vertical direction, and the positions in the vertical direction are called vertical positions. In
Back to
The present system can create chord display data for displaying chords without an overlap and with a clear root note using the chord displaying rules as explained more specifically herein-below. In the context of the present invention, the term “overlap” means not only the state in which some characters of adjacent displays overlaps with each other but also the state in which the adjacent displays are not sufficiently separated from each other by more than a predetermined minimum gap for clear legibility.
Rule 1: A chord name notation which overruns the right end of each staff (Five-Line) tier will be right-justified by shifting leftward.
In the present system, the display length of each of the chord name notating character strings is determined from the chord information in each chord event information contained in the music performance data, and the head display position of each chord name notating character string is determined from the time information in each chord event information contained in the music performance data so that each chord name will be displayed at the corresponding time position along the time axis in view of the progression of the musical performance. However, the time position of the chord name notation ci which overruns the right end Ed of the staff tier as shown by a broken line at the rightmost part of
Rule 1a: A chord name notation which bridges intermediate measures across a bar line Br on a staff tier will be displayed regardless of the bar line.
According to the rules observed by the present system, the time positions of the chord names will not be modified except for the case where the above rule 1 is applied. The chord names may, therefore, be displayed over a bar line Br other than the right end bar line Ed as shown at the chord name cb in
Rule 2: The vertical positions of the chord names will be determined with the priority order of from the nearest space to the staff tier to the farther spaces (Fundamental Rule).
For example, in
Rule 3: With respect to consecutive chord names overlapping along the time axis, the latter chord name will be shifted vertically to prevent an overlap with the former (preceding) chord name.
For example, in the case of the chord name cd where the head position of the chord name cd comes before the tail of the preceding chord name cc (this does not overlap with the further preceding chord name cb) along the time axis (or where the head position would be too close to the tail position of the preceding chord name), in other words where the chord name cd overlaps with the chord name cc, the display position of the latter chord name cd is shifted in the vertical direction by an amount necessary to describe the character chain of the chord name cc so that the chord name cd will be displayed at an upper level above the preceding chord name cc. Further, for example, in the case of the chord name ce where there are three consecutive chord names cc, cd and ce which successively overlap with the preceding chord names, the vertical position of the second chord name cd will be determined with respect to the first chord name cc, and then the vertical position of the third chord name ce will be determined with respect to the second chord name so that the chord names will be properly shifted vertically to prevent overlapping.
Rule 3a: With respect to three or more consecutive chord names overlapping successively along the time axis, the vertical positions of the chords will be determined preferentially to be at open spaces nearer to the staff, while the vertical positions of the chords will be successively shifted apart from the staff only if there is no open space left nearer to the staff.
For example, in the cases of the three consecutive chord names cc–ce and cf–ch, the chord notations cc and cf are displayed at the vertical level nearest to the staff, and then the chord notations cd and cg cannot be displayed at the same nearest vertical level and accordingly will be shifted above the chord names cc and cf to be displayed at the second nearest vertical level. In the case of the chord name ce, there is an open space at the vertical level nearest to the staff, as the chord name notation ce does not overlap with the chord name notation cc along the time axis and as the preceding chord name notation cd is shifted away from the staff to prevent an overlap with the chord name notation cc, and thus the vertical position of the chord name notation ce will be determined according to the fundamental rule of the above “Rule 2” and will not be shifted vertically. On the other hand, in the case of the chord name ch, which overlaps with both of the two preceding chord names cf and cg, there is no open space left at the nearest vertical level and thus the display position for the chord name ch is shifted farther from the staff as shown in
Rule 4: The character denoting the root note of the chord will be highlighted.
As shown in
c–2f are to explain the rules for displaying the words. The musical information displaying system of the present invention first determines the lengths and the time positions of the words to be displayed along the time axis, and then modifies the display positions of the words to prevent overlaps, if any, between the adjacent words or an overrun at the right end of the staff tier according the word display rules as will be described in detail herein below. The words will be displayed along with the notes on the musical staff in a clearly legible appearance. The character strings notating words will be sometimes referred to as “word notations” or “words,” and may be sometimes termed generally as “word displays.”
Rule 5: The words are displayed fundamentally at the time positions of the corresponding note symbols along the time axis and on the word line of the musical staff as long as adjacent words do not overlap with each other.
Also with respect to the word notating character strings, the display lengths are determined from the word information in each word event information contained in the music performance data, and the head display position of each word notating character string is determined from the time information (usually at the same on-time as the main note event) in each word event information contained in the music performance data so that each word will be displayed at the corresponding time position along the time axis in view of the progression of the musical performance. If thus determined display positions do not cause overlaps between the adjacent words on the word display line (more particularly, there is a gap larger than a predetermined minimum word gap between the head position, i.e. left end position of a word and the tail position, i.e. right end position of the preceding word), the words will be displayed at the determined positions corresponding to the associated note symbols.
Rule 6: If the adjacent words would overlap with each other when displayed at the positions corresponding to the associated note symbols in the musical staff, the head position of the latter word is shifted in the direction of the time progression, i.e. rightward to prevent an overlap when displayed.
If the above determined word positions (according to Rule 5) will cause an overlap between two adjacent words as shown in
Rule 7: If a displayed word would overrun the right end of a staff tier, words in the same line will be successively right-justified with respect to the staff tier.
If the system judges that the word notation character string wd representing the word “Kong” which corresponds to the note symbol nd at the end of the staff tier as determined according to the above Rule 5 overruns (exceeds) the right end Ed of the staff tier as shown in
Chord Display Data and Word Display Data
A musical information displaying system according to an embodiment of the present invention creates chord display data and/or word display data from the music performance data in accordance with the music information displaying program, and displays the chord names and/or the words on the display screen based on the created display data, wherein the chord names and/or the words are displayed in a clearly legible appearance as explained herein-above.
To begin with, an example of the data format of the music performance data (musical composition data) used in this system will be described with reference to
Similarly, the chord event information Ec of each chord event contains time information Tm and chord information Ch in a pair as also expanded in the right side portion of
In
The processing flow of
The next step P2 surveys all the events in the selected music performance data Sn, determines the allocation of measures for each of the staff tiers and creates note display data for displaying symbols of notes and rests which constitute the music performance on the musical staffs based on the note event information En. This process can be realized by a conventional method for producing a music score, wherein the note display data created here contains information defining the positions, the shapes and the sizes of the symbols which represent the respective notes Nt in the music performance data Sn.
The following step P3 is to read out the chord event information Ec in the music performance data Sn event by event from the top event successively. A step P4 obtains the length necessary to display each chord name from the chord information Ch of the chord event under processing. There are various types of chord names including the chord name of an on-bass chord having a bass note name in addition to the chord root note as explained above with reference to
Then, a step P5 determines the head position of each chord name notation along the time axis for displaying the chord name (among ca–cm) on the musical staff from the time information Tm of the read-out chord event information Ec. The information of the determined head position is stored as the display position data in the chord display data. The head position of the chord name notation is preferably be determined at the time position along the time axis of the note symbol represented by the note display data (based on the note event information En at the same time point) corresponding to the time information Tm of the chord event information Ec. During the process of actually displaying the chord names, the left ends of the respective chord name character strings are placed at thus determined head positions of the respective chords along the time axis.
A step P6 judges whether the chord name display overruns the right end Ed of the staff tier or not. In other words, with the example of
If the judgment at the step P6 is affirmative (Yes), the process flow goes forward to a step P7, which modifies (adjusts) the head position in the chord display data of the chord ci to right-justify the chord name notation with respect to the right end Ed of the staff tier according to the above Rule 1 as shown by a solid line in
After the head position of the chord name string is modified at the step P7, or when the step P6 judges negative (No), the process flow proceeds or skips to a step P8 to determine the vertical position of the chord name display to be in the space above and nearest to the staff tier (preferably some margin may be left between the chord notation and the fifth line L5 of the staff) according to the above Rule 2 , and the vertical position information of the chord display data is set to denote this nearest space.
The next step P9 judges whether or not the thus determined head position of the chord name display is too close to the tail of the preceding chord name display which is determined in the same vertical position by an amount less than the predetermined minimum gap (or overlapping) along the time axis. It should be understood that the chord event information Ec at the preceding time point denoted by the time information Tm has been previously processed and its position has been determined and stored in the chord display data.
If the judgment at the step P9 is affirmative (Yes), the process flow moves forward to a step P10, which modifies the vertical position information of the chord display data by shifting the vertical position of the chord name display (as determined at the step P8) to an open space above and nearest to the staff tier according the above Rules 3 and 3a. More specifically, where the current determined position is the position nearest to the staff tier, the vertical position will be shifted upward, but where the current determined position is not the position nearest to the staff tier, the vertical position will be shifted to an open space as selected the nearer to the staff the more preferable. The unit of vertical shifting may be the character height necessary for notating the chord names, or may be the minimum unit of the resolution of the display circuit 7. After the vertical position of the chord display is shifted at the step P10, the process flow goes back to the step P9 to judge whether the thus shifted vertical position causes an overlap with any of the previously determined chord display. If the step P9 judges there is an overlap again, the step P10 shifts the vertical position of the next preference before the process flow goes back to the step P9 again.
If the step P9 judges that the chord display at thus determined or modified vertical position does not overlap with another chord display, that is, judges negative (No), the process flow proceeds to a step P11 to judge whether or not the chord event information Ec for all the chord events in the music performance data Sn has been processed. If there is still the chord event information Ec of any chord event unprocessed, that is, if the step P11 judges negative (No), the process flow goes back to the step P3 to repeat the processing of the steps P3 through P11 with respect to the chord event information Ec of the next chord event remaining unprocessed. If the chord event information Ec of all the chord events has been processed, the step P11 judges affirmative (Yes), the processing for creating the chord display data of the selected music performance data file Sn comes to an end. After the creation of the chord display data is over, the system displays a music score based on the note display data and the chord display data thus created.
The processing flow of
The following step S3 is to read out the word event information Ew in the music performance data Sn event by event from the top event successively. Then the process flow proceeds to a step S7. The step S7 obtains the length necessary to display each word from the word information Wr of the word event information Ew read out at the step S3. The process flow then goes forward to a step S4.
The step S4 determines the head position of each word along the time axis from the time information Tm for displaying the word to be displayed according to the word information Wr. The information of the determined head position is stored as the display position data in the word display data.
Next, a step S5 judges whether or not the thus determined head position of the word display is too close to the tail of the preceding (left) word display by an amount less than a predetermined minimum word gap (or overlapping). If the judgment at the step S5 is affirmative (Yes), the process flow goes forward to a step S6, which modifies (shifts leftward) the head position of the word display so that the head of the word will be apart from the tail of the preceding word by an amount of the predetermined minimum word gap.
After the head position of the word is modified at the step S6, or when the step S5 judges negative (No), the process flow proceeds or skips to a step S8 to judge whether or not the word under process is the one located at the right end Ed of the staff tier and the word display would overrun the right end Ed of the staff tier. If the step S8 judges that the word at the right end would overrun the right end Ed of the staff tier, that is, if the judgment at the step S8 is affirmative (Yes), the process flow passes through a justification routine including steps S9 through S16. If not, that is, if the judgment at the step S8 is negative (No), the process flow skips to a step S17 to judge whether or not the word event information Ew for all the word events in the music performance data Sn has been processed.
As long as there is any word event information Ew remaining unprocessed and while the word event under process is not of the right end word of a staff tier (i.e. the step S17 judges “No”) or is of the right end word which does not overrun the right end Ed of the staff tier (i.e. the step S8 judges “No”), the process flow goes back to the step S3 to repeat the above-described processing at the steps S3–S8 and S17.
On the other hand, where the word. event under process is the right end word of a staff tier and the word display would overruns the right end Ed of the staff tier, the step S8 judges affirmative (Yes), the head position of the word display is modified to be right-justified with respect to the right end Ed of the staff tier at the step S9 (
Next, a step S11 judges whether or not there is a preceding word event on the left of the word event pointed by the working index. If there is a preceding word event, the step S11 judges affirmative (Yes), the process flow goes to a step S12 (
On the other hand, if the word event pointed by the index is too close to the left word event (or overlapping) as shown in
If there is no preceding word event remaining after the step S13 for modifying the head position of the preceding word event has been repeated, the step S11 judges negative (No), the process flow proceeds to a step S15, which judges whether or not the word event pointed by the working index overruns beyond the left end of the staff tier. If the word event does not extrude from the left end of the staff tier, the step S15 judges negative (No), the process flow goes forward to the step S17, while if the word event extrudes from the left end of the staff tier, the step S15 judges affirmative (Yes), the process flow goes forward to a step S16 (
After the process flow comes to the step S17, and if the step S17 judges that the word event information Ec has been processed for all the word events, i.e. affirmative (Yes), the process flow goes forward to a step S18 (
On the other hand, in the case the word event extrudes from the left end of the staff tier and the process flow comes to the step S16, the step S16 sets a flag to indicate that the word display data have not been successfully created, and word display data creating processing with respect to the selected music performance data Sn comes to an end. Where the word display data creating processing has not been successful, the system may retry the same processing after changing (i.e. decreasing) the size of the character font and the word gap, or changing the allocation of the measures in each staff tier. Or the characters which cannot be displayed (e.g. the part of the character string extruding beyond the right end of the staff tier) may be omitted.
While particular embodiments of the invention and particular modifications have been described, it should be expressly understood by those skilled in the art that the illustrated embodiments are just for preferable examples and that various modifications and substitutions may be made without departing from the spirit of the present invention so that the invention is not limited thereto, since further modifications may be made by those skilled in the art, particularly in light of the foregoing teachings. For example, while the musical score is displayed after all the chord display data and the word display data have been created, but the chords and the words may be displayed one after another every time the display position is established (determined and properly modified) successively. It is therefore contemplated by the appended claims to cover any such modifications that incorporate those features of these improvements in the true spirit and scope of the invention.
Number | Date | Country | Kind |
---|---|---|---|
2004-274530 | Sep 2004 | JP | national |
Number | Name | Date | Kind |
---|---|---|---|
6053740 | Nakata et al. | Apr 2000 | A |
6062867 | Torimura | May 2000 | A |
6235979 | Yanase | May 2001 | B1 |
6582235 | Tsai et al. | Jun 2003 | B1 |
6838608 | Koike | Jan 2005 | B2 |
7094960 | Ikeya et al. | Aug 2006 | B2 |
20010023633 | Matsumoto | Sep 2001 | A1 |
20020103759 | Matsumoto et al. | Aug 2002 | A1 |
20020107803 | Lisanke et al. | Aug 2002 | A1 |
20030192424 | Koike | Oct 2003 | A1 |
20040112201 | Funaki | Jun 2004 | A1 |
20040244567 | Asakura | Dec 2004 | A1 |
Number | Date | Country |
---|---|---|
1753080 | Mar 2006 | CN |
1 640 967 | Mar 2006 | EP |
11-327427 | Nov 1999 | JP |
2006-91221 | Apr 2006 | JP |
9812876 | Mar 1998 | WO |
Number | Date | Country | |
---|---|---|---|
20060065100 A1 | Mar 2006 | US |