Musical score output program, musical score output device, and musical score output method

The score output program and device address the issue of incorrect grace note detection in MIDI data by relaxing detection conditions for series of notes with instruction information, ensuring accurate arrangement of grace notes in musical scores.

JP2025085259APending Publication Date: 2025-06-05ROLAND CORP
View PDF 1 Cites 0 Cited by

Patent Information

Application Number
JP2023199012
Authority / Receiving Office
JP · JP
Patent Type
Applications
Current Assignee / Owner
Filing Date
2023-11-24
Publication Date
2025-06-05

AI Technical Summary

Technical Problem

MIDI data often incorrectly detects normal notes as grace notes when their timing is close to that of nearby grace notes, leading to incorrect arrangement of grace notes in musical scores.

Method used

A score output program and device that accurately arrange grace notes by relaxing detection conditions for series of notes in music data that contain instruction information, ensuring correct placement of grace notes as intended by the user.

Benefits of technology

The solution effectively prevents incorrect detection of normal notes as grace notes, allowing for accurate arrangement of grace notes in musical scores, thereby improving the fidelity of musical score output.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 2025085259000001_ABST
    Figure 2025085259000001_ABST
Patent Text Reader

Abstract

To provide a musical score output program, a musical score output device, and a musical score output method that can arrange an ornamental note as intended by a user on a musical score to be output.SOLUTION: When an appoggiatura marker is arranged in musical score data M, a marker condition alleviated compared to a normal condition, that is, having a wider range is applied as a detection condition for detecting if a series of notes immediately after the appoggiatura marker are ornamental notes of the appoggiatura marker. This can increase the probability that the series of notes to be ornamental notes of the appoggiatura are acquired as the ornamental notes of the appoggiatura, and can arrange the ornamental notes of the appoggiatura as intended by a user H on a musical score to be output.SELECTED DRAWING: Figure 10
Need to check novelty before this filing date? Find Prior Art

Description

[Technical field]

[0001] The present invention relates to a musical score outputting program, a musical score outputting device, and a musical score outputting method. [Background technology]

[0002] Patent Document 1 describes a method of creating musical score information corresponding to MIDI data by analyzing the MIDI data. Specifically, musical score information is created by obtaining information on the pitch and length of a series of MIDI messages from the target MIDI data, and sequentially arranging notes corresponding to the pitch and length of the messages. [Prior art documents] [Patent documents]

[0003] [Patent Document 1] JP 2012-47983 A Summary of the Invention [Problem to be solved by the invention]

[0004] However, in MIDI data, if the timing of a MIDI message that should be set as a normal note and a series of MIDI messages that should be set as grace notes are close to each other, the MIDI message that should be set as a normal note and some of the MIDI messages in the series of MIDI messages that should be set as grace notes may be erroneously detected as grace notes, resulting in a problem in which the musical score cannot be output with the grace notes arranged as intended by the user.

[0005] The present invention has been made to solve the above-mentioned problems, and aims to provide a score output program, a score output device, and a score output method that can arrange grace notes in the output score as intended by the user. [Means for solving the problem]

[0006] In order to achieve this objective, the score output program of the present invention is a program that causes a computer to execute a score output process that outputs a score based on music data, the music data being a mixture of notes arranged in the order in which they are to be output and instruction information including information for setting grace notes from the notes, and causes the computer to execute a score output step of outputting a score with grace notes corresponding to a series of notes when a series of notes included in the music data satisfies a predetermined detection condition, and a relaxation step of relaxing the detection condition applied to the series of notes in the score output step when the music data contains instruction information.

[0007] The musical score output device of the present invention outputs musical scores based on music data, the music data being a mixture of notes arranged in the order in which they are to be output and instruction information including information for setting grace notes from the notes, and is equipped with a musical score output means for outputting musical scores in which grace notes corresponding to a series of notes are arranged when a series of notes included in the music data satisfies predetermined detection conditions, and a relaxation means for relaxing the detection conditions applied to the series of notes in the musical score output means when the music data contains instruction information.

[0008] The score output method of the present invention is a method for outputting a score based on music data, the music data being a mixture of notes arranged in the order in which they are to be output and instruction information including information for setting grace notes from the notes, and the method includes a score output step for outputting a score in which grace notes corresponding to a series of notes are arranged when a series of notes included in the music data satisfies a predetermined detection condition, and a relaxation step for relaxing the detection condition applied to the series of notes in the score output step when the music data contains instruction information. [Brief description of the drawings]

[0009] [Figure 1] FIG. 1 is a diagram showing the external appearance of a PC. [Diagram 2]FIG. 1A is a diagram for explaining the detection of appoggiatura grace notes, FIG. 1B is a diagram showing a musical score when the appoggiatura grace note detection method of this embodiment is not used, and FIG. 1C is a diagram showing a musical score when the appoggiatura grace note detection method of this embodiment is used. [Diagram 3] FIG. 1A is a diagram for explaining the detection of arpeggio grace notes, FIG. 1B is a diagram showing musical score when the arpeggio grace note detection method of this embodiment is not used, and FIG. 1C is a diagram showing musical score when the arpeggio grace note detection method of this embodiment is used. [Figure 4] FIG. 1A is a diagram for explaining the detection of trill grace notes, FIG. 1B is a diagram showing a musical score when the trill grace note detection method of this embodiment is not used, and FIG. 1C is a diagram showing a musical score when the trill grace note detection method of this embodiment is used. [Diagram 5] 1A is a block diagram showing the electrical configuration of a PC, FIG. 1B is a diagram showing music data in a schematic manner, and FIG. 1C is a diagram explaining an indication marker. [Figure 6] FIG. 2A is a diagram showing a model of a parameter table, and FIG. 2B is a diagram showing a model of music score data. [Figure 7] FIG. 2 is a functional block diagram of a PC. [Figure 8] 13 is a flowchart of a main process. [Figure 9] 13 is a flowchart of grace note detection processing. [Figure 10] 13 is a flowchart of a detection condition setting process. [Figure 11] 13 is a flowchart of a pre-hit sound detection process. [Figure 12] 13 is a flowchart of a candidate note acquisition process. [Figure 13] 13A is a flowchart of an arpeggio detection process, and FIG. 13B is a flowchart of a trill detection process. [Figure 14] FIG. 13 is a diagram illustrating a parameter table according to a modified example. DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS

[0010] A preferred embodiment will be described below with reference to the accompanying drawings. First, an overview of the PC1 of this embodiment will be described with reference to FIG. 1. FIG. 1 is an external view of the PC1. The PC1 is an information processing device (computer, score output device) that creates a score based on performance information set in music data M described below and outputs the created score. The PC1 is provided with a mouse 2 and a keyboard 3 for inputting instructions from a user H, and a display device 4 for displaying the score and the like created based on the music data M.

[0011] The music data M is data that is composed of music performance information in MIDI (Musical Instrument Digital Interface) format and indication markers (indication information) that are information for setting grace notes using the performance information. Specifically, in the music data M, the notes that make up the performance information are first arranged in the order in which they are output. The notes arranged in the music data M are set based on input by the user H to an electronic musical instrument such as a MIDI keyboard. Furthermore, in the music data M, indication markers are appropriately arranged between notes. Details of the indication markers will be described later with reference to FIG. 5.

[0012] In the PC 1, the notes arranged as performance information in the music data M are acquired in the order in which they were arranged, and notes corresponding to the acquired notes are acquired. Then, the musical score on which the acquired notes are arranged is displayed on the display device 4. At this time, the note-on time differences ΔL of a series of notes acquired from the music data M are timed, and grace notes corresponding to the series of notes are acquired according to the note-on time differences ΔL, and displayed on the musical score.

[0013] Here, the note-on time difference ΔL is the time difference between the times when adjacent notes in a series of notes are note-on (hereinafter referred to as "start times"). In this embodiment, grace notes for appoggiatura, arpeggios, and trills are acquired according to the measured note-on time difference ΔL. A method for detecting each grace note will be described with reference to Figs. 2 to 4. First, detection of appoggiatura grace notes will be described with reference to Fig. 2.

[0014] Fig. 2(a) is a diagram for explaining detection of grace notes with appoggiaturas. Fig. 2(a) shows a case where the series of notes acquired from music data M are notes N1 and N2, and the horizontal axis of Fig. 2(a) is time, and the vertical axis is pitch. The same applies to Fig. 3(a) and Fig. 4(a) described later.

[0015] In a series of notes obtained from music data M, the note-on time difference ΔL between adjacent notes in the series of notes is measured. Here, the note-on time difference ΔL is measured as the time difference in unit of real time (e.g., seconds). The velocity of each of the series of notes is obtained, and the sounding time of all notes other than the last note in the series of notes (hereinafter referred to as the "last note"), that is, the time from note-on to note-off of all notes other than the last note, is measured.

[0016] Then, when each of the measured note-on time differences ΔL is greater than or equal to the first time difference Lmin1 and less than or equal to the second time difference Lmax1, and the number of notes in the series is greater than or equal to the first predetermined number Nmin1 and less than or equal to the second predetermined number Nmax1, and the ratios between the velocity of the final note in the series of notes and the velocities of notes other than the final note in the series of notes are all greater than or equal to the velocity ratio Rg, and the tone generation time of notes other than the final note in the series of notes is less than or equal to the upper tone generation time Gd, the series of notes is detected as an appropriation grace note.

[0017] In this embodiment, whether the ratios between the velocity of the end note and the velocities of notes other than the end note are all equal to or greater than the velocity ratio Rg is determined by first calculating the multiplication values ​​by multiplying the velocities of notes other than the end note by the velocity ratio Rg, and then determining whether the velocity of the end note is equal to or greater than all of the calculated multiplication values. Note that whether the ratios between the velocity of the end note and the velocities of notes other than the end note are all equal to or greater than the velocity ratio Rg may also be determined by other methods, such as by comparing the velocity ratio Rg with the division value obtained by dividing the velocity of the end note by the velocity of notes other than the end note.

[0018] Such detection of appoggiatura grace notes is performed before the quantization process is performed, which aligns the notes of the music data M to a time "grid" that is set for each predetermined time interval (e.g., 16th notes or 32nd notes). Detection of arpeggios or trills, which will be described later with reference to Figures 3 and 4, is also performed before the quantization process.

[0019] Among the detection conditions for detecting the grace notes of the pre-concussion sounds, the first time difference Lmin1 is the lower limit of the time difference, the first predetermined number Nmin1 is the upper limit of the time difference, and the first predetermined number Nmin1 and the second predetermined number Nmax1 are the range of the number of notes. In this embodiment, the first predetermined number Nmin1 and the second predetermined number Nmax1 are set to the lower limit and the upper limit of the number of notes to be pre-concussion sounds (e.g., note N1 in FIG. 2C described later) in the series of notes plus the number of notes to which pre-concussion sounds are added (e.g., note N2 in FIG. 2C described later) (i.e., "1"). Note that the first predetermined number Nmin1 and the second predetermined number Nmax1 are set to the total number of notes to be pre-concussion sounds and notes to which pre-concussion sounds are added, but are not limited to this. For example, only the number of notes to be pre-concussion sounds may be set.

[0020] Here, the first time difference Lmin1 is 20 milliseconds, the second time difference Lmax1 is 40 milliseconds, the first predetermined number Nmin1 is 2 notes (i.e., the number of notes to be pre-sounded is 1), the second predetermined number Nmax1 is 5 notes (i.e., the number of notes to be pre-sounded is 4), the velocity ratio Rg is 0.9, and the sounding upper limit time Gd is 130 milliseconds. Note that the first time difference Lmin1, the second time difference Lmax1, the first predetermined number Nmin, the second predetermined number Nmax, the velocity ratio Rg, and the sounding upper limit time Gd may be set to values ​​other than those mentioned above.

[0021] In FIG. 2(a), the number of notes in the series is two, notes N1 and N2. Note N1 has a start time Ts1, a velocity V1, and a sounding time ΔTn1. Note N2 has a start time Ts2, which is later than Ts1, and a velocity V2. Since the series of notes acquired from the music data M are only notes N1 and N2, note N2 is determined as the end note. The note-on time difference ΔL between note N1 and note N2 is set to the difference between the start time Ts2 and the start time Ts1. For example, when the note-on time difference ΔL is 30 milliseconds, the sounding time ΔTn1 is 100 milliseconds, the velocity V1 is 10, and the velocity V2 is 30, note N1 is detected as the note to be pre-struck, and note N2 is detected as the note to which the pre-struck is added.

[0022] Next, referring to Fig. 2(b) and (c), a comparison is made between the case where the appoggiatura grace note detection method of this embodiment is used and the case where it is not used. Fig. 2(b) is a diagram showing a musical score when the appoggiatura grace note detection method of this embodiment is not used, and Fig. 2(c) is a diagram showing a musical score when the appoggiatura grace note detection method of this embodiment is used.

[0023] In Fig. 2(b), when the detection method of appoggiatura grace notes of this embodiment is not used, notes N1 and N2 that should be displayed as appoggiatura grace notes are displayed as a chord. In Fig. 2(b), the note corresponding to note N2 is displayed to the left of the note corresponding to note N1, which indicates that notes N1 and N2 are sounded simultaneously. The same applies to Fig. 4(b) described later. In this way, notes N1 and N2 are displayed as a chord because the start times of notes N1 and N2 are set to the same grid as a result of quantization processing of music data M.

[0024] In contrast, in the detection method of appoggiatura grace notes in this embodiment, when the note-on time difference ΔL of notes N1 and N2 before the music data M is quantized is equal to or greater than the first time difference Lmin1 and equal to or less than the second time difference Lmax1, note N1 is detected as the note to be appoggiatura and note N2 is detected as the note to which the appoggiatura is to be added. This makes it possible to accurately set appoggiatura grace notes from notes N1 and N2 that should be appoggiatura grace notes and have note-on time difference ΔL of equal to or greater than the first time difference Lmin1 and equal to or less than the second time difference Lmax1, as shown in FIG. 2(c).

[0025] Also, a time based on real time is used as the note-on time difference ΔL. Here, grace notes such as appoggiatura are often performed with a rhythm that is not dependent on the tempo set for the music. For example, if the note-on time difference ΔL is obtained using a 16th note according to the tempo as the unit time, the length of the unit time changes depending on the tempo, and the accuracy of the note-on time difference ΔL decreases. As a result, there is a risk that a note that should be an appoggiatura grace note in the music data M is judged to be a chord, and the appoggiatura grace note cannot be set accurately.

[0026] In contrast, in the detection method of appoggiatura grace notes in this embodiment, a time based on real time is used as the note-on time difference ΔL, which makes it possible to set the note-on time difference ΔL to a time that is unrelated to the tempo set in the music of the music data M, so that appoggiatura grace notes can be set more accurately from a series of notes.

[0027] In addition to the note-on time difference ΔL, the detection conditions for applausing grace notes also include that the velocity of the end note is equal to or greater than the velocity of the other notes, and the onset time of the notes other than the end note is short. This makes it possible to accurately detect a state that could be an applausing note, where the onset time of the notes other than the end note is short and the velocity of the end note is sufficiently greater than the other notes, thereby enabling more accurate setting of applausing grace notes.

[0028] The detection conditions for the pre-hit sound are not limited to the first time difference Lmin1, the second time difference Lmax1, the first predetermined number Nmin, the second predetermined number Nmax, the velocity ratio Rg, and the sounding upper limit time Gd. Some of these conditions may be omitted, or other conditions, such as a condition related to the pitch of a series of notes, may be added in addition to these conditions.

[0029] Next, detection of grace notes in an arpeggio will be described with reference to Fig. 3. Fig. 3(a) is a diagram for explaining detection of grace notes in an arpeggio. Fig. 3(a) shows a case where a series of notes acquired from music data M are notes N1 to N3.

[0030] A series of notes is detected as an arpeggio grace note when: each of the note-on time differences ΔL of a series of notes obtained from music data M is greater than or equal to a third time difference Lmin2 and less than or equal to a fourth time difference Lmax2; the average value of the note-on time differences ΔL is greater than or equal to a first average value LAmin and less than or equal to a second average value LAmax; the number of notes in the series is greater than or equal to a third predetermined number Nmin2 and less than or equal to a fourth predetermined number Nmax2; the pronunciation periods of adjacent notes in the series of notes overlap by more than a predetermined percentage or the pedal is pressed; and the series of notes are arranged in order of decreasing pitch.

[0031] Among the detection conditions for detecting these arpeggio grace notes, the third time difference Lmin2 and the first average value LAmin are the time difference lower limit values, the fourth time difference Lmax2 and the second average value LAmax are the time difference upper limit values, and the third predetermined number Nmin2 and the fourth predetermined number Nmax2 are the note number range.

[0032] Here, the third time difference Lmin2 is 30 milliseconds, the fourth time difference Lmax2 is 150 milliseconds, the first average value LAmin is 60 milliseconds, the second average value LAmax is 120 milliseconds, the third predetermined number Nmin2 is 3 sounds, the fourth predetermined number Nmax2 is 5 sounds, and the predetermined ratio is 80%. Note that values ​​other than those mentioned above may be set for the third time difference Lmin2, the fourth time difference Lmax2, the first average value LAmin, the second average value LAmax, the third predetermined number Nmin2, the fourth predetermined number Nmax4, and the predetermined ratio.

[0033] 3(a), the series of notes is three, notes N1 to N3, and the start times of notes N1 to N3 are Ts1 to Ts3, respectively. From these start times Ts1 to Ts3, the note-on time difference ΔL12 between notes N1 and N2, and the note-on time difference ΔL23 between notes N2 and N3 are measured, and the note-on time differences ΔL12 and ΔL23 are also measured in units of real time.

[0034] Furthermore, the average value ΔLA of the note-on time differences ΔL12 and ΔL23 is calculated. Also, the sounding times ΔTn1 to ΔTn3 of notes N1 to N3 are measured. From these sounding times ΔTn1 to ΔTn3, the length of the overlapping period in the sounding periods of note N1 and note N2, and the length of the overlapping period in the sounding periods of note N2 and note N3 are obtained. In FIG. 3(a), more than 80% of the sounding period of note N1 and the sounding period of note N2 overlap, and more than 80% of the sounding period of note N2 and the sounding period of note N3 also overlap.

[0035] For example, when the note-on time difference ΔL12 is 80 milliseconds, the note-on time difference ΔL23 is 100 milliseconds (and thus the average value ΔLA is 90 milliseconds), and the pitches P1 to P3 of notes N1 to N3 satisfy P1 < P2 < P3, notes N1 to N3 are detected as embellishing notes of an arpeggio.

[0036] Referring to FIGS. 3(b) and 3(c), a comparison is made between the case of using the method for determining embellishing notes of an arpeggio according to the present embodiment and the case of not using it. FIG. 3(b) is a diagram showing a musical score when the method for detecting embellishing notes of an arpeggio according to the present embodiment is not used, and FIG. 3(c) is a diagram showing a musical score when the method for detecting embellishing notes of an arpeggio according to the present embodiment is used.

[0037] In FIG. 3(b), when the method for detecting embellishing notes of an arpeggio according to the present embodiment is not used, notes N1 to N3 that should originally be displayed as embellishing notes of an arpeggio are displayed as a chord. This is because as a result of quantizing the music data M, the start times of notes N1 to N3 are set to the same grid.

[0038] In contrast, the arpeggio grace note detection method of this embodiment also sets notes N1-N3 as arpeggio grace notes when the respective note-on time differences ΔL12, ΔL23 of notes N1-N3 before the music data M is quantized are equal to or greater than the third time difference Lmin2 and equal to or less than the fourth time difference Lmax2. This allows notes N1-N3 that should be arpeggio grace notes to be accurately set as arpeggio grace notes, as shown in Fig. 3(c).

[0039] Furthermore, by using real-time based note-on time differences ΔL12, ΔL23, the note-on time differences ΔL12, ΔL23 can be made to be times unrelated to the tempo set for the music in the music data M, so that arpeggio grace notes can be obtained more accurately from a series of notes.

[0040] In addition to the note-on time differences ΔL12 and ΔL23, the detection conditions for arpeggio grace notes also include that the average value of note-on time differences ΔLA is equal to or greater than the first average value LAmin and equal to or less than the second average value LAmax, the sounding periods of adjacent notes in a series of notes overlap by a predetermined percentage or more, and the series of notes are arranged in ascending order of pitch. This makes it possible to accurately detect a state that could be an arpeggio, where the variation in note-on time differences ΔL in a series of notes is small, the sounding periods of the series of notes overlap, and sounding begins with the lowest pitch in the series of notes, and therefore makes it possible to set arpeggio grace notes with higher accuracy.

[0041] The arpeggio detection conditions are not limited to the third time difference Lmin2, the fourth time difference Lmax2, the first average value LAmin, the second average value LAmax, the third predetermined number Nmin2, the fourth predetermined number Nmax4, the predetermined ratio or pedal state, and the pitch conditions. Some of these conditions may be omitted, and other conditions, such as a condition related to the velocity of a series of notes, may be added in addition to these conditions.

[0042] Next, detection of grace notes for trills will be described with reference to Fig. 4. Fig. 4(a) is a diagram for explaining the setting of grace notes for trills. Fig. 4(a) shows a case where a series of notes acquired from music data M are notes N1 to N5.

[0043] A trill grace note is detected when the note-on time differences ΔL of a series of notes acquired from music data M are equal to or greater than the fifth time difference Lmin3 and equal to or less than the sixth time difference Lmax3, the number of notes in the series is equal to or greater than a fifth predetermined number Nt, and the series of notes alternately repeat notes that are different by a whole tone or a semitone. Among these detection conditions for detecting trill grace notes, the fifth time difference Lmin3 is the lower time difference limit, the sixth time difference Lmax3 is the upper time difference limit, and the fifth predetermined number Nt is the note number range.

[0044] Here, the fifth time difference Lmin3 is exemplified as "30 milliseconds", the sixth time difference Lmax3 as "100 milliseconds", and the fifth predetermined number Nt as "5 sounds". Note that the fifth time difference Lmin3, the sixth time difference Lmax3, and the fifth predetermined number Nt may be set to values ​​other than those mentioned above.

[0045] 4(a), the series of notes is five, notes N1 to N5, and the start times of notes N1 to N5 are Ts1 to Ts5, respectively. From these start times Ts1 to Ts5, the note-on time difference ΔL12 between notes N1 and N2, the note-on time difference ΔL23 between notes N2 and N3, the note-on time difference ΔL34 between notes N3 and N4, and the note-on time difference ΔL45 between notes N4 and N5 are obtained.

[0046] For example, if the note-on time difference ΔL12 is 50 milliseconds, the note-on time difference ΔL23 is 80 milliseconds, the note-on time difference ΔL34 is 60 milliseconds, the note-on time difference ΔL45 is 45 milliseconds, the pitches of notes N1, N3, and N5 are P1, the pitches of notes N2 and N4 are P2, the pitch P2 and the pitch P1 differ by a whole step or a semitone, and further the notes N1, N3, and N5 at pitch P1 and the notes N2 and N4 at pitch P2 begin to be sounded alternately, then notes N1 to N5 are detected as trill grace notes.

[0047] 4(b) and (c) are used to compare the case where the trill grace note determination method of this embodiment is used with the case where it is not used. Fig. 4(b) is a diagram showing a musical score when the trill grace note detection method of this embodiment is not used, and Fig. 4(c) is a diagram showing a musical score when the trill grace note detection method of this embodiment is used.

[0048] 4(b), when the method for detecting grace notes in trills according to the present embodiment is not used, notes N1 to N5, which should be displayed as grace notes in an arpeggio, are displayed as a single note, notes N2 and N3 as a chord, and notes N4 and N5 as a chord. In this way, note N1 is displayed as a single note, notes N2 and N3 as a chord, and notes N4 and N5 as a chord because, as a result of quantization processing on music data M, note N1 is set alone in one grid, notes N2 and N3 are set in the next grid, and notes N4 and N5 are set in the grid after that.

[0049] In contrast, the trill grace note detection method of this embodiment also determines notes N1 to N5 as trill grace notes when the respective note-on time differences ΔL12 to ΔL45 of notes N1 to N5 before the music data M is quantized are equal to or greater than the fifth time difference Lmin3 and equal to or less than the sixth time difference Lmax3. This allows notes N1 to N5 that should be trill grace notes to be accurately set as trill grace notes, as shown in Fig. 4(c).

[0050] Furthermore, by using real-time based times for the note-on time differences ΔL12 to ΔL45, the note-on time differences ΔL12 to ΔL45 can be made to be times unrelated to the tempo set for the music in the music data M, so that trill grace notes can be obtained more accurately from a series of notes.

[0051] In addition to the note-on time difference ΔL12~ΔL45, the detection conditions for trill grace notes also include the number of notes in the series and whether notes N1~N5 are alternating notes with whole tone or semitone differences. This allows accurate detection of a situation that could become a trill, where multiple notes alternately repeat with whole tone or semitone differences, and allows for more accurate setting of trill grace notes.

[0052] The trill detection conditions are not limited to the fifth time difference Lmin3, the sixth time difference Lmax3, the fifth predetermined number Nt, and the pitch conditions. Some of these conditions may be omitted, and other conditions, such as conditions related to the velocities of a series of notes, may be added in addition to these conditions.

[0053] Next, the electrical configuration of PC1 will be described with reference to Figures 5 and 6. Figure 5(a) is a block diagram showing the electrical configuration of PC1. PC1 has a CPU 20, a hard disk drive (HDD) 21, and a RAM 22, which are each connected to an input / output port 24 via a bus line 23. The above-mentioned mouse 2, keyboard 3, and display device 4 are further connected to the input / output port 24.

[0054] The CPU 20 is a calculation device that controls each part connected by a bus line 23. The HDD 21 is a rewritable non-volatile storage device that stores programs executed by the CPU 20, fixed value data, etc., and stores a score output program 21a, music data 21b, and a parameter table 21c. When the score output program 21a is executed in the CPU 20, the main process of FIG. 8 is executed. The music data 21b stores the above-mentioned music data M. Here, the music data 21b and the parameter table 21c will be described with reference to FIGS. 5(b), (c) and 6(a).

[0055] 5(b) is a diagram showing a schematic of the music data 21b. The music data 21b is composed of music data M, i.e., performance information related to notes based on the MIDI system for outputting as a music piece, and indication markers. Specifically, in the music data M, the notes constituting the performance information are arranged in the order in which they are to be output, and further, indication markers are appropriately arranged between the notes.

[0056] An indication marker is information (indication information) for relaxing the detection conditions used when detecting a grace note for the note placed immediately following it. When creating a musical score, notes or indication markers are acquired in order from the beginning of the music data M (i.e., "No. 1"). When an indication marker is acquired, the detection conditions for detecting appoggiatura, arpeggios, and trills for the note acquired immediately after it are changed from normal conditions to relaxed marker conditions. Indication markers are set by user H who creates the music data M, and are also set after appoggiatura, arpeggios, and trills are detected.

[0057] Here, the types of the indication markers will be described with reference to Fig. 5(c). Fig. 5(c) is a diagram for explaining the indication markers. In this embodiment, an approving note marker, an arpeggio marker, a trill start marker, and a trill end marker are provided as the indication markers.

[0058] The appoggiatura marker is an instruction marker that changes the detection conditions for appoggiatura grace notes from normal conditions to marker conditions. The appoggiatura marker is expressed as "GxP", where "x" is a parameter that specifies the channel number of the MIDI channel to which the note to be detected as appoggiatura belongs. For example, when detecting appoggiatura grace notes from a note with channel number "1", "G1P" is set as the appoggiatura marker.

[0059] The pre-onset marker has three options: "_Mn", "_AH", and "_AT". The "_Mn" option is an option for specifying the number of notes to be pre-onset in the series of notes. When the "_Mn" option is actually added to the pre-onset marker, the number of notes to be pre-onset is specified instead of the alphabet "n" (for example, "_M5"). When the "_Mn" option is added to the pre-onset marker, the first predetermined number Nmin1 and the second predetermined number Nmax1 of the pre-onset detection condition are each set to "n+1", which is the number specified by "n" in the "_Mn" option plus the number of notes to be pre-onset in the series of notes (i.e., "1").

[0060] On the other hand, when the number of notes to be pre-beats is not specified, the "_Mn" option is omitted from the pre-beat marker, and the first predetermined number Nmin1 and the second predetermined number Nmax1 in that case are set to the above-mentioned "2 notes" and "5 notes," respectively. Note that, although the number of notes to be pre-beats is specified in "n" in the "_Mn" option, this is not limiting, and "n" may be specified as the total number of notes to be pre-beats and notes to which pre-beats are added.

[0061] The "_AH" option is an option (position adjustment information) that sets the position of the appoggiatura grace note to be placed on the musical score based on the start time of the first note of the series of notes that make up the appoggiatura. The "_AT" option is an option (position adjustment information) that sets the position of the appoggiatura grace note to be placed on the musical score based on the start time of the last note of the series of notes that make up the appoggiatura. Note that the "_AH" option and the "_AT" option are configured so that only one of them can be specified.

[0062] The notes set in the music data M are based on performance information input from a MIDI keyboard or the like by the user H, so the start times of the notes do not necessarily match the "grid" after quantization. Therefore, by setting the "_AH" or "_AT" option, the appoggiatura grace note can be placed at the position intended by the user H among the first note or the last note in the series of notes.

[0063] For example, the appoggiatura marker "G1P_M3" indicates that the channel number for detecting appoggiatura grace notes is "1" and that three appoggiaturas (i.e., a complex appoggiatura consisting of three notes) are to be detected. The appoggiatura marker "G2P_AH" indicates that the channel number for detecting appoggiatura grace notes is "2" and that the position of the detected appoggiatura grace note in the musical score is set to a position based on the start time of the first note in the series of notes.

[0064] An arpeggio marker is an instruction marker that changes the detection conditions for arpeggio grace notes from normal conditions to marker conditions. An arpeggio marker is expressed as "AxPn", where "x" is a parameter that specifies the MIDI channel number to which the notes to be detected as an arpeggio belong. Also, "n" is a parameter that specifies the number of notes to be included in the arpeggio out of a series of notes. For example, if the channel number for detecting arpeggio grace notes is "3" and the number of notes to be included in the arpeggio is "5", then "A3P5" is set as the arpeggio marker.

[0065] Arpeggio markers have two options, "_AH" and "_AT", just like appoggiator markers. For example, an arpeggio marker of "A2P4_AH" detects an arpeggio consisting of four notes with a channel number of "2", and sets the position of the grace notes in the detected arpeggio to a position based on the start time of the first note in the series of notes. An arpeggio marker of "A4P5_AT" detects an arpeggio consisting of five notes with a channel number of "4" for detecting the grace notes in the arpeggio, and sets the position of the grace notes in the detected arpeggio to a position based on the start time of the last note in the series of notes.

[0066] The trill start marker is an instruction marker that changes the detection conditions for trill grace notes from normal conditions to marker conditions. The trill end marker is an instruction marker that changes the detection conditions for trill grace notes from marker conditions to normal conditions, and also instructs the execution of trill detection processing (described later in FIG. 13(b)) using notes acquired after the trill start marker is acquired. The trill start marker is expressed as "TxPS" and the trill end marker is expressed as "TxPE", and the "x" in these trill start markers and trill end markers is a parameter that specifies the MIDI channel number to which the note to be detected as a trill belongs.

[0067] Returning to Fig. 5(b), in the music piece data M stored in the music piece data 21b, the note number of the note, the above-mentioned start time and onset time, and an invalid flag are stored as information about the note. The invalid flag is a flag that stores whether or not a grace note has been set for the note. If no grace note has been set for the corresponding note, the invalid flag is set to OFF, and if a grace note has been set for the corresponding note, the invalid flag is set to ON.

[0068] Furthermore, in the music data M of the music data 21b, the information about the indicator marker includes an indicator marker with a channel number, the number of notes, and an option set. Although not shown, the music data M of the music data 21b includes information about the tempo of the music, and pedal information including information about whether the hold pedal or sostenuto pedal is depressed. In this embodiment, the tempo included in the "information about tempo" is the number of seconds per quarter note (i.e., real time).

[0069] Note that information other than the information about notes, indication markers, tempo, and pedals may be stored in the music data M of the music data 21b. Also, the tempo included in the "information about tempo" is not limited to the number of seconds per quarter note, but may be the number of seconds per eighth note or another number of seconds per note.

[0070] Next, the parameter table 21c will be described with reference to Fig. 6(a). Fig. 6(a) is a diagram showing the parameter table 21c in schematic form. The parameter table 21c is a data table in which detection conditions for detecting each grace note, such as appoggiatura, arpeggio, and trill, are stored. The parameter table 21c stores the above-mentioned normal condition and marker condition for each detection condition of appoggiatura, arpeggio, and trill.

[0071] Specifically, as the normal condition for the pre-hit sound, the first time difference Lmin1 is set to "20 milliseconds," and the second time difference Lmax1 is set to "40 milliseconds." The first predetermined number Nmin1 is set to "2 sounds," and the second predetermined number Nmax1 is set to "5 sounds." Furthermore, the velocity ratio Rg is set to "0.9," and the sounding upper limit time Gd is set to "130 milliseconds."

[0072] On the other hand, the marker conditions for the pre-hit sound are set as follows: the first time difference Lmin1 is set to "10 milliseconds" which is shorter than the normal condition; the second time difference Lmax1 is set to "80 milliseconds" which is longer than the normal condition; the first specified number Nmin1 is set to "2 notes or the number of specified markers + 1"; the second specified number Nmax1 is set to "5 notes or the number of specified markers + 1"; the velocity ratio Rg is set to "0.5" which is shorter than the normal condition; and the upper pronunciation limit time Gd is set to "500 milliseconds" which is longer than the normal condition.

[0073] The "2 notes or the number of specified markers + 1" in the first predetermined number Nmin1 means that when the "_Mn" option is added to the pre-beat marker, the first predetermined number Nmin1 is set to the number of notes "n" to be made pre-beats specified by the "_Mn" option plus the number of notes to which pre-beats are added, "1"; on the other hand, when the "_Mn" option is not added, "2 notes" is used as the first predetermined number Nmin1.

[0074] Similarly, the second predetermined number Nmax1 of "5 notes or the number of designated markers + 1" indicates that when the "_Mn" option is added to the pre-onset sound marker, the number obtained by adding "1" to the "n" designated by the "_Mn" option is used as the second predetermined number Nmax1, while when the "_Mn" option is not added, "5 notes" is used as the second predetermined number Nmax1. That is, in the pre-onset sound marker condition, the number obtained by adding 1 to the number designated by the "_Mn" option of the pre-onset sound marker is used as both the first predetermined number Nmin1 and the second predetermined number Nmax1. This makes it possible to more reliably detect pre-onset sounds consisting of the number designated by the pre-onset sound marker.

[0075] The normal conditions for an arpeggio are set as follows: the third time difference Lmin2 is set to "30 milliseconds", the fourth time difference Lmax2 is set to "150 milliseconds", the first average value LAmin is set to "60 milliseconds", the second average value LAmax is set to "120 milliseconds", the third predetermined number Nmin2 is set to "3 notes", and the fourth predetermined number Nmax2 is set to "5 notes".

[0076] On the other hand, the arpeggio marker conditions are set as follows: the third time difference Lmin2 is set to "20 milliseconds" which is shorter than the normal conditions, the fourth time difference Lmax2 is set to "200 milliseconds" which is longer than the normal conditions, the first average value LAmin is set to "20 milliseconds" which is shorter than the normal conditions, the second average value LAmax is set to "200 milliseconds" which is longer than the normal conditions, and a "marker designation number" is set for each of the third specified number Nmin2 and the fourth specified number Nmax2.

[0077] The "marker designated number" in the third predetermined number Nmin2 and the fourth predetermined number Nmax2 means that the number designated by "n" of the arpeggio marker is used for the third predetermined number Nmin2, and the number designated by "n" of the arpeggio marker is also used for the fourth predetermined number Nmax2. That is, in the arpeggio marker condition, the number designated by "n" of the arpeggio marker is used for both the third predetermined number Nmin2 and the fourth predetermined number Nmax2. This makes it possible to more reliably detect an arpeggio composed of the number of notes designated by the arpeggio marker.

[0078] In this embodiment, the "predetermined ratio" of the arpeggio detection conditions is "80%" under both the normal conditions and the marker conditions, but it may be different between the normal conditions and the marker conditions, such as "80%" under the normal conditions and "60%" under the marker conditions.

[0079] As the normal conditions for a trill, the fifth time difference Lmin3 is set to "30 milliseconds", the sixth time difference Lmax3 to "100 milliseconds", and the fifth predetermined number Nt to "5 notes". On the other hand, as the marker conditions for a trill, the fifth time difference Lmin3 is set to "10 milliseconds" which is shorter than the normal conditions, the sixth time difference Lmax3 to "150 milliseconds" which is longer than the normal conditions, and the fifth predetermined number Nt to "3 notes" which is fewer than the normal conditions.

[0080] In this way, the marker conditions for the detection conditions for detecting each grace note are set to conditions that are more relaxed than the normal conditions. For example, in the normal conditions for an appoggiatura, the first time difference Lmin1 is set to "20 milliseconds" and the second time difference Lmax1 is set to "40 milliseconds," while in the marker conditions for an appoggiatura, the first time difference Lmin1 is set to "10 milliseconds" and the second time difference Lmax1 is set to "80 milliseconds."

[0081] Therefore, the condition of "first time difference Lmin1 or more and second time difference Lmax1 or less" in the appoggiatura marker condition has a broader range than the corresponding condition in the normal appoggiatura condition, and the condition for the note-on time difference ΔL of a series of notes is relaxed. This increases the probability that a series of notes that are to be appoggiatura grace notes will be acquired as appoggiatura grace notes, so that appoggiatura grace notes can be more reliably placed in the output score.

[0082] Returning to Fig. 5(a), the RAM 22 is a memory for rewritably storing various work data and flags when the CPU 20 executes a program, and is provided with musical score data 22a and a tempo memory 22b for storing the tempo of the music data M of the music data 21b. The musical score data 22a will be described with reference to Fig. 6(b).

[0083] 6(b) is a diagram showing a schematic diagram of the score data 22a. The score data 22a stores music data to be output as a score. Specifically, the score data 22a stores information about normal notes, which are notes other than the grace notes, in the music data M of the music data 21b, and information about the grace notes, in the order in which they are to be output as a score.

[0084] The information about normal notes includes the note number of the note, the above-mentioned start time, and the onset time, as in the music data 21b of Fig. 5(b). The information about notes considered as grace notes includes the type of grace note (appoggio, arpeggio, or trill), and the note numbers and onset times of the constituent notes that make up the grace note. Hereinafter, "information about notes considered as grace notes" will be referred to as "grace note packs."

[0085] Next, the function of PC1 will be described with reference to Fig. 7. Fig. 7 is a functional block diagram of PC1. As shown in Fig. 7, PC1 has musical score output means 200 and mitigation means 201. Music score output means 200 is means for outputting a musical score in which grace notes corresponding to a series of notes are arranged when the series of notes included in musical piece data M satisfy a predetermined detection condition, and is realized by CPU 20 and display device 4. Mitigation means 201 is means for mitigating the detection condition applied to the series of notes in musical score output means 200 when an indication marker (indication information) is present in musical piece data M, and is realized by CPU 20.

[0086] In the PC1, when there is an indication marker in the music data M, the detection conditions for acquiring grace notes for a series of notes are relaxed. This increases the probability that a series of notes that should be grace notes will be acquired as grace notes. This allows the grace notes to be arranged in the output score as intended by the user H.

[0087] Next, the processing executed by the CPU 20 of the PC 1 will be described with reference to Figs. 8 to 13. Fig. 8 is a flowchart of the main processing. The main processing is executed when an instruction to execute the score output program 21a is given in the PC 1. The main processing first acquires music data M from the music data 21b (S1). In the following, "music data M" refers to the music data M acquired in the processing of S1.

[0088] After the process of S1, it is confirmed whether an instruction to edit an instruction marker in the music data M has been received from the user H via the mouse 2 or keyboard 3 (S2). If it is confirmed in the process of S2 that an instruction to edit an instruction marker in the music data M has been received (S2: Yes), the instruction marker in the music data M is edited in accordance with the received instruction to edit an instruction marker (S3).

[0089] Specifically, the positions of the indication markers in the music data M are changed, the settings of the indication markers arranged in the music data M are changed, or new indication markers are added to the music data M (S3). This allows the contents and positions of the indication markers in the music data M to match the settings of the grace notes intended by user H.

[0090] In the process of S2, if it is not confirmed that an instruction to edit the indication marker has been received (S2: No), the process of S3 is skipped. After the processes of S2 and S3, a grace note detection process (S4) is executed. The grace note detection process will be described with reference to FIG.

[0091] 9 is a flowchart of the grace note detection process. The grace note detection process begins by setting a counter variable i, which indicates the position of a note or an indication marker in music data M (i.e., "No." in FIG. 5(b)), to 1 (S10). After the process of S10, it is confirmed whether the i-th item in music data M is information about tempo in the performance information (S11).

[0092] In the process of S11, if it is confirmed that the i-th piece of music data M is information related to tempo (S11: Yes), the tempo based on the acquired information related to tempo is set in the tempo memory 22b (S12). On the other hand, in the process of S11, if it is not confirmed that the i-th piece of music data M is information related to tempo (S11: No), the process of S12 is skipped.

[0093] After the processes of S11 and S12, it is confirmed whether the i-th data item of the music data M is pedal-related (S13). In the process of S13, if it is confirmed that the i-th data item of the music data M is pedal-related (S13: Yes), a pedal state, which is a state of whether the pedal is being pressed, is obtained from the obtained pedal-related information (S14).

[0094] On the other hand, if it is not confirmed in the process of S13 that the i-th piece of music data M is pedal-related information (S13: No), the process of S14 is skipped. After the processes of S13 and S14, a detection condition setting process (S15) is executed. The detection condition setting process will now be described with reference to FIG. 10.

[0095] 10 is a flowchart of the detection condition setting process. In the detection condition setting process, the normal conditions in the parameter table 21c are set as the detection conditions for the appropriation, arpeggio, and trill (S30). After the process of S30, it is confirmed whether the i-th piece of the music data M is an appropriation marker (S31).

[0096] In the process of S31, if it is confirmed that the i-th piece of music data M is an onset sound marker (S31: Yes), the detection condition of the onset sound is set to the marker condition in the parameter table 21c (S32). On the other hand, in the process of S31, if it is not confirmed that the i-th piece of music data M is an onset sound marker (S31: No), the process of S32 is skipped.

[0097] After the processes of S31 and S32, it is confirmed whether the i-th piece of music data M is an arpeggio marker (S33). If it is confirmed in the process of S31 that the i-th piece of music data M is an arpeggio marker (S33: Yes), the arpeggio detection condition is set to the marker condition in the parameter table 21c (S34). On the other hand, if it is not confirmed in the process of S33 that the i-th piece of music data M is an arpeggio marker (S33: No), the process of S34 is skipped.

[0098] After the processes of S33 and S34, it is confirmed whether the i-th piece of music data M is a trill start marker (S35). If it is confirmed in the process of S35 that the i-th piece of music data M is a trill start marker (S35: Yes), the trill in progress flag is set to ON (S36). The trill in progress flag is a flag indicating whether the trill detection condition is set as the marker condition, and is set to ON when a trill start marker is obtained from music data M, and is set to OFF when a trill end marker is obtained from music data M. If it is not confirmed in the process of S35 that the i-th piece of music data M is a trill start marker (S35: No), the process of S36 is skipped.

[0099] After the processes of S35 and S36, it is confirmed whether the trill flag is on (S37). If it is confirmed in the process of S37 that the trill flag is on (S37: Yes), the trill detection condition is set as the marker condition in the parameter table 21c (S38). On the other hand, if it is confirmed in the process of S37 that the trill flag is off (S37: No), the process of S38 is skipped.

[0100] After the processes of S37 and S38, it is confirmed whether the i-th piece of music data M is a trill end marker (S39). If the i-th piece of music data M is confirmed to be a trill start marker in the process of S35 (S35: Yes), the trill in progress flag is set to OFF (S40). On the other hand, if the i-th piece of music data M is not confirmed to be a trill end marker in the process of S39 (S39: No), the process of S40 is skipped. After the processes of S39 and S40, the detection condition setting process is terminated.

[0101] Returning to Fig. 9, after the detection condition setting process of S15, the pre-hit detection process (S16), the arpeggio detection process (S17), and the trill detection process (S18) are executed. The pre-hit detection process, the arpeggio detection process, and the trill detection process will be described with reference to Figs. 11 to 13.

[0102] 11 is a flow chart of the pre-onset sound detection process. The pre-onset sound detection process first executes a candidate note acquisition process (S50). The candidate note acquisition process will now be described with reference to FIG.

[0103] 12 is a flowchart of the candidate note acquisition process. The candidate note acquisition process is a process for adding notes in the music data M that are to be subjected to grace note detection to a candidate note list. Grace notes are detected from the notes set in the candidate note list by appoggiator detection process, arpeggio detection process, and trill detection process. Therefore, the candidate note acquisition process is executed not only from the appoggiator detection process, but also from the arpeggio detection process and trill detection process described below.

[0104] The candidate note acquisition process first clears the candidate note list (S60). After the process of S60, the counter variable k is set to 0 (S61). After the process of S61, it is confirmed whether the i+kth note of the music data M is a note and the invalid flag is off (S62). In the process of S62, if it is confirmed that the i+kth note of the music data M is a note and the invalid flag is off (S62: Yes), it is confirmed whether the counter variable k is 0 (S63).

[0105] In the process of S63, if it is confirmed that the counter variable k is 0 (S63: Yes), the (i+k)th note of the music data M is added to the candidate note list (S64). At this time, all information related to the (i+k)th note of the music data M, specifically the note number, start time, and pronunciation duration, are associated and added to the candidate note list.

[0106] After the process of S64, the candidate note acquisition process is executed from the appoggiator detection process or the arpeggio detection process, and it is confirmed whether the number of notes in the candidate note list satisfies the detection condition for the corresponding grace note (S65). Specifically, in order to determine whether the number of notes in the candidate note list satisfies the detection condition for the corresponding grace note, if the candidate note acquisition process is executed from the appoggiator detection process, it is confirmed whether the number of notes in the candidate note list is equal to or greater than a second predetermined number Nmax1. In addition, if the candidate note acquisition process is executed from the arpeggio detection process, or if the candidate note acquisition process is executed from the appoggiator detection process, it is confirmed whether the number of notes in the candidate note list is equal to or greater than a fourth predetermined number Nmax2.

[0107] Note that, as the specific values ​​of the second predetermined number Nmax1 and the like compared in the process of S65, values ​​acquired from the parameter table 21c are used based on the detection conditions (normal conditions or marker conditions) set in the detection condition setting process of S15.

[0108] In the processing of S65, if the candidate note acquisition processing is executed from the appoggiator detection processing or the arpeggio detection processing, and it is not confirmed that the number of notes in the candidate note list meets the detection condition for the corresponding grace note (S65: No), it is confirmed whether the trill in progress flag described above in FIG. 10 is on and whether the i-th note of the music data M is a trill end marker (S66).

[0109] In the process of S66, if it is not confirmed that the trill in progress flag is on and the i-th piece of music data M is a trill end marker (S66: No), 1 is added to counter variable k (S67), and it is confirmed whether i+k is greater than the number of pieces of music data M (i.e., the sum of the number of pieces of information relating to notes and the number of pieces of information relating to indication markers in music data M) (S68). In the process of S68, if it is confirmed that i+k is less than or equal to the number of pieces of music data M (S68: No), the processes from S62 onwards are repeated.

[0110] In the processing of S63, if it is confirmed that the counter variable k is greater than 0 (S63: No), the note-on time difference ΔL between the i+k-th note of music data M and the note most recently added to the candidate note list is measured based on the tempo in the tempo memory 22b and the tick value of the start time of the i+k-th note of music data M (S69).

[0111] Specifically, first, the difference between the tick value of the start time of the (i+k)th note in the music data M and the tick value of the start time of the note most recently added to the candidate note list is calculated. If the calculated difference value is Dt, the tempo in the tempo memory 22b is Tm, and the tick value per quarter note is Tq, then the note-on time difference ΔL is calculated (timed) as "Dt×Tm / Tq".

[0112] After the process of S69, it is confirmed whether the calculated note-on time difference ΔL satisfies the detection condition of the corresponding grace note (S70). Specifically, if the candidate note acquisition process is executed from the appropriation detection process, it is confirmed whether the note-on time difference ΔL is equal to or greater than the first time difference Lmin1 and equal to or less than the second time difference Lmax1. If the candidate note acquisition process is executed from the arpeggio detection process, it is confirmed whether the note-on time difference ΔL is equal to or greater than the third time difference Lmin2 and equal to or less than the fourth time difference Lmax2, and if the candidate note acquisition process is executed from the trill detection process, it is confirmed whether the note-on time difference ΔL is equal to or greater than the fifth time difference Lmin3 and equal to or less than the sixth time difference Lmax3.

[0113] Note that the specific values ​​of the first time difference Lmin1 and the like compared in the process of S70 are also values ​​acquired from the parameter table 21c based on the detection conditions (normal conditions or marker conditions) set in the detection condition setting process of S15.

[0114] In the process of S70, if it is confirmed that the note-on time difference ΔL satisfies the detection condition of the corresponding grace note (S70: Yes), the process of S64 described above is executed.In addition, in the process of S62, if it is not confirmed that the i+kth of the music data M is a note and the invalid flag is off (S62: No), the processes of S63 to S65, S69, and S70 are skipped.

[0115] In the process of S65, the candidate note acquisition process is executed from the appropriation detection process or the arpeggio detection process, and it is confirmed that the number of notes in the candidate note list meets the detection condition of the corresponding grace note (S65: Yes), in the process of S66, it is confirmed that the trill flag is on and the i-th note of the music data M is a trill end marker (S66: Yes), in the process of S68, it is confirmed that i+k is greater than the number of data in the music data M (S68: Yes), or in the process of S70, it is not confirmed that the note-on time difference ΔL meets the detection condition of the corresponding grace note (S70: No), a sufficient number of notes that meet the detection condition of the corresponding grace note are registered in the candidate note list (S65, S66), a note that does not meet the detection condition of the corresponding grace note is detected (S70), or the processes of S63 to S70 are completed up to the last data of the music data M. In these cases, the candidate note acquisition process ends.

[0116] Returning to Fig. 11, after the candidate note acquisition process of S50, it is confirmed whether the number of notes in the candidate note list is equal to or greater than a first predetermined number Nmin1 and equal to or less than a second predetermined number Nmax1, and the ratios between the velocities of the last note in the candidate note list and the velocities of notes other than the last note in the candidate note list are all equal to or greater than velocity ratio Rg, and the pronunciation times of all notes other than the last note in the candidate note list are equal to or less than upper pronunciation time Gd (S51).

[0117] Note that, as the specific values ​​of the first time difference Lmin1 and the like compared in the process of S51, values ​​obtained from the parameter table 21c based on the detection conditions set in the detection condition setting process of S15 are used.

[0118] In the processing of S51, if it is confirmed that the number of notes in the candidate note list is greater than or equal to a first predetermined number Nmin1 and less than a second predetermined number Nmax1, and the ratio between the velocity of the last note in the candidate note list and the velocity of a note other than the last note in the candidate note list is greater than or equal to the velocity ratio Rg, and the pronunciation times of all notes other than the last note in the candidate note list are less than the upper pronunciation time Gd (S51: Yes), then a grace note pack of appoggiaturas corresponding to the notes in the candidate note list is created (S52).

[0119] After the process of S52, a pre-onset marker corresponding to the created pre-onset sound is added to a position before the note corresponding to the top note of the candidate note list in the music data M (S53). Note that in the process of S53, if a pre-onset marker has already been placed in a position before the note corresponding to the top note of the candidate note list in the music data M, the addition of the pre-onset marker may be omitted, or the pre-onset marker already placed may be overwritten. The same applies to the processes of S92 and S93 described later with reference to Figs. 13(a) and (b).

[0120] After the process of S53, the invalid flag of the note corresponding to the note in the candidate note list in the music data M is set to ON (S54). This makes it possible to prevent the note detected as an appoggiatura in the process of S52 from being erroneously detected as another grace note.

[0121] In the processing of S51, if it is not confirmed that the number of notes in the candidate note list is greater than or equal to the first predetermined number Nmin1 and less than or equal to the second predetermined number Nmax1, and the ratios between the velocities of the last note in the candidate note list and the velocities of notes other than the last note in the candidate note list are all greater than or equal to the velocity ratio Rg, and the pronunciation times of all notes other than the last note in the candidate note list are less than or equal to the upper pronunciation time Gd (S51: No), or after processing of S54, the pre-hit sound detection processing is terminated.

[0122] FIG. 13(a) is a flowchart of the arpeggio detection process. The arpeggio detection process first executes the candidate note acquisition process of S50 described above, and then calculates the average value ΔLA of each note-on time difference ΔL calculated in the candidate note acquisition process (S80). After the process of S80, it is confirmed whether the calculated average value ΔLA is equal to or greater than the first average value LAmin and equal to or less than the second average value LAmax, the number of notes in the candidate note list is equal to or greater than the third predetermined number Nmin2 and equal to or less than the fourth predetermined number Nmax2, and the notes in the candidate note list are arranged in ascending order of pitch (S81). Note that the specific values ​​such as the first average value LAmin compared in the process of S81 are also values ​​obtained from the parameter table 21c based on the detection conditions set in the detection condition setting process of S15.

[0123] In the processing of S81, if it is confirmed that the average value ΔLA is greater than or equal to the first average value LAmin and less than or equal to the second average value LAmax, and the number of notes in the candidate note list is greater than or equal to the third predetermined number Nmin2 and less than or equal to the fourth predetermined number Nmax2, and the notes in the candidate note list are arranged in order of decreasing pitch (S81: Yes), then it is confirmed whether the pronunciation periods of adjacent notes in the candidate note list overlap by more than a predetermined percentage, or whether the notes in the candidate note list were set while the pedal was pressed in the pedal state obtained in processing of S14 of the grace note detection processing of Figure 9 (S82).

[0124] In the process of S82, if it is confirmed that the sounding periods of adjacent notes in the candidate note list overlap by a predetermined percentage or more, or that a note in the candidate note list was set while the pedal was being depressed (S82: Yes), a grace note pack for an arpeggio corresponding to the note in the candidate note list is created (S83). After the process of S83, an arpeggio marker corresponding to the created arpeggio is added to the position in the music data M before the note corresponding to the top note in the candidate note list (S84). After the process of S84, the invalid flag of the note in the music data M corresponding to the note in the candidate note list is set to on (S85).

[0125] In the process of S81, if it is not confirmed that the average value ΔLA is equal to or greater than the first average value LAmin and equal to or less than the second average value LAmax, and the number of notes in the candidate note list is equal to or greater than the third predetermined number Nmin2 and equal to or less than the fourth predetermined number Nmax2, and the notes in the candidate note list are arranged in ascending order of pitch (S81: No), the processes of S82 to S85 are skipped, and if it is not confirmed in the process of S82 that the sounding periods of adjacent notes in the candidate note list overlap by a predetermined percentage or more, or that the notes in the candidate note list were set while the pedal was being depressed (S82: No), the processes of S83 to S85 are skipped. After the processes of S81, S82, and S85, the arpeggio detection process ends.

[0126] 13(b) is a flowchart of the trill detection process. The trill detection process first executes the candidate note acquisition process of S50 described above, and then checks whether the number of notes in the candidate note list is equal to or greater than the fifth predetermined number Nt and whether the notes in the candidate note list alternately repeat notes that are different by a whole tone or a semitone (S90). Note that the specific value of the fifth predetermined number Nt compared in the process of S90 is a value acquired from the parameter table 21c based on the detection conditions set in the detection condition setting process of S15.

[0127] In the processing of S90, if it is confirmed that the number of notes in the candidate note list is equal to or greater than a fifth predetermined number Nt and the notes in the candidate note list alternate between notes that are different by a whole tone or a semitone (S90: Yes), a grace note pack of trills corresponding to the notes in the candidate note list is created (S91).

[0128] After the process of S91, a trill start marker corresponding to the created trill is added before the note corresponding to the first note in the candidate note list in the music data M (S92), and a trill end marker corresponding to the created trill is added after the note corresponding to the last note in the candidate note list in the music data M (S93). After the process of S93, the invalid flag of the note corresponding to the note in the candidate note list in the music data M is set to on (S94).

[0129] In the processing of S90, if the number of notes in the candidate note list is equal to or greater than the fifth predetermined number Nt and it is not confirmed that the notes in the candidate note list alternate between sounds that are different by a whole tone or a semitone (S90: No), or after the processing of S94, the trill detection processing is terminated.

[0130] Returning to Fig. 9, after the trill detection process in S18, 1 is added to the counter variable i, and it is confirmed (S20) whether the counter variable i is greater than the number of data in the music data M. In the process of S20, if it is confirmed that the counter variable i is equal to or less than the number of data in the music data M (S20: No), the processes from S11 onwards are repeated.

[0131] In the process of S20, if it is confirmed that the counter variable i is greater than the number of data in the music piece data M (S20: Yes), each grace note pack created in the processes of S16 to S18 is merged with normal notes in the music piece data M whose invalid flag is off in order of start time, and the resulting music piece data is saved in the score data 22a (S21). At this time, notes in the music piece data M whose invalid flag is on are not merged into the music piece data of the score data 22a.

[0132] After the process of S21, the music data M is saved in the music data 21b (S22), and the grace note detection process ends. Indicative markers for the grace notes detected in the processes of S16 to S18 are set in the music data M. By saving (updating) this music data M in the music data 21b, in the processes of S16 to S18 based on the music data M of the music data 21b from the next time onwards, the notes detected as grace notes in the current process of S16 to S18 are detected as grace notes using marker conditions that are more relaxed than the normal conditions. This increases the probability that the notes detected as grace notes this time will also be detected as grace notes in the next and subsequent processes of S16 to S18, so that the grace notes intended by the user H can be set in the musical score.

[0133] Returning to Fig. 8, after the grace note detection process in S4, the music data in the score data 22a is quantized (S5). At this time, the start times of grace note packs set in the music data in the score data 22a are also placed on the most approximate grid by the quantization process.

[0134] After the process of S5, a musical score is created from the quantized music data of the musical score data 22a (S6), and the created musical score is displayed on the display device 4 (S7). After the process of S7, the main process ends.

[0135] Although the above description has been given based on the above embodiment, it can be easily imagined that various improvements and modifications are possible.

[0136] In the above embodiment, a value based on seconds such as "20 milliseconds" is set for the time-related conditions such as the first time difference Lmin1 in the parameter table 21c in Fig. 6(a), and in the process of S69 of the candidate note acquisition process in Fig. 12, the note-on time difference ΔL is calculated from the difference value Dt of the tick values ​​of the start times of the target notes and the tempo in the tempo memory 22b, and compared with the first time difference Lmin1 in the parameter table 21c. However, this is not limited to this, and for example, as in the parameter table 21c in Fig. 14, a tick value such as "20 ticks" may be set for the time-related conditions such as the first time difference Lmin1, and in the process of S69, it may be compared with the difference value Dt of the tick values ​​of the start times of the target notes.

[0137] In this case, the tick values ​​of the respective time-related conditions according to the tempo are set in the parameter tables 21c1, 21c2, ... in the parameter table 21c, and the parameter table 21c1, 21c2, ... that matches or is most similar to the tempo in the tempo memory 22b is obtained and used for comparison in the process of S69. This makes it unnecessary to convert the difference value Dt, which is the tick value, into a time based on seconds in the process of S69, and therefore the comparison in the process of S69 can be performed quickly.

[0138] In the above embodiment, the notes used to display the musical score are obtained from the music data M stored in the music data 21b, but the source of the notes is not limited to this. For example, the notes may be obtained from the music data M received by the PC1 via wired or wireless communication, or may be received by the PC1 via wired or wireless communication. Also, a MIDI keyboard may be connected to the PC1, and notes input in real time in response to the performance of the user H on the MIDI keyboard may be obtained.

[0139] In the above embodiment, the detection condition for the beginning hit sound is whether the ratio between the velocity of the last note of the series of notes and the velocities of the notes other than the last note of the series of notes is equal to or greater than the velocity ratio, but this is not limited to the above. For example, a velocity lower limit value that is a predetermined lower limit value of the velocity may be set in advance, and it may be determined whether the velocity of the last note of the series of notes is equal to or greater than the velocity lower limit value. Alternatively, a velocity offset value may be set in advance, and it may be determined whether the velocity of the last note of the series of notes is equal to or greater than the velocity of all notes other than the last note of the series of notes added with the offset value.

[0140] In the above embodiment, the grace notes are obtained from the notes of the music data M by the pre-hit detection process, the arpeggio detection process, and the trill detection process in S16 to S18 in Fig. 9, but this is not limited to the above. For example, a learning model that learns the note-on time difference ΔL, velocity, and onset time of a series of notes, and the grace notes to be detected from these, is stored in the HDD 21. Then, instead of the process in S16 to S18, the note-on time difference ΔL, velocity, and onset time of the series of notes obtained from the music data M may be input to the learning model stored in the HDD 21 to obtain the grace notes corresponding to the series of notes. In this way, by using a learning model that has been learned in advance, it is possible to quickly and accurately obtain the grace notes from the series of notes.

[0141] In the above embodiment, the created score is output by displaying it on the display device 4 in the process of S7 in the main process of Fig. 8, but this is not limited to this. For example, the created score may be output by transmitting it from the PC 1 to an information processing device such as another computer by wireless communication or wired communication, or the score may be output using other output means.

[0142] In the above embodiment, appoggiatura, arpeggio, and trill are exemplified as grace notes obtained from a series of notes in the music data M, but the present invention is not limited to these. For example, other grace notes such as glissando and portamento may be obtained from a series of notes. In this case, detection conditions for detecting these grace notes may be appropriately set in the parameter table 21c.

[0143] In the above embodiment, the indication marker is placed between notes in the music data M, but the placement of the indication marker is not limited to this. For example, only notes may be placed in the music data M first, and the indication marker may be placed after the note placement is completed. Also, only the indication marker may be placed in the music data M first, and the notes may be placed after the indication marker placement is completed. Alternatively, the indication marker may be stored in data different from the music data M. In these cases, it is preferable to add information to the indication marker regarding which note in the music data M the indication marker targets.

[0144] In the above embodiment, the PC 1 is exemplified as a computer that executes the score output program 21a, but the present invention is not limited to this, and the score output program 21a may be executed by an information processing device such as a smartphone or a tablet terminal, or an electronic musical instrument such as a synthesizer. In addition, the score output program 21a may be stored in a ROM or the like, and the present invention may be applied to a dedicated device (score output device) that executes only the score output program 21a.

[0145] In the above embodiment, MIDI format data is used as the performance information of the music piece data, but the present invention is not limited to this, and data in a format related to music other than MIDI may be used as the performance information of the music piece data. [Explanation of symbols]

[0146] 1 PC (computer, music score output device) 21a Music notation output program M Song Data N1~N5 Notes ΔL Note-on time difference Lmin1 1st time difference (lower limit of time difference) Lmax1 Second time difference (upper time difference limit) Nmin1 First predetermined number (range of note numbers) Nmax1 Second specified number (range of note numbers) Lmin2 3rd time difference (lower limit of time difference) Lmax2 4th time difference (upper time difference limit) LAmin 1st average value (lower limit of time difference) LAmax Second average value (upper limit of time difference) Nmin2 3rd specified number (range of note number) Nmax2 4th specified number (note number range) Lmin3 5th time difference (lower limit of time difference) Lmax3 6th time difference (upper limit of time difference) Nt 5th specified number (range of note numbers) Gd Upper limit of pronunciation time Rg Velocity Ratio S6, S7, S16~S18, S50 Music score output steps, music score output methods S32, S34, S38 relaxation steps S3 Instruction information editing step

Claims

1. A score output program that causes a computer to execute a score output process for outputting a score based on music piece data, the music data is data including notes arranged in an order to be output and instruction information including information for setting grace notes from the notes; a score output step of outputting a score including grace notes corresponding to a series of notes included in the music piece data when the series of notes includes the series of notes satisfies a predetermined detection condition; and a relaxation step of relaxing detection conditions applied to the series of notes in the score output step when instruction information is present in the music data.

2. the detection condition is a time difference upper limit value that is an upper limit value of a note-on time difference between adjacent notes in the series of notes, the musical score output step outputs a musical score including grace notes corresponding to the series of notes when a note-on time difference between the series of notes is equal to or less than a time difference upper limit value of the detection condition, 2. The score output program according to claim 1, wherein said relaxing step comprises setting said upper limit of time difference to a value longer than a value previously set when said music data contains instruction information.

3. the detection condition is a time difference lower limit value that is a lower limit value of the note-on time difference between adjacent notes in the series of notes, the musical score output step outputs a musical score including grace notes corresponding to the series of notes when a note-on time difference between the series of notes is equal to or greater than a lower limit time difference value of the detection condition, 2. The score output program according to claim 1, wherein said relaxing step comprises setting the lower limit of the time difference in said detection conditions to a value shorter than the previous value when said music data contains instruction information.

4. the detection condition is a note number range, which is a range of numbers of notes in the series of notes; The instruction information includes a range of note numbers. the musical score output step outputs a musical score including grace notes corresponding to the series of notes when the number of the series of notes satisfies the range of the number of notes defined by the detection condition, 2. The score output program according to claim 1, wherein the relaxation step, when the music data contains instruction information, sets the note number range in the detection conditions to the note number range set in the instruction information.

5. the detection condition is an upper limit sounding time that is an upper limit of the sounding time of the series of notes, the musical score output step outputs a musical score including grace notes corresponding to the series of notes when a tone generation time of a predetermined note in the series of notes is equal to or shorter than an upper tone generation time under the detection condition, 2. The score output program according to claim 1, wherein said relaxing step, when said music data contains instruction information, sets said upper sounding limit time in said detection condition to a time longer than that before.

6. the detection condition is a velocity ratio of the series of notes; the musical score output step outputs a musical score including grace notes corresponding to one note in the series of notes when a ratio between a velocity of the one note and a velocity of the other note in the series of notes is equal to or greater than a velocity ratio in the detection condition, 2. The score output program according to claim 1, wherein said reducing step, when said music data contains instruction information, sets the velocity ratio in said detection condition to a smaller ratio than that before.

7. position adjustment information is set in the instruction information to designate, among the series of notes, positions at which grace notes corresponding to the series of notes are to be arranged in the musical score output in the musical score output step; 2. The score output program according to claim 1, wherein the score output step outputs a score in which, when the music data contains instruction information and position adjustment information is set to the instruction information, corresponding grace notes are positioned at the note positions specified by the position adjustment information.

8. 8. The score output program according to claim 1, further comprising an instruction information editing step of editing a position of the instruction information in the music data or a content of the instruction information.

9. A musical score output device that outputs musical scores based on music data, the music data is data including notes arranged in an order to be output and instruction information including information for setting grace notes from the notes; a score output means for outputting a score including grace notes corresponding to a series of notes included in the music piece data when the series of notes includes the series of notes satisfies a predetermined detection condition; and relaxation means for relaxing detection conditions applied to the series of notes in said score output means when said music data contains instruction information.

10. A method for outputting a musical score based on music data, comprising the steps of: the music data is data including notes arranged in an order to be output and instruction information including information for setting grace notes from the notes; a score output step of outputting a score including grace notes corresponding to a series of notes included in the music piece data when the series of notes includes the series of notes satisfies a predetermined detection condition; a relaxation step of relaxing detection conditions applied to the series of notes in the score output step when instruction information is present in the music data.

Citation Information

Patent Citations

  • Sheet music preparing apparatus and sheet music preparing program

    JP2012047983A