WO2020196107A1 - コード処理方法およびコード処理装置 - Google Patents

コード処理方法およびコード処理装置 Download PDF

Info

Publication number
WO2020196107A1
WO2020196107A1 PCT/JP2020/011795 JP2020011795W WO2020196107A1 WO 2020196107 A1 WO2020196107 A1 WO 2020196107A1 JP 2020011795 W JP2020011795 W JP 2020011795W WO 2020196107 A1 WO2020196107 A1 WO 2020196107A1
Authority
WO
WIPO (PCT)
Prior art keywords
code
chord
target
candidate
string
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Ceased
Application number
PCT/JP2020/011795
Other languages
English (en)
French (fr)
Inventor
美咲 後藤
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Yamaha Corp
Original Assignee
Yamaha Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Yamaha Corp filed Critical Yamaha Corp
Priority to CN202410384624.1A priority Critical patent/CN118038837A/zh
Priority to CN202080021083.6A priority patent/CN113767430B/zh
Publication of WO2020196107A1 publication Critical patent/WO2020196107A1/ja
Priority to US17/407,524 priority patent/US12525212B2/en
Anticipated expiration legal-status Critical
Ceased legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10HELECTROPHONIC MUSICAL INSTRUMENTS; INSTRUMENTS IN WHICH THE TONES ARE GENERATED BY ELECTROMECHANICAL MEANS OR ELECTRONIC GENERATORS, OR IN WHICH THE TONES ARE SYNTHESISED FROM A DATA STORE
    • G10H1/00Details of electrophonic musical instruments
    • G10H1/0008Associated control or indicating means
    • G10H1/0025Automatic or semi-automatic music composition, e.g. producing random music, applying rules from music theory or modifying a musical piece
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10GREPRESENTATION OF MUSIC; RECORDING MUSIC IN NOTATION FORM; ACCESSORIES FOR MUSIC OR MUSICAL INSTRUMENTS NOT OTHERWISE PROVIDED FOR, e.g. SUPPORTS
    • G10G1/00Means for the representation of music
    • G10G1/02Chord or note indicators, fixed or adjustable, for keyboard of fingerboards
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10HELECTROPHONIC MUSICAL INSTRUMENTS; INSTRUMENTS IN WHICH THE TONES ARE GENERATED BY ELECTROMECHANICAL MEANS OR ELECTRONIC GENERATORS, OR IN WHICH THE TONES ARE SYNTHESISED FROM A DATA STORE
    • G10H1/00Details of electrophonic musical instruments
    • G10H1/18Selecting circuits
    • G10H1/20Selecting circuits for transposition
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10HELECTROPHONIC MUSICAL INSTRUMENTS; INSTRUMENTS IN WHICH THE TONES ARE GENERATED BY ELECTROMECHANICAL MEANS OR ELECTRONIC GENERATORS, OR IN WHICH THE TONES ARE SYNTHESISED FROM A DATA STORE
    • G10H1/00Details of electrophonic musical instruments
    • G10H1/36Accompaniment arrangements
    • G10H1/38Chord
    • G10H1/383Chord detection and/or recognition, e.g. for correction, or automatic bass generation
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10HELECTROPHONIC MUSICAL INSTRUMENTS; INSTRUMENTS IN WHICH THE TONES ARE GENERATED BY ELECTROMECHANICAL MEANS OR ELECTRONIC GENERATORS, OR IN WHICH THE TONES ARE SYNTHESISED FROM A DATA STORE
    • G10H2210/00Aspects or methods of musical processing having intrinsic musical character, i.e. involving musical theory or musical parameters or relying on musical knowledge, as applied in electrophonic musical tools or instruments
    • G10H2210/571Chords; Chord sequences
    • G10H2210/576Chord progression
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10HELECTROPHONIC MUSICAL INSTRUMENTS; INSTRUMENTS IN WHICH THE TONES ARE GENERATED BY ELECTROMECHANICAL MEANS OR ELECTRONIC GENERATORS, OR IN WHICH THE TONES ARE SYNTHESISED FROM A DATA STORE
    • G10H2250/00Aspects of algorithms or signal processing methods without intrinsic musical character, yet specifically adapted for or used in electrophonic musical processing
    • G10H2250/131Mathematical functions for musical analysis, processing, synthesis or composition
    • G10H2250/135Autocorrelation

Definitions

  • This disclosure relates to a technique for presenting chords.
  • Patent Document 1 discloses a technique for converting a specific chord in a time series of chords in a musical piece into another chord.
  • a code conversion table in which a specific code to be converted and a code to be replaced with the code are associated with each other is used.
  • the chord processing method determines whether or not the first chord composed of a plurality of sounds corresponds to the target chord, and the first chord is used.
  • the first code is converted into the second code related to the first code, and when the predetermined condition regarding the code is not satisfied. , The first code is not converted.
  • the code processing device includes an analysis unit that determines whether or not a first chord composed of a plurality of sounds corresponds to a target code, and the first code corresponds to the target code. In the case, when the predetermined condition regarding the code is satisfied, the first code is converted into the second code related to the first code, and when the predetermined condition regarding the code is not satisfied, the first code is used. It is provided with a processing unit that does not convert.
  • FIG. 1 is a block diagram illustrating the configuration of the code processing device 100 according to the first embodiment of the present disclosure.
  • the code processing device 100 is a computer system that provides a user with a chord of a musical piece.
  • a chord is a chord composed of a plurality of notes.
  • the code processing device 100 includes a display device 11 (an example of a presentation device), an operation device 12, a control device 13, and a storage device 14.
  • the code processing device 100 is, for example, a portable information terminal such as a mobile phone or a smartphone, or a portable or stationary information terminal such as a personal computer.
  • the display device 11 (for example, a liquid crystal display panel) displays various images under the control of the control device 13. Specifically, the display device 11 displays the chord of the music.
  • the operation device 12 is an input device that receives instructions from the user.
  • the operation device 12 is, for example, a touch panel that detects contact with a plurality of operators that can be operated by the user or the display surface of the display device 11.
  • the control device 13 is, for example, a single or a plurality of processors that control each element of the code processing device 100.
  • the control device 13 is one or more types such as a CPU (Central Processing Unit), a GPU (Graphics Processing Unit), a DSP (Digital Signal Processor), an FPGA (Field Programmable Gate Array), or an ASIC (Application Specific Integrated Circuit). It consists of a processor.
  • FIG. 2 is a block diagram illustrating a functional configuration of the control device 13.
  • the control device 13 executes a plurality of tasks according to a program stored in the storage device 14, and thereby provides a plurality of functions (analysis unit 31, processing unit 32, calculation unit 33, and display control) for providing the code to the user. Part 34) is realized.
  • the function of the control device 13 may be realized by a set (that is, a system) of a plurality of devices, or a part or all of the functions of the control device 13 may be realized by a dedicated electronic circuit.
  • the storage device 14 in FIG. 1 is a single memory or a plurality of memories composed of a known recording medium such as a magnetic recording medium or a semiconductor recording medium.
  • the storage device 14 stores a program executed by the control device 13 and various data used by the control device 13.
  • the storage device 14 may be configured by combining a plurality of types of recording media.
  • the storage device 14 may be a portable recording medium that can be attached to and detached from the code processing device 100, or an external recording medium (for example, online storage) that the code processing device 100 can communicate with via a communication network.
  • FIG. 3 is a schematic diagram of music data Q.
  • the music data Q includes the chord sequence Ya of the music and the key information H of the music.
  • the chord sequence Ya is data in which a plurality of first chords X1 in a musical piece are arranged in time series.
  • the key information H is information representing the key of the music.
  • Each key T in a musical composition in which one key is continuous (hereinafter referred to as “continuous section”) is associated with key information H representing the key. Since the key changes in the music, the music data Q includes a plurality of key information H corresponding to each of the plurality of continuous intervals T (T1, T2, ).
  • the music data Q includes a key information H representing a key “C major” in the continuous section T1 and a key information H representing a key “F major” in the continuous section T2.
  • the number of tones is not limited to 24.
  • the music data Q is stored in the storage device 14 in advance.
  • the chord processing device 100 may estimate the music data Q from, for example, an acoustic signal representing a performance sound or a singing sound of a music.
  • the code string Ya may include the first code X1 that the user does not want.
  • the chord string Ya may include a first chord X1 that is difficult for the user to play due to lack of playing technique or the like.
  • target code a specific code (hereinafter referred to as "target code") among a plurality of first codes X1 constituting the code string Ya is converted into a second code X2 related to the first code X1. To do.
  • the target code is a code that the user wants to convert to the second code X2.
  • the target chord is a chord that is difficult to play, and is specified in advance by the user.
  • the target chord is a chord in which a user presses a plurality of strings at the same time with one finger when playing a stringed instrument, and is, for example, a barre chord played by an operation including a valley (seha).
  • a barre chord for example, chord "F" or "F7" in which five or six strings are pressed with one finger is a target chord to be converted into a second chord X2. is there.
  • the storage device 14 stores designated data that specifies the target code.
  • FIG. 4 is a schematic diagram of the designated data.
  • the designated data includes the target code designated by the user. Multiple target codes can be specified by the user. The user specifies the target code by operating the operation device 12. Of the multiple barre chords, the number of barre chords specified as the target code is arbitrary.
  • the second chord X2 is typically a chord that is musically similar to the first chord X1.
  • the second chord X2 is, for example, a chord that is easier to play than the target chord.
  • the second chord X2 is a chord other than the target chord (that is, a chord that can be played without being operated by the valley).
  • the storage device 14 stores the conversion data that specifies the second code X2.
  • FIG. 5 is a schematic diagram of the conversion data.
  • the converted data includes a plurality of second codes X2. That is, the conversion data is the data in which the second code X2, which is a candidate for conversion for the first code X1, is registered.
  • the analysis unit 31 of FIG. 2 determines whether or not the first code X1 corresponds to the target code for each of the plurality of first codes X1 constituting the code string Ya. Specifically, the analysis unit 31 determines that the first code X1 corresponds to the target code when there is a target code that matches the first code X1 among the plurality of target codes registered in the designated data. If there is no target code that matches the specified data, it is determined that the first code X1 does not correspond to the target code. In FIG. 3, the shaded block is the first code X1 determined to correspond to the target code.
  • the first code X1 "F” and the first code X1 "Cm / Eb" are determined to correspond to the target code is illustrated.
  • the first code X1 determined to correspond to the target code is referred to as "selection code Xk”.
  • inverse proportion there is a problem that the musical impression is not maintained between the chord string Ya before the selection code Xk is converted to the second chord X2 and the chord string Za after the conversion.
  • the selection code Xk which is important for maintaining the tonality of the music
  • the musical impression is not maintained.
  • An important chord for maintaining tonality is, for example, a chord whose root note is a note having a predetermined pitch relationship with the tonic of the key.
  • a tonic chord whose root note is a note that has a one-degree relationship with the key tonic (that is, a sound that matches the key tone), or a tone that has a five-degree relationship to the key tonic.
  • Dominant chords are important chords for maintaining tonality.
  • the processing unit 32 of FIG. 2 converts the selection code Xk to the second code X2 when the predetermined condition regarding the code is satisfied, and converts the selection code Xk when the condition is not satisfied. do not do.
  • the predetermined condition includes a first condition and a second condition.
  • the first condition is that the selection code Xk is not an important code for maintaining tonality. Specifically, the first condition is that the selection code Xk is not a key tonic code or dominant code.
  • the processing unit 32 specifies, for example, the tonic code and dominant code of the key represented by the key information H from the key information H of the continuous section T including the selection code Xk. Then, the processing unit 32 determines that the first condition is not satisfied when the selection code Xk matches the tonic code or the dominant code, and when the selection code Xk does not match the tonic code or the dominant code. Is determined to satisfy the first condition.
  • the tonic code and dominant code in each of the plurality of keys may be stored in the storage device 14 in advance.
  • the second condition is a condition according to the degree of similarity between the selection code Xk and the second code X2.
  • the second condition is the second code X2 having the maximum similarity with the selection code Xk (that is, most similar to the selection code Xk) among the plurality of second codes X2 in the conversion data of FIG.
  • the similarity of the second code X2 exceeds the threshold value.
  • the processing unit 32 selects the second code X2 having the maximum similarity among the plurality of second codes X2, and determines whether or not the similarity of the second code X2 exceeds the threshold value.
  • the processing unit 32 determines that the second condition is not satisfied for the second code X2 that has the maximum similarity with the selection code Xk when the similarity is lower than the threshold value, and determines that the second code X2 has the same similarity. If the degree exceeds the threshold value, it is determined that the second condition is satisfied.
  • the degree of similarity between the second code X2 and the selection code Xk is calculated by the calculation unit 33 of FIG.
  • the similarity is an index showing the distance or correlation between the vector representing the second code X2 and the vector representing the selection code Xk.
  • the degree of similarity increases as the selection code Xk and the second code X2 are similar to each other.
  • the vector representing the second chord X2 or the selection chord Xk is, for example, an extension of TPS (Tonal Pitch Space) for the purpose of dealing with chords including non-tonal constituent notes-Jazz music.
  • TPS Horizontal Pitch Space
  • the processing unit 32 converts the selection code Xk into the second code X2 when it is determined that both the first condition and the second condition are satisfied. Specifically, the processing unit 32 converts the selection code Xk into a second code X2 having the maximum similarity with the selection code Xk and the similarity exceeding the threshold value. If at least one of the first condition and the second condition is not satisfied, the selection code Xk is not converted into the second code X2, and the selection code Xk (that is, the first code X1) is maintained. When the first condition and the second condition are satisfied for each selection data of the code string Ya, the processing unit 32 converts the selection data into the second code X2 to generate the code string Za of FIG. .. In FIG. 3, the second code X2 is illustrated as a block of double lines.
  • the code string Za is a time series of codes in which the first code X1 and the second code X2 coexist.
  • FIG. 3 shows a code string Za in which the selection code Xk “F” in the continuous section T1 is converted into the second code X2 “FM7” among the plurality of selection codes Xk in the code string Ya.
  • the selection code Xk “F” of the continuous section T1 in the code string Ya is not the tonic code or dominant code of the key "C major” of the continuous section T1, and the second code X2 "F” that is most similar to the selection code Xk. Since the degree of similarity with "FM7" exceeds the threshold value, it is converted to the second code X2 "FM7".
  • the conversion is performed. Not done.
  • the selection code Xk "Cm / Eb" of the continuous section T2 in the code string Ya does not match the tonic code or dominant code of the key "F major” of the continuous section T2, but is the second code most similar to the selection code Xk. Since the similarity with X2 is below the threshold value (that is, because the second condition is not satisfied), it is not converted.
  • conversion process the process in which the processing unit 32 converts the selection code Xk into the second code X2 is referred to as “conversion process”.
  • the display control unit 34 causes the display device 11 to display the code string Za. That is, when the first code X1 is converted to the second code X2, the display control unit 34 causes the display device 11 to display the second code X2 instead of the first code X1, and the first code X1 converts the first code X1. If not, the first code X1 is displayed on the display device 11.
  • the display device 11 displays the code string Za under the control of the display control unit 34. That is, the code string Za is presented to the user.
  • the display mode of the code string Za is arbitrary.
  • the display control unit 34 may display both the code string Ya and the code string Za on the display device 11.
  • FIG. 6 is a flowchart of a process in which the control device 13 of the code processing device 100 identifies the code string Za from the code string Ya.
  • the process of FIG. 6 is started, for example, triggered by an instruction from the user.
  • the analysis unit 31 sequentially selects one first code X1 from the plurality of first codes X1 in the code string Ya (Sa1). For example, the first code X1 is selected in order from the beginning to the end of the code string Ya.
  • the analysis unit 31 determines whether or not the first code X1 selected in step Sa1 corresponds to the target code (Sa2).
  • the processing unit 32 determines whether or not the first code X1 (that is, the selection code Xk) satisfies the first condition (Sa3). Specifically, it is determined whether or not the selection code Xk is a tonic code or a dominant code.
  • the calculation unit 33 calculates the similarity between the second code X2 and the selection code Xk for each of the plurality of second codes X2 (Sa4).
  • the processing unit 32 selects the second code X2 having the maximum similarity among the plurality of second codes X2, and determines whether or not the second code X2 satisfies the second condition (Sa5). Specifically, it is determined whether or not the similarity of the second code X2 exceeds the threshold value.
  • the processing unit 32 converts the selection code Xk into the second code X2 having the maximum similarity (Sa6).
  • the analysis unit 31 determines whether or not the processes of steps Sa1 to Sa6 have been executed for all the first codes X1 in the code string Ya (Sa7).
  • the analysis unit 31 executes the process of step Sa7 without executing the process of steps Sa3-Sa6. If the first condition is not satisfied (Sa3: NO) and the second condition is not satisfied (Sa5: NO), the analysis unit 31 processes the step Sa7 without converting the selection code Xk. To execute.
  • the selection code Xk is an important chord for maintaining the tonality and the case where there is no second code X2 that is musically similar to the selection code Xk among the plurality of second codes X2.
  • the selection code Xk is maintained without being converted to the second code X2.
  • the display control unit 34 causes the display device 11 to display the code string Za (Sa8).
  • the process returns to step Sa1.
  • the code arrangement of the code string Za is the same as that of the code string Ya. That is, the number of selection codes Xk in the code string Za is the same as that in the code string Ya.
  • step Sa5 may be executed before the process of step Sa3. That is, when the second condition is satisfied, it is determined whether or not the selection code Xk satisfies the first condition. Further, in step Sa5, if there is no second code X2 whose similarity exceeds the threshold value among the plurality of second code X2s, it is determined that the second condition is not satisfied, and the second code X2 having the similarity degree exceeds the threshold value. If the code X2 exists, it may be determined that the second condition is satisfied. In the above configuration, when the similarity of the plurality of second codes X2 exceeds the threshold value, in step Sa6, the selection code Xk is assigned to the second code X2 having the maximum similarity among the plurality of second codes X2. Is converted.
  • the first code X1 when the first code X1 corresponds to the target code, the first code X1 is converted to the second code X2 when a predetermined condition is satisfied. When the condition is not satisfied, the first code X1 is maintained without being converted. Therefore, it is possible to convert chords while maintaining a musical impression as compared to inverse proportion.
  • the first condition since the first condition is included in the predetermined condition, the first chord X1 whose root sound is a sound having a predetermined pitch relationship with the tonic of the key is not converted. That is, the first code X1 which is important for maintaining the tonality is maintained. Therefore, a musical impression can be maintained between the chord sequence Ya and the chord sequence Za.
  • the second condition since the second condition is included in the predetermined condition, the first code X1 is not converted when the similarity of the second code X2 is lower than the threshold value. That is, when the second code X2 is not musically similar to the first code X1, the first code X1 is maintained without being converted. Therefore, it is possible to generate a chord string Za that maintains a musical impression with the chord string Ya.
  • the first chord X1 corresponding to the chord is the second chord. It can be converted to X2. Further, in the first embodiment, since the second chord X2 is a chord other than the target chord, for example, when the user wants to avoid playing the target chord, the first chord is added to the second chord X2 which does not correspond to the target chord. X1 can be converted.
  • the second code X2 is presented to the user instead of the first code X1, and the first code X1 is not converted. Is presented to the user with the first code X1. Therefore, it is possible to present to the user the chord sequence Za in which the musical impression is maintained with the chord sequence Ya.
  • a code string (hereinafter referred to as "transposition code string”) Yb obtained by transposing the code string Ya is provided to the user.
  • FIG. 7 is a block diagram showing a functional configuration of the control device 13 according to the second embodiment.
  • the control device 13 according to the second embodiment realizes a plurality of functions (analysis unit 31, processing unit 32, selection unit 35, and display control unit 34) for presenting the transposition code sequence Yb to the user.
  • the processing unit 32 identifies a transposition code string Yb whose key is different from that of the code string Ya by a specific process including transposition of the code string Ya (hereinafter referred to as “transposition process”).
  • transposition process by transposing the code string Ya (an example of the reference code string) with an arbitrary transposition amount ⁇ , the transposition code string Yb in which a plurality of time series of the first code X1 different from the code string Ya are arranged. It is a process to specify. Specifically, the transposition process specifies a plurality of transposition code strings Yb in which the code sequence Ya is transposed with different transposition amounts ⁇ .
  • FIG. 8 is a schematic diagram showing a plurality of transposition code strings Yb specified by the transposition process.
  • the transposition amount ⁇ is changed in semitone units from the chord string Ya with the chord string Ya as a reference (0).
  • six transposition chord strings Yb transposed with a transposition amount ⁇ of 1 semitone (+1), 2 semitones (+2), ... 6 semitones (+6) with respect to the chord string Ya Five transposed chord strings Yb, which are transposed by the transposition amount ⁇ of 1 semitone (-1), 2 semitones (-2), ... 5 semitones (-5), are generated on the bass side with respect to the chord string Ya.
  • each of the code string Ya and each transposition code string Yb is referred to as a "candidate code string Ys". That is, 12 candidate code strings Ys are composed of one code string Ya and 11 transposition code strings Yb.
  • the analysis unit 31 of FIG. 7 is an index corresponding to the number of the first code X1 corresponding to the target code among the first code X1 included in the candidate code string Ys (hereinafter, "" Evaluation index M ”) is calculated.
  • the target code is a barre chord as in the first embodiment.
  • the evaluation index M is, for example, the number of first codes X1 corresponding to the target code among the plurality of first codes X1 in the candidate code string Ys. That is, the evaluation index M is smaller as the number of target codes in the candidate code string Ys is smaller. In general, the smaller the number of barre chords in a song, the easier it is to play.
  • the evaluation index M can be rephrased as an index indicating the difficulty level of the performance of the candidate chord sequence Ys.
  • the analysis unit 31 determines in order whether or not the plurality of first codes X1 of the candidate code string Ys correspond to the target code, and the number of the first codes X1 determined to correspond to the target code. Is calculated as the evaluation index M. In FIG. 8, the shaded block is the first code X1 corresponding to the target code.
  • the selection unit 35 in FIG. 7 selects one or more candidate code strings Ys according to the evaluation index M from the plurality of candidate code strings Ys. Specifically, the selection unit 35 selects the candidate code string Ys (that is, the candidate code string Ys having the smallest evaluation index M) in which the number of target codes indicated by the evaluation index M is the smallest among the plurality of candidate code strings Ys. select. That is, the candidate chord string Ys having the lowest playing difficulty is selected from the plurality of candidate chord strings Ys. When the evaluation index M of the code string Ya is the smallest among the plurality of candidate code strings Ys, the code string Ya is selected.
  • the display control unit 34 of FIG. 7 causes the display device 11 to display the candidate code sequence Ys selected by the selection unit 35. Therefore, it is possible to provide the user with a candidate chord string Ys that is easy to play among the plurality of candidate chord strings Ys.
  • the display control unit 34 may provide the user with the transposition amount ⁇ of the candidate code string Ys together with the candidate code string Ys. Further, the display control unit 34 may display all of the plurality of candidate code strings Ys on the display device 11. In the above configuration, the user can play any candidate chord sequence Ys among the plurality of candidate chord sequences Ys displayed by the display device 11.
  • FIG. 9 is a flowchart of processing in which the control device 13 of the code processing device 100 provides the candidate code string Ys to the user.
  • the process of FIG. 9 is started, for example, triggered by an instruction from the user.
  • the processing unit 32 identifies a plurality of transposition code strings Yb from the code string Ya by the transposition process (Sb1).
  • the analysis unit 31 calculates the evaluation index M for each of the plurality of candidate code strings Ys including the code string Ya and the plurality of transposition code strings Yb (Sb2).
  • the selection unit 35 selects the candidate code having the smallest evaluation index M among the plurality of candidate code strings Ys (Sb3).
  • the display control unit 34 causes the display device 11 to display the candidate code sequence Ys selected by the selection unit 35 (Sb4).
  • the candidate code string Ys for each of the plurality of candidate code strings Ys, one or more candidate codes are selected from the plurality of candidate code strings Ys according to the evaluation index M according to the number of target codes included in the candidate code string Ys. Column Ys is selected. Therefore, the candidate code string Ys to be converted into the code string Ya can be provided to the user.
  • the candidate code string Ys is selected from a plurality of candidate code strings Ys including a plurality of transposition code strings Yb in which the code string Ya is transposed with different transposition amounts ⁇ , the candidate codes of various keys are selected. Column Ys can be provided to the user.
  • the candidate code string Ys having the smallest number of target codes indicated by the evaluation index M is selected from the plurality of candidate code strings Ys. Therefore, for example, when the user does not want the target code.
  • a candidate code string Ys with a small number of target codes can be presented.
  • Candidate code is selected. Therefore, for example, when the user does not want a chord for pressing the plurality of strings, a candidate chord string Ys with a small number of the chords included in the candidate chord string Ys can be presented.
  • FIG. 10 is a block diagram showing a functional configuration of the code processing device 100 according to the third embodiment.
  • the code processing device 100 according to the third embodiment executes the conversion process in the first embodiment and the transposition process in the second embodiment. Specifically, the code processing device 100 converts the first code X1 corresponding to the target code among the plurality of first codes X1 in each candidate code string Ys illustrated in the second embodiment into the second code X2. .. Similar to the first embodiment, the first code X1 is converted to the second code X2 when the predetermined conditions (the first condition and the second condition) are satisfied.
  • the control device 13 functions as an analysis unit 31, a processing unit 32, a calculation unit 33, a selection unit 35, and a display control unit 34.
  • the processing unit 32 executes a specific process including a transposition process and a conversion process.
  • the processing unit 32 identifies a plurality of transposition code strings Yb by executing the transposition process on the code string Ya as in the second embodiment.
  • FIG. 11 shows a plurality of transposition code strings Yb identified by the transposition process. Similar to the second embodiment, 12 candidate code strings Ys are composed of one code string Ya and 11 transposition code strings Yb.
  • the analysis unit 31 determines whether or not each first code X1 constituting the candidate code string Ys corresponds to the target code, as in the first embodiment. That is, the selection code Xk (first code X1 determined to be the target code) is specified for each candidate code string Ys by the processing by the analysis unit 31. In FIG. 11, the selection code Xk is shown in shaded blocks.
  • the processing unit 32 identifies the candidate code string Zs by converting the selection code Xk in each candidate code string Ys into the second code X2 by the same conversion process as in the first embodiment.
  • the candidate code string Zs after the conversion process is shown below the candidate code string Ys before the conversion process.
  • the processing unit 32 converts the selection code Xk into the second code X2 when the predetermined conditions (first condition and the second condition) are satisfied, and when the conditions are not satisfied, the selection code Xk Do not convert. That is, the candidate code string Zs is a code string in which a time series of a plurality of codes (first code X1 and second code X2) different from the candidate code string Ys is arranged.
  • the first condition is that the selection code Xk is not a key tonic code or a dominant code, as in the first embodiment.
  • the second condition is that, as in the first embodiment, the similarity of the second code X2 having the maximum similarity with the selection code Xk among the plurality of second codes X2 in the converted data exceeds the threshold value. Is.
  • the similarity is calculated by the calculation unit 33 as in the first embodiment.
  • Each candidate code string Zs after the conversion process is a code string in which the first code X1 and the second code X2 coexist.
  • the second code X2 is illustrated as a block of double lines.
  • the number of selection codes Xk in the candidate code string Zs is less than the number of selection codes Xk in the candidate code string Ys.
  • the code arrangement does not change between the candidate code string Ys and the candidate code string Zs. That is, the number of selection codes Xk does not change before and after the conversion process.
  • the analysis unit 31 of FIG. 10 calculates the evaluation index M for each of the plurality of candidate code strings Zs after the conversion process, as in the second embodiment. Specifically, the analysis unit 31 calculates the number of selection codes Xk included in the candidate code string Zs as the evaluation index M for each candidate code string Zs. Similar to the second embodiment, the selection unit 35 selects the candidate code sequence Zs having the smallest number of target codes indicated by the evaluation index M among the plurality of candidate code sequences Zs. The display control unit 34 causes the display device 11 to display the candidate code sequence Zs selected by the selection unit 35.
  • FIG. 12 is a flowchart of a process in which the control device 13 of the code processing device 100 presents the candidate code sequence Zs to the user.
  • the process of FIG. 12 is started, for example, triggered by an instruction from the user.
  • the processing unit 32 identifies a plurality of transposition code strings Yb from the code string Ya by the transposition process (Sc1).
  • the processing unit 32 identifies the candidate code string Zs by executing conversion processing for each of the candidate code strings Ys including the code string Ya and the plurality of transposition code strings Yb (Sc2). That is, the specific process including step Sc1 and step Sc2 is executed.
  • the analysis unit 31 calculates the evaluation index M for each of the plurality of candidate code sequences Zs (Sc3).
  • the selection unit 35 selects the candidate code string Zs having the smallest number of target codes indicated by the evaluation index M among the plurality of candidate code strings Zs (Sc4).
  • the display control unit 34 causes the display device 11 to display the candidate code sequence Zs selected by the selection unit 35 (Sc5).
  • the evaluation index M is calculated for each candidate code string Zs after the conversion process is executed, and candidates are selected from the plurality of candidate code strings Zs according to the evaluation index M.
  • the code sequence Zs is selected. Therefore, it is possible to provide the user with the candidate code sequence Zs in which the number of selection codes Xk is reduced as compared with the second embodiment in which the candidate code sequence Ys before the conversion process is presented to the user. Further, since the conversion process is executed when a predetermined condition is satisfied, it is possible to provide the user with the selection code Xk in which the musical impression is maintained before and after the conversion process.
  • the selection code Xk may be converted to the second code X2 regardless of the success or failure of the predetermined conditions. That is, the selection code Xk is converted to the second code X2 even if the predetermined condition is not satisfied. In the above configuration, all selection codes Xk are converted to the second code X2.
  • the predetermined condition includes both the first condition and the second condition
  • the predetermined condition is not limited to the above examples.
  • a configuration in which a predetermined condition is either one of the first condition and the second condition, or a configuration in which the predetermined condition includes a third condition different from the first condition and the second condition is also adopted.
  • the third condition is that, for example, the selection code Xk is not a code located in a specific section (for example, chorus) in the music.
  • the predetermined condition may include only the third condition. The above modification is also applied to the third embodiment.
  • the target chord is not limited to a chord in which a user presses a plurality of strings at the same time with one finger when playing a stringed instrument.
  • the chord that the user wants to avoid playing is arbitrarily specified by the user.
  • a chord that is not good at playing is specified as a target chord.
  • a user who has difficulty in playing as the number of constituent notes constituting a chord increases may specify a target chord according to the number of constituent notes.
  • a chord in which the number of constituent sounds exceeds the threshold value is designated as the target chord
  • a chord in which the number of constituent sounds is less than the threshold value is designated as the second chord X2.
  • the target code does not necessarily have to be selected by the user.
  • the barre chord may be designated as the target code regardless of the designation by the user.
  • the second code X2 is not limited to a code other than the target code.
  • the code specified by the user may be the second code X2.
  • a chord that is easy for the user to play, or a chord that the user wants to play is designated as the second chord X2.
  • the above modification is also applied to the third embodiment.
  • transposition code strings Yb are specified by the transposition process, but the number of transposition code strings Yb specified by the specific process is arbitrary. That is, a configuration in which one transposition code string Yb is specified by the transposition process is also adopted. Further, although a plurality of transposition code strings Yb are specified by differentizing the transposition amount ⁇ for each semitone, the transposition amount ⁇ in the transposition processing is not limited to the above examples. For example, the transposition code string Yb may be specified by making the transposition amount ⁇ different for each whole note. The above modification is also applied to the third embodiment.
  • the selection unit 35 selects all the candidate code strings Ys that minimize the evaluation index M. May be good. Further, the selection unit 35 may select any one candidate code string Ys (for example, the candidate code string Ys having the smallest transposition amount ⁇ ) among the plurality of candidate code strings Ys that minimize the evaluation index M. Good.
  • the above modification is also applied to the third embodiment.
  • the number of the first code X1 corresponding to the target code in the candidate code string Ys is illustrated as the evaluation index M, but the evaluation index M is not limited to the above examples.
  • a weighted sum obtained by weighting the number of each selection code Xk with a weight according to the difficulty of playing each selection code Xk may be calculated as the evaluation index M.
  • the above modification is also applied to the third embodiment.
  • the candidate code string Ys having the smallest evaluation index M is selected, but the method of selecting the candidate code string Ys is not limited to the above examples.
  • the selection unit 35 may select all the candidate code strings Ys whose evaluation index M is smaller than the code string Ya among the plurality of candidate code strings Ys. The above modification is also applied to the third embodiment.
  • the mounting position of the capo tasto with respect to the stringed instrument may be presented according to the transposition amount ⁇ of the candidate chord sequence Ys selected by the selection unit 35.
  • the above modification is also applied to the third embodiment.
  • the code string is presented to the user by the display by the display device 11, but the method of presenting the code string to the user is not limited to the above examples.
  • the chord sequence may be presented to the user by sounding sound from a sound emitting device (for example, a speaker). Both the display device 11 and the sound emitting device are comprehensively represented as presentation devices.
  • the functions of the code processing device 100 illustrated above are realized by the cooperation of one or more processors constituting the control device 13 and the program stored in the storage device 14.
  • the program according to the present disclosure may be provided and installed on a computer in a form stored in a computer-readable recording medium.
  • the recording medium is, for example, a non-transitory recording medium, and an optical recording medium (optical disc) such as a CD-ROM is a good example, but a known arbitrary such as a semiconductor recording medium or a magnetic recording medium. Recording media in the format of are also included.
  • the non-transient recording medium includes any recording medium except for a transient propagation signal (transitory, propagating signal), and a volatile recording medium is not excluded. Further, in the configuration in which the distribution device distributes the program via the communication network, the storage device that stores the program in the distribution device corresponds to the above-mentioned non-transient recording medium.
  • the chord processing method determines whether or not the first chord composed of a plurality of sounds corresponds to the target code, and the first code corresponds to the target code.
  • the first code is converted into the second code related to the first code, and when the predetermined condition regarding the code is not satisfied, the first code is used. Do not convert.
  • the first code in the case where the first code corresponds to the target code, when the predetermined condition is satisfied, the first code is converted into the second code related to the first code, and the predetermined condition is satisfied.
  • the first code is kept unconverted. Therefore, regardless of the predetermined conditions, it is possible to convert the chords while maintaining the musical impression as compared with the configuration in which all the first chords are converted into the second chords.
  • the predetermined condition relating to the chord is that the first chord determined to correspond to the target chord has a sound having a predetermined pitch relationship with the tonic of the key as the root note. Includes not code to do.
  • the first chord that is, the first chord, which is important for maintaining tonality
  • whose root note is a sound having a predetermined pitch relationship with the tonic of the key is maintained without being converted. Therefore, the musical impression can be maintained.
  • the predetermined condition regarding the code includes that the first code determined to correspond to the target code is not a dominant code or a tonic code.
  • a predetermined condition relating to the code sets a threshold value for the second code having the maximum similarity with the first code among a plurality of codes. Including exceeding. If a chord that is not musically similar to the first chord is converted into the first chord as the second chord, the musical impression may be impaired.
  • the first code is converted to the second code when the similarity exceeds the threshold value. .. That is, when the similarity of the second chord is below the threshold value (that is, when it is estimated that the second chord is not musically similar to the first chord), the first chord is maintained without being converted. Therefore, the musical impression can be maintained.
  • the target chord is a chord in which a user presses a plurality of strings simultaneously with one finger when playing a stringed instrument.
  • the chord that simultaneously presses a plurality of strings with one finger is the first chord, the first chord can be converted into the second chord.
  • the target code includes one or more codes
  • the second code is a code other than the target code.
  • the first chord can be converted into a second chord that does not correspond to the target chord.
  • any one of aspects A1 to A5 (Aspect A6), when the first code is converted into the second code, the presenting device is made to present the second code in place of the first code. When the first code is not converted, the presenting device is made to present the first code.
  • the second code is presented to the user instead of the first code, and when the first code is not converted, the first code is concerned. The code is presented to the user. Therefore, it is possible to present the code to the user while maintaining the acoustic impression.
  • a plurality of codes different from the reference code string may be generated by a specific process including transposition of a reference code sequence in which a plurality of codes are arranged in time series.
  • the transposition code string arranged in the series is specified, and for each of the plurality of candidate code strings including the reference code string and the translocation code string, an evaluation index corresponding to the number of target codes included in the candidate code string is set.
  • the calculation is performed, and one or more candidate code strings corresponding to the evaluation index are selected from the plurality of candidate code strings.
  • the evaluation index may be represented by the number of the target codes. Further, the evaluation index may be calculated by weighting each target code.
  • a plurality of transposition code strings obtained by transposing the reference code strings with different transposition amounts are specified, and the plurality of candidate code strings include the plurality of transposition codes.
  • the candidate code string is selected from a plurality of candidate code strings including a plurality of transposition code strings in which the reference code strings are transposed with different transposition amounts, various key candidate code strings are provided to the user. can do.
  • the candidate code string in which the number of the target codes indicated by the evaluation index is the smallest is selected from the plurality of candidate code strings.
  • the candidate code string having the smallest number of target codes indicated by the evaluation index is selected from the plurality of candidate code strings. Therefore, for example, when the user does not want the target code, a candidate code string having a small number of the target codes can be presented.
  • the target chord is a chord in which a user presses a plurality of strings simultaneously with one finger when playing a stringed instrument.
  • a candidate chord is selected according to an evaluation index relating to a chord that simultaneously presses a plurality of strings with one finger. Therefore, for example, when the user does not want a chord for pressing the plurality of strings at the same time, a candidate chord sequence in which the number of the chords included in the candidate chord sequence is small can be presented.
  • aspects B1 to B4 when the specific process satisfies a predetermined condition regarding the code, the code corresponding to the target code among the plurality of codes in each candidate code string is satisfied. Is converted into another code related to the code, and when the predetermined condition relating to the code is not satisfied, the process of not converting the target code is included.
  • the predetermined condition when the predetermined condition is satisfied for each candidate code string, the code corresponding to the target code among the plurality of codes in the candidate code string is converted into another code.
  • the presenting device is made to present the selected one or more candidate code sequences.
  • one or more selected candidate code strings are presented to the user by the presenting device.
  • One aspect of the present disclosure is also realized as a code processing device that executes the code processing methods of each aspect illustrated above, or as a program that causes a computer to execute the code processing methods of each aspect illustrated above.

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Acoustics & Sound (AREA)
  • Multimedia (AREA)
  • Theoretical Computer Science (AREA)
  • Electrophonic Musical Instruments (AREA)
  • Auxiliary Devices For Music (AREA)

Abstract

コード処理装置は、複数の音で構成される第1コード(X1)が対象コードに該当するか否かを判定する解析部と、第1コード(X1)が対象コードに該当する場合において、コードに関する所定の条件を充足するときに、第1コード(X1)を、当該第1コード(X1)に関連する第2コード(X2)に変換し、コードに関する所定の条件を充足しないときには、第1コード(X1)を変換しない処理部とを具備する。

Description

コード処理方法およびコード処理装置
 本開示は、コード(和音)を提示する技術に関する。
 楽曲のコードを提示する各種の技術が従来から提案されている。例えば、特許文献1には、楽曲内のコードの時系列における特定のコードを他のコードに変換する技術が開示されている。変換対象となる特定のコードと、当該コードの置換先となるコードとが対応付けられたコード変換テーブルが利用される。
日本国特開2003-099032号公報
 特許文献1の技術では、コードの時系列に含まれる全ての特定のコードが、コード変換テーブルを利用して他のコードに変換される。したがって、音楽的な印象が維持されないという問題がある。以上の事情を考慮して、本開示は、音楽的な印象を維持しつつコードを変換することを目的とする。
 以上の課題を解決するために、本開示のひとつの態様に係るコード処理方法は、複数の音で構成される第1コードが対象コードに該当するか否かを判定し、前記第1コードが前記対象コードに該当する場合において、コードに関する所定の条件を充足するときに、前記第1コードを、当該第1コードに関連する第2コードに変換し、前記コードに関する所定の条件を充足しないときには、前記第1コードを変換しない。
 本開示のひとつの態様に係るコード処理装置は、複数の音で構成される第1コードが対象コードに該当するか否かを判定する解析部と、前記第1コードが前記対象コードに該当する場合において、コードに関する所定の条件を充足するときに、前記第1コードを、当該第1コードに関連する第2コードに変換し、前記コードに関する所定の条件を充足しないときには、前記第1コードを変換しない処理部とを具備する。
本開示の第1実施形態に係るコード処理装置の構成を示すブロック図である。 制御装置の機能的な構成を示すブロック図である。 楽曲データの模式図である。 指定データの模式図である。 変換データの模式図である。 制御装置が実行する処理のフローチャートである。 第2実施形態に係る制御装置の機能的な構成を示すブロック図である。 複数の候補コード列を示す模式図である。 制御装置が実行する処理のフローチャートである。 第3実施形態に係る制御装置の機能的な構成を示すブロック図である。 複数の候補コード列を示す模式図である。 制御装置が実行する処理のフローチャートである。
<第1実施形態>
 図1は、本開示の第1実施形態に係るコード処理装置100の構成を例示するブロック図である。コード処理装置100は、楽曲のコードを利用者に提供するコンピュータシステムである。コードは、複数の音で構成される和音である。コード処理装置100は、表示装置11(提示装置の一例)と操作装置12と制御装置13と記憶装置14とを具備する。コード処理装置100は、例えば携帯電話機もしくはスマートフォン等の可搬型の情報端末、またはパーソナルコンピュータ等の可搬型または据置型の情報端末である。
 表示装置11(例えば液晶表示パネル)は、制御装置13による制御のもとで各種の画像を表示する。具体的には、表示装置11は、楽曲のコードを表示する。操作装置12は、利用者からの指示を受付ける入力機器である。操作装置12は、例えば、利用者が操作可能な複数の操作子、または、表示装置11の表示面に対する接触を検知するタッチパネルである。
 制御装置13は、例えばコード処理装置100の各要素を制御する単数または複数のプロセッサである。例えば、制御装置13は、CPU(Central Processing Unit)、GPU(Graphics Processing Unit)、DSP(Digital Signal Processor)、FPGA(Field Programmable Gate Array)、またはASIC(Application Specific Integrated Circuit)等の1種類以上のプロセッサにより構成される。図2は、制御装置13の機能的な構成を例示するブロック図である。制御装置13は、記憶装置14に記憶されたプログラムに従って複数のタスクを実行することで、コードを利用者に提供するための複数の機能(解析部31,処理部32,算出部33および表示制御部34)を実現する。なお、複数の装置の集合(すなわちシステム)で制御装置13の機能を実現してもよいし、制御装置13の機能の一部または全部を専用の電子回路で実現してもよい。
 図1の記憶装置14は、例えば磁気記録媒体または半導体記録媒体等の公知の記録媒体で構成された単数または複数のメモリである。記憶装置14は、制御装置13が実行するプログラムと制御装置13が使用する各種のデータとを記憶する。なお、記憶装置14は、複数種の記録媒体の組合せにより構成されてもよい。また、記憶装置14は、コード処理装置100に対して着脱可能な可搬型の記録媒体、またはコード処理装置100が通信網を介して通信可能な外部記録媒体(例えばオンラインストレージ)としてもよい。
 具体的には、記憶装置14は、楽曲の演奏内容を表すデータ(以下「楽曲データ」という)Qを記憶する。図3は、楽曲データQの模式図である。楽曲データQは、楽曲のコード列Yaと、当該楽曲の調情報Hとを含む。コード列Yaは、楽曲における複数の第1コードX1が時系列に配列されたデータである。調情報Hは、楽曲の調を表す情報である。楽曲内でひとつの調が連続する区間(以下「連続区間」)T毎に、当該調を表す調情報Hが対応付けられる。なお、楽曲内において調は変化するから、楽曲データQは複数の連続区間T(T1,T2,…)にそれぞれ対応する複数の調情報Hを含む。図3では、楽曲データQが、連続区間T1における調「Cメジャー」を表す調情報Hと、連続区間T2における調「Fメジャー」を表す調情報Hとを含む場合を例示する。複数の主音(具体的には平均律の12半音)と調名(長調および短調)との組合せに相当する24種類の調が存在する。ただし、調の種類数は、24種類に限定されない。楽曲データQは、事前に記憶装置14に記憶される。ただし、コード処理装置100が、例えば楽曲の演奏音または歌唱音を表す音響信号から楽曲データQを推定してもよい。
 ここで、コード列Yaをそのまま利用者に提示することも可能である。しかし、利用者が所望しない第1コードX1がコード列Yaに含まれる場合もある。例えば、演奏技術の不足等の理由から利用者にとって演奏が困難な第1コードX1がコード列Yaに含まれ得る。以上の場面では、当該第1コードX1に代わる他のコード(典型的には演奏が容易なコード)を演奏したいという要望がある。以上の事情を考慮して、コード列Yaを構成する複数の第1コードX1のうち、特定のコード(以下「対象コード」という)を、当該第1コードX1に関連する第2コードX2に変換する。
 対象コードは、利用者が第2コードX2への変換を所望するコードである。具体的には、対象コードは、演奏が困難なコードであり、事前に利用者により指定される。対象コードは、利用者が弦楽器を演奏する際に1本の指で複数の弦を同時に押弦するコードであり、例えば、バレー(セーハ)を含む操作により演奏されるバレーコードである。第1実施形態では、5本または6本の弦を1本の指で押弦するバレーコード(例えばコード「F」または「F7」)が、第2コードX2に変換される対象になる対象コードである。
 記憶装置14は、対象コードを指定する指定データを記憶する。図4は、指定データの模式図である。指定データは、利用者により指定された対象コードを含む。複数の対象コードが利用者により指定され得る。利用者は、操作装置12に対する操作により対象コードを指定する。複数のバレーコードのうち対象コードとして指定するバレーコードの個数は任意である。
 第2コードX2は、典型的には第1コードX1に音楽的に類似するコードである。第2コードX2は、例えば対象コードよりも演奏が容易なコードである。具体的には、第2コードX2は、対象コード以外のコード(すなわちバレーによる操作をせずに演奏できるコード)である。
 記憶装置14は、第2コードX2を指定する変換データを記憶する。図5は、変換データの模式図である。変換データは、複数の第2コードX2を含む。すなわち、変換データは、第1コードX1に対する変換の候補となる第2コードX2が登録されたデータである。
 図2の解析部31は、コード列Yaを構成する複数の第1コードX1の各々について、当該第1コードX1が対象コードに該当するか否かを判定する。具体的には、解析部31は、指定データに登録された複数の対象コードのうち第1コードX1に一致する対象コードがある場合には、当該第1コードX1が対象コードに該当すると判定し、指定データに一致する対象コードがない場合には、当該第1コードX1が対象コードに該当しないと判定する。図3では、斜線が付されたブロックが、対象コードに該当すると判定された第1コードX1である。コード列Yaにおける複数の第1コードX1のうち、第1コードX1「F」および第1コードX1「Cm/Eb」が対象コードに該当すると判定された場合が例示されている。以下の説明では、対象コードに該当すると判定された第1コードX1を「選択コードXk」という。
 ここで、コード列Yaにおける全ての選択コードXkを第2コードX2に変換する構成(以下「対比例」という)を想定する。対比例では、選択コードXkが第2コードX2に変換される前のコード列Yaと変換後のコード列Zaとの間において音楽的な印象が維持されないという問題がある。具体的には、楽曲の調性を維持する上で重要な選択コードXkが第2コードX2に変換される場合に音楽的な印象が維持されなくなる。調性を維持する上で重要なコードは、例えば調の主音に対して所定の音程関係にある音を根音とするコードである。例えば調の主音に対して1度の関係にある音(すなわち主音に一致する音)を根音とするトニックコード、または、調の主音に対して5度の関係にある音を根音とするドミナントコードが、調性を維持する上で重要なコードに該当する。また、選択コードXkが音楽的に類似しない第2コードX2に変換される場合にも音楽的な印象が維持されなくなる。以上の事情を考慮して、図2の処理部32は、コードに関する所定の条件を充足するときに、選択コードXkを第2コードX2に変換し、当該条件を充足しないときには選択コードXkを変換しない。所定の条件は、第1条件と第2条件とを含む。
 第1条件は、選択コードXkが、調性を維持するために重要なコードでないことである。具体的には、第1条件は、選択コードXkが調のトニックコードまたはドミナントコードでないことである。処理部32は、例えば、選択コードXkが含まれる連続区間Tの調情報Hから、当該調情報Hが表す調のトニックコードおよびドミナントコードを特定する。そして、処理部32は、選択コードXkが当該トニックコードまたは当該ドミナントコードに一致する場合には、第1条件を充足しないと判定し、選択コードXkが当該トニックコードまたは当該ドミナントコードに一致しない場合には、第1条件を充足すると判定する。なお、複数の調の各々におけるトニックコードとドミナントコードとを、事前に記憶装置14に記憶しておいてもよい。
 他方、第2条件は、選択コードXkと第2コードX2との間における類似度に応じた条件である。具体的には、第2条件は、図5の変換データにおける複数の第2コードX2のうち、選択コードXkとの類似度が最大となる第2コードX2(すなわち選択コードXkに最も類似している第2コードX2)について、当該類似度が閾値を上回ることである。処理部32は、複数の第2コードX2のうち類似度が最大になる第2コードX2を選択し、当該第2コードX2の類似度が閾値を上回るか否かを判定する。処理部32は、選択コードXkとの類似度が最大となる第2コードX2について当該類似度が閾値を下回る場合には、第2条件を充足しないと判定し、当該第2コードX2について当該類似度が閾値を上回る場合には、第2条件を充足すると判定する。
 第2コードX2と選択コードXkとの間における類似度は、図2の算出部33により算出される。類似度は、第2コードX2を表すベクトルと選択コードXkを表すベクトルとの距離または相関を表す指標である。なお、類似度は、選択コードXkと第2コードX2とが相互に類似するほど高くなる。第2コードX2または選択コードXkを表すベクトルは、例えば、文献「山口直彦、管村昇,"非調構成音を含む和音への対応を目的としたTPS(Tonal Pitch Space)の拡張-ジャズ音楽理論への適用を目指して-",情報処理学会研究報告,2011年2月11日」に記載されたベーシックスペース関数である。
 処理部32は、第1条件および第2条件の双方を充足すると判定した場合に、選択コードXkを第2コードX2に変換する。具体的には、処理部32は、選択コードXkとの類似度が最大であり、かつ、当該類似度が閾値を上回る第2コードX2に、当該選択コードXkを変換する。なお、第1条件および第2条件のうち少なくとも一方を充足しない場合には、選択コードXkは第2コードX2に変換されずに、当該選択コードXk(すなわち第1コードX1)が維持される。処理部32は、コード列Yaの各選択データについて、第1条件および第2条件を充足する場合に、当該選択データを第2コードX2に変換することで、図3のコード列Zaを生成する。図3では、二重線のブロックで第2コードX2が図示されている。コード列Zaは、第1コードX1と第2コードX2とが混在するコードの時系列である。
 図3では、コード列Yaにおける複数の選択コードXkのうち、連続区間T1における選択コードXk「F」が第2コードX2「FM7」に変換されたコード列Zaが図示されている。コード列Yaにおける連続区間T1の選択コードXk「F」は、当該連続区間T1の調「Cメジャー」のトニックコードまたはドミナントコードではなく、かつ、当該選択コードXkに最も類似する第2コードX2「FM7」との類似度が閾値を上回るから、当該第2コードX2「FM7」に変換される。他方、コード列Yaにおける連続区間T2の選択コードXk「F」は、当該連続区間T2の調「Fメジャー」のトニックコード「F」に一致するから(すなわち第1条件を充足しないから)、変換されない。コード列Yaにおける連続区間T2の選択コードXk「Cm/Eb」は、当該連続区間T2の調「Fメジャー」のトニックコードまたはドミナントコードに一致しないものの、当該選択コードXkに最も類似する第2コードX2との類似度が閾値を下回るから(すなわち第2条件を充足しないから)、変換されない。以下の説明では、処理部32が選択コードXkを第2コードX2に変換する処理を「変換処理」という。
 表示制御部34は、コード列Zaを表示装置11に表示させる。すなわち、表示制御部34は、第1コードX1が第2コードX2に変換された場合は、当該第1コードX1に代えて第2コードX2を表示装置11に表示させ、第1コードX1が変換されない場合には、当該第1コードX1を表示装置11に表示させる。表示装置11は、表示制御部34による制御のもとでコード列Zaを表示する。すなわち、コード列Zaが利用者に提示される。コード列Zaの表示の態様は任意である。なお、表示制御部34は、コード列Yaおよびコード列Zaの双方を表示装置11に表示させてもよい。
 図6は、コード処理装置100の制御装置13がコード列Yaからコード列Zaを特定する処理のフローチャートである。図6の処理は、例えば利用者からの指示を契機として開始される。解析部31は、コード列Yaにおける複数の第1コードX1から1つの第1コードX1を順次に選択する(Sa1)。例えば、コード列Yaの先頭から末尾にかけて順番に第1コードX1が選択される。解析部31は、ステップSa1で選択された第1コードX1が対象コードに該当するか否かを判定する(Sa2)。第1コードX1が対象コードに該当する場合(Sa2:YES)、処理部32は、当該第1コードX1(すなわち選択コードXk)が第1条件を充足するか否かを判定する(Sa3)。具体的には、選択コードXkがトニックコードまたはドミナントコードであるか否かが判定される。
 第1条件を充足する場合(Sa3:YES)、算出部33は、複数の第2コードX2の各々について、当該第2コードX2と選択コードXkとの間における類似度を算出する(Sa4)。処理部32は、複数の第2コードX2のうち類似度が最大となる第2コードX2を選択し、当該第2コードX2が第2条件を充足するか否かを判定する(Sa5)。具体的には、当該第2コードX2の類似度が閾値を上回るか否かが判定される。第2条件を充足する場合(Sa5:YES)、処理部32は、類似度が最大となる第2コードX2に選択コードXkを変換する(Sa6)。
 解析部31は、コード列Yaにおける全ての第1コードX1についてステップSa1からSa6の処理を実行したか否かを判定する(Sa7)。第1コードX1が対象コードでない場合(Sa2:NO)、解析部31は、ステップSa3-Sa6の処理は実行せずに、ステップSa7の処理を実行する。また、第1条件を充足しない場合(Sa3:NO)、および、第2条件を充足しない場合(Sa5:NO)には、解析部31は、選択コードXkを変換せずに、ステップSa7の処理を実行する。すなわち、選択コードXkが調性を維持する上で重要なコードである場合、および、複数の第2コードX2のうち選択コードXkに音楽的に類似する第2コードX2が存在しない場合の少なくとも一方に該当するときは、選択コードXkが第2コードX2に変換されずに維持される。全ての第1コードX1について処理を実行した場合(Sa7:YES)、表示制御部34は、コード列Zaを表示装置11に表示させる(Sa8)。他方、未処理の第1コードX1がある場合(Sa7:NO)、ステップSa1に戻る。以上の処理により、コード列Yaよりも選択コードXkの個数が減少したコード列Zaが生成される。なお、コード列Yaに含まれる全ての選択コードXkが第1条件および第2条件を充足しない場合には、コード列Zaのコードの配列はコード列Yaと同じである。すなわち、コード列Zaの選択コードXkの個数はコード列Yaと同等である。
 なお、ステップSa5の処理は、ステップSa3の処理よりも先に実行してもよい。すなわち、第2条件を充足した場合に、選択コードXkが第1条件を充足するか否かが判定される。また、ステップSa5において、複数の第2コードX2のうち類似度が閾値を上回る第2コードX2が存在しない場合には、第2条件を充足しないと判定し、当該類似度が閾値を上回る第2コードX2が存在する場合には第2条件を充足すると判定してもよい。以上の構成において、複数の第2コードX2について類似度が閾値を上回る場合には、ステップSa6では、当該複数の第2コードX2のうち類似度が最大となる第2コードX2に、選択コードXkが変換される。
 以上の説明から理解される通り、第1実施形態では、第1コードX1が対象コードに該当する場合において、所定の条件を充足するときに、第1コードX1が第2コードX2に変換され、当該条件を充足しないときには、第1コードX1が変換されずに維持される。したがって、対比例と比較して、音楽的な印象を維持しつつコードを変換することが可能である。
 第1実施形態では、所定の条件に第1条件が含まれるから、調の主音に対して所定の音程関係にある音を根音とする第1コードX1については変換されない。すなわち、調性を維持する上で重要な第1コードX1は維持される。したがって、コード列Yaとコード列Zaとの間において音楽的な印象を維持することができる。また、所定の条件に第2条件が含まれるから、第2コードX2の類似度が閾値を下回る場合には、第1コードX1が変換されない。すなわち、第2コードX2が第1コードX1に音楽的に類似しない場合には第1コードX1が変換されずに維持される。したがって、コード列Yaとの間において音楽的な印象が維持されたコード列Zaを生成することができる。
 利用者が弦楽器を演奏する際に1本の指で複数の弦を同時に押弦するコードを対象コードとする第1実施形態の構成によれば、当該コードに該当する第1コードX1を第2コードX2に変換することができる。また、第1実施形態では、第2コードX2が対象コード以外のコードであるから、例えば対象コードの演奏を利用者が避けたい場合に、当該対象コードに該当しない第2コードX2に第1コードX1を変換することができる。
 第1実施形態では、第1コードX1が第2コードX2に変換された場合には当該第2コードX2が第1コードX1の代わりに利用者に提示され、第1コードX1が変換されない場合には当該第1コードX1が利用者に提示される。したがって、コード列Yaとの間において音楽的な印象が維持されたコード列Zaを利用者に提示することができる。
<第2実施形態>
 本開示の第2実施形態を説明する。なお、以下に例示する各態様において機能が第1実施形態と同様である要素については、第1実施形態の説明で使用した符号を流用して各々の詳細な説明を適宜に省略する。
 コード列Yaのうち対象コードに一致する第1コードX1(すなわち選択コードXk)を第2コードX2に変換したとしても利用者によっては演奏が困難な場合がある。以上の事情を考慮して、第2実施形態では、コード列Yaに代わる他のコード列を利用者に提供する。具体的には、コード列Yaを移調させたコード列(以下「移調コード列」という)Ybが利用者に提供される。
 図7は、第2実施形態に係る制御装置13の機能的な構成を示すブロック図である。第2実施形態に係る制御装置13は、移調コード列Ybを利用者に提示するための複数の機能(解析部31,処理部32,選択部35および表示制御部34)を実現する。
 処理部32は、コード列Yaの移調(以下「移調処理」という)を含む特定処理により、当該コード列Yaとは調が異なる移調コード列Ybを特定する。移調処理は、コード列Ya(基準コード列の例示)を任意の移調量δで移調することで、当該コード列Yaとは異なる複数の第1コードX1の時系列が配列された移調コード列Ybを特定する処理である。具体的には、移調処理は、コード列Yaを相異なる移調量δで移調した複数の移調コード列Ybを特定する。
 図8は、移調処理により特定される複数の移調コード列Ybを示す模式図である。例えば、移調処理は、コード列Yaを基準(0)として、当該コード列Yaから半音単位で移調量δを変化させる。例えば、移調処理は、コード列Yaに対して高音側に1半音(+1)、2半音(+2)、…6半音(+6)の移調量δでそれぞれ移調した6個の移調コード列Ybと、コード列Yaに対して低音側に1半音(-1)、2半音(-2)、…5半音(-5)の移調量δでそれぞれ移調した5個の移調コード列Ybとを生成する。すなわち、コード列Yaからの移調量δが相異なる11個の移調コード列Ybが特定される。以下の説明では、コード列Yaと各移調コード列Ybとのそれぞれを「候補コード列Ys」という。すなわち、1個のコード列Yaと11個の移調コード列Ybとで12個の候補コード列Ysが構成される。
 図7の解析部31は、複数の候補コード列Ysの各々について、当該候補コード列Ysに含まれる第1コードX1のうち対象コードに該当する第1コードX1の個数に応じた指標(以下「評価指標M」という)を算出する。対象コードは、第1実施形態と同様に、バレーコードである。図8に例示される通り、評価指標Mは、例えば候補コード列Ysにおける複数の第1コードX1のうち対象コードに該当する第1コードX1の個数である。すなわち、評価指標Mは、候補コード列Ys中の対象コードの個数が少ないほど小さい。一般的に、楽曲内におけるバレーコードの個数が少ないほど演奏が容易になる。すなわち、評価指標Mが小さいほど演奏が容易な候補コード列Ysである。以上の説明から理解される通り、評価指標Mは、候補コード列Ysの演奏の難易度を表す指標であるとも換言できる。具体的には、解析部31は、候補コード列Ysの複数の第1コードX1を順番に対象コードに該当するか否かを判定し、当該対象コードに該当すると判定した第1コードX1の個数を評価指標Mとして算定する。図8では、斜線が付されたブロックが、対象コードに該当する第1コードX1である。
 図7の選択部35は、複数の候補コード列Ysのうち、評価指標Mに応じた1以上の候補コード列Ysを選択する。具体的には、選択部35は、複数の候補コード列Ysのうち評価指標Mが示す対象コードの個数が最小である候補コード列Ys(すなわち評価指標Mが最小である候補コード列Ys)を選択する。すなわち、複数の候補コード列Ysのうち演奏の難易度が最も低い候補コード列Ysが選択される。なお、複数の候補コード列Ysのうちコード列Yaの評価指標Mが最小である場合には、当該コード列Yaが選択される。
 図7の表示制御部34は、選択部35により選択された候補コード列Ysを表示装置11に表示させる。したがって、複数の候補コード列Ysのうち演奏が容易な候補コード列Ysを利用者に提供することができる。なお、表示制御部34は、候補コード列Ysとともに、当該候補コード列Ysの移調量δを利用者に提供してもよい。また、表示制御部34は、複数の候補コード列Ysの全てを表示装置11に表示させてもよい。以上の構成では、利用者は、表示装置11により表示された複数の候補コード列Ysのうち任意の候補コード列Ysを演奏することができる。
 図9は、コード処理装置100の制御装置13が候補コード列Ysを利用者に提供する処理のフローチャートである。図9の処理は、例えば利用者からの指示を契機として開始される。処理部32は、移調処理により、コード列Yaから複数の移調コード列Ybを特定する(Sb1)。解析部31は、コード列Yaと複数の移調コード列Ybとを含む複数の候補コード列Ysの各々について評価指標Mを算出する(Sb2)。選択部35は、複数の候補コード列Ysのうち評価指標Mが最小である候補コードを選択する(Sb3)。表示制御部34は、選択部35により選択された候補コード列Ysを表示装置11に表示させる(Sb4)。
 第2実施形態では、複数の候補コード列Ysの各々について、当該候補コード列Ysに含まれる対象コードの個数に応じた評価指標Mに応じて、複数の候補コード列Ysから1以上の候補コード列Ysが選択される。したがって、コード列Yaに変換されるべき候補コード列Ysを利用者に提供することができる。第2実施形態では特に、コード列Yaを相異なる移調量δで移調した複数の移調コード列Ybを含む複数の候補コード列Ysから候補コード列Ysが選択されるから、多様な調の候補コード列Ysを利用者に提供することができる。
 第2実施形態では、複数の候補コード列Ysのうち、評価指標Mが示す対象コードの個数が最小である候補コード列Ysが選択されるから、例えば利用者が対象コードを所望しない場合には、当該対象コードの個数が少ない候補コード列Ysを提示することができる。利用者が弦楽器を演奏する際に1本の指で複数の弦を同時に押弦するコードを対象コードとする第2実施形態の構成によれば、当該コードの個数に応じた評価指標Mに応じて、候補コードが選択される。したがって、例えば当該複数の弦を押弦するコードを利用者が所望しない場合には、候補コード列Ysに含まれる当該コードの個数が少ない候補コード列Ysを提示することができる。
<第3実施形態>
 図10は、第3実施形態に係るコード処理装置100の機能的な構成を示すブロック図である。第3実施形態に係るコード処理装置100は、第1実施形態における変換処理と第2実施形態における移調処理とを実行する。具体的には、コード処理装置100は、第2実施形態で例示した各候補コード列Ys中の複数の第1コードX1のうち対象コードに該当する第1コードX1を第2コードX2に変換する。第1実施形態と同様に、所定の条件(第1条件および第2条件を)を充足する場合に、第1コードX1が第2コードX2に変換される。
 第3実施形態に係る制御装置13は、解析部31、処理部32、算出部33、選択部35および表示制御部34として機能する。処理部32は、移調処理と変換処理とを含む特定処理を実行する。処理部32は、第2実施形態と同様に、コード列Yaに対して移調処理を実行することで、複数の移調コード列Ybを特定する。図11には、移調処理により特定された複数の移調コード列Ybが図示されている。第2実施形態と同様、1個のコード列Yaと11個の移調コード列Ybとで12個の候補コード列Ysが構成される。
 解析部31は、複数の候補コード列Ysの各々について、第1実施形態と同様に、当該候補コード列Ysを構成する各第1コードX1が対象コードに該当するか否かを判定する。すなわち、解析部31による処理により、各候補コード列Ysについて、選択コードXk(対象コードであると判定された第1コードX1)が特定される。図11には、斜線のブロックで選択コードXkが図示されている。
 処理部32は、各候補コード列Ysにおける選択コードXkを、第1実施形態と同様の変換処理により第2コードX2に変換することで、候補コード列Zsを特定する。図11には、変換処理後の候補コード列Zsが、変換処理前の候補コード列Ysの下に図示されている。具体的には、処理部32は、所定の条件(第1条件および第2条件)を充足する場合に選択コードXkを第2コードX2に変換し、当該条件を充足しない場合には選択コードXkを変換しない。すなわち、候補コード列Zsは、候補コード列Ysとは異なる複数のコード(第1コードX1および第2コードX2)の時系列が配列されたコード列である。
 第1条件は、第1実施形態と同様に、選択コードXkが調のトニックコードまたはドミナントコードでないことである。第2条件は、第1実施形態と同様に、変換データにおける複数の第2コードX2のうち、選択コードXkとの類似度が最大となる第2コードX2について、当該類似度が閾値を上回ることである。類似度は、第1実施形態と同様に、算出部33により算出される。変換処理後の各候補コード列Zsは、第1コードX1と第2コードX2が混在するコード列である。図11には、二重線のブロックで第2コードX2が図示されている。候補コード列Zs中の選択コードXkの個数は、候補コード列Ys中の選択コードXkの個数を下回る。なお、候補コード列Ysに含まれる全ての選択コードXkが第1条件および第2条件を充足しない場合、候補コード列Ysと候補コード列Zsとの間においてコードの配列は変化しない。すなわち、選択コードXkの個数は変換処理の前後で変化しない。
 図10の解析部31は、第2実施形態と同様に、変換処理後の複数の候補コード列Zsの各々について評価指標Mを算出する。具体的には、解析部31は、各候補コード列Zsについて、当該候補コード列Zsに含まれる選択コードXkの個数を評価指標Mとして算出する。選択部35は、第2実施形態と同様に、複数の候補コード列Zsのうち評価指標Mが示す対象コードの個数が最小である候補コード列Zsを選択する。表示制御部34は、選択部35が選択した候補コード列Zsを表示装置11に表示させる。
 図12は、コード処理装置100の制御装置13が候補コード列Zsを利用者に提示する処理のフローチャートである。図12の処理は、例えば利用者からの指示を契機として開始される。処理部32は、移調処理により、コード列Yaから複数の移調コード列Ybを特定する(Sc1)。処理部32は、コード列Yaと複数の移調コード列Ybとを含む候補コード列Ysの各々について変換処理を実行することで、候補コード列Zsを特定する(Sc2)。すなわち、ステップSc1とステップSc2とを含む特定処理が実行される。解析部31は、複数の候補コード列Zsの各々について評価指標Mを算出する(Sc3)。選択部35は、複数の候補コード列Zsのうち、評価指標Mが示す対象コードの個数が最小である候補コード列Zsを選択する(Sc4)。表示制御部34は、選択部35により選択された候補コード列Zsを表示装置11に表示させる(Sc5)。
 以上の説明から理解される通り、第3実施形態では、変換処理を実行した後の各候補コード列Zsについて評価指標Mを算出し、当該評価指標Mに応じて複数の候補コード列Zsから候補コード列Zsが選択される。したがって、変換処理前の候補コード列Ysを利用者に提示する第2実施形態と比較して、選択コードXkの個数が低減された候補コード列Zsを利用者に提供することができる。また、変換処理は所定の条件を充足する場合に実行されるから、変換処理の前後において音楽的な印象が維持された選択コードXkを利用者に提供することができる。なお、第3実施形態においては、所定の条件の成否とは無関係に選択コードXkを第2コードX2に変換してもよい。すなわち、所定の条件を充足しなくても、選択コードXkが第2コードX2に変換される。以上の構成では、全ての選択コードXkが第2コードX2に変換される。
<変形例>
 以上に例示した各態様に付加される具体的な変形の態様を以下に例示する。以下の例示から任意に選択された2個以上の態様を、相互に矛盾しない範囲で適宜に併合してもよい。
(1)第1実施形態では、所定の条件が第1条件および第2条件の双方を含む構成を例示したが、所定の条件は以上の例示に限定されない。例えば所定の条件が第1条件および第2条件の何れか一方である構成、または、所定の条件が第1条件および第2条件とは異なる第3条件を含む構成も採用される。第3条件は、例えば選択コードXkが楽曲における特定の区間(例えばサビ)に位置するコードでないことである。また、所定の条件が第3条件のみを含んでもよい。なお、以上の変形例は第3実施形態にも適用される。
(2)前述の各形態において、対象コードは、利用者が弦楽器を演奏する際に1本の指で複数の弦を同時に押弦するコードに限定されない。対象コードは、演奏を避けたいコードが利用者により任意に指定される。例えば演奏が苦手なコードが対象コードとして指定される。例えば、コードを構成する構成音の個数が多いほど演奏が困難である利用者は、当該構成音の個数に応じて対象コードを指定してもよい。以上の構成では、例えば、構成音の個数が閾値を上回るコードが対象コードとして指定され、構成音の個数が閾値を下回るコードが第2コードX2として指定される。なお、対象コードが利用者により選択される必要は必ずしもない。例えば利用者による指定によらず、バレーコードが対象コードとして指定されてもよい。
(3)第1実施形態において、第2コードX2は、対象コード以外のコードに限定されない。例えば、利用者が指定したコードを第2コードX2としてもよい。例えば、利用者にとって演奏が容易であるコード、または、利用者が演奏を所望するコードが第2コードX2として指定される。なお、以上の変形例は第3実施形態にも適用される。
(4)第2実施形態では、移調処理により11個の移調コード列Ybを特定したが、特定処理により特定する移調コード列Ybの個数は任意である。すなわち、移調処理により1個の移調コード列Ybを特定する構成も採用される。また、半音毎に移調量δを相違させて複数の移調コード列Ybを特定したが、移調処理における移調量δは以上の例示に限定されない。例えば全音毎に移調量δを相違させて移調コード列Ybを特定してもよい。なお、以上の変形例は第3実施形態にも適用される。
(5)第2実施形態では、複数の候補コード列Ysにおいて評価指標Mが最小になる場合には、選択部35は、当該評価指標Mが最小になる全ての候補コード列Ysを選択してもよい。また、選択部35は、評価指標Mが最小になる複数の候補コード列Ysのうち任意の1個の候補コード列Ys(例えば移調量δが最小である候補コード列Ys)を選択してもよい。なお、以上の変形例は第3実施形態にも適用される。
(6)第2実施形態では、候補コード列Ysのうち対象コードに該当する第1コードX1の個数を評価指標Mとして例示したが、評価指標Mは以上の例示に限定されない。例えば、各選択コードXkの演奏の難易度に応じた重みで各選択コードXkの個数を重み付けした加重和を評価指標Mとして算定してもよい。なお、以上の変形例は第3実施形態にも適用される。
(7)第2実施形態では、評価指標Mが最小である候補コード列Ysが選択されたが、候補コード列Ysを選択する方法は以上の例示に限定されない。例えば、選択部35は、複数の候補コード列Ysのうちコード列Yaよりも評価指標Mが小さい全ての候補コード列Ysを選択してもよい。なお、以上の変形例は第3実施形態にも適用される。
(8)第2実施形態において、選択部35が選択した候補コード列Ysの移調量δに応じて、弦楽器に対するカポタストの取付位置を提示してもよい。なお、以上の変形例は第3実施形態にも適用される。
(9)前述の各形態では、表示装置11による表示により利用者にコード列を提示したが、利用者へのコード列の提示方法は以上の例示に限定されない。例えば、放音装置(例えばスピーカ)による音響の放音によりコード列を利用者に提示してもよい。表示装置11と放音装置との双方は提示装置として包括的に表現される。
(10)以上に例示したコード処理装置100の機能は、前述の通り、制御装置13を構成する単数または複数のプロセッサと記憶装置14に記憶されたプログラムとの協働により実現される。本開示に係るプログラムは、コンピュータが読取可能な記録媒体に格納された形態で提供されてコンピュータにインストールされ得る。記録媒体は、例えば非一過性(non-transitory)の記録媒体であり、CD-ROM等の光学式記録媒体(光ディスク)が好例であるが、半導体記録媒体または磁気記録媒体等の公知の任意の形式の記録媒体も包含される。なお、非一過性の記録媒体とは、一過性の伝搬信号(transitory, propagating signal)を除く任意の記録媒体を含み、揮発性の記録媒体も除外されない。また、配信装置が通信網を介してプログラムを配信する構成では、当該配信装置においてプログラムを記憶する記憶装置が、前述の非一過性の記録媒体に相当する。
(11)以上に例示した形態から、例えば以下の構成が把握される。
 本開示のひとつの態様(態様A1)に係るコード処理方法は、複数の音で構成される第1コードが対象コードに該当するか否かを判定し、前記第1コードが前記対象コードに該当する場合において、コードに関する所定の条件を充足するときに、前記第1コードを、当該第1コードに関連する第2コードに変換し、前記コードに関する所定の条件を充足しないときには、前記第1コードを変換しない。以上の態様によれば、第1コードが対象コードに該当する場合において、所定の条件を充足するときに、第1コードが当該第1コードに関連する第2コードに変換され、所定の条件を充足しないときには、第1コードが変換されずに維持される。したがって、所定の条件とは無関係に、全ての第1コードが第2コードに変換される構成と比較して、音楽的な印象を維持しつつコードを変換することが可能である。
 態様A1の一例(態様A2)では、前記コードに関する所定の条件は、前記対象コードに該当すると判定された前記第1コードが、調の主音に対して所定の音程関係にある音を根音とするコードでないことを含む。以上の態様によれば、調の主音に対して所定の音程関係にある音を根音とする第1コード(すなわち調性を保つ上で重要な第1コード)については変換されずに維持されるから、音楽的な印象を維持することができる。また、前記コードに関する所定の条件は、前記対象コードに該当すると判定された前記第1コードが、ドミナントコードまたはトニックコードでないことを含む。
 態様A1または態様A2の一例(態様A3)では、前記コードに関する所定の条件は、複数のコードのうち前記第1コードとの類似度が最大となる前記第2コードについて、当該類似度が閾値を上回ることを含む。第1コードに音楽的に類似しないコードを第2コードとして第1コードに変換すると、音楽的な印象が損なわれる場合がある。以上の態様によれば、複数のコードのうち第1コードとの類似度が最大となる第2コードについて、当該類似度が閾値を上回る場合に、第1コードが当該第2コードに変換される。すなわち、第2コードの類似度が閾値を下回る場合(すなわち第2コードが第1コードに音楽的に類似しないと推定される場合)には、第1コードは変換されずに維持される。したがって、音楽的な印象を維持することができる。
 態様A1から態様A3の何れかの一例(態様A4)では、前記対象コードは、利用者が弦楽器を演奏する際に1本の指で複数の弦を同時に押弦するコードである。以上の態様によれば、1本の指で複数の弦を同時に押弦するコードが第1コードである場合に、当該第1コードを第2コードに変換することができる。
 態様A1から態様A4の何れかの一例(態様A5)では、前記対象コードは1または複数のコードを含み、前記第2コードは、前記対象コード以外のコードである。以上の態様によれば、例えば対象コードの演奏を利用者が避けたい場合に、当該対象コードに該当しない第2コードに第1コードを変換することができる。
 態様A1から態様A5の何れかの一例(態様A6)では、前記第1コードが前記第2コードに変換された場合は、前記第1コードに代えて前記第2コードを提示装置に提示させ、前記第1コードを変換しない場合には、当該第1コードを前記提示装置に提示させる。以上の態様によれば、第1コードが第2コードに変換された場合には当該第2コードが第1コードの代わりに利用者に提示され、第1コードが変換されない場合には当該第1コードが利用者に提示される。したがって、音響的な印象が維持されたコードを利用者に提示することができる。
 本開示のひとつの態様(態様B1)に係るコード処理方法は、複数のコードが時系列に配列された基準コード列の移調を含む特定処理により、前記基準コード列とは異なる複数のコードが時系列に配列された移調コード列を特定し、前記基準コード列と前記移調コード列とを含む複数の候補コード列の各々について、当該候補コード列に含まれる対象コードの個数に応じた評価指標を算出し、前記複数の候補コード列のうち、前記評価指標に応じた1以上の候補コード列を選択する。以上の態様では、基準コード列と移調コード列とを含む複数の候補コード列の各々について、当該候補コード列に含まれる対象コードの個数に応じた評価指標に応じて、複数の候補コード列から1以上の候補コード列が選択されるから、基準コード列に変換されるべき候補コード列を利用者に提供することができる。前記評価指標は、前記対象コードの個数で表されてもよい。また、前記評価指数は、前記対象コードごとに重みづけを行い算出されてもよい。
 態様B1の一例(態様B2)では、前記特定処理では、前記基準コード列を相異なる移調量で移調した複数の移調コード列を特定し、前記複数の候補コード列には、前記複数の移調コード列が含まれる。以上の態様では、基準コード列を相異なる移調量で移調した複数の移調コード列を含む複数の候補コード列から候補コード列が選択されるから、多様な調の候補コード列を利用者に提供することができる。
 態様B1または態様B2の一例(態様B3)では、前記候補コード列の選択では、前記複数の候補コード列のうち、前記評価指標が示す前記対象コードの個数が最小である候補コード列が選択される。以上の態様では、複数の候補コード列のうち、評価指標が示す対象コードの個数が最小である候補コード列が選択される。したがって、例えば利用者が対象コードを所望しない場合には、当該対象コードの個数が少ない候補コード列を提示することができる。
 態様B1から態様B3の何れかの一例(態様B4)では、前記対象コードは、利用者が弦楽器を演奏する際に1本の指で複数の弦を同時に押弦するコードである。以上の態様によれば、1本の指で複数の弦を同時に押弦するコードに関する評価指標に応じて、候補コードが選択される。したがって、例えば利用者が当該複数の弦を同時に押弦するコードを所望しない場合には、候補コード列に含まれる当該コードの個数が少ない候補コード列を提示することができる。
 態様B1から態様B4の何れかの一例(態様B5)では、前記特定処理は、コードに関する所定の条件を充足するときに、前記各候補コード列における複数のコードのうち前記対象コードに該当するコードを、当該コードに関連する他のコードに変換し、前記コードに関する所定の条件を充足しないときには、前記対象コードを変換しない処理を含む。以上の態様によれば、各候補コード列について、当該所定の条件を充足する場合に、当該候補コード列の複数のコードのうち対象コードに該当するコードが他のコードに変換される。したがって、候補コード列における対象コードに該当するコードを他のコードに変換しない構成と比較して、対象コードに該当するコードの個数が低減された候補コード列を利用者に提供することができる。また、所定の条件を充足しない場合には、対象コードに該当するコードは変換されないから、音楽的な印象が維持された選択コードを利用者に提供することができる。
 態様B1から態様B5の何れかの一例(態様B6)では、前記選択された前記1以上の候補コード列を提示装置に提示させる。以上の態様によれば、選択された1以上の候補コード列が提示装置により利用者に提示される。
 以上に例示した各態様のコード処理方法を実行するコード処理装置、または、以上に例示した各態様のコード処理方法をコンピュータに実行させるプログラムとしても、本開示のひとつの態様は実現される。
 本出願は、2019年3月26日にて提出された日本国特許出願である特願2019-57715に基づくものであり、その内容はここに参照として取り込まれる。
 100…コード処理装置、11…表示装置、12…操作装置、13…制御装置、14…記憶装置、31…解析部、32…処理部、33…算出部、34…表示制御部、35…選択部。

Claims (14)

  1.  複数の音で構成される第1コードが対象コードに該当するか否かを判定し、
     前記第1コードが前記対象コードに該当する場合において、コードに関する所定の条件を充足するときに、前記第1コードを、当該第1コードに関連する第2コードに変換し、前記コードに関する所定の条件を充足しないときには、前記第1コードを変換しない
     コンピュータにより実現されるコード処理方法。
  2.  前記コードに関する所定の条件は、前記対象コードに該当すると判定された前記第1コードが、調の主音に対して所定の音程関係にある音を根音とするコードでないことを含む
     請求項1のコード処理方法。
  3.  前記コードに関する所定の条件は、前記対象コードに該当すると判定された前記第1コードが、ドミナントコードまたはトニックコードでないことを含む
     請求項2のコード処理方法。
  4.  前記コードに関する所定の条件は、複数のコードのうち前記第1コードとの類似度が最大となる前記第2コードについて、当該類似度が閾値を上回ることを含む
     請求項1から3の何れかのコード処理方法。
  5.  前記対象コードは、利用者が弦楽器を演奏する際に1本の指で複数の弦を同時に押弦するコードである
     請求項1から4の何れかのコード処理方法。
  6.  前記対象コードは1または複数のコードを含み、前記第2コードは、前記対象コード以外のコードである
     請求項1から5の何れかのコード処理方法。
  7.  前記第1コードが前記第2コードに変換された場合は、前記第1コードに代えて前記第2コードを提示装置に提示させ、前記第1コードを変換しない場合には、当該第1コードを前記提示装置に提示させる
     請求項1から6の何れかのコード処理方法。
  8.  複数の音で構成される第1コードが対象コードに該当するか否かを判定する解析部と、
     前記第1コードが前記対象コードに該当する場合において、コードに関する所定の条件を充足するときに、前記第1コードを、当該第1コードに関連する第2コードに変換し、前記コードに関する所定の条件を充足しないときには、前記第1コードを変換しない処理部と
     を具備するコード処理装置。
  9.  前記コードに関する所定の条件は、前記対象コードに該当すると判定された前記第1コードが、調の主音に対して所定の音程関係にある音を根音とするコードでないことを含む
     請求項8のコード処理装置。
  10.  前記コードに関する所定の条件は、前記対象コードに該当すると判定された前記第1コードが、ドミナントコードまたはトニックコードでないことを含む
     請求項9のコード処理装置。
  11.  前記コードに関する所定の条件は、複数のコードのうち前記第1コードとの類似度が最大となる前記第2コードについて、当該類似度が閾値を上回ることを含む
     請求項8から10の何れかのコード処理装置。
  12.  前記対象コードは、利用者が弦楽器を演奏する際に1本の指で複数の弦を同時に押弦するコードである
     請求項8から11の何れかのコード処理装置。
  13.  前記対象コードは1または複数のコードを含み、前記第2コードは、前記対象コード以外のコードである
     請求項8から12の何れかのコード処理装置。
  14.  コードの提示を制御する提示制御部をさらに具備し、
     前記提示制御部は、前記第1コードが前記第2コードに変換された場合は、前記第1コードに代えて前記第2コードを提示装置に提示させ、前記第1コードを変換しない場合には、当該第1コードを前記提示装置に提示させる
     請求項8から13の何れかのコード処理装置。
PCT/JP2020/011795 2019-03-26 2020-03-17 コード処理方法およびコード処理装置 Ceased WO2020196107A1 (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
CN202410384624.1A CN118038837A (zh) 2019-03-26 2020-03-17 和弦处理方法、和弦处理装置以及记录介质
CN202080021083.6A CN113767430B (zh) 2019-03-26 2020-03-17 和弦处理方法及和弦处理装置
US17/407,524 US12525212B2 (en) 2019-03-26 2021-08-20 Chord processing method and chord processing device

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2019-057715 2019-03-26
JP2019057715A JP7230629B2 (ja) 2019-03-26 2019-03-26 コード処理方法、コード処理装置およびプログラム

Related Child Applications (1)

Application Number Title Priority Date Filing Date
US17/407,524 Continuation US12525212B2 (en) 2019-03-26 2021-08-20 Chord processing method and chord processing device

Publications (1)

Publication Number Publication Date
WO2020196107A1 true WO2020196107A1 (ja) 2020-10-01

Family

ID=72611876

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2020/011795 Ceased WO2020196107A1 (ja) 2019-03-26 2020-03-17 コード処理方法およびコード処理装置

Country Status (4)

Country Link
US (1) US12525212B2 (ja)
JP (1) JP7230629B2 (ja)
CN (2) CN113767430B (ja)
WO (1) WO2020196107A1 (ja)

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003099032A (ja) * 2001-09-20 2003-04-04 Yamaha Corp コード提示装置およびコード提示用コンピュータプログラム
JP2007163532A (ja) * 2005-12-09 2007-06-28 Hideo Watanabe 移調装置
US20130205977A1 (en) * 2009-07-20 2013-08-15 Apple Inc. System and method to generate and manipulate string-instrument chord grids in a digital audio workstation
JP2014149366A (ja) * 2013-01-31 2014-08-21 Brother Ind Ltd 楽音演奏装置
JP2016224462A (ja) * 2016-09-02 2016-12-28 ヤマハ株式会社 楽譜表示装置、楽譜表示方法、および当該楽譜表示方法を実現するためのプログラム

Family Cites Families (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4682526A (en) * 1981-06-17 1987-07-28 Hall Robert J Accompaniment note selection method
JP3671267B2 (ja) * 1996-11-07 2005-07-13 カシオ計算機株式会社 自動伴奏装置
JPH11327558A (ja) * 1998-05-12 1999-11-26 Casio Comput Co Ltd 自動コード付装置
JP3632467B2 (ja) * 1998-11-25 2005-03-23 ヤマハ株式会社 コード進行生成装置および記憶媒体
JP4172703B2 (ja) * 2003-07-30 2008-10-29 財団法人ヤマハ音楽振興会 演奏補助装置
JP2008089975A (ja) * 2006-10-02 2008-04-17 Kawai Musical Instr Mfg Co Ltd 電子楽器
WO2011060504A1 (en) 2009-11-20 2011-05-26 Inventco Technology Pty Ltd Music tuition or practice method and apparatus
CN102087849B (zh) * 2010-12-08 2012-04-18 向杰 将简谱中其它调的和弦标记翻译成c调和弦标记的翻译器
US8802955B2 (en) * 2013-01-11 2014-08-12 Berggram Development Chord based method of assigning musical pitches to keys
JP6372082B2 (ja) * 2014-01-07 2018-08-15 カシオ計算機株式会社 楽音発生指示装置及び楽音発生指示方法
WO2015140412A1 (en) * 2014-03-21 2015-09-24 Berggram Development Oy Method for adjusting the complexity of a chord in an electronic device
JP6160598B2 (ja) * 2014-11-20 2017-07-12 カシオ計算機株式会社 自動作曲装置、方法、およびプログラム
CN105761713B (zh) * 2016-01-29 2020-02-14 北京精奇互动科技有限公司 和弦变换处理方法和装置
US10140967B2 (en) 2016-03-14 2018-11-27 Magic Instruments, Inc. Musical instrument with intelligent interface

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003099032A (ja) * 2001-09-20 2003-04-04 Yamaha Corp コード提示装置およびコード提示用コンピュータプログラム
JP2007163532A (ja) * 2005-12-09 2007-06-28 Hideo Watanabe 移調装置
US20130205977A1 (en) * 2009-07-20 2013-08-15 Apple Inc. System and method to generate and manipulate string-instrument chord grids in a digital audio workstation
JP2014149366A (ja) * 2013-01-31 2014-08-21 Brother Ind Ltd 楽音演奏装置
JP2016224462A (ja) * 2016-09-02 2016-12-28 ヤマハ株式会社 楽譜表示装置、楽譜表示方法、および当該楽譜表示方法を実現するためのプログラム

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
EMURA, NORIO ET AL.: "A system yielding the optimal chord-form sequence on the guitar", THE JOURNAL OF THE ACOUSTICAL SOCIETY OF JAPAN, vol. 64, no. 2, 1 February 2008 (2008-02-01), pages 73 - 83 *
NATSUBAYASHI: "There are varies of guitar chord difficulty. To show the difficulty level of a guitar chord with numbers?", KNATSUBAYASHI81, 8 July 2018 (2018-07-08), XP055743781, Retrieved from the Internet <URL:https://web.archive.org/web/2018070862107/https://knatsubrand81.com/hikikata/hikikata-071.html> [retrieved on 20200604] *

Also Published As

Publication number Publication date
CN118038837A (zh) 2024-05-14
CN113767430A (zh) 2021-12-07
US12525212B2 (en) 2026-01-13
US20210383783A1 (en) 2021-12-09
JP2020160199A (ja) 2020-10-01
CN113767430B (zh) 2024-02-23
JP7230629B2 (ja) 2023-03-01

Similar Documents

Publication Publication Date Title
US20070289432A1 (en) Creating music via concatenative synthesis
JP7544154B2 (ja) 情報処理システム、電子楽器、情報処理方法およびプログラム
JP6750727B2 (ja) 移調装置、移調方法及びプログラム
WO2019176954A1 (en) Machine learning method, electronic apparatus, electronic musical instrument, model generator for part selection, and method of part determination
JP7375302B2 (ja) 音響解析方法、音響解析装置およびプログラム
JP6455878B2 (ja) 共鳴音発生装置およびプログラム
US9818388B2 (en) Method for adjusting the complexity of a chord in an electronic device
JP7230629B2 (ja) コード処理方法、コード処理装置およびプログラム
JP7251248B2 (ja) コード処理方法、コード処理装置およびプログラム
US12118968B2 (en) Non-transitory computer-readable storage medium stored with automatic music arrangement program, and automatic music arrangement device
JP7425558B2 (ja) コード検出装置及びコード検出プログラム
JP2018159741A (ja) 歌詞候補出力装置、電子楽器、歌詞候補出力方法、及びプログラム
JP6582517B2 (ja) 制御装置およびプログラム
Bader Characterization of guitars through fractal correlation dimensions of initial transients
JP2004226782A (ja) 演奏データ処理装置および演奏データ処理用プログラム
JPWO2006062064A1 (ja) 楽曲処理装置
JP5776205B2 (ja) 音信号生成装置及びプログラム
JP5703555B2 (ja) 楽音信号処理装置及びプログラム
JP3933070B2 (ja) アルペジオ生成装置及びプログラム
Wandel et al. Harmonic inharmonicity: Eliminating beats with quantized harmonics
JP4760348B2 (ja) 楽曲選択装置および楽曲選択用コンピュータプログラム
US20210366453A1 (en) Sound signal synthesis method, generative model training method, sound signal synthesis system, and recording medium
JP5659501B2 (ja) 電子音楽装置及びプログラム
JP6036800B2 (ja) 音信号生成装置及びプログラム
JP2023045356A (ja) 情報処理装置、方法及びプログラム

Legal Events

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

Ref document number: 20777843

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 20777843

Country of ref document: EP

Kind code of ref document: A1