Automatic arrangement method, automatic arrangement device, and computer program product
Patent Information
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- ROLAND CORP
- Filing Date
- 2021-06-29
- Publication Date
- 2026-06-02
Smart Images

Figure CN113870817B_ABST
Abstract
Description
Technical Field
[0001] This invention relates to an automatic music composition method, an automatic music composition device, and a computer program product. Background Technology
[0002] Patent Document 1 discloses an automatic music composition device that determines the notes in the performance information file 24 that constitute the chords that begin to play simultaneously, and deletes the notes that exceed a predetermined threshold in ascending order of pitch, thereby creating a new performance information file. As a result, the new performance information file generates fewer chords simultaneously than the performance information file 24, making it easier for the performer to play.
[0003] [Existing Technical Documents]
[0004] [Patent Literature]
[0005] [Patent Document 1] Japanese Patent Application Publication No. 2008-145564 (e.g., paragraph 0026) Summary of the Invention
[0006] [The problem the invention aims to solve]
[0007] However, in performance information file 24, notes are sometimes recorded by partially overlapping multiple pitches that are not simultaneously played. If this performance information file 24 is input into the automatic music composition device of Patent Document 1, the notes with partially overlapping pitches do not start playing at the same time and are therefore not recognized as chordal components. Therefore, in this case, the number of notes is not reduced and a new performance information file is directly output, resulting in the problem that an easy-to-play score cannot be created based on the performance information file.
[0008] This invention is made to solve the aforementioned problems, and its purpose is to provide an automatic music composition method, an automatic music composition device, and a computer program product, which can generate music composition data that reduces the number of notes played simultaneously and is easier to play based on music data.
[0009] [Technical means to solve the problem]
[0010] To achieve the aforementioned objective, the automatic music composition method of the present invention is a method for causing a computer to perform music composition processing, and the computer performs the following steps: a music acquisition step, acquiring the music data; a melody acquisition step, acquiring notes of the melody portion from the music data acquired in the music acquisition step; an outer voice determination step, determining the highest pitch note among the notes acquired in the melody acquisition step whose starting time of pronunciation is approximately the same as that of the outer voice note, as an outer voice note; an inner voice determination step, determining the notes acquired in the melody acquisition step that begin to sound during the pronunciation period of the outer voice note determined in the outer voice determination step and whose pitch is lower than that of the outer voice note as inner voice notes; a music composition melody production step, deleting the inner voice notes determined in the inner voice determination step from the notes acquired in the melody acquisition step, thereby producing the composed melody portion; and a music composition data production step, producing music composition data based on the melody portion produced in the music composition melody production step.
[0011] Another automatic music composition method of the present invention is a method for causing a computer to perform music composition processing on music data, wherein the computer performs the following steps: a music acquisition step, acquiring the music data; a chord information acquisition step, acquiring chords and the timing of the sounding of the chords from the music data acquired in the music acquisition step; and a note name acquisition step, acquiring the root note of each chord acquired in the chord information acquisition step. The steps include: a note name (note); a range variation step, which varies the position of the pitch of the range as a specified pitch range in units of a semitone; a candidate accompaniment production step, which, for each range varied in the range variation step, creates a candidate accompaniment part based on the pitch of the range corresponding to the note name obtained in the note name acquisition step and the timing of the chord obtained in the chord information acquisition step corresponding to the note; a selection step, which selects the arranged accompaniment part from the candidate accompaniment parts based on the pitch of the notes contained in the candidate accompaniment parts created in the candidate accompaniment production step; and an arrangement data production step, which creates arrangement data based on the accompaniment part selected in the selection step.
[0012] Furthermore, the automatic music composition apparatus of the present invention includes: a music acquisition unit for acquiring music data; a melody acquisition unit for acquiring notes of a melody portion from the music data acquired by the music acquisition unit; an outer voice determination unit for determining the highest pitch note among the notes acquired by the melody acquisition unit that have approximately the same start time of pronunciation as outer voice notes; an inner voice determination unit for determining inner voice notes among the notes acquired by the melody acquisition unit that begin to sound during the pronunciation period of the outer voice notes determined by the outer voice determination unit and have a pitch lower than the outer voice notes; a music composition melody production unit for deleting the inner voice notes determined by the inner voice determination unit from the notes acquired by the melody acquisition unit, thereby producing a composed melody portion; and a music composition data production unit for producing music composition data based on the melody portion produced by the music composition melody production unit.
[0013] Another automatic music composition device of the present invention includes: a music acquisition unit for acquiring music data; a chord information acquisition unit for acquiring chords and the timing of the chords' sounding from the music data acquired by the music acquisition unit; a note name acquisition unit for acquiring the note names of the root notes of each chord acquired by the chord information acquisition unit; a range variation unit for varying the position of the pitch of a range defined by a semitone; a candidate accompaniment production unit for creating candidate accompaniment parts, i.e., candidate accompaniment parts, for each range varied by the range variation unit, based on the pitches in the range corresponding to the note names acquired by the note name acquisition unit and the timing of the chords acquired by the chord information acquisition unit corresponding to the pitches; a selection unit for selecting the arranged accompaniment part from the candidate accompaniment parts based on the pitches of the notes contained in the candidate accompaniment parts created by the candidate accompaniment production unit; and a composition data production unit for creating composition data based on the accompaniment part selected by the selection unit.
[0014] The computer program product of the present invention includes: a computer program, which, when executed by a computer, implements the above-described automatic music composition method. Attached Figure Description
[0015] Figure 1 A diagram showing the appearance of a personal computer (PC).
[0016] Figure 2 (a) is a graph representing the melody portion of the musical data. Figure 2 (b) is a diagram representing the melody portion after arrangement.
[0017] Figure 3 A diagram illustrating the candidate accompaniment section.
[0018] Figure 4 This diagram illustrates the process of selecting the rearranged accompaniment from the candidate accompaniment sections.
[0019] Figure 5 (a) is a block diagram representing the electrical structure of a PC. Figure 5 (b) is a diagram that schematically represents performance data and melody data.
[0020] Figure 6 (a) is a schematic diagram representing chord data and input chord data. Figure 6 (b) is a schematic diagram representing the candidate accompaniment list. Figure 6 (c) is a diagram that schematically represents the output accompaniment data.
[0021] Figure 7 (a) is the flowchart for the main processing. Figure 7 (b) is a flowchart of the melody part processing.
[0022] Figure 8 The flowchart for processing the accompaniment part.
[0023] Figure 9 (a) is a graph representing musical data in the form of musical score. Figure 9 (b) is a graph representing the transposed musical data in musical notation. Figure 9 (c) is a graph representing arrangement data in musical notation.
[0024] [Explanation of Symbols]
[0025] 1: PC (computer)
[0026] 21a: Automatic music composition program
[0027] M: Music Data
[0028] Ma: Melody
[0029] Vg: External sound mark
[0030] Vi: Inner sound
[0031] Mb: The melody part after arrangement
[0032] A: Arrangement data
[0033] S1: Music Acquisition Steps and Components
[0034] S3: Melody Acquisition Steps and Components
[0035] S7: Arrangement Data Creation Steps and Components
[0036] S22, S23: External sound determination steps, external sound determination components, internal sound determination steps, internal sound determination components, arrangement melody production steps, arrangement melody production components
[0037] S4: Chord Information Acquisition Steps and Components
[0038] S43: Steps for obtaining note names, components for obtaining note names
[0039] S6: Arrangement and Accompaniment Production Steps
[0040] S41~S54: Range change steps, range change components
[0041] S44: Candidate Accompaniment Production Steps and Components
[0042] S47~S55: Selecting steps, selecting components Detailed Implementation
[0043] The preferred embodiments will now be described with reference to the accompanying drawings. Figure 1 The general outline of PC1 in this embodiment will be described. Figure 1 This is an external view of PC1. PC1 is an information processing device (computer) that creates arrangement data A in a form that is easy for user H, the performer, to play, by reducing the number of simultaneously played notes in music data M, which includes performance data P (described later). PC1 is equipped with a mouse 2 for inputting instructions from user H, a keyboard 3, and a display device 4 for displaying the score and other information created based on arrangement data A.
[0044] The music data M includes performance data P, which stores performance information of the music in the form of Musical Instrument Digital Interface (MIDI), and chord data C, which stores the chord progressions of the music. In this embodiment, the main melody of the music, namely the melody part Ma played by user H with his right hand, is obtained from the performance data P of the music data M, and an arranged melody part Mb is created by reducing the number of notes played simultaneously in the obtained melody part Ma.
[0045] Furthermore, based on the root notes of the chords obtained from the chord data C of the music data M, the accompaniment notes of the music, namely the arranged accompaniment part Bb played by user H with his left hand, are created. Next, arrangement data A is created based on these melody parts Mb and the accompaniment part Bb. First, referring to... Figure 2 This section explains the production method of the melody part Mb after arrangement.
[0046] Figure 2 (a) is a graph representing the melody part Ma of the music data M. Figure 2(b) is a diagram representing the melody part Mb after arrangement. Figure 2 In (a), in the melody portion Ma of the music data M, there are stored notes N1 (pronounced with note number 68) from time T1 to time T8, notes N2 (pronounced with note number 66) from time T1 to time T3, notes N3 (pronounced with note number 64) from time T2 to time T4, notes N4 (pronounced with note number 64) from time T5 to time T6, and note N5 (pronounced with note number 62) from time T7 to time T9. Furthermore, Figure 2 of (a), Figure 2 In (b), the smaller the number of the sign for time T1 to time T9, the earlier the time.
[0047] In the melody section Ma, the highest-pitched and longest-lasting note N1 begins to sound along with note N2. During the sounding of note N1, the sounding of note N2 ceases, the sounding of notes N3 and N4 begins and ceases, and the sounding of note N5 begins. If a score is created based on this melody section Ma, notes N2 through N5 must be sounded during the sounding of note N1, which would be difficult for user H to play.
[0048] In this embodiment, the number of notes simultaneously pronounced in the melody portion Ma is reduced. Specifically, the notes in the melody portion Ma that begin to pronounce at the same time are first identified. Figure 2 In (a), note N1 and note N2 are equivalent to notes that start to sound at the same time, thus note N1 and note N2 are obtained.
[0049] Next, the note with the highest pitch among the obtained notes is designated as the outer tone symbol Vg, and the notes with a pitch lower than the outer tone symbol Vg are designated as the inner tone symbol Vi. Figure 2 In (a), the note N1 with the highest pitch among notes N1 and N2 is designated as the outer phonetic symbol Vg, and the note N2 with a pitch lower than note N1 is designated as the inner phonetic symbol Vi.
[0050] Furthermore, the notes that occur from the start of pronunciation to the stop of pronunciation during the pronunciation period of the note identified as the outer phonetic symbol Vg are further identified as the inner phonetic symbol Vi. Figure 2 In (a), during the pronunciation of note N1, which is an external phonetic symbol Vg, the notes N3 and N4 are pronounced from the beginning to the end of the pronunciation, and therefore these are also identified as internal phonetic symbols Vi.
[0051] Next, the notes identified as inner voice Vi are removed from the melody part Ma, thus creating the arranged melody part Mb. Figure 2In (b), the arranged melody part Mb, which is derived from notes N1 and N5, is created by deleting notes N2 to N4, which are determined to be inner phonetic symbols Vi, from notes N1 to N5 in the melody part Ma.
[0052] Therefore, in the arranged melody section Mb, the notes N2 to N4, which begin and end during the pronunciation of note N1 and are pronounced simultaneously with note N1 (which is an external phonetic symbol Vg), are deleted, thus reducing the number of simultaneously pronounced notes in the overall melody section Mb. Furthermore, the external phonetic symbol Vg contained in the melody section Mb is a note with a pitch that is higher than the melody section Ma of the music data M and is clearly audible to the listener. Therefore, the arranged melody section Mb can be set as a melody section that maintains the same pitch as the melody section Ma of the music data M.
[0053] Here, note N5, recorded along with note N1 in the arranged melody section Mb, begins to sound during the sounding of note N1 and stops sounding after note N1 stops. By leaving this note in the arranged melody section Mb, it can be set as the melody section Mb that maintains the pitch changes and other tonal variations of the melody section Ma of the music data M.
[0054] Next, refer to Figure 3 , Figure 4 This section explains how to create the Bb accompaniment section after arrangement. Figure 3 The diagram illustrates candidate accompaniment sections BK1 to BK12. The arranged accompaniment section Bb is created based on the chord data C of the music data M. In this embodiment, the chord data C stores chords (C, D, etc.) and the timing of their sounding, i.e., the start time of the sound (see reference). Figure 6 (a) The accompaniment part Bb is created based on the note names of the root notes (basic notes) of each chord stored in the chord data C, or the note names of the denominator side when the chord is a fractional chord (for example, the note name of the denominator side is "E" when the fractional chord is "C / E"). Hereinafter, "denominator side of fractional chords" will be simply referred to as "denominator side".
[0055] Specifically, such as Figure 3 As shown, candidate accompaniment parts BK1 to BK12 are created, and the arranged accompaniment part Bb is selected from these candidate accompaniment parts BK1 to BK12. The candidate accompaniment parts BK1 to BK12 are accompaniment parts configured in a pitch range of one octave by using the note names of the root note or the note names on the denominator side of the chord obtained from the chord data C, so that the notes of the corresponding pitches are played at the time of the chord's sounding.
[0056] In this embodiment, candidate accompaniment parts BK1 to BK12 are each created based on a pitch range that shifts the range by a semitone. Specifically, in this embodiment, the pitch range of candidate accompaniment part BK1 is set to a pitch range of one octave from C4 (note number 60) to C#3 (note number 49), and candidate accompaniment part BK1 is created within this range. That is, when the progression of the root note name or the note name on the denominator side of the chord obtained from the chord data C is "C→F→G→C", the pitches corresponding to these note names, i.e., "C4→F3→G3→C4", are obtained in the pitch range, and these are arranged in a manner that allows them to be played at the same time as the corresponding chords in the chord data C, thus creating candidate accompaniment part BK1.
[0057] For candidate accompaniment section BK2, which follows candidate accompaniment section BK1, its pitch range is set to a range one semitone lower than that of candidate accompaniment section BK1. That is, in candidate accompaniment section BK2, the pitch range is set from B3 (note number 59) to C3 (note number 48). Therefore, "C3→F3→G3→C3" is created as candidate accompaniment section BK2.
[0058] Next, similarly, candidate accompaniment sections BK3 to BK12 are created while shifting the pitch range in semitone increments. This results in multiple accompaniment sections derived from candidate accompaniment sections BK1 to BK12, with the pitch range shifted by 12 semitones, or one octave. From these candidate accompaniment sections BK1 to BK12, the arranged accompaniment section Bb is selected. (Refer to...) Figure 4 This section explains the method for selecting the Bb accompaniment portion after arrangement.
[0059] Figure 4 This diagram illustrates the selection of the arranged accompaniment section Bb from candidate accompaniment sections BK1 to BK12. For each candidate accompaniment section BK1 to BK12, an evaluation value E (explained below) is calculated. Based on the calculated evaluation value E, the arranged accompaniment section Bb is selected from the candidate accompaniment sections BK1 to BK12. Furthermore, Figure 4 In this context, any one of the candidate accompaniment parts BK1 to BK12 is represented as "candidate accompaniment part BKn" (n = an integer from 1 to 12).
[0060] First, calculate the pitch differences D1 to D8 between the notes NN1 to NN4 constituting the candidate accompaniment part BKn and the notes NM1 to NM8 of the simultaneously played arranged melody part Mb. Then, calculate the standard deviation S obtained from the calculated pitch differences D1 to D8. Furthermore, the method for calculating the standard deviation S can be any well-known method, therefore detailed explanation is omitted.
[0061] Next, the average pitch Av of the notes NN1 to NN4 constituting the candidate accompaniment part BKn is calculated, and the absolute value of the difference between this average Av and a specific pitch (note number 53 in this embodiment) is calculated, i.e., the difference value D. Furthermore, the pitch difference between the highest and lowest pitches among the notes NN1 to NN4 constituting the candidate accompaniment part BKn is calculated, i.e., the keyboard range W. In addition, the specific pitch used to calculate the difference value D is not limited to note number 53; it can be 53 or lower, or 53 or higher.
[0062] Based on the calculated standard deviation S, difference value D, and keyboard range W, the evaluation value E is calculated using the following formula 1.
[0063] [Number 1]
[0064] E=(S*100000)+(D*1000)+W…(Formula 1)
[0065] Furthermore, the coefficients multiplied by the standard deviation S, the difference value D, and the keyboard range W in Equation 1 are not limited to the coefficients stated therein, and any appropriate values may be used.
[0066] For all candidate accompaniment parts BK1 to BK12, calculate the evaluation value E. Select the candidate accompaniment part with the smallest evaluation value E from candidate accompaniment parts BK1 to BK12 as the arranged accompaniment part Bb.
[0067] Based on the above, candidate accompaniment sections BK1 to BK12 only contain the root note names or denominator-side note names of the chords in the chord data C of the music data M. Therefore, in the candidate accompaniment sections BK1 to BK12 played by user H with their left hand, the overall number of notes played simultaneously can be reduced.
[0068] Here, the chord data C of the music data M represents the chord progression of the music, and the root note or the note on the denominator side of the chord represents the note that forms the basis of the chord. Therefore, by constructing candidate accompaniment parts BK1 to candidate accompaniment parts BK12 with the root note or the note on the denominator side of the chord, the chord progression of the music data M can be appropriately maintained.
[0069] The evaluation value E is calculated based on the candidate accompaniment parts BK1 to BK12 prepared in this way, and the candidate accompaniment part with the smallest evaluation value E is selected as the arranged accompaniment part Bb. Specifically, by setting the candidate accompaniment part with the smallest standard deviation S constituting the evaluation value E as the arranged accompaniment part Bb, the candidate accompaniment parts BK1 to BK12 with small pitch differences from the melody part Mb are selected as accompaniment parts Bb. Thus, the accompaniment part with a small distance between the right hand of the user H playing the melody part Mb and the left hand playing the accompaniment part, and thus a small deviation in the movement of the right and left hands, is selected as accompaniment part Bb, thereby creating arrangement data A that is easy for even a novice user H to play.
[0070] By setting the candidate accompaniment part with the smaller difference value D constituting the evaluation value E as the arranged accompaniment part Bb, the pitch difference between the notes contained in the accompaniment part Bb and the note of the specific pitch (i.e., note number 53) can be reduced. As a result, the movement of the left hand of the user H playing the accompaniment part Bb can be limited to the vicinity of the note of the specific pitch, thus creating an arrangement data A that is easy to play.
[0071] Furthermore, by setting the candidate accompaniment portion with the smaller keyboard range W constituting the evaluation value E as the arranged accompaniment portion Bb, the difference between the highest and lowest pitches contained in the accompaniment portion Bb can be reduced. This reduces the maximum movement of the left hand of the user H playing the accompaniment portion Bb, thus creating easily playable arrangement data A.
[0072] The evaluation value E includes the sum of the standard deviation S, the difference value D, and the keyboard range W. Therefore, by selecting candidate accompaniment parts BK1 to BK12 as accompaniment parts Bb according to the evaluation value E, the following accompaniment part can be selected as accompaniment part Bb: the distance between the right hand of user H playing melody part Mb and the left hand playing accompaniment part Bb is small, which reduces the pitch difference between the notes contained in accompaniment part Bb and the notes of a specific pitch. Consequently, the difference between the highest and lowest pitches contained in accompaniment part Bb is small, making it easier for user H to play and achieving a balance.
[0073] Next, refer to Figure 5 , Figure 6 The electrical structure of PC1 will be described. Figure 5(a) is a block diagram showing the electrical structure of PC1. PC1 has a central processing unit (CPU) 20, a hard disk drive (HDD) 21, and random access memory (RAM) 22, which are connected to input / output interfaces 24 via bus lines 23. The mouse 2, keyboard 3, and display device 4 are also connected to the input / output interfaces 24.
[0074] CPU 20 is an arithmetic unit that controls the various components connected via bus 23. HDD 21 is a rewritable, non-volatile storage device that stores programs or fixed-value data executed by CPU 20, and stores automatic music composition program 21a and music data 21b. If automatic music composition program 21a is executed in CPU 20, then... Figure 7 The main processing of (a). The music data M is stored in music data 21b, including performance data 21b1 and chord data 21b2. Refer to Figure 5 (b) Figure 6 (a) provides an explanation of the performance data 21b1 and chord data 21b2.
[0075] Figure 5 (b) is a schematic diagram illustrating performance data 21b1 and melody data 22a, described later. Performance data 21b1 is a data table storing performance data P of the musical piece data M. Performance data 21b1 stores the note number, start time, and duration of each note in performance data P. In this embodiment, "tick" is used as the unit of time for start time or duration, but other units of time such as "second" or "minute" may also be used. Furthermore, performance data P stored in performance data 21b1 of this embodiment includes, in addition to the melody part Ma, pre-set accompaniment parts or ornaments in the musical piece data M, but may also contain only the melody part Ma.
[0076] Figure 6 (a) is a schematic diagram illustrating chord data 21b2 and the input chord data 22b described later. Chord data 21b2 is a data table storing chord data C of the musical data M. In chord data 21b2, the note names (i.e., chord names) of the chords in chord data C and their start times are stored in association. In this embodiment, it is assumed that only one chord can be played simultaneously. Specifically, when a chord stored in chord data 21b2 begins to play at its start time, it stops playing at the start time of the next chord, and then the next chord immediately begins to play.
[0077] Back Figure 5 (a). RAM 22 is a memory used to store various working data or flags in a rewritable manner when the CPU 20 executes the automatic arrangement program 21a. It includes melody data 22a, input chord data 22b, candidate accompaniment list 22c, output accompaniment data 22d, and arrangement data 22e storing the arrangement data A.
[0078] Melody data 22a stores the melody portion Ma of the music data M or the arranged melody portion Mb. The data structure of melody data 22a is similar to... Figure 5 The performance data 21b1 described in (b) is the same, therefore the description is omitted. By utilizing... Figure 2 The method described herein deletes the notes of the melody part Ma stored in the melody data 22a, thereby storing the melody part Mb in the melody data 22a.
[0079] The input chord data 22b stores the chord data C obtained from the chord data 21b2 of the music data 21b. The data structure of the input chord data 22b is similar to... Figure 6 The chord data 21b2 described in (a) is the same, so the description is omitted.
[0080] Candidate accompaniment list 22c is for storage Figure 3 , Figure 4 The data tables for candidate accompaniment sections BK1 to BK12 described above, and the output accompaniment data 22d is a data table storing the arranged accompaniment section Bb selected from candidate accompaniment sections BK1 to BK12. (Refer to...) Figure 6 (b) Figure 6 (c) provides an explanation of the candidate accompaniment table 22c and the output accompaniment data 22d.
[0081] Figure 6 (b) is a schematic diagram representing candidate accompaniment list 22c. (See diagram 22c for example.) Figure 6 As shown in (b), in the candidate accompaniment table 22c, for each of the candidate accompaniment sections BK1 to BK12, the note number is stored in association. Figure 4 The standard deviation S, difference value D, keyboard range W, and evaluation value E are described in the document. Figure 6 In (b), “No.1” is equivalent to “candidate accompaniment part BK1”, “No.2” is equivalent to “candidate accompaniment part BK2”, and similarly, “No.3” to “No.12” are equivalent to “candidate accompaniment parts BK3” to “candidate accompaniment parts BK12” respectively.
[0082] Figure 6 (c) is a schematic diagram representing the output accompaniment data 22d. For example... Figure 6As shown in (c), the output accompaniment data 22d stores, in association, the note numbers of the arranged accompaniment sections Bb selected from candidate accompaniment sections BK1 to BK12, and the start time of each note number. Also in the output accompaniment data 22d, in conjunction with... Figure 6 Similarly, in the case where a note number stored in the output accompaniment data 22d begins to sound at its start time, it stops sounding at the start time of the note number of its next note, and then the note number of the next note immediately begins to sound.
[0083] Next, refer to Figures 7-9 The main processing executed by CPU 20 of PC1 will be described. Figure 7 (a) is a flowchart of the main processing. The main processing is the processing performed when the execution instruction for the automatic composition program 21a is given in PC1.
[0084] The main processor first obtains music data M from music data 21b (S1). Furthermore, the destination for obtaining music data M is not limited to music data 21b; for example, it can also be obtained from other PCs via a communication device not shown.
[0085] After processing in S1, the acquired musical data M is quantized and then transposed to C major or A minor (S2). Quantization is used to correct slight timing errors in the sound production during real-time recording.
[0086] The notes contained in musical data M are sometimes recorded from live performances, and the timing of their articulation may sometimes be slightly off. Therefore, by quantizing the musical data M, the start or end times of the notes' articulation can be corrected, thus accurately determining which notes in the musical data M begin to sound simultaneously. Figure 2 The determination of the external phonetic symbol Vg or the internal phonetic symbol Vi mentioned in the text is accurate.
[0087] Furthermore, by transposing the musical data M to C major or A minor, the frequency of using black keys can be reduced when playing the arrangement data A derived from the arrangement of musical data M using keyboard instruments. (See reference) Figure 9 of (a), Figure 9 (b) Compare the transposition processing of the music data M before and after.
[0088] Figure 9 (a) is a graph representing the music data M in musical notation. Figure 9 (b) is a graph representing the transposed musical data M in musical notation. Figure 9In (a) to (c), an example is given where a portion of Handel's "Ombramai fu" is used as musical data M, and arrangement data A is created based on said musical data M. Figure 9 In (a) to (c), the upper part of the score (the side with the G clef) indicates the melody, and the lower part (the side with the F clef) indicates the accompaniment. The G or D7 / A symbols at the top of the score indicate chords. That is, Figure 9 The upper section of the musical score in (a) represents the melody part Ma.
[0089] like Figure 9 As shown in (a), the key of the music data M is set to "G major". The G major scale includes instances where black keys are used alongside white keys on keyboard instruments, making it a difficult key for user H with limited playing ability. Therefore, using... Figure 7 The processing of S2 in (a) transposes the "key" of the music data M to "C major," a major scale consisting only of the white keys of keyboard instruments, thereby reducing the frequency of user H's operation of the black keys. This makes it easier for user H to play. At the same time, the chord data C in the music data is also transposed to "C major."
[0090] Furthermore, quantization or transposition processing is performed using well-known techniques, therefore detailed descriptions of these processes are omitted. Moreover, quantization and transposition processing are not limited to being performed together in the processing of S2; for example, only quantization processing may be performed, only transposition processing may be performed, or both quantization and transposition processing may be omitted. Furthermore, transposition processing is not limited to changing to "C major," but may also change to other keys such as G major.
[0091] Back Figure 7 (a) After processing in S2, the melody part Ma is extracted from the performance data P of the quantized and transposed music data M and stored in melody data 22a (S3). Furthermore, the method for extracting the melody part Ma from the performance data P is performed using a well-known technique, therefore its description is omitted. After processing in S3, the chord data C of the quantized and transposed music data M is stored in input chord data 22b (S4).
[0092] After processing S4, the melody part is processed (S5). See reference... Figure 7 (b) Explains the treatment of the melody.
[0093] Figure 7 (b) is a flowchart of the melody part processing. It describes the process of creating the arranged melody part Mb based on the melody part Ma from melody data 22a. The melody part processing first involves processing the elements representing the positions in melody data 22a (i.e.,...) Figure 5In (b), the counter variable N for “No.” is set to 0.
[0094] After processing S20, the Nth note is obtained from the melody data 22a (S21). After processing S21, notes that start at the same time as the Nth note obtained in S21 but have a pitch lower than the Nth note (i.e., note numbers lower than the Nth note) are deleted from the melody data 22a (S22). After processing S22, notes that start playing and stop playing during the Nth note's duration and have a pitch lower than the Nth note are deleted from the melody data 22a (S23).
[0095] After processing S23, the counter variable N is incremented by 1 (S24), and it is confirmed whether the counter variable N is greater than the number of notes in melody data 22a (S25). In processing S25, if the counter variable N is less than the number of notes in melody data 22a, the processing after S21 is repeated. In processing S25, if the counter variable N is greater than the number of notes in melody data 22a, the melody part processing ends.
[0096] That is, through the processing of S22 and S23, when the Nth note is an external tone symbol Vg, the note that starts at the same time as the Nth note in the melody data 22a but has a pitch lower than the Nth note is identified as an internal tone symbol Vi and deleted from the melody data 22a. Furthermore, the notes that start and stop during the pronunciation of the Nth note and have a pitch lower than the Nth note are also identified as internal tone symbols Vi and deleted from the melody data 22a. By performing this processing on all the notes stored in the melody data 22a, the arranged melody part Mb, in which the internal tone symbol Vi has been deleted from the melody part Ma of the music data M, is stored in the melody data 22a.
[0097] Back Figure 7 (a). After processing the melody portion of S5, perform the accompaniment portion processing (S6). See reference... Figure 8 Explanation of the processing of the accompaniment.
[0098] Figure 8 The flowchart shows the processing of the accompaniment section. The accompaniment processing involves creating chords based on the input chord data 22b. Figure 3 The process involves selecting the arranged accompaniment section Bb from the candidate accompaniment sections BK1 to BK12 as described in the document.
[0099] The accompaniment part is processed first of all Figure 3The highest note in the aforementioned pitch range, representing the highest pitch, is set to "60 (C4)", and the lowest note in the pitch range, representing the lowest pitch, is set to "49 (C#3)" (S40). For example... Figure 3 As explained in the document, the range of the candidate accompaniment section BK1 is "60 (C4) ~ 49 (C#3)", so "60 (C4)" is set as the initial value of the highest note, and "49 (C#3)" is set as the initial value of the lowest note.
[0100] After processing by S40, the position representing candidate accompaniment table 22c (i.e. Figure 6 The counter variable M for “No.” in (b) is set to 1 (S41), which represents the position of the input chord data 22b (i.e. Figure 6 The counter variable K of “No.” in (a) is set to 1 (S42).
[0101] After processing S42, the note name of the root note of the Kth chord in the input chord data 22b is obtained, or the note name on the denominator side if the Kth chord is a fractional chord (S43). After processing S43, the note numbers corresponding to the note names obtained by processing S43 from the highest to the lowest note in the range are obtained and appended to the Mth chord in the candidate accompaniment list 22c (S44).
[0102] For example, when the highest note in the range is 60 (C4) and the lowest note is 49 (C#3), if the note name obtained by the processing of S43 is "C", the pitch corresponding to "C" in the range is obtained as "C4", and this note number is appended to the candidate accompaniment table 22c.
[0103] After processing S44, the counter variable K is incremented by 1 (S45), and it is checked whether the counter variable K is greater than the number of chords stored in the input chord data 22b (S46). In processing S46, if the counter variable K is less than the number of chords stored in the input chord data 22b (S46: No), the input chord data 22b contains unprocessed chords, so the processing from S43 onwards is repeated.
[0104] In the processing of S46, if the counter variable K is greater than the number of chords stored in the input chord data 22b (S46: Yes), it is determined that the Mth accompaniment part among candidate accompaniment parts BK1 to candidate accompaniment parts BK12 has been completed based on the chords of the input chord data 22b. Therefore, it is calculated that... Figure 4 The standard deviation S, obtained from the pitch difference between each note of the Mth note of the candidate accompaniment table 22c and the notes of the arranged melody part Mb of the melody data 22a that is played at the same time, as described in the text, is stored in the Mth note of the candidate accompaniment table 22c (S47).
[0105] After processing S47, the following is calculated: Figure 4 The average pitch Av of the Mth note contained in the candidate accompaniment list 22c described in S48 is calculated, and the difference D between the calculated average Av and the note number 53 is calculated and stored in the Mth note of the candidate accompaniment list 22c (S49). After processing in S49, the following is calculated: Figure 4 The pitch difference between the highest and lowest pitch of the Mth note in the candidate accompaniment table 22c described above is the keyboard range W, and it is stored in the Mth note of the candidate accompaniment table 22c (S50).
[0106] After processing by S50, the evaluation value E is calculated using the formula 1 based on the standard deviation S, difference value D, and keyboard range W stored in the Mth candidate accompaniment table 22c, and is saved in the Mth candidate accompaniment table 22c (S51).
[0107] After processing S51, in order to create subsequent candidate accompaniment parts BK1 to BK12, the highest and lowest notes of the range are each reduced by 1, thereby setting the range to a pitch range one semitone lower (S52). After processing S52, the counter variable M is incremented by 1 (S53), and it is checked whether the counter variable M is greater than 12 (S54). In processing S54, if the counter variable M is less than or equal to 12 (S54: No), there are uncreated candidate accompaniment parts BK1 to BK12, so the processing from S42 onwards is repeated.
[0108] In the processing of S54, if the counter variable M is greater than 12 (S54: Yes), the candidate accompaniment parts BK1 to BK12 with the smallest evaluation value E in the candidate accompaniment table 22c are obtained. The note numbers of the notes constituting the obtained candidate accompaniment parts BK1 to BK12, and the start times of the chords corresponding to each note number obtained from the input chord data 22b are saved in the output accompaniment data (S55). After the processing of S55, the accompaniment part processing ends.
[0109] Therefore, based on the chords of the input chord data 22b, candidate accompaniment parts BK1 to BK12 are created, consisting only of the root note or the note on the denominator side of the chord. The candidate accompaniment part with the smallest evaluation value E among these is stored as accompaniment part Bb in the output accompaniment data 22d.
[0110] Back Figure 7(a) After processing the accompaniment part of S6, arrangement data A is created based on melody data 22a and output accompaniment data 22d, and saved in arrangement data 22e (S7). Specifically, arrangement data A is created with the arranged melody part Mb of melody data 22a as the melody part and the accompaniment part Bb of output accompaniment data 22d as the accompaniment part, and saved in arrangement data 22e. At this time, the chord progressions corresponding to each note of the accompaniment part Bb can also be saved in arrangement data 22e.
[0111] After processing by S7, the arrangement data A stored in arrangement data 22e is set to sheet music format and displayed on display device 4 (S8), ending the main processing. Here, for arrangement data A created based on music data M, the following steps are taken: Figure 9 (b) Figure 9 (c) will be explained.
[0112] Figure 9 (c) is a graph representing the arrangement data A in musical notation. Figure 9 As shown in (b), for Figure 9 In the score obtained by transposing the music data M of (a), there are multiple cases in the melody part Ma (i.e., the upper part of the score, on the G clef side) where more than two notes are produced at the same time, which is difficult for users H with low playing skills to play.
[0113] Therefore, the highest-pitched note among the notes that begin to sound simultaneously in the melody part Ma is identified as the outer tone symbol Vg, and the note N2 with a pitch lower than the outer tone symbol Vg is identified as the inner tone symbol Vi. Then, the notes that continue from the start to the end of the sounding period of the notes identified as outer tone symbols Vg are further identified as inner tone symbols Vi. Next, the inner tone symbol Vi is deleted from the melody part Ma, thus... Figure 9 Like the melody part Mb in (c), the number of notes played simultaneously is reduced. Therefore, a melody part Mb that is easy for user H to play can be created.
[0114] Furthermore, the euphonic notes Vg contained in arrangement data A include notes that are high in pitch within the melody section Ma of musical data M and are clearly audible to the listener. Therefore, the melody section Mb of arrangement data A can be maintained in the same way as the melody section Ma of musical data M.
[0115] On the other hand, the accompaniment part Bb in arrangement data A (i.e. Figure 9 The lower section of the score in (c), on the F clef side, is made solely from the root or denominator side of the chords in the chord data C of the music data M. Therefore, the number of notes played simultaneously in the accompaniment section Bb is generally reduced, thus creating an accompaniment section Bb that is easy for user H to play.
[0116] Here, the chord data C of the music data M represents the chord progression of the music, and the root note or the note on the denominator side of the chord is the fundamental note of the chord. Therefore, by constructing the accompaniment part Bb from the root note or the note on the denominator side of the chord, the chord progression of the music data M can be appropriately maintained.
[0117] Furthermore, the chords in chord data C, compared to the accompaniment originally contained in the music data M (i.e., Figure 9 In the lower section of the score (b), on the F clef side, the frequency of note changes is usually lower. Therefore, by creating the accompaniment section Bb based on the chord data C of the music data M, the frequency of note changes in the accompaniment section Bb can be reduced. Furthermore, the chordal structure becomes only the root note or the note on the denominator side, thus reducing the number of notes played simultaneously. This also allows for the creation of an accompaniment section Bb that is easy for user H to play.
[0118] The above description is based on the described embodiments, but it is easy to deduce that various improvements and modifications can be made.
[0119] In the described embodiment, the outer voice symbol Vg is selected from the notes in the music data M that start at the same time, having the highest pitch. However, it is not limited to this; the outer voice symbol Vg can also be determined from the notes in the music data M that start at the same time, have the highest pitch, and have a duration of at least a predetermined time (e.g., equivalent to a quarter note). Thus, in cases where the duration of the sound is shorter than the predetermined time, and the chords are pronounced simultaneously in a short time, the outer voice symbol Vg can be omitted, and the chords remain in the arranged melody part Mb. Therefore, the arranged melody part Mb can be more appropriately maintained to resemble the melody part Ma of the music data M.
[0120] In the described embodiment, the note that continues from the beginning to the end of the pronunciation of the outer tone note Vg is defined as the inner tone note Vi. However, this is not a limitation; all notes that begin to be pronounced during the pronunciation of the outer tone note Vg may also be defined as the inner tone note Vi. Furthermore, notes that begin to be pronounced during the pronunciation of the outer tone note Vg and stop after the pronunciation of the outer tone note Vg has ceased, and whose pronunciation time is less than a predetermined time (e.g., equivalent to the time of a quarter note), may also be defined as the inner tone note Vi.
[0121] In the described embodiment, during the creation of candidate accompaniment sections BK1 to BK12, candidate accompaniment sections are respectively set such that the pitch range is shifted downwards in units of one semitone. However, this is not a limitation; the pitch range can also be shifted upwards in units of one semitone. Furthermore, the pitch range is not limited to shifting in units of one semitone; it can also be shifted in units of two or more semitones.
[0122] In the described embodiment, the standard deviation S is used to evaluate the state of these pitch differences, which is obtained from the pitch differences between candidate accompaniment parts BK1 to BK12 and the arranged melody part Mb. However, it is not limited to this; the state of these pitch differences can also be evaluated based on the average value, median value, variance, or other indicators of the pitch differences between candidate accompaniment parts BK1 to BK12 and the arranged melody part Mb.
[0123] In the above embodiments Figure 8 In the processing steps S47 to S51, when creating candidate accompaniment parts BK1 to BK12, all candidate accompaniment parts BK1 to BK12 are stored in the candidate accompaniment table 22c. In processing step S55, the candidate accompaniment part with the smallest evaluation value E in the candidate accompaniment table 22c is selected as the accompaniment part Bb. However, this is not limited to this step. Alternatively, upper limits for the standard deviation S, difference value D, and keyboard range W can be preset (e.g., upper limit for standard deviation S: "8", upper limit for difference value D: "8", upper limit for keyboard range W: "6", etc.), and candidate accompaniment parts BK1 to BK12 whose standard deviation S, difference value D, and keyboard range W are all below the upper limits can be stored in the candidate accompaniment table 22c. Therefore, the number of candidate accompaniment parts BK1 to BK12 stored in the candidate accompaniment table 22c can be reduced, thus reducing the storage capacity required for the candidate accompaniment table 22c, or enabling the rapid selection of accompaniment part Bb based on the evaluation value E in the S55 process.
[0124] In the described embodiment, arrangement data A is created based on the arranged melody part Mb and the accompaniment part Bb. However, it is not limited to this; arrangement data A can also be created based on the arranged melody part Mb and the accompaniment part extracted from the music data M, or it can be created based on the melody part Ma of the music data M and the arranged accompaniment part Bb. Furthermore, arrangement data A can be created based solely on the arranged melody part Mb, or solely on the arranged accompaniment part Bb.
[0125] In the described embodiment, the musical data M is composed of performance data P and chord data C. However, it is not limited to this. For example, the chord data C can be omitted from the musical data M, and chords can be identified from the performance data P of the musical data M using well-known techniques, and the chord data C can be constructed based on the identified chords.
[0126] In the above embodiments Figure 7In the processing of S8 in (a), the arrangement data A is set to the form of musical score and displayed. However, the output of the arrangement data A is not limited to this. For example, the arrangement data A can also be played and its musical sound can be output from a speaker not shown, or the arrangement data A can be sent to other PCs through a communication device not shown.
[0127] In the described embodiment, PC1 is exemplified as the computer executing the automatic music arrangement program 21a, but it is not limited to this. The automatic music arrangement program 21a can also be executed by information processing devices such as smartphones and tablet terminals or electronic musical instruments. Furthermore, the automatic music arrangement program 21a can be stored in a read-only memory (ROM) or the like, and the present invention applies to dedicated devices (automatic music arrangement devices) that execute only the automatic music arrangement program 21a.
[0128] The numerical values given in the above implementation are just one example; other numerical values may also be used.
Claims
1. An automatic music composition method, which enables a computer to perform music composition processing, characterized in that, The computer shall perform the following steps: The music acquisition step involves acquiring the music data. The chord information acquisition step involves acquiring chords and the timing of their pronunciation from the music data acquired in the music acquisition step. The note name acquisition step involves acquiring the note name of the root note of each chord obtained in the chord information acquisition step. The range variation step is to shift the position of the root note in adjacent pitch ranges by a semitone in multiple pitch ranges with different defined pitch ranges. The candidate accompaniment production step involves creating a candidate accompaniment part for each pitch range that changes in the range variation step, based on the pitch corresponding to the pitch name obtained in the pitch name acquisition step and the timing of the chord sounding corresponding to the pitch name obtained in the chord information acquisition step. Each pitch range forms one candidate accompaniment part. In the selection step, based on the pitch of the notes contained in the candidate accompaniment parts produced in the candidate accompaniment production step, the arranged accompaniment part is selected from the candidate accompaniment parts; as well as The arrangement data creation steps are based on the accompaniment section selected in the selection step, to create arrangement data. in, The selection step selects the candidate accompaniment part from the candidate accompaniment parts produced in the candidate accompaniment production step, and the candidate accompaniment part with the smaller standard deviation of the pitch difference between the notes contained in the candidate accompaniment part and the notes of the melody part that are pronounced at the same time as the notes, as the accompaniment part after arrangement.
2. An automatic music composition method, which enables a computer to perform music composition processing, characterized in that, The computer shall perform the following steps: The music acquisition step involves acquiring the music data. The chord information acquisition step involves acquiring chords and the timing of their pronunciation from the music data acquired in the music acquisition step. The note name acquisition step involves acquiring the note name of the root note of each chord obtained in the chord information acquisition step. The range variation step is to shift the position of the root note in adjacent pitch ranges by a semitone in multiple pitch ranges with different defined pitch ranges. The candidate accompaniment production step involves creating a candidate accompaniment part for each pitch range that changes in the range variation step, based on the pitch corresponding to the pitch name obtained in the pitch name acquisition step and the timing of the chord sounding corresponding to the pitch name obtained in the chord information acquisition step. Each pitch range forms one candidate accompaniment part. In the selection step, based on the pitch of the notes contained in the candidate accompaniment parts produced in the candidate accompaniment production step, the arranged accompaniment part is selected from the candidate accompaniment parts; as well as The arrangement data creation steps are based on the accompaniment section selected in the selection step, to create arrangement data. in, The selection step selects the candidate accompaniment part from the candidate accompaniment parts produced in the candidate accompaniment production step, and the candidate accompaniment part whose pitch difference is small with the pitch of a specific pitch, as the accompaniment part after arrangement.
3. An automatic music composition method, which enables a computer to perform music composition processing, characterized in that, The computer shall perform the following steps: The music acquisition step involves acquiring the music data. The chord information acquisition step involves acquiring chords and the timing of their pronunciation from the music data acquired in the music acquisition step. The note name acquisition step involves acquiring the note name of the root note of each chord obtained in the chord information acquisition step. The range variation step is to shift the position of the root note in adjacent pitch ranges by a semitone in multiple pitch ranges with different defined pitch ranges. The candidate accompaniment production step involves creating a candidate accompaniment part for each pitch range that changes in the range variation step, based on the pitch corresponding to the pitch name obtained in the pitch name acquisition step and the timing of the chord sounding corresponding to the pitch name obtained in the chord information acquisition step. Each pitch range forms one candidate accompaniment part. In the selection step, based on the pitch of the notes contained in the candidate accompaniment parts produced in the candidate accompaniment production step, the arranged accompaniment part is selected from the candidate accompaniment parts; as well as The arrangement data creation steps are based on the accompaniment section selected in the selection step, to create arrangement data. in, The selection step selects the candidate accompaniment part from the candidate accompaniment parts produced in the candidate accompaniment production step, where the pitch difference between the highest and lowest pitch of the candidate accompaniment part is small, and uses it as the accompaniment part after arrangement.
4. The automatic music composition method according to any one of claims 1 to 3, characterized in that, The range of pitch is one octave.
5. An automatic music composition device, characterized in that, include: The music acquisition component retrieves music data. The chord information acquisition unit acquires chords and the timing of the chords' sounding from the music data acquired by the music acquisition unit; The note name acquisition component acquires the note names of the root notes of each chord obtained by the chord information acquisition component; The range-changing component causes the pitch positions of the root note in adjacent pitch ranges with different defined pitch ranges to be staggered by a semitone. The candidate accompaniment production component, for each pitch range changed by the range changing component, produces a candidate accompaniment part based on the pitch corresponding to the pitch name obtained by the pitch name acquisition component and the timing of the chord obtained by the chord information acquisition component corresponding to the pitch. Each pitch range forms a candidate accompaniment part. The selection component selects the arranged accompaniment part from the candidate accompaniment parts based on the pitch of the notes contained in the candidate accompaniment parts produced by the candidate accompaniment production component. as well as The arrangement data production component creates arrangement data based on the accompaniment section selected by the selection component. in, The selection component selects a candidate accompaniment portion from the candidate accompaniment portions produced in the candidate accompaniment production component, wherein the standard deviation of the pitch difference between the notes contained in the candidate accompaniment portion and the notes of the melody portion that are pronounced at the same time as the notes is small, and uses it as the accompaniment portion after arrangement.
6. An automatic music composition device, characterized in that, include: The music acquisition component retrieves music data. The chord information acquisition unit acquires chords and the timing of the chords' sounding from the music data acquired by the music acquisition unit; The note name acquisition component acquires the note names of the root notes of each chord obtained by the chord information acquisition component; The range-changing component causes the pitch positions of the root note in adjacent pitch ranges with different defined pitch ranges to be staggered by a semitone. The candidate accompaniment production component, for each pitch range changed by the range changing component, produces a candidate accompaniment part based on the pitch corresponding to the pitch name obtained by the pitch name acquisition component and the timing of the chord obtained by the chord information acquisition component corresponding to the pitch. Each pitch range forms a candidate accompaniment part. The selection component selects the arranged accompaniment part from the candidate accompaniment parts based on the pitch of the notes contained in the candidate accompaniment parts produced by the candidate accompaniment production component. as well as The arrangement data production component creates arrangement data based on the accompaniment section selected by the selection component. in, The selection component selects a candidate accompaniment part from the candidate accompaniment parts created in the candidate accompaniment production component, wherein the pitch difference between the notes contained in the candidate accompaniment part and the notes of a specific pitch is small, and uses it as the accompaniment part after arrangement.
7. An automatic music composition device, characterized in that, include: The music acquisition component retrieves music data. The chord information acquisition unit acquires chords and the timing of the chords' sounding from the music data acquired by the music acquisition unit; The note name acquisition component acquires the note names of the root notes of each chord obtained by the chord information acquisition component; The range-changing component causes the pitch positions of the root note in adjacent pitch ranges with different defined pitch ranges to be staggered by a semitone. The candidate accompaniment production component, for each pitch range changed by the range changing component, produces a candidate accompaniment part based on the pitch corresponding to the pitch name obtained by the pitch name acquisition component and the timing of the chord obtained by the chord information acquisition component corresponding to the pitch. Each pitch range forms a candidate accompaniment part. The selection component selects the arranged accompaniment part from the candidate accompaniment parts based on the pitch of the notes contained in the candidate accompaniment parts produced by the candidate accompaniment production component. as well as The arrangement data production component creates arrangement data based on the accompaniment section selected by the selection component. in, The selection component selects the candidate accompaniment portion produced in the candidate accompaniment production component, which has a small pitch difference between the highest and lowest pitch of the candidate accompaniment portion, and uses it as the accompaniment portion after arrangement.
8. A computer program product, characterized in that, include: Computer program, When the computer program is executed by a computer, it implements the automatic music composition method as described in any one of claims 1-4.