WO2019208391A1 - 音楽性情報提供方法、音楽性情報提供装置、及び音楽性情報提供システム - Google Patents

音楽性情報提供方法、音楽性情報提供装置、及び音楽性情報提供システム Download PDF

Info

Publication number
WO2019208391A1
WO2019208391A1 PCT/JP2019/016635 JP2019016635W WO2019208391A1 WO 2019208391 A1 WO2019208391 A1 WO 2019208391A1 JP 2019016635 W JP2019016635 W JP 2019016635W WO 2019208391 A1 WO2019208391 A1 WO 2019208391A1
Authority
WO
WIPO (PCT)
Prior art keywords
performance data
performance
musicality
information
distance
Prior art date
Application number
PCT/JP2019/016635
Other languages
English (en)
French (fr)
Inventor
伸一 山際
吉伸 河原
秀方 栂井
喜康 北川
田中 郁生
智子 仲井
Original Assignee
国立大学法人筑波大学
国立大学法人大阪大学
ローランド株式会社
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 国立大学法人筑波大学, 国立大学法人大阪大学, ローランド株式会社 filed Critical 国立大学法人筑波大学
Publication of WO2019208391A1 publication Critical patent/WO2019208391A1/ja
Priority to US17/078,621 priority Critical patent/US11600251B2/en

Links

Images

Classifications

    • 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
    • G10G3/00Recording music in notation form, e.g. recording the mechanical operation of a musical instrument
    • G10G3/04Recording music in notation form, e.g. recording the mechanical operation of a musical instrument using electrical means
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10GREPRESENTATION OF MUSIC; RECORDING MUSIC IN NOTATION FORM; ACCESSORIES FOR MUSIC OR MUSICAL INSTRUMENTS NOT OTHERWISE PROVIDED FOR, e.g. SUPPORTS
    • G10G1/00Means for the representation of music
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10HELECTROPHONIC MUSICAL INSTRUMENTS; INSTRUMENTS IN WHICH THE TONES ARE GENERATED BY ELECTROMECHANICAL MEANS OR ELECTRONIC GENERATORS, OR IN WHICH THE TONES ARE SYNTHESISED FROM A DATA STORE
    • G10H1/00Details of electrophonic musical instruments
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10HELECTROPHONIC MUSICAL INSTRUMENTS; INSTRUMENTS IN WHICH THE TONES ARE GENERATED BY ELECTROMECHANICAL MEANS OR ELECTRONIC GENERATORS, OR IN WHICH THE TONES ARE SYNTHESISED FROM A DATA STORE
    • G10H1/00Details of electrophonic musical instruments
    • G10H1/02Means for controlling the tone frequencies, e.g. attack or decay; Means for producing special musical effects, e.g. vibratos or glissandos
    • G10H1/06Circuits for establishing the harmonic content of tones, or other arrangements for changing the tone colour

Definitions

  • the present invention relates to a music information providing method, a music information providing apparatus, and a music information providing system.
  • Patent Documents 1 and 2 Conventionally, for the purpose of evaluating individual skills, there are devices that compare performance data of a user with music data for evaluation and evaluate performance (for example, Patent Documents 1 and 2). There are also devices that determine the similarity between performance data and music data for the purpose of evaluation and search for performances (for example, Patent Documents 3 to 6).
  • JP 2004-272130 A JP 2001-242863 A JP 2014-38308 A JP 2017-83484 A JP 2016-161900 A JP2015-4974A
  • the performance content of the music varies depending on the musicality of each performer, such as the interpretation of the music, the approach (concept) to the music, and the purpose of the performance.
  • Musicality is comprehensively judged or classified using performance elements such as articulation, rhythm, phrasing, and dinner miku.
  • An object of the present invention is to provide a musicality information providing method, a musicality information providing apparatus, and a musicality information providing system capable of providing information that can be used for determination and classification of musicality.
  • first performance data obtained by playing a predetermined musical piece is acquired, and a combination of a plurality of parameters indicating musicality included in the first performance data is combined with the first performance data.
  • the music of the first performance data including information indicating the distance is calculated by calculating a distance from each of the plurality of second performance data that has played the predetermined music to be compared with the first performance data.
  • the musical property to which the first performance data belongs is intuitively determined by the information indicating the distance between the first performance data and the plurality of second performance data for a combination of a plurality of parameters indicating musical properties. And the group to which it belongs can be classified.
  • the first and second performance data may be classified into a plurality of musical groups using a predetermined classification algorithm such as the k-means method.
  • the combination of the plurality of parameters indicating the musicality includes at least a time difference between an operation start timing of the performance operator in the standard performance of the predetermined music and an operation start timing of the performance operator in the first performance data.
  • the parameter combined with the time difference can be appropriately selected from a plurality of selectable parameters. For example, a time difference between an operation start timing of the performance operator in the standard performance of the predetermined music and an operation start timing of the performance operator in the first performance data, and an operation of the performance operator in the first performance data And the length of the sound produced by the operation of the performance operator in the first performance data.
  • the difference between the strength of operation of the performance operator in the first performance data and the strength of operation in the standard performance, or the first performance data may be used.
  • the information indicating the distance includes information indicating a distribution of the first performance data and the plurality of second performance data for the plurality of parameters indicating the musicality.
  • the information indicating the distance is information indicating second performance data that is within a predetermined order in a descending order or a large distance from the first performance data among the plurality of second performance data.
  • the information indicating the distance may include information indicating each performer of the first performance data and the second performance data.
  • the music information providing method determines a music group to which a player of the first performance data belongs based on the information indicating the distance, and the first performance data belonging to the determined group
  • the method may further include obtaining a plurality of different performance data and generating edited performance data obtained by editing the plurality of performance data.
  • the edited performance data may be transmitted to a predetermined transmission destination.
  • Another aspect of the present invention relates to a combination of an acquisition unit that acquires first performance data obtained by playing a predetermined musical piece, and a plurality of parameters indicating musicality included in the first performance data.
  • a calculation unit for calculating a distance between each of the performance data and the first performance data, each of the plurality of second performance data playing the predetermined music, and information indicating the distance.
  • a musicality information providing apparatus including an output unit for outputting information for determining musicality of the first performance data.
  • a terminal device that transmits performance data of a predetermined musical piece played using an electronic musical instrument, a receiving unit that receives the performance data as first performance data, and the first performance A combination of a plurality of parameters indicating musicality included in the data is compared with the first performance data and the first performance data.
  • a musicality information providing system comprising: a calculation unit that calculates a distance to each; and a server that includes an output unit that outputs information for determining musicality of the first performance data, including information indicating the distance. is there.
  • another aspect of the present invention can include a program that causes a computer to operate as a server including the reception unit, the calculation unit, and the output unit, or a recording medium that stores the program.
  • FIG. 1 shows an example of a music information providing system according to the first embodiment.
  • FIG. 2 is a diagram illustrating an electrical configuration example of an electronic piano.
  • FIG. 3 shows a configuration example of the terminal device.
  • FIG. 4 shows a configuration example of the server.
  • FIG. 5 is a flowchart illustrating a processing example in the server.
  • FIG. 6 is a flowchart illustrating an example of preprocessing.
  • FIG. 7 is an explanatory diagram of musicality parameters.
  • FIG. 8 is an explanatory diagram of a method for calculating the distance between performance data.
  • FIG. 9 is an explanatory diagram of a method for calculating the distance between performance data.
  • FIG. 10 shows an example of a distance matrix.
  • FIG. 11 shows an example of a graph visualized by multidimensional scaling.
  • FIG. 1 shows an example of a music information providing system according to the first embodiment.
  • FIG. 2 is a diagram illustrating an electrical configuration example of an electronic piano.
  • FIG. 3 shows
  • FIG. 12 shows an example of ranking information.
  • FIG. 13 is a flowchart illustrating an example of music data editing processing.
  • FIG. 14 is a flowchart illustrating an exemplary process performed by a server processor according to the second exemplary embodiment.
  • FIG. 15 is an explanatory diagram of generation and update of the distance matrix.
  • FIG. 16 is an explanatory diagram of generation and update of the distance matrix.
  • FIG. 1 shows an example of a music information providing system according to the first embodiment.
  • the musical information providing system includes an electronic piano 10, a terminal device 20, and a server 30.
  • the electronic piano 10 is an example of an electronic musical instrument that can be applied to a musical information providing system.
  • Applicable electronic musical instruments include various electronic musical instruments that imitate keyboard instruments (piano, organ, synthesizer, etc.), percussion instruments (drums, etc.), wind instruments (saxophone, etc.).
  • the electronic piano 10 can record music (Performance Instrument Digital Interface) recorded by the performer and store it as a MIDI file.
  • the electronic piano 10 can perform near field communication with the terminal device 20, and can transmit a MIDI file to the terminal device 20.
  • the terminal device 20 is a mobile device such as a smartphone or a tablet terminal, and transmits a MIDI file to the server 30 via the network 1.
  • the terminal device 20 is not limited to a wireless terminal such as a mobile device, and may be a fixed terminal such as a personal computer or a workstation.
  • the network 1 is a wide area network such as a LAN or a WAN.
  • a part of the network 1 may include a wireless section.
  • the wireless section is constructed by, for example, a wireless LAN network such as WiFi, or a cellular network such as 3G or LTE.
  • the server 30 performs processing for outputting musical information, that is, information usable for determination and classification of musical performance.
  • the server 30 collects and stores MIDI files of a plurality of performers for a predetermined music piece.
  • the MIDI file includes performance data for reproducing a performance, and the performance data includes a plurality of parameters related to the performance.
  • the server 30 calculates a distance (similarity) between a plurality of performance data with respect to a combination of a plurality of parameters indicating musicality (referred to as a musicality parameter) among a plurality of parameters included in the performance data, and this distance.
  • Musical information including information indicating is output.
  • the server 30 compares performance data (to be referred to as first performance data) to be compared with a plurality of performance data (a plurality of performance data different from the first performance data) to be compared with the first performance data for a certain musical piece.
  • the distance to each of the second performance data) is calculated.
  • the server 30 outputs information including a ranking table (ranking) in which the second performance data is arranged in ascending order of distance or in order of increasing distance.
  • the server 30 outputs information visualizing the distance between the first performance data and the second performance data.
  • the server 30 stores information indicating a musical group to which the first performance data belongs.
  • the server 30 extracts music data belonging to the same group as the music group to which the first performance data belongs (same music characteristics) from the music database, and editing the plurality of extracted music data A MIDI file of music data is generated.
  • the server 30 transmits the MIDI file of the edited music data to a predetermined destination, for example, a predetermined terminal device 20 via the network 1.
  • the terminal device 20 can send edited music data to a predetermined electronic piano 10 so that the electronic piano 10 can automatically perform the performance.
  • the MIDI file of edited music data can also be played back on the terminal device 20 using a MIDI playback application (called a MIDI player).
  • FIG. 2 is a diagram illustrating an electrical configuration example of the electronic piano 10.
  • the electronic piano 10 includes a CPU (Central Processing Unit) 11, a ROM (Read Only Memory) 12, a RAM (Random Access Memory) 13, a flash memory 14, a short-range wireless circuit 15, a keyboard 5, and an operation panel. 6, a pedal 7, and a sound source 8, which are connected to each other via a bus line 4.
  • the electronic piano 10 includes a D / A converter (DAC) 16, amplifiers 17L and 17R, and speakers 18 and 19.
  • DAC D / A converter
  • the sound source 8 is connected to the input of the DAC 16, and the output of the DAC 16 is connected to the inputs of the amplifiers 17L and 17R.
  • the output of the amplifier 17L is connected to the speaker 18, and the output of the amplifier 17R is connected to the speaker 19.
  • the CPU 11 is an arithmetic processing unit
  • the ROM 12 is a memory that stores various control programs executed by the CPU 11 and fixed value data referred to during the execution.
  • the RAM 13 is a rewritable memory for temporarily storing various data and the like when executing the control program stored in the ROM 12.
  • the flash memory 14 is a non-volatile memory that continuously stores contents even when the power of the electronic piano 10 is turned off.
  • the keyboard 5 has a plurality of keys (white key and black key) (not shown).
  • the key is an example of a performance operator.
  • the operation panel 6 includes various volumes, switches, and the like, and the performer is configured to be able to set various operation modes, musical tone parameters, and the like of the electronic piano 10 using the operation panel 6.
  • the pedal 7 is a device that is operated when the performer steps on with his / her foot.
  • the pedal 7 is provided to obtain an acoustic effect by operating a soft pedal, a damper pedal, or the like. For simplicity of explanation, it is assumed that the pedal 7 has one pedal.
  • the sound source 8 has a DSP (Digital Signal Processor) 9 built-in, and when the keyboard 5 is depressed, a stereo digital music signal having a pitch and tone corresponding to the musical tone information output from the CPU 11. On the other hand, when the keyboard 5 is released, the generation of the digital musical tone signal is stopped.
  • DSP Digital Signal Processor
  • the stereo-type digital musical tone signal indicates a digital musical tone signal having an L channel (left channel) and an R channel (right channel).
  • the DAC 16 converts the stereo digital music signal into a stereo analog music signal.
  • the L channel analog musical tone signal output from the DAC 16 is input to the amplifier 17L and amplified.
  • the amplified musical sound signal is converted into musical sound and output from the speaker 18.
  • the musical sound output from the speaker 18 is a component mainly composed of the L channel of the musical sound corresponding to the key depression, that is, the low frequency musical sound.
  • the R channel analog musical tone signal output from the DAC 16 is input to the amplifier 17R and amplified.
  • the amplified musical sound signal is converted into a musical sound and output from the speaker 19.
  • the musical sound output from the speaker 19 is a component mainly composed of the R channel of the musical sound corresponding to the key depression, that is, the high-frequency musical sound.
  • the CPU 11 performs the MIDI recording of the music performed by the performer, that is, the generation processing of the performance data (MIDI file) by executing the program.
  • the operation status of the keyboard 5 and the pedal 7 during the performance of the performer's music is performance data as parameter information indicating performance information (sounding timing, pitch, strength, etc.) created based on the MIDI standard. include.
  • the MIDI file (performance data) includes at least the following parameters. ⁇ Key type pressed ⁇ Note on ⁇ Note off ⁇ Velocity ⁇ Hold
  • Note on indicates the start timing of the sound, and note off indicates the end timing of the sound.
  • note-on indicates key press timing
  • note-off indicates key release timing.
  • Sound continues to be output from note-on to note-off.
  • Velocity indicates the strength of key depression. Duration is also called gate time, and indicates the number of ticks (minimum unit of time) from note-on to note-off, that is, the length of sound. The hold represents, for example, the strength and timing when the pedal 7 is depressed.
  • Note-on corresponds to the operation start timing of the performance operator of the musical instrument, and velocity corresponds to the strength of operation of the performance operator.
  • the CPU 11 stores the generated MIDI file in the flash memory 14.
  • the short-range wireless circuit 15 is a communication interface for performing wireless communication in accordance with a predetermined short-range wireless communication standard such as Bluetooth (registered trademark), BLE, or Zigbee.
  • a MIDI file is transmitted to the terminal device 20 by communication using the short-range wireless communication circuit 15.
  • FIG. 3 shows a configuration example of the terminal device 20.
  • the terminal device 20 includes a processor 21, a storage device 22, a communication circuit 23, a short-range wireless communication circuit 24, an input device 25, and an output device 26 that are connected to each other via a bus 27.
  • the storage device 22 includes a main storage device and an auxiliary storage device.
  • the main storage device is used as a storage area for programs and data, a work area for the processor 21, a buffer area for communication data, and the like.
  • the main storage device is composed of RAM or a combination of RAM and ROM.
  • the auxiliary storage device is used for storing data and programs.
  • the auxiliary storage device is a hard disk, SSD (Solid State Drive), flash memory, EEPROM or the like.
  • the communication circuit 23 is a communication interface circuit (network card) used for communication with the network 1.
  • the near field communication circuit 24 is a communication interface circuit for near field communication, and is used for communication with the electronic piano 10 and the like.
  • the input device 25 is used for inputting information.
  • the input device 25 includes a key, a button, a pointing device, a touch panel, and the like.
  • the output device 26 is used for outputting information.
  • the output device 26 is a display, for example.
  • the input device 25 may include an audio or video input device (a microphone or a camera).
  • the output device 26 may include an audio output device (speaker).
  • the processor 21 includes a CPU and the like, and performs various processes by executing a program stored in the storage device 22. For example, a process of performing short-range wireless communication with the electronic piano 10 and receiving a MIDI file and storing it in the storage device 22, a process of transmitting the MIDI file stored in the storage device 22 to the server 30 via the network 1, etc. I do.
  • FIG. 4 shows a configuration example of the server.
  • the server 30 is configured using a dedicated or general-purpose computer (information processing apparatus) such as a server machine, a personal computer, or a workstation.
  • the server 30 includes a processor 31, a storage device 32, a communication circuit 33, an input device 35, and an output device 36 that are connected to each other via a bus 37.
  • the processor 31, the storage device 32, the communication circuit 33, the input device 35, and the output device 36 may be of the same type as the processor 21, the storage device 22, the communication circuit 23, the input device 25, and the output device 26. it can. However, high performance and high accuracy are applied according to the processing load and scale.
  • the storage device 32 stores a program executed by the processor 31 and data used when the program is executed.
  • the processor 31 performs various processes for classifying a plurality of performance data into musical groups by executing a program stored in the storage device 32.
  • the processor 31 calculates a distance (statistical distance) between performance data regarding a combination of a plurality of parameters indicating musicality (musical parameter) included in each of the collected performance data (MIDI files). Calculation is performed to generate a distance matrix indicating the distance between performance data.
  • the processor 31 performs processing (preprocessing) for obtaining musicality parameters using the performance data and the standard performance data. Further, with respect to the musicality parameter, using the performance data to be compared and the distance matrix, the performance data to be compared (first performance data) and a plurality of performance data (a plurality of second performance data) forming a distance matrix. Data) is calculated, and information indicating the distance between the first performance data and each second performance data is output.
  • the communication circuit 33 operates as an “acquisition unit” and a “reception unit”, the processor 31 operates as a “calculation unit”, and the output device 36 operates as an “output unit”.
  • the storage device 32 is an example of a storage medium.
  • the CPU is also called an MPU (Microprocessor) or processor.
  • the CPU is not limited to a single processor, and may have a multiprocessor configuration.
  • a single CPU connected by a single socket may have a multi-core configuration.
  • at least a part of the processing performed by the CPU may be executed by a multi-core or a plurality of CPUs.
  • At least a part of the processing performed by the CPU may be performed by a processor other than the CPU, for example, a dedicated processor such as a Digital Signal Processor (DSP), a Graphics Processing Unit (GPU), a numerical processor, a vector processor, an image processor, or the like. Good.
  • DSP Digital Signal Processor
  • GPU Graphics Processing Unit
  • numerical processor a vector processor
  • an image processor or the like. Good.
  • the processing performed by the CPU may be performed by an integrated circuit (IC, LSI) or other digital circuit. Further, the integrated circuit and the digital circuit may include an analog circuit.
  • the integrated circuit includes an LSI, Application Specific Integrated Circuit (ASIC), and programmable logic device (PLD). PLD includes Complex Programmable Logic Device (CPLD) and Field-Programmable Gate Array (FPGA).
  • CPLD Complex Programmable Logic Device
  • FPGA Field-Programmable Gate Array
  • At least a part of the processing performed by the CPU may be executed by a combination of a processor and an integrated circuit. The combination is called, for example, a microcontroller (MCU), a SoC (System-on-a-chip), a system LSI, a chip set, or the like.
  • FIG. 5 is a flowchart illustrating an example of processing in the server 30.
  • the process of FIG. 5 is performed by the processor 31 of the server 30.
  • the processor 31 acquires performance data to be compared (first performance data).
  • the performance data to be compared is a MIDI file obtained by MIDI recording a performance of a predetermined music performed by a certain performer (referred to as a first performer) using the electronic piano 10.
  • the performance data to be compared is acquired by receiving the server 30 from the terminal device 20 via the network 1 as described above.
  • the performance data to be compared may be acquired from a device other than the terminal device 20, for example, from the storage device 32 in the server 30 or an external storage device, or from a device other than the terminal device 20 via the network 1.
  • the processor 31 stores the performance data to be compared associated with the performance identification information and the player identification information in the storage device 32.
  • the processor 31 acquires a MIDI file of a standard performance to be compared with performance data to be compared.
  • a standard performance MIDI file is, for example, performance data when the above-mentioned predetermined music piece is played according to its score (musical score).
  • the MIDI file of the standard performance may be stored in advance in the storage device 32 or may be acquired from a predetermined device via the network 1. The processing order of S01 and S02 may be reversed.
  • the processor 31 performs processing (referred to as preprocessing) for obtaining musicality parameters using the MIDI file of performance data to be compared and the MIDI file of standard performance.
  • FIG. 6 is a flowchart showing an example of preprocessing. Preprocessing is performed by the processor 31.
  • the processor 31 extracts event data of the MIDI file to be compared.
  • the processor 31 extracts event data of a standard performance MIDI file.
  • the processor 31 calculates a time difference between events.
  • FIG. 7 is an explanatory diagram of musicality parameters including time differences between events.
  • Note on and note off described above are one of MIDI events. Note-on and note-off are stored as time (time stamp) from the start of performance. The standard performance MIDI (performance data) and the performance data to be compared are compared on the same time axis. In MIDI, when a note-on event occurs, the note-on occurrence time, key type, and key-pressing strength (velocity) are recorded as event data. When a note-off event occurs, the note-off occurrence time and the key type are recorded as event data.
  • the time difference between the standard performance note-on time and the comparison target note-on time (from the comparison target note-on time to the standard performance note-on time).
  • the processor 31 records the time difference (referred to as note on time difference or sounding time difference) as the event time difference. Also, the velocity to be compared is recorded.
  • the time difference between the note-off time of the standard performance and the note-off time to be compared (referred to as a note-off time difference or a mute time difference) is also determined by the processor 31. Record as time difference. However, recording the mute time difference is optional.
  • the processor 31 records the time length between note-on and note-off, that is, duration, with respect to performance data to be compared. Events are recorded in ticks. The time length of one tick is determined by the time base and tempo. Also, the timing and strength (called hold) at which the pedal 7 is depressed are recorded as events. The processor 31 records the duration of performance data to be compared. The duration corresponds to the length of sound produced by the operation of the performance operator.
  • the processor 31 performs the above processing on all or a predetermined part of performance data to be compared, creates a list of events arranged in time series, and stores it in the storage device 32 (S14).
  • the list of events includes parameters included in the MIDI file, such as note-on, note-off, velocity, and hold, and parameters in the MIDI file, such as note-on time difference, note-off time difference, and duration, for the performance data to be compared.
  • a record of parameters calculated using is included.
  • the processor 31 selects a musicality parameter.
  • Music is categorized by, for example, comprehensive judgment on articulation, rhythm, phrasing, and dynamik.
  • Articulation is the division of melody, etc. by adjusting the shape of the sound and adding various strengths and expressions to the connection between the sounds in the music playing method. Often used in shorter units than phrases.
  • Phrasing refers to adding an expression to music by dividing between phrases. Phrasing may be indicated by a slur.
  • Dinner Miku is a musical expression based on a change in sound intensity or contrast.
  • the processor 31 uses a plurality of parameters (that is, note-on, note-off, velocity) obtained from performance data (MIDI file) to use a note-on time difference, a note-off time difference, and a duration.
  • the processor 31 selects, as a musicality parameter, a combination of the note-on time difference, the velocity of the performance data to be compared, and the duration of the performance data to be compared among these calculated parameters. Thereafter, the process returns to S04, and the performance data to be compared (first performance data) and each of the plurality of performance data (a plurality of second performance data) forming a distance matrix with respect to the musicality parameter described above. Distance calculation is performed.
  • the distance (similarity) between the musicality parameter of the first performance data and each musicality parameter of the plurality of second performance data is calculated.
  • the musicality parameter data is associated with, for example, the note-on occurrence time in the performance data to be compared, and the note-on time difference and the velocity and duration in the corresponding performance data to be compared are stored. It is data.
  • the musicality parameter data has three elements of note-on time difference, comparison velocity and duration, and can be handled as data (function) changing on the time axis.
  • the generation of the distance matrix which is the premise for the process of S04, will be described.
  • a plurality of performance data different from the first performance data which are a plurality of performance data for the same music as the music of the first performance data, are used as the plurality of second performance data.
  • Data indicating each musicality parameter (combination of note-on time difference, velocity, and duration) of data is stored.
  • Each musicality parameter of the plurality of second performance data is subjected to the same processing as the above-described pre-processing with each of the plurality of performance data as a comparison target (corresponding to the note-on time difference from the standard performance). And store the velocity and duration in association).
  • a plurality of second performance data by a plurality of performers are stored for one musical piece.
  • the plurality of second performance data may include two or more performance data obtained by a plurality of performances (takes) by the same performer.
  • performance data by the same performer as the performer of the first performance data may be included in the second performance data.
  • the plurality of second performance data may be collected from one or a plurality of terminal devices 20, or may be provided as big data from any data source (server device or the like) of the network 1. Good.
  • Each of the plurality of second performance data is stored in association with information indicating the performer.
  • the plurality of second performance data is output to SVM (Support Vector Vector Machines).
  • SVM Small Vector Vector Machines
  • the SVM is realized by the processor 31 executing a program for SVM stored in the storage device 32.
  • the processor 31 uses kernel tricks to nonlinearly transform the input space X (graph on the left side in FIG. 8) into the feature space H (graph on the right side in FIG. 8), as shown in FIG. The distance from the origin of each performance data is obtained.
  • the graph (input space X) on the left side of FIG. 8 schematically shows an N-dimensional graph composed of N factors in two dimensions. Each point in the graph of FIG. 8 indicates performance data (musical parameter data).
  • the performance data includes three pieces of note sound time difference, velocity, and duration as elements (vectors), which are collected as many times as the number of note-ons to be compared.
  • the decision surface in the input space X is a nonlinear curved surface in the N-dimensional space.
  • the distance between performance data in the feature space H is calculated.
  • a distance from other performance data is calculated.
  • the calculation result of the distance is stored in the storage device 32 in a matrix format (distance matrix).
  • the processor 31 applies a single class SVM to each of the second performance data, and calculates the distance from the origin on the axis of the data space.
  • d is the number of dimensions of measurement, and indicates the number of types of data included in one piece of performance data.
  • a mapping from the input space X to the feature space H is represented by ⁇ (•).
  • the hyperplane in the feature space H is estimated so that it separates more performance data at a distance farther from the origin. Any hyperplane in such a feature space H is described as in equation (2).
  • the hyperplane is obtained by solving equation (3).
  • ⁇ i is a slack variable.
  • v is a positive parameter for adjusting the amount of possible position on the origin side.
  • the kernel function is defined by equations (4) and (5).
  • the denominator of equation (8) is the length of an arc (arc C u P u ) between the point C u and the point P u on the unit circle CR1, and the point C v and the point P v on the unit circle CR1.
  • W u in FIG. 7 is defined by equation (9).
  • the length of the arc c u p u in equation (8) indicates a measure of the variance of the sample (performance data) in ⁇ (x) in the feature space H.
  • the arc c u p u increases and the margin expressed by equation (10) decreases.
  • the value of D uv depends on the expected behavior in the feature space H. That is, the value of D uv increases as the spread of the sample increases, and decreases as the overlap increases.
  • D uv is represented by the unit circle and the length of the arc ab between the two vectors a and b.
  • the arc length of the vector a and the vector b is equivalent to the angle formed by the vector a and the vector b, and the expression (11) is established for the vector a and the vector b, and the length of the arc ab is the expression ( 12). Therefore, c u is obtained as in equation (13), and c v is obtained as in equation (14).
  • the arc length of c u c v is derived by equation (15).
  • K uv in Equation (15) is a kernel matrix.
  • the kernel matrix is represented by an element k (x u, i , x u, j ) for column i and row j.
  • the length of the arc c u p u is expressed by the following equation (16).
  • the distance from the origin for each performance data is calculated by calculating the single class SVM model.
  • the distance between all the performance data is obtained from the distance from the origin of each performance data.
  • FIG. 10 shows an example of a distance matrix.
  • the processor 31 of the server 30 calculates a brute force distance regarding the musicality parameter regarding the plurality of second performance data stored in the storage device 32.
  • the processor 31 stores the calculated distance in the storage device 32 in the form of a matrix (distance matrix).
  • distance matrix distances calculated in a brute force manner are stored in a matrix for a plurality of performance data, and in the example of FIG. 10, five performance data d (1) to d (5).
  • the distance between the same performance data is “0”, and the value of the diagonal line extending from the upper left to the lower right of the matrix is “0”.
  • the matrix of d (2) indicates the distance between d (2) and d (1)
  • the matrix of d (3) is the distance between d (3) and each of d (1) and d (2).
  • the matrix of d (4) indicates the distance between d (4) and each of d (1) to d (3).
  • the matrix of d (5) indicates the distance between d (5) and each of d (1) to d (4).
  • the processor 31 calculates the distance between the first performance data and the plurality of second performance data for the above-described musicality parameter using the above-described distance calculation method.
  • the processor 31 reads the distance matrix from the storage device 32, updates the distance matrix by adding a matrix indicating the distance between the first performance data and each of the plurality of second performance data (S05).
  • the processor 31 generates graph data for visualizing the distribution of the distance between the first performance data and the plurality of second performance data with respect to the musicality parameter by multidimensional scaling (MDS), and outputs the data 36. To display the output.
  • MDS multidimensional scaling
  • FIG. 11 shows an example of a graph visualized by multidimensional scaling.
  • the points indicating the first performance data are arranged almost at the center of the screen as the “target user” points, and the points indicating the second performance data are distributed with a distance from the first performance data. Yes.
  • performance identification information such as a player name may be displayed near each point indicating performance data. A person who refers to such distribution of performance data can intuitively classify the performer into a plurality of musical groups.
  • the processor 31 generates ranking information indicating the performance data to be compared, that is, a plurality of second performance data to be compared with the first performance data, in order of increasing distance or decreasing order of distance, Output from the output device 36.
  • FIG. 12 shows an example of ranking information.
  • the performance data is stored in association with the performer name (performer identification information), the performance identification number (performance identification information), and the music name. For each of the second performance data to be compared with the first performance data, the name of the performer, the performance identification number, and the distance between the first performance data regarding the musicality parameter are displayed.
  • the top 30 rankings are displayed in a table format in ascending order of distance.
  • the performer of the first performance data is “Ana”, and the performer ranked first is “Ana”, the same performer.
  • the distance is small (similarity is high).
  • the reference person can intuitively classify the performer into a plurality of musical groups.
  • the first performance data becomes one of a plurality of second performance data by being incorporated into the distance matrix.
  • the performance data is specified, ranking information is generated using the specified performance data as a comparison target player.
  • the performance data is specified by inputting or specifying the performer and the performance trial number when the music is the same.
  • the ranking information is generated when the processor 31 compares the performance data specified in one of the matrixes of performance data (the performance data that was the first performance data) last added to the distance matrix.
  • the performance data is set and rearranged in order of increasing or decreasing distance.
  • the second performance data and the distance matrix are stored in the storage device 32 for two or more songs, and the distance calculation is performed for each of the two or more songs to display the distribution and ranking.
  • the plurality of performance data may be automatically or mechanically classified into a plurality of musical groups using a predetermined classification algorithm such as a k-means method.
  • a person (such as an operator of the server 30) who refers to a graph or ranking table showing the distribution of performance data can classify the first and second performance data (performers) into two or more musical groups.
  • Each piece of performance data is stored in the storage device 32 in association with information indicating a group to which each piece of performance data belongs.
  • the storage device 32 stores a database of a plurality of music pieces.
  • the musical composition database stores performance data (MIDI files) for a plurality of musical compositions and information indicating the musical group to which each performance data belongs.
  • FIG. 13 is a flowchart showing an example of music data editing processing.
  • S ⁇ b> 31 information specifying a musical group is input to the server 30 by input from the input device 35 or reception from the network 1.
  • the processor 31 acquires one or more performance data associated with the designated musicality group from the storage device 32 (S32). As long as one or two or more pieces of performance data are acquired, the number of pieces of music to be acquired and the number of pieces of performance data can be set as appropriate.
  • the processor 31 edits performance data of one or more music pieces based on a predetermined editing rule. For example, partial performance data is extracted from each of one or more performance data, and the partial performance data is connected to generate edited performance data.
  • the extraction of the partial data may be any method such as extraction of a predetermined measure from the start of performance, extraction of a chorus part or a so-called chorus part, extraction of a predetermined time from the start of the performance, and there is no particular limitation. . You may connect as it is, without extracting partial data from the performance data of two or more music.
  • the joining portion may be provided with a silent section even if the music pieces overlap each other.
  • the processor 31 stores the MIDI file of the edited performance data generated in S33 in the storage device 32.
  • the processor 31 sends the edited performance data to the transmission destination. Send a MIDI file.
  • the transmission destination is, for example, the terminal device 20 that has transmitted a request for providing edited performance data.
  • the edited performance data may be transmitted to a device other than the terminal device 20.
  • the terminal device 20 may store the edited performance data in the storage device 22 and output a playback sound of the edited performance data using a playback application (MIDI player) executed by the processor 21.
  • the edited performance data may be transferred to the electronic piano 10 and the electronic piano 10 may perform automatic performance using the edited performance data.
  • the performance data acquired in S32 may be transmitted to a predetermined transmission destination instead of the edited performance data.
  • a musical group to which the first performance data belongs is specified when the calculation result of the distance for the performance data (first performance data) to be compared is output, and the musical group is assigned to the musical group.
  • the music piece to which it belongs may be searched from the music database, a list of search results may be created, and stored in association with the performer of the first performance data.
  • information indicating the distance between performance data is output for the musicality parameter, and is used for classification of musicality groups.
  • This makes it possible to objectively present or classify musicality, which is a subjective evaluation.
  • performance data of a predetermined player a well-known player, a prize winner of a competition, etc.
  • a distance from a plurality of second performance data is calculated. You can find a group of performers who are close to musicians.
  • the ranking and distribution display can be used as information for communication between people with similar musicality and for forming a community. Further, by making it possible to specify the musical group to which the performer belongs, it is possible to generate edited musical composition data of the musical composition belonging to the group and provide it to the terminal device 20 of the performer. The person who received the offer can listen to the music having the same (preferred) musicality. Alternatively, the edited music data of music belonging to a certain musical group is transmitted to the terminal device 20, and the electronic piano 10 or the like is automatically played, so that a favorite musical composition can be obtained at a gathering of persons belonging to the musical group. You can play your performance.
  • note-on time difference As a musicality parameter, note-on time difference, velocity of performance data to be compared (first performance data), and duration of performance data to be compared (first performance data) A combination was illustrated.
  • the parameter combined with the note-on time difference can be selected as appropriate in addition to the example in the embodiment.
  • the difference between the velocity in the standard performance and the performance data to be compared referred to as velocity difference
  • the difference between the duration in the standard performance and the performance data to be compared referred to as duration difference
  • these may be used as elements of musicality parameters. That is, a combination of note-on time difference, velocity difference, and duration difference may be used as the musicality parameter.
  • At least one of the velocity to be compared, the duration to be compared, the velocity difference, and the duration difference can be selected as a parameter to be combined with the note-on time difference.
  • either one of the velocity and velocity difference to be compared with respect to velocity and one of the duration and duration difference to be compared with respect to duration may be selected and combined with the note-on time difference.
  • note-on time difference, velocity and duration of performance data to be compared are recorded as musicality parameters in the preprocessing.
  • the processor 31 can also determine whether or not note-on in the performance data to be compared is a mistouch.
  • the mistouch determination method can be selected as appropriate. For example, the mistouch may be determined when the key type is different from the key type in the standard performance.
  • the processor 31 determines that the note-on is a mistouch (for example, a key in standard performance)
  • the processor 31 skips the calculation of the note-on time difference and duration related to the note-on and excludes it from the data used for the distance calculation. In this way, mistouch can be excluded from information for determining musicality and classification.
  • Embodiment 2 Next, Embodiment 2 will be described. Since the configuration of the second embodiment has common points with the configuration of the first embodiment, differences will be mainly described, and descriptions of the common points will be omitted.
  • the configurations of the electronic piano 10, the terminal device 20, and the server 30 described in the first embodiment can be applied to the second embodiment. However, the processing in the server 30 is different.
  • FIG. 14 is a flowchart illustrating an example of processing performed by the processor 31 of the server 30 according to the second embodiment.
  • the processes shown in S01 to S03 are the same as those in the first embodiment, and a description thereof will be omitted.
  • the processor 31 performs learning using the performance data classification value. That is, the processor 31 assigns an identification number (trial number) using some of the second performance data as learning samples. Further, the processor 31 calculates the distance between the performance data related to the musicality parameter described in the first embodiment with respect to the sample, and, according to the calculation result of the distance, classifies the performance data that is considered to be close to musicality. Define a classification value for each performance of the sample as you set the value. The processor 31 learns the performance data classification pattern (deep neural network (DNN) weight calculation) according to the classification value. The processor 31 generates a weight matrix for musicality classification by learning and stores it in the storage device 32. The process of S24 may be executed before S01 to S03 or in parallel.
  • DNN deep neural network
  • the processor 31 calculates musical similarity for the performance data to be compared. That is, the processor 31 uses the performance data (first performance data) to be compared for the musicality parameter obtained by the preprocessing and the weight matrix obtained by learning in S24 to perform the performance data to be compared. Get the classification value.
  • the processor 31 updates the distance matrix.
  • 15 and 16 are explanatory diagrams of generation and update of the distance matrix.
  • trial numbers 1 to 5 are assigned to five learning samples, and “1”, “2”, “1”, “5”, “ An example of a list in which 5 ′′ is defined is shown.
  • the processor 31 creates a matrix in which the trial number is a row number and a column number, and the classification value of the trial number of the target row number is an absolute value of the difference from other classification values.
  • the value of 5 rows and 1 column is “4” that is the absolute value of the difference between the classification value “1” of trial number 1 and the classification value “5” of trial number 5, and the value of 5 rows and 2 columns is The absolute value of the difference between the classification value “2” of trial number 2 and the classification value “5” of trial number 5 is “3”.
  • the value of 5 rows and 3 columns is “4” that is the absolute value of the difference between the classification value “1” of trial number 3 and the classification value “5” of trial number 5, and the value of 5 rows and 4 columns is The classification value “5” of trial number 4 and the classification value “5” of trial number 5 are “0”.
  • Such a diagonal matrix is generated as a distance matrix and stored in the storage device 32.
  • the classification value “3.3” is calculated for the performance data to be compared by calculating the similarity using the weight matrix in S25.
  • the next trial number 6 assigned to the performance data to be compared and the classification value “3.3” are added to the list.
  • 6 rows and 6 columns corresponding to trial number 6 are added to the distance matrix, and the absolute value of the difference between the classification value “3.3” of trial number 6 and the classification values of trial numbers 1 to 5 is between performance data. Is set to be the value of each column in the sixth row and the value of each row in the sixth column. In this way, the distance matrix is updated.
  • the performance data distribution is visualized, that is, the same processing as the processing in S06 is performed.
  • the difference between the classification values in the sixth row or the sixth column is treated as the distance between the performance data of trial number 6 and the performance data of trial numbers 1 to 5, and A graph showing the data and its distance by the distribution of points is output.
  • ranking information is generated and output.
  • the process of S28 is the same process as S07.
  • the difference between the classification values in the sixth row or the sixth column is the target of ranking
  • the performance data of trial number 6 is the comparison target
  • the order of the classification value (distance) is as follows.
  • ranking information arranged in descending order is generated and output by the output device 36.
  • the distance calculation can be performed not only by the method using the SVM shown in the first embodiment but also by deep learning.
  • the configurations shown in Embodiments 1 and 2 can be combined as appropriate without departing from the object.

Landscapes

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

Abstract

音楽性情報提供方法は、所定の楽曲を演奏した第1の演奏データを取得し、第1の演奏データに含まれる、音楽性を示す複数のパラメータの組み合わせについて、第1の演奏データと、第1の演奏データと比較する、所定の楽曲を演奏した複数の第2の演奏データの夫々との距離を算出し、距離を示す情報を含む、第1の演奏データの音楽性の判定用情報を出力することを含む。

Description

音楽性情報提供方法、音楽性情報提供装置、及び音楽性情報提供システム
 本発明は、音楽性情報提供方法、音楽性情報提供装置、及び音楽性情報提供システムに関する。
 従来、個人の技能評価を目的として、ユーザの演奏データを評価用の楽曲データと比較して、演奏に対する評価を行う装置がある(例えば、特許文献1、2)。また、演奏に対する評価や検索を目的として、演奏データと楽曲データとの類似性を判定する装置がある(例えば、特許文献3~6)。
特開2004-272130号公報 特開2001-242863号公報 特開2014-38308号公報 特開2017-83484号公報 特開2016-161900号公報 特開2015-4973号公報
 楽曲の演奏内容は、楽曲に対する解釈、音楽に対する取り組み(考え方)、演奏の目的など、個々の演奏者が有する音楽性によって異なる。音楽性は、例えば、アーティキュレーション、リズム感、フレージング、ディナーミクといった演奏の要素を用いて総合的に判断、或いは分類される。
 上述した従来技術は、個人の演奏技能の評価や検索のために、比較対象の演奏データを、基準データと比較し、基準データに対する類似度を判定するだけである。このように、従来技術では、複数の演奏データについて音楽性を分類する、という観点はなかった。
 本発明は、音楽性の判定や分類に供することが可能な情報を提供可能な音楽性情報提供方法、音楽性情報提供装置、及び音楽性情報提供システムを提供することを目的とする。
 本発明の一側面は、所定の楽曲を演奏した第1の演奏データを取得し、前記第1の演奏データに含まれる、音楽性を示す複数のパラメータの組み合わせについて、前記第1の演奏データと、前記第1の演奏データと比較する、前記所定の楽曲を演奏した複数の第2の演奏データの夫々との距離を算出し、前記距離を示す情報を含む、前記第1の演奏データの音楽性の判定用情報を出力することを含む音楽性情報提供方法である。
 一側面によれば、音楽性を示す複数のパラメータの組み合わせについての第1の演奏データと複数の第2の演奏データとの距離を示す情報により、直感的に第1の演奏データの属する音楽性を判定し、それが属するグループを分類可能となる。もっとも、k-means法などの所定の分類アルゴリズムを用いて、第1及び第2の演奏データを複数の音楽性のグループに分類してもよい。
 前記音楽性を示す複数のパラメータの組み合わせは、少なくとも前記所定の楽曲の標準演奏における演奏操作子の操作開始タイミングと前記第1の演奏データにおける演奏操作子の操作開始タイミングとの時間差を含むのが好ましい。当該時間差と組み合わせるパラメータは、選択し得る複数のパラメータから適宜選択できる。例えば、前記所定の楽曲の標準演奏における演奏操作子の操作開始タイミングと前記第1の演奏データにおける演奏操作子の操作開始タイミングとの時間差と、前記第1の演奏データにおける前記演奏操作子の操作の強さと、前記第1の演奏データにおける前記演奏操作子の操作による発音の長さとの組み合わせとしてもよい。もっとも、上記操作の強さや発音の長さの夫々の代わりに、前記第1の演奏データにおける前記演奏操作子の操作の強さと標準演奏における操作の強さとの差や、前記第1の演奏データにおける発音の長さと標準演奏における発音の長さとの差を用いてもよい。
 前記距離を示す情報は、前記音楽性を示す複数のパラメータについての前記第1の演奏データ及び前記複数の第2の演奏データの分布を示す情報を含む。或いは、前記距離を示す情報は、前記複数の第2の演奏データのうち、前記第1の演奏データとの距離が小さい順又は大きい順において所定順位までにある第2の演奏データを示す情報を含む。また、前記距離を示す情報は、前記第1の演奏データ及び前記第2の演奏データの夫々の演奏者を示す情報を含んでもよい。
 また、音楽性情報提供方法は、前記距離を示す情報に基づいて、前記第1の演奏データの奏者が属する音楽性のグループを判定し、前記判定したグループに属する、前記第1の演奏データと異なる複数の演奏データを取得し、前記複数の演奏データを編集した編集演奏データを生成することをさらに含んでもよい。前記編集演奏データは所定の送信先へ送信してもよい。
 本発明の他の側面は、所定の楽曲を演奏した第1の演奏データを取得する取得部と、前記第1の演奏データに含まれる、音楽性を示す複数のパラメータの組み合わせについて、前記第1の演奏データと、前記第1の演奏データと比較する、前記所定の楽曲を演奏した、複数の第2の演奏データの夫々との距離を算出する算出部と、前記距離を示す情報を含む、前記第1の演奏データの音楽性の判定用情報を出力する出力部とを含む音楽性情報提供装置である。
 また、本発明の他の側面は、電子楽器を用いて演奏した所定の楽曲の演奏データを送信する端末装置と、前記演奏データを第1の演奏データとして受信する受信部、前記第1の演奏データに含まれる、音楽性を示す複数のパラメータの組み合わせについて、前記第1の演奏データと、前記第1の演奏データと比較する、前記所定の楽曲を演奏した、複数の第2の演奏データの夫々との距離を算出する算出部、及び前記距離を示す情報を含む、前記第1の演奏データの音楽性の判定用情報を出力する出力部とを含むサーバとを含む音楽性情報提供システムである。
 また、本発明の他の側面は、コンピュータを、前記受信部、前記算出部及び前記出力部を含むサーバとして動作させるプログラム、或いは当該プログラムを記憶した記録媒体を含むことができる。
図1は、実施形態1に係る音楽性情報提供システムの一例を示す。 図2は、電子ピアノの電気的構成例を示す図である。 図3は、端末装置の構成例を示す。 図4は、サーバの構成例を示す。 図5は、サーバにおける処理例を示すフローチャートである。 図6は、前処理の一例を示すフローチャートである。 図7は、音楽性パラメータの説明図である。 図8は、演奏データ間の距離の算出方法の説明図である。 図9は、演奏データ間の距離の算出方法の説明図である。 図10は、距離行列の一例を示す。 図11は、多次元尺度法によって可視化されたグラフの例を示す。 図12は、ランキング情報の一例を示す。 図13は、楽曲データの編集処理の一例を示すフローチャートである。 図14は、実施形態2におけるサーバのプロセッサによる処理例を示すフローチャートである。 図15は、距離行列の生成及び更新の説明図である。 図16は、距離行列の生成及び更新の説明図である。
 以下、図面を参照して、実施形態に係る音楽性情報提供システムについて説明する。
 〔実施形態1〕
 <音楽性分類システムの概要>
 図1は、実施形態1に係る音楽性情報提供システムの一例を示す。図1において、音楽性情報提供システムは、電子ピアノ10と、端末装置20と、サーバ30とを含む。
 電子ピアノ10は、音楽性情報提供システムに適用可能な電子楽器の一例である。適用可能な電子楽器は、鍵盤楽器(ピアノ、オルガン、シンセサイザなど)、打楽器(ドラムなど)、管楽器(サクソフォーンなど)などを模した様々な電子楽器を含む。
 電子ピアノ10は、演奏者が演奏した楽曲をMIDI(Musical Instrument Digital Interface)録音し、MIDIファイルとして記憶することができる。電子ピアノ10は、端末装置20と近距離無線通信可能であり、MIDIファイルを端末装置20へ送信できる。
 端末装置20は、スマートフォンやタブレット端末などのモバイルデバイスであり、ネットワーク1を介して、MIDIファイルをサーバ30へ送信する。但し、端末装置20は、モバイルデバイスのような無線端末に制限されず、パーソナルコンピュータやワークステーションなどの固定端末であってもよい。
 ネットワーク1は、LAN、或いはWANなどの広域ネットワークである。ネットワーク1の一部は無線区間を含んでいてもよい。無線区間は、例えば、WiFiなどの無線LAN網や、3GやLTEなどのセルラー網により構築される。
 サーバ30は、音楽性情報、すなわち、演奏の音楽性の判定や分類に利用可能な情報を出力する処理を行う。サーバ30は、所定の楽曲について、複数の演奏者によるMIDIファイルを収集して記憶する。MIDIファイルは、演奏を再生するための演奏データを含み、演奏データは、演奏に係る複数のパラメータを含む。サーバ30は、演奏データに含まれる複数のパラメータのうち、音楽性を示す複数のパラメータの組み合わせ(音楽性パラメータと称する)に関して、複数の演奏データ間の距離(類似度)を算出し、この距離を示す情報を含む音楽性情報を出力する。
 例えば、サーバ30は、或る楽曲について、比較対象の演奏データ(第1の演奏データとする)と、第1の演奏データと比較する、第1の演奏データと異なる複数の演奏データ(複数の第2の演奏データ)の夫々との距離を算出する。サーバ30は、第2の演奏データを距離の小さい順、又は距離の大きい順に並べた順位表(ランキング)を含む情報を出力する。或いは、サーバ30は、第1の演奏データと第2の演奏データの夫々との距離を可視化した情報を出力する。これらの情報の提供により、第1及び第2の演奏データを直感的に複数の音楽性のグループに分類可能とする。
 また、サーバ30は、第1の演奏データが属する音楽性のグループを示す情報を記憶する。この場合、サーバ30は、第1の演奏データが属する音楽性のグループと同一のグループに属する(音楽性が同じ)楽曲データを楽曲のデータベースから抽出し、抽出した複数の楽曲データを編集した編集楽曲データのMIDIファイルを生成する。さらに、サーバ30は、編集楽曲データのMIDIファイルを、所定の宛先、例えば所定の端末装置20に、ネットワーク1を介して送信する。端末装置20は、編集楽曲データを所定の電子ピアノ10に送り、電子ピアノ10に自動演奏させることができる。編集楽曲データのMIDIファイルは、端末装置20において、MIDI再生用のアプリケーション(MIDIプレイヤーと呼ばれる)を用いて再生することもできる。
 以下、音楽性情報提供システムを構成する機器の構成を説明する。
 <電子ピアノ>
 図2は、電子ピアノ10の電気的構成例を示す図である。 電子ピアノ10は、CPU(Central Processing Unit)11と、ROM(Read Only Memory)12と、RAM(Random Access Memory)13と、フラッシュメモリ14と、近距離無線回路15と、鍵盤5と、操作パネル6と、ペダル7と、音源8とを含み、これらは、バスライン4を介して互いに接続されている。さらに、電子ピアノ10は、D/A変換器(DAC)16と、アンプ17L,17Rと、スピーカ18,19とを有している。音源8は、DAC16の入力に接続され、DAC16の出力は、アンプ17L,17Rの各入力に接続されている。アンプ17Lの出力は、スピーカ18に接続され、アンプ17Rの出力は、スピーカ19に接続されている。
 CPU11は、演算処理装置であり、ROM12は、CPU11により実行される各種の制御プログラムやその実行の際に参照される固定値データを記憶するメモリである。RAM13は、ROM12に記憶される制御プログラムの実行に当たって各種のデータ等を一時的に記憶するための書き換え可能なメモリである。フラッシュメモリ14は、電子ピアノ10の電源がオフされた場合でも、内容を継続して記憶する不揮発性のメモリである。
 鍵盤5は、図示しないが、複数のキー(白鍵および黒鍵)を有している。キーは、演奏操作子の一例である。操作パネル6は、各種ボリュームやスイッチ等を有しており、演奏者は、操作パネル6を用いて、電子ピアノ10の各種の動作モードや楽音のパラメータ等を設定可能に構成されている。ペダル7は、演奏者が足で踏み込むことにより操作を行う装置である。ペダル7は、ソフトペダルやダンパーペダルなどの操作による音響効果を得るために設けられる。説明の簡単のため、ペダル7が1つのペダルを備えると仮定する。
 音源8は、DSP(Digital Signal Processor)9を内蔵しており、鍵盤5の押鍵が行われた場合に、CPU11から出力される楽音情報に対応する音高および音色のステレオ方式のデジタル楽音信号を生成する一方、鍵盤5の離鍵が行われた場合には、デジタル楽音信号の生成を停止する。
 ここで、ステレオ方式のデジタル楽音信号とは、Lチャンネル(左チャンネル)およびRチャンネル(右チャンネル)を有するデジタル楽音信号を示している。音源8からステレオ方式のデジタル楽音信号が出力されると、DAC16により、ステレオ方式のデジタル楽音信号が、ステレオ方式のアナログ楽音信号へ変換される。
 DAC16により出力されたLチャンネルのアナログ楽音信号は、アンプ17Lに入力されて、増幅される。そして、増幅された楽音信号が楽音に変換され、スピーカ18から出力される。スピーカ18から出力される楽音は、押鍵に対応する楽音のLチャンネル、即ち、低音域の楽音を主とする成分となる。
 一方、DAC16により出力されたRチャンネルのアナログ楽音信号は、アンプ17Rに入力されて、増幅される。そして、増幅された楽音信号が楽音に変換され、スピーカ19から出力される。スピーカ19から出力される楽音は、押鍵に対応する楽音のRチャンネル、即ち、高音域の楽音を主とする成分となる。
 CPU11は、プログラムの実行によって、演奏者によって演奏された楽曲のMIDI録音、すなわち、演奏データ(MIDIファイル)の生成処理を行う。演奏者の楽曲の演奏時における鍵盤5及びペダル7の操作状況は、MIDI規格に基づいて作成された演奏情報(発音のタイミング、音の高さ、強さなど)を示すパラメータ情報として、演奏データに含まれる。
 MIDIファイル(演奏データ)は、少なくとも以下のパラメータを含む。
・押鍵されたキーの種類
・ノートオン
・ノートオフ
・ベロシティ
・ホールド
 ノートオンは、音の出始めのタイミングを示し、ノートオフは、音の出終わりのタイミングを示す。換言すれば、ノートオンは、キーの押鍵タイミングを示し、ノートオフは、キーの離鍵タイミングを示す。ノートオンからノートオフまでの間、音が出力され続ける。ベロシティは、押鍵の強さを示す。デュレーションはゲートタイムとも呼ばれ、ノートオンからノートオフまでのティック(時間の最小単位)数、すなわち音の長さを示す。ホールドは、例えば、ペダル7が踏まれた強さやタイミングを表す。ノートオンは、楽器の演奏操作子の操作開始タイミングに相当し、ベロシティは、演奏操作子の操作の強さに相当する。
 CPU11は、生成したMIDIファイルをフラッシュメモリ14に記憶する。近距離無線回路15は、Bluetooth(登録商標)、BLE、Zigbeeなどの所定の近距離無線通信規格に従った無線通信を行うための通信インタフェースである。近距離無線通信回路15を用いた通信により、MIDIファイルが端末装置20へ送信される。
 <端末装置>
 図3は、端末装置20の構成例を示す。端末装置20は、バス27を介して相互に接続された、プロセッサ21と、記憶装置22と、通信回路23と、近距離無線通信回路24と、入力装置25と、出力装置26とを含む。
 記憶装置22は、主記憶装置と補助記憶装置とを含む。主記憶装置は、プログラムやデータの記憶領域、プロセッサ21の作業領域、通信データのバッファ領域などとして使用される。主記憶装置は、RAMやRAMとROMの組み合わせにより構成される。補助記憶装置は、データやプログラムの記憶に使用される。補助記憶装置は、ハードディスク、SSD(Solid State Drive)、フラッシュメモリ、EEPROMなどである。
 通信回路23は、ネットワーク1との通信に使用される通信インタフェース回路(ネットワークカード)である。近距離無線通信回路24は、近距離無線通信用の通信インタフェース回路であり、電子ピアノ10等との通信に使用される。
 入力装置25は、情報の入力に使用される。入力装置25は、キー、ボタン、ポインティングデバイス、タッチパネルなどを含む。出力装置26は、情報の出力に使用される。出力装置26は、例えばディスプレイである。なお、入力装置25は、音声や映像の入力装置(マイクやカメラ)を含み得る。出力装置26は、音声の出力装置(スピーカ)を含み得る。
 プロセッサ21は、CPUなどを含み、記憶装置22に記憶されたプログラムを実行することによって、様々な処理を行う。例えば、電子ピアノ10との近距離無線通信を行い、MIDIファイルを受信して記憶装置22に記憶する処理や、記憶装置22に記憶したMIDIファイルをサーバ30へネットワーク1を介して送信する処理などを行う。
 <サーバ>
 図4は、サーバの構成例を示す。サーバ30は、サーバマシン、パーソナルコンピュータ、ワークステーションなどの専用又は汎用のコンピュータ(情報処理装置)を用いて構成される。サーバ30は、バス37を介して相互に接続された、プロセッサ31と、記憶装置32と、通信回路33と、入力装置35と、出力装置36とを含む。プロセッサ31、記憶装置32、通信回路33、入力装置35、及び出力装置36は、プロセッサ21、記憶装置22、通信回路23、入力装置25、及び出力装置26と同種類のものを適用することができる。但し、処理の負荷や規模に合わせて高性能、高精度のものが適用される。
 記憶装置32は、プロセッサ31によって実行されるプログラムやプログラムの実行に際して使用されるデータを記憶する。プロセッサ31は、記憶装置32に記憶されたプログラムを実行することによって、複数の演奏データを音楽性のグループに分類するための様々な処理を行う。
 例えば、プロセッサ31は、収集された複数の演奏データ(MIDIファイル)の夫々に含まれる、音楽性を示す複数のパラメータの組み合わせ(音楽性パラメータ)に関して、演奏データ間の距離(統計的距離)を算出して、演奏データ間の距離を示す距離行列を生成する処理を行う。また、プロセッサ31は、比較対象の演奏データが入力された場合に、この演奏データと標準演奏データとを用いて、音楽性パラメータを得るための処理(前処理)を行う。また、音楽性パラメータに関して、比較対象の演奏データと、距離行列とを用いて、比較対象の演奏データ(第1の演奏データ)と、距離行列をなす複数の演奏データ(複数の第2の演奏データ)の夫々との距離を算出し、第1の演奏データと各第2の演奏データとの距離を示す情報を出力する処理などを行う。
 通信回路33は、「取得部」や「受信部」として動作し、プロセッサ31は、「算出部」として動作し、出力装置36は、「出力部」として動作する。また、記憶装置32は、記憶媒体の一例である。
 なお、CPUは、MPU(Microprocessor)、プロセッサとも呼ばれる。CPUは、単一のプロセッサに限定される訳ではなく、マルチプロセッサ構成であってもよい。また、単一のソケットで接続される単一のCPUがマルチコア構成を有していても良い。また、CPUが行う処理の少なくとも一部は、マルチコア又は複数のCPUで実行されても良い。CPUが行う処理の少なくとも一部は、CPU以外のプロセッサ、例えば、Digital Signal Processor(DSP)、Graphics Processing Unit(GPU)、数値演算プロセッサ、ベクトルプロセッサ、画像処理プロセッサ等の専用プロセッサで行われてもよい。
 また、CPUが行う処理の少なくとも一部は、集積回路(IC、LSI)、その他のデジタル回路で行われても良い。また、集積回路やデジタル回路はアナログ回路を含んでいても良い。集積回路は、LSI、Application Specific Integrated Circuit(ASIC)、プログラマブルロジックデバイス(PLD)を含む。PLDは、Complex Programmable Logic Device(CPLD)及びField-Programmable Gate Array(FPGA)を含む。CPUで行われる処理の少なくとも一部は、プロセッサと集積回路との組み合わせにより実行されても良い。組み合わせは、例えば、マイクロコントローラ(MCU)、SoC(System-on-a-chip)、システムLSI、チップセットなどと呼ばれる。
 <サーバにおける処理>
 図5は、サーバ30における処理例を示すフローチャートである。図5の処理は、サーバ30のプロセッサ31によって行われる。S01では、プロセッサ31は、比較対象の演奏データ(第1の演奏データ)を取得する。比較対象の演奏データは、或る演奏者(第1の演奏者と称する)が電子ピアノ10を用いて行った所定の楽曲の演奏をMIDI録音したMIDIファイルである。
 比較対象の演奏データは、上述したように、端末装置20からネットワーク1を介してサーバ30が受信することにより取得される。但し、比較対象の演奏データは、端末装置20以外、例えば、サーバ30内の記憶装置32又は外部の記憶装置から取得しても、ネットワーク1を介して端末装置20以外の機器から取得してもよい。プロセッサ31は、演奏識別情報及び演奏者識別情報と関連付けられた比較対象の演奏データを記憶装置32に記憶する。
 S02では、プロセッサ31は、比較対象の演奏データと比較する標準演奏のMIDIファイルを取得する。例えば、標準演奏のMIDIファイルは、例えば、上記した所定の楽曲をそのスコア(譜面)通りに演奏した場合の演奏データである。標準演奏のMIDIファイルは、予め記憶装置32に記憶しておいてもよく、ネットワーク1を介して所定の機器から取得してもよい。S01とS02の処理の順序は逆でもよい。
 S03では、プロセッサ31は、比較対象の演奏データのMIDIファイルと、標準演奏のMIDIファイルとを用いて、音楽性パラメータを得るための処理(前処理と呼ぶ)を行う。
 図6は、前処理の一例を示すフローチャートである。前処理はプロセッサ31によって行われる。S11において、プロセッサ31は、比較対象のMIDIファイルのイベントデータを抽出する。S12において、プロセッサ31は、標準演奏のMIDIファイルのイベントデータを抽出する。S13において、プロセッサ31は、イベントの時間差を計算する。図7は、イベントの時間差を含む音楽性パラメータの説明図である。
 上述したノートオン及びノートオフは、MIDIイベントの一つである。ノートオン及びノートオフは演奏開始からの時刻(タイムスタンプ)として記憶されている。標準演奏のMIDI(演奏データ)と、比較対象の演奏データとは、同一の時間軸において比較される。MIDIでは、ノートオンのイベントが発生すると、ノートオンの発生時刻と、キーの種類と、押鍵の強さ(ベロシティ)とがイベントデータとして記録される。また、ノートオフのイベントが発生すると、ノートオフの発生時刻と、キーの種類とがイベントデータとして記録される。
 このとき、標準演奏のMIDIファイルに含まれる複数のノートオンに関して、標準演奏のノートオンの時刻と比較対象のノートオンの時刻との時間差(比較対象のノートオンの時刻から標準演奏のノートオンの時刻を減じたもの:ノートオン時間差又は発音時間差という)を、プロセッサ31は、イベントの時間差として記録する。また、比較対象のベロシティを記録する。また、ノートオンが発生すると必ずノートオフも発生するので、標準演奏のノートオフの時刻と比較対象のノートオフの時刻との時間差(ノートオフ時間差又は消音時間差という)も、プロセッサ31は、イベントの時間差として記録する。但し、消音時間差の記録はオプションである。また、プロセッサ31は、比較対象の演奏データに関して、ノートオンとノートオフとの間の時間長、すなわちデュレーションを記録する。イベントはティック単位で記録される。なお、1ティックの時間長は、タイムベース及びテンポによって決定される。また、ペダル7の踏まれたタイミングや強さ(ホールドと呼ぶ)もイベントとして記録される。プロセッサ31は、比較対象の演奏データのデュレーションを記録する。なお、デュレーションは、演奏操作子の操作による発音の長さに相当する。
 プロセッサ31は、比較対象の演奏データの全て、又は所定の一部について上記処理を行い、時系列に並べられたイベントのリストを作成し、記憶装置32に記憶する(S14)。イベントのリストには、比較対象の演奏データについて、ノートオン、ノートオフ、ベロシティ、ホールドのような、MIDIファイルに含まれるパラメータと、ノートオン時間差、ノートオフ時間差、デュレーションといった、MIDIファイル中のパラメータを用いて算出されたパラメータの記録が含まれる。
 S15では、プロセッサ31は、音楽性パラメータの選択を行う。音楽性は、例えば、アーティキュレーション(articulation)、リズム、フレージング(phrasing)、ディナーミク(dynamik)についての総合的な判断によって分類される。アーティキュレーションとは、音楽の演奏方法において、音の形を整え、音と音との繋がりに様々な強弱や表情を付けることで旋律などを区分することである。フレーズより短い単位で使われることが多い。フレージングは、フレーズとフレーズとの間の区切り方によって、音楽に表現を付けることを指す。フレージングはスラーによって示されることもある。また、ディナーミクは、音の強弱の変化や対比による音楽表現をいう。
 本実施形態では、上述したように、プロセッサ31は、演奏データ(MIDIファイル)から得られる複数のパラメータ(すなわち、ノートオン、ノートオフ、ベロシティ)を用いて、ノートオン時間差、ノートオフ時間差、デュレーションといった複数のパラメータを算出し、記憶装置32に記憶する。プロセッサ31は、これらの算出した複数のパラメータのうち、ノートオン時間差と、比較対象の演奏データのベロシティと、比較対象の演奏データのデュレーションとの組み合わせを、音楽性パラメータとして選択する。その後、処理がS04に戻り、上記した音楽性パラメータに関して、比較対象の演奏データ(第1の演奏データ)と、距離行列をなす複数の演奏データ(複数の第2の演奏データ)の夫々との距離の計算が行われる。すなわち、第1の演奏データの音楽性パラメータと、複数の第2の演奏データの夫々の音楽性パラメータとの距離(類似度)が計算される。ここに、音楽性パラメータのデータは、例えば、比較対象の演奏データにおけるノートオンの発生時刻の夫々に紐付けて、ノートオン時間差と、対応する比較対象の演奏データにおけるベロシティ及びデュレーションとを記憶したデータである。音楽性パラメータのデータは、ノートオン時間差、比較対象のベロシティ及びデュレーションの3つの要素を有し、時間軸上で変化するデータ(関数)として扱うことができる。
 (距離行列の生成)
 S04の処理の前提となる、距離行列の生成について説明する。図4に示した記憶装置32には、複数の第2の演奏データとして、第1の演奏データの楽曲と同一の楽曲についての複数の演奏データであって第1の演奏データと異なる複数の演奏データの夫々の音楽性パラメータ(ノートオン時間差、ベロシティ、デュレーションの組み合わせ)を示すデータが記憶されている。複数の第2の演奏データの夫々の音楽性パラメータは、上述した複数の演奏データの夫々を比較対象として、上述した前処理と同様の処理を行う(標準演奏とのノートオン時間差と、対応するベロシティ及びデュレーションを関連づけて記憶する)ことによって得られる。
 1つの楽曲について、複数の演奏者による複数の第2の演奏データが記憶される。但し、複数の第2の演奏データは、同一の演奏者による複数回の演奏(テイク)によって得られた2以上の演奏データを含む場合もある。また、第1の演奏データの演奏者と同じ演奏者による演奏データが第2の演奏データに含まれる場合もあり得る。複数の第2の演奏データは、単数又は複数の端末装置20から収集されるものであっても、ビッグデータとして、ネットワーク1のあらゆるデータ源(サーバ装置等)から提供されるものであってもよい。複数の第2の演奏データの夫々は、その演奏者を示す情報と関連付けて記憶されている。
 複数の第2の演奏データは、SVM(Support  Vector  Machines)へ出力される。SVMは、プロセッサ31が記憶装置32に記憶されたSVM用のプログラムを実行することによって実現される。プロセッサ31は、シングルクラスSVMにおいて、カーネルトリックを用いて、図8に示すように、入力空間X(図8左側のグラフ)を特徴空間H(図8右側のグラフ)に非線形変換し、入力された演奏データの夫々の原点からの距離を求める。図8の左側のグラフ(入力空間X)は、N個のファクタからなるN次元のグラフを、2次元で模式的に示している。図8のグラフにおける点の夫々は、演奏データ(音楽性パラメータのデータ)を示す。演奏データは、ノート音時間差、ベロシティ及びデュレーションの3つを要素(ベクトル)として含み、それが比較対象のノートオンの回数分集まったデータである。なお、入力空間Xが変換された特徴空間Hにおいて、入力空間Xにおける決定面は、N次元空間における非線形曲面になる。
 その後、特徴空間Hにおける、演奏データ間の距離が算出される。各演奏データについて、他の演奏データとの距離が算出される。距離の算出結果は、行列の形式(距離行列)にて記憶装置32に記憶される。
 詳細に説明すると、プロセッサ31は、第2の演奏データの夫々に関して、シングルクラスSVMを適用して、データ空間の軸における原点からの距離を算出する。タイムポイントi(i = 1、...、n)での演奏データの集合を式(1)に示す。式(1)のdは測定の次元数であり、1つの演奏データに含まれるデータの種類数を示す。
Figure JPOXMLDOC01-appb-M000001
 また、入力空間Xから特徴空間Hへの写像をφ(・)で表す。そして、シングルクラスSVMにおいて、特徴空間Hにおける超平面を、それがより多くの演奏データをより原点から離れた距離で分離するように推定する。そのような特徴空間Hにおけるいかなる超平面も式(2)のように記載される。超平面は、式(3)を解くことによって得られる。式(3)のξはスラック変数である。vは、原点側に可能な位置の量を調整するための正のパラメータである。
Figure JPOXMLDOC01-appb-M000002
 カーネル関数は、式(4)及び(5)で定義される。
Figure JPOXMLDOC01-appb-M000003
 この問題の双対は、式(6)として得られる。
Figure JPOXMLDOC01-appb-M000004
 最適化は、二次計画ソルバーを用いて解決され、カーネルとして、次の式(7)で示されるRBFガウスカーネルを適用する。式(7)において、σ>0であり、σは、カーネルのパラメータ(カーネル幅)である。
Figure JPOXMLDOC01-appb-M000005
 次に、演奏データ間の距離の算出に用いる、演奏データのシングルクラスSVMモデル間の距離の算出について説明する。異なる演奏者に係る2つのシングルクラスSVMモデル「(α,ρ)」と「(α,ρ)」の間の距離(類似度)Duvは、式(8)により示される。式(8)において、c,c,p,pは、それぞれ、図9に示すような単位円CR1を用いて定義される。
Figure JPOXMLDOC01-appb-M000006
 式(8)の分母は、単位円CR1上にある点Cと点Pとの間の弧(弧C)の長さと、単位円CR1上の点Cと点Pとの間の弧(弧C)の長さとの和であり、分子は、点Cと点Cとの間の弧(弧C)の長さである。図7中のwは式(9)で定義される。
Figure JPOXMLDOC01-appb-M000007
 Duvは、文献「F. Desobry, M. Davy, and C. Doncarli, “An online kernel change detection algorithm,” IEEE TRANSACTIONS ON SIGNAL PROCESSING, vol. 53, no. 8, pp. 2961-2974, 2005.」および「P. S. Riegel, “Athletic records and human endurance,” American Scientist May/Jun81, vol. 69, no. 3, p. 285, 1981.」等に記載されたフィッシャー比率の影響を受けた領域内/領域間の距離である。
 式(8)における弧cの長さは、特徴空間Hにおけるφ(x)中のサンプル(演奏データ)の分散の尺度を示す。サンプルの分散が大きくなると、弧cは長くなり、式(10)で表現するマージンが小さくなる。Duvの値は、特徴空間Hにおいて期待される挙動に依存する。すなわち、Duvの値は、サンプルの広がりが大きくなる程大きくなり、重なりが大きくなる程小さくなる。
Figure JPOXMLDOC01-appb-M000008
 Duvは、単位円と、2つのベクトルaとベクトルbとの間の弧abの長さとで表される。ベクトルaとベクトルbの弧の長さは、これらのベクトルa及びベクトルbのなす角と等価であり、ベクトルaとベクトルbについて、式(11)が成立し、弧abの長さは式(12)によって求められる。したがって、cは式(13)のように求められ、cは式(14)のように求められる。c及びcを用いて、cの弧の長さは、式(15)によって導出される。
Figure JPOXMLDOC01-appb-M000009
 ここで、式(15)におけるKuvは、カーネル行列である。当該カーネル行列は、列i、行jについての要素k(xu,i,xu,j)で表される。また、弧cの長さは、次の式(16)で表される。
Figure JPOXMLDOC01-appb-M000010
 以上説明したように、シングルクラスSVMモデルの計算により、各演奏データについての原点からの距離が算出される。演奏データの夫々の原点からの距離から、全ての演奏データ間の距離が求められる。
 図10は、距離行列の一例を示す。サーバ30のプロセッサ31は、記憶装置32に記憶された複数の第2の演奏データに関して、音楽性パラメータについての距離を総当たりで計算する。プロセッサ31は、計算した距離を、行列の形式(距離行列)で、記憶装置32に記憶する。距離行列では、複数の演奏データ、図10の例では5つの演奏データd(1)~d(5)について総当たりで算出された距離がマトリクス状に記憶される。距離行列において、同一の演奏データ間の距離は「0」とされ、行列の左上から右下に延びる対角線の値は「0」となっている。d(2)の行列は、d(2)とd(1)との距離を示し、d(3)の行列は、d(3)とd(1)及びd(2)の夫々との距離を示す。d(4)の行列は、d(4)とd(1)~d(3)の夫々との距離を示す。d(5)の行列は、d(5)とd(1)~d(4)の夫々との距離を示す。
 S04の処理では、プロセッサ31は、上述した距離の算出方法を用いて、上述した音楽性パラメータについて、第1の演奏データと複数の第2の演奏データとの夫々の距離を算出する。また、プロセッサ31は、距離行列を記憶装置32から読み出し、第1の演奏データと、複数の第2の演奏データの夫々との距離を示す行列を追記して距離行列を更新する(S05)。
 S06では、プロセッサ31は、音楽性パラメータについての第1の演奏データと複数の第2の演奏データの距離の分布を多次元尺度法(MDS)によって可視化するグラフのデータを生成し、出力装置36から出力表示する。
 図11は、多次元尺度法によって可視化されたグラフの例を示す。第1の演奏データを示す点は、「対象ユーザ」の点として画面のほぼ中央に配置され、第2の演奏データを示す各点が、第1の演奏データとの距離を空けて分布している。図11では図示を省略しているが、演奏データを示す各点の近傍に、演奏者名などの演奏の識別情報を表示してもよい。このような演奏データの分布を参照する者は、直感的に、演奏者を複数の音楽性のグループに分類することが可能となる。
 S07では、プロセッサ31は、比較対象の演奏データ、すなわち第1の演奏データと比較される複数の第2の演奏データを、距離の小さい順、または距離の大きい順で示すランキング情報を生成し、出力装置36から出力する。
 図12は、ランキング情報の一例を示す。演奏データは、演奏者名(演奏者の識別情報)と、演奏識別番号(演奏の識別情報)と、楽曲名と関連づけて記憶される。第1の演奏データと比較される第2の演奏データの夫々に関して、演奏者名と、演奏識別番号と、音楽性パラメータに関しての第1の演奏データとの距離とが表示される。
 図12の例では、距離の小さい順で、上位30位までのランキングが表形式で表示されている。第1の演奏データの演奏者は“Ana”であり、ランキング1位の演奏者は、同一の演奏者である“Ana”である。このように、演奏者が同一人である場合には、距離は小さく(類似度は高く)なる。このようなランキング表示においても、その参照者は、直感的に、演奏者を複数の音楽性のグループに分類することができる。
 なお、S06及びS07の順は逆でもよく、また、S06とS07とのいずれか一方のみが実行されるようにしてもよい。また、第1の演奏データは、距離行列に組み込まれることによって、複数の第2の演奏データの1つになる。例えば、入力装置35の使用や遠隔操作によって、複数の第2の演奏データの中から比較対象(中心となる)演奏データを特定することができる。演奏データの特定が行われると、その特定した演奏データを比較対象の演奏者とするランキング情報が生成される。演奏データの特定は、楽曲が同一である場合には、演奏者及び演奏試行番号の入力や指定によって特定する。ランキング情報の生成は、例えば、プロセッサ31が、距離行列に最後に追加された演奏データ(第1の演奏データであった演奏データ)の行列の一方のうち、特定された演奏データを比較対象の演奏データに設定し、距離の小さい順又は大きい順に並べ換えることにより行われる。
 第2の演奏データ及び距離行列は、記憶装置32に、2以上の楽曲について記憶しておき、2以上の楽曲のそれぞれについての距離計算が行われ、分布やランキングが表示されるようにしてもよい。また、複数の演奏データは、k-means法などの所定の分類アルゴリズムを用いて、自動的又は機械的に複数の音楽性のグループに分類してもよい。
 <楽曲データの編集>
 演奏データの分布を示すグラフやランキング表を参照した者(サーバ30のオペレータなど)は、第1及び第2の演奏データ(演奏者)を2以上の音楽性のグループに分類することができる。各演奏データは、各演奏データが属するグループを示す情報と関連づけて記憶装置32に記憶される。また、記憶装置32は、複数の楽曲のデータベースを記憶する。楽曲のデータベースには、複数の楽曲についての演奏データ(MIDIファイル)と、各演奏データが属する音楽性のグループを示す情報とが関連づけられた状態で記憶されている。
 図13は、楽曲データの編集処理の一例を示すフローチャートである。S31では、入力装置35からの入力やネットワーク1からの受信によって、音楽性のグループを指定する情報がサーバ30に入力される。すると、プロセッサ31は、指定された音楽性グループと関連づけられた1又は2以上の演奏データを記憶装置32から取得する(S32)。取得される演奏データは、1又は2以上の演奏データが取得される限りにおいて、取得する楽曲の数や演奏データの数は適宜設定可能である。
 S33では、プロセッサ31は、所定の編集ルールに基づいて、1又は2以上の楽曲の演奏データを編集する。例えば、1又は2以上の演奏データの夫々から、部分データを抽出し、部分データをつなぎ合わせることで、編集演奏データを生成する。部分データの抽出は、演奏開始から所定小節分の抽出、1コーラス分やいわゆるサビ部分のパートの抽出、演奏開始から所定時間分の抽出などのいずれの方法であってもよく、特に制限はない。2曲以上の演奏データから部分データを抽出せずにそのままつなぎ合わせてもよい。つなぎ合わせの部分は楽曲同士が重なっても無音区間が設けられてもよい。
 S34では、プロセッサ31はS33にて生成した編集演奏データのMIDIファイルを記憶装置32に記憶する。S35では、プロセッサ31は、編集演奏データの所定の送信先、音楽性のグループとともに指定された送信先や、予め設定された送信先などがあれば、その送信先に宛てて、編集演奏データのMIDIファイルを送信する。送信先は、例えば、編集演奏データの提供要求を送信した端末装置20である。但し、端末装置20以外の機器に編集演奏データを送信してもよい。
 端末装置20は、編集演奏データを受信すると、記憶装置22に記憶し、プロセッサ21によって実行される再生アプリケーション(MIDIプレイヤー)を用いて編集演奏データの再生音を出力してもよい。或いは、電子ピアノ10へ編集演奏データを転送し、電子ピアノ10が編集演奏データを用いた自動演奏を行ってもよい。なお、S34において、編集演奏データの代わりに、S32で取得した演奏データそのものを所定の送信先に送信してもよい。
 なお、比較対象の演奏データ(第1の演奏データ)についての距離の計算結果が出力されることを契機に、第1の演奏データが属する音楽性のグループが特定され、その音楽性のグループに属する楽曲が楽曲データベースから検索され、検索結果のリストが作成され、第1の演奏データの演奏者と関連づけて記憶されるようにしてもよい。
 <実施形態の効果>
 実施形態1によれば、音楽性パラメータについて、演奏データ間の距離を示す情報が出力され、音楽性グループの分類に供される。これによって、主観的な評価である音楽性を客観的に提示ないし分類できる。例えば、第1の演奏データとして、所定の演奏者(著名な演奏者や、コンクールの入賞者など)の演奏データを用い、複数の第2の演奏データとの距離を算出することで、所定の演奏者と音楽性の近い演奏者のグループを見出すことができる。
 また、ランキングや分布の表示は、音楽性の類似する者同士がコミュニケーションをとったり、コミュニティを形成したりするための情報として利用できる。また、演奏者の属する音楽性のグループを特定可能となることで、そのグループに属する楽曲の編集楽曲データを生成し、その演奏者の端末装置20へ提供することができる。提供を受けた者は、音楽性が同じ(好みの)、楽曲を聴取することができる。或いは、或る音楽性のグループに属する楽曲の編集楽曲データを端末装置20へ送信し、電子ピアノ10等に自動演奏させることで、その音楽性のグループに属する者の集いなどで、好みの楽曲演奏を再生することができる。
 上記した実施形態1では、音楽性のパラメータとして、ノートオン時間差と、比較対象の演奏データ(第1の演奏データ)のベロシティと、比較対象の演奏データ(第1の演奏データ)のデュレーションとの組み合わせを例示した。但し、ノートオン時間差と組み合わせるパラメータは、実施形態の例示以外に適宜選択できる。例えば、上述した前処理において、標準演奏におけるベロシティと比較対象の演奏データのベロシティの差(ベロシティ差という)や、標準演奏におけるデュレーションと比較対象の演奏データのデュレーションの差(デュレーション差という)を算出し、これらを音楽性パラメータの要素に用いてもよい。すなわち、ノートオン時間差、ベロシティ差、及びデュレーション差の組み合わせを音楽性パラメータとして用いてもよい。換言すれば、ノートオン時間差と組み合わせるパラメータとして、比較対象のベロシティ、比較対象のデュレーション、ベロシティ差、デュレーション差のうちの少なくとも1つを選択できる。或いは、ベロシティに関して比較対象のベロシティとベロシティ差のいずれか一方と、デュレーションに関して比較対象のデュレーションとデュレーション差とのいずれか一方とを選択し、ノートオン時間差と組み合わせるようにしてもよい。
 また、実施形態1では、前処理において、ノートオン時間差、比較対象の演奏データのベロシティ及びデュレーションが音楽性パラメータとして記録されている。このような前処理にあたり、比較対象の演奏データにおけるノートオンがミスタッチであるか否かの判定をプロセッサ31が行うこともできる。ミスタッチの判定方法は適宜選択可能であり、例えば、キーの種類が標準演奏におけるキーの種類と異なる場合にミスタッチと判定してもよい。プロセッサ31は、ノートオンがミスタッチであると判定する(例えば、標準演奏におけるキー)と、そのノートオンに係るノートオン時間差やデュレーションの算出をスキップし、距離の計算に用いるデータから除外する。このようにすれば、ミスタッチを音楽性の判定や分類用の情報から除外することができる。
 〔実施形態2〕
 次に、実施形態2について説明する。実施形態2の構成は、実施形態1の構成と共通点を有するので、主として相違点について説明し、共通点についての説明は省略する。実施形態1で説明した電子ピアノ10、端末装置20及びサーバ30の構成は、実施形態2にも適用可能である。但し、サーバ30における処理が異なる。
 図14は、実施形態2におけるサーバ30のプロセッサ31による処理例を示すフローチャートである。実施形態2において、S01~S03に示す処理は実施形態1と同じであるので説明を省略する。
 S24では、演奏データの分類値を用いた学習をプロセッサ31は行う。すなわち、プロセッサ31は、第2の演奏データのうちの幾つかを学習用のサンプルとして、識別番号(試行番号)を割り当てる。また、プロセッサ31は、サンプルに関して、実施形態1で説明した、音楽性パラメータに関する演奏データ間の距離の計算を行い、距離の計算結果に応じて、音楽性の近いと思われる演奏データに同じ分類値を設定するようにして、サンプルの各演奏に対して分類値を定義する。プロセッサ31は分類値に従って、演奏データの分類パターンを学習(ディープニューラルネットワーク(DNN)の重み計算)を行う。プロセッサ31は、学習により、音楽性分類のための重み行列を生成し、記憶装置32に記憶する。S24の処理は、S01~S03の前に実行されても、並列に実行されてもよい。
 S25では、プロセッサ31は、比較対象の演奏データに関して、音楽性の類似度の計算を行う。すなわち、プロセッサ31は、前処理によって得られた音楽性パラメータについての比較対象の演奏データ(第1の演奏データ)と、S24の学習によって得られた重み行列を用いて、比較対象の演奏データに対する分類値を得る。
 S26では、プロセッサ31は、距離行列の更新を行う。図15及び図16は、距離行列の生成及び更新の説明図である。図15には、5個の学習用のサンプルに試行番号1~5を割り当て、試行番号1~5のサンプルに対する分類値として、“1”、“2”、“1”、“5”、“5”が定義されたリストの例を示している。この場合、試行番号を行番号、列番号とし、対象の行番号の試行番号の分類値が、他の分類値との差の絶対値となるような行列をプロセッサ31は作成する。例えば、5行1列の値は、試行番号1の分類値“1”と試行番号5の分類値“5”との差分の絶対値である“4”であり、5行2列の値は、試行番号2の分類値“2”と試行番号5の分類値“5”との差分の絶対値である“3”である。また、5行3列の値は、試行番号3の分類値“1”と試行番号5の分類値“5”との差分の絶対値である“4”であり、5行4列の値は、試行番号4の分類値“5”と試行番号5の分類値“5”との差分である“0”である。このような対角行列が距離行列として生成され、記憶装置32に記憶される。
 S25における重み行列を用いた類似度の計算によって、比較対象の演奏データについて分類値“3.3”が算出されたと仮定する。この場合、図16に示すように、比較対象の演奏データに割り当てた次の試行番号6と、その分類値“3.3”とがリストに追加される。また、距離行列に、試行番号6に対応する6行6列を追加し、試行番号6の分類値 “3.3”と試行番号1~5の分類値との差分の絶対値が演奏データ間の距離として、6行目の各列の値、6列目の各行の値となるように設定される。このようにして、距離行列が更新される。
 S27では、演奏データの分布の可視化、すなわちS06の処理と同様の処理が行われる。例えば、図16に示した距離行列のうち、6行目又は6列目の分類値の差分が試行番号6の演奏データと試行番号1~5の各演奏データとの距離として扱われ、各演奏データとその距離が点の分布により示されたグラフが出力される。
 S28では、ランキング情報の生成及び出力が行われる。S28の処理は、S07と同様の処理である。例えば、図16に示した距離行列のうち、6行目又は6列目の分類値の差分がランキングの対象となり、試行番号6の演奏データを比較対象として、分類値(距離)の小さい順、又は大きい順に並べたランキング情報が生成され、出力装置36により出力される。
 実施形態2で示すように、距離の計算は、実施形態1で示したSVMを用いる方法だけでなく、深層学習によっても行うことができる。実施形態1及び2にて示した構成は、目的を逸脱しない範囲で適宜組み合わせることができる。
10・・・電子ピアノ
20・・・端末装置
30・・・サーバ
31・・・プロセッサ
32・・・記憶装置
33・・・通信回路
36・・・出力装置
 

Claims (11)

  1.  所定の楽曲を演奏した第1の演奏データを取得し、
     前記第1の演奏データに含まれる、音楽性を示す複数のパラメータの組み合わせについて、前記第1の演奏データと、前記第1の演奏データと比較する、前記所定の楽曲を演奏した複数の第2の演奏データの夫々との距離を算出し、
     前記距離を示す情報を含む、前記第1の演奏データの音楽性の判定用情報を出力する
    ことを含む音楽性情報提供方法。
  2.  前記音楽性を示す複数のパラメータは、前記所定の楽曲の標準演奏における演奏操作子の操作開始タイミングと前記第1の演奏データにおける演奏操作子の操作開始タイミングとの時間差を含む
    請求項1に記載の音楽性情報提供方法。
  3.  前記音楽性を示す複数のパラメータの組み合わせは、前記所定の楽曲の標準演奏における演奏操作子の操作開始タイミングと前記第1の演奏データにおける演奏操作子の操作開始タイミングとの時間差と、前記標準演奏における演奏操作子の操作の強さと前記第1の演奏データにおける前記演奏操作子の操作の強さとの差と、前記標準演奏における演奏操作子の操作による発音の長さと前記第1の演奏データにおける前記演奏操作子の操作による発音の長さとの差との組み合わせである
    請求項1又は2に記載の音楽性情報提供方法。
  4.  前記音楽性を示す複数のパラメータの組み合わせは、前記所定の楽曲の標準演奏における演奏操作子の操作開始タイミングと前記第1の演奏データにおける演奏操作子の操作開始タイミングとの時間差と、前記第1の演奏データにおける前記演奏操作子の操作の強さと、前記第1の演奏データにおける前記演奏操作子の操作による発音の長さとの組み合わせである
    請求項1又は2に記載の音楽性情報提供方法。
  5.  前記距離を示す情報は、前記音楽性を示す複数のパラメータについての前記第1の演奏データ及び前記複数の第2の演奏データの分布を示す情報を含む
    請求項1から4のいずれか1項に記載の音楽性情報提供方法。
  6.  前記距離を示す情報は、前記複数の第2の演奏データのうち、前記第1の演奏データとの距離が小さい順又は大きい順において所定順位までにある第2の演奏データを示す情報を含む
    請求項1から4のいずれか1項に記載の音楽性情報提供方法。
  7.  前記距離を示す情報は、前記第1の演奏データ及び前記第2の演奏データの夫々の演奏者を示す情報を含む
    請求項1から6のいずれか1項に記載の音楽性情報提供方法。
  8.  前記距離を示す情報に基づいて、前記第1の演奏データが属する音楽性のグループを判定し、
     前記判定した音楽性のグループに属する、前記第1の演奏データと異なる1以上の演奏データを取得し、
     前記複数の演奏データを編集した編集演奏データを生成する
    ことをさらに含む請求項1から7のいずれか1項に記載の音楽性情報提供方法。
  9.  前記編集演奏データを所定の送信先へ送信する
    ことをさらに含む請求項8に記載の音楽性情報提供方法。
  10.  所定の楽曲を演奏した第1の演奏データを取得する取得部と、
     前記第1の演奏データに含まれる、音楽性を示す複数のパラメータの組み合わせについて、前記第1の演奏データと、前記第1の演奏データと比較する、前記所定の楽曲を演奏した、複数の第2の演奏データの夫々との距離を算出する算出部と、
     前記距離を示す情報を含む、前記第1の演奏データの音楽性の判定用情報を出力する出力部と
    を含む音楽性情報提供装置。
  11.  電子楽器を用いて演奏した所定の楽曲の演奏データを送信する端末装置と、
     前記演奏データを第1の演奏データとして受信する受信部、前記第1の演奏データに含まれる、音楽性を示す複数のパラメータの組み合わせについて、前記第1の演奏データと、前記第1の演奏データと比較する、前記所定の楽曲を演奏した、複数の第2の演奏データの夫々との距離を算出する算出部、及び前記距離を示す情報を含む、前記第1の演奏データの音楽性の判定用情報を出力する出力部を含むサーバと
    を含む音楽性情報提供システム。
PCT/JP2019/016635 2018-04-26 2019-04-18 音楽性情報提供方法、音楽性情報提供装置、及び音楽性情報提供システム WO2019208391A1 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
US17/078,621 US11600251B2 (en) 2018-04-26 2020-10-23 Musicality information provision method, musicality information provision apparatus, and musicality information provision system

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2018084816A JP2021131401A (ja) 2018-04-26 2018-04-26 音楽性情報提供方法、音楽性情報提供装置、及び音楽性情報提供システム
JP2018-084816 2018-04-26

Related Child Applications (1)

Application Number Title Priority Date Filing Date
US17/078,621 Continuation US11600251B2 (en) 2018-04-26 2020-10-23 Musicality information provision method, musicality information provision apparatus, and musicality information provision system

Publications (1)

Publication Number Publication Date
WO2019208391A1 true WO2019208391A1 (ja) 2019-10-31

Family

ID=68294537

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2019/016635 WO2019208391A1 (ja) 2018-04-26 2019-04-18 音楽性情報提供方法、音楽性情報提供装置、及び音楽性情報提供システム

Country Status (3)

Country Link
US (1) US11600251B2 (ja)
JP (1) JP2021131401A (ja)
WO (1) WO2019208391A1 (ja)

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2013182045A (ja) * 2012-02-29 2013-09-12 Brother Ind Ltd カラオケサーバ装置及び情報通知方法
JP2015004973A (ja) * 2013-05-23 2015-01-08 ヤマハ株式会社 演奏解析方法及び演奏解析装置

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3678135B2 (ja) 1999-12-24 2005-08-03 ヤマハ株式会社 演奏評価装置および演奏評価システム
JP4063109B2 (ja) 2003-03-12 2008-03-19 ヤマハ株式会社 電子楽器
JP4306754B2 (ja) * 2007-03-27 2009-08-05 ヤマハ株式会社 楽曲データ自動生成装置及び音楽再生制御装置
JP5799977B2 (ja) 2012-07-18 2015-10-28 ヤマハ株式会社 音符列解析装置
WO2016009444A2 (en) * 2014-07-07 2016-01-21 Sensibiol Audio Technologies Pvt. Ltd. Music performance system and method thereof
JP2016161900A (ja) 2015-03-05 2016-09-05 ヤマハ株式会社 音楽データ検索装置及び音楽データ検索プログラム
JP6690181B2 (ja) * 2015-10-22 2020-04-28 ヤマハ株式会社 楽音評価装置及び評価基準生成装置
WO2018016581A1 (ja) * 2016-07-22 2018-01-25 ヤマハ株式会社 楽曲データ処理方法およびプログラム

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2013182045A (ja) * 2012-02-29 2013-09-12 Brother Ind Ltd カラオケサーバ装置及び情報通知方法
JP2015004973A (ja) * 2013-05-23 2015-01-08 ヤマハ株式会社 演奏解析方法及び演奏解析装置

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
OKUMURA, KENTA ET AL.: "Examination of comparative analysis of musical instrument performance based on statistical model which associated score and expression", IPSJ TECHNICAL REPORT, MUSIC INFORMATION SCIENCE, 16 May 2015 (2015-05-16), pages 1 - 6 *
OKUMURA, KENTA ET AL.: "Statistical modeling of performers considering musical score-comparative analysis of individuality and performance tendency", PROCEEDINGS OF SPRING MEETING ACOUSTICAL SOCIETY OF JAPAN 2011 CD-ROM, 11 March 2011 (2011-03-11), pages 1081, 1082 *

Also Published As

Publication number Publication date
US11600251B2 (en) 2023-03-07
US20210043172A1 (en) 2021-02-11
JP2021131401A (ja) 2021-09-09

Similar Documents

Publication Publication Date Title
JP5147389B2 (ja) 楽曲提示装置、楽曲提示プログラム、楽曲提示システム、楽曲提示方法
US9372925B2 (en) Combining audio samples by automatically adjusting sample characteristics
CN102760426B (zh) 使用表示乐音生成模式的演奏数据搜索
US9280313B2 (en) Automatically expanding sets of audio samples
JP4199097B2 (ja) 楽曲自動分類装置及び方法
EP3047484B1 (en) Recommending audio sample combinations
JP5790686B2 (ja) コード演奏ガイド装置、方法、およびプログラム
WO2017154928A1 (ja) 音信号処理方法および音信号処理装置
JP6366403B2 (ja) カラオケ装置
JP6288197B2 (ja) 評価装置及びプログラム
JP6102076B2 (ja) 評価装置
WO2019208391A1 (ja) 音楽性情報提供方法、音楽性情報提供装置、及び音楽性情報提供システム
JP2017058595A (ja) 自動アレンジ装置及びプログラム
Wieczorkowska et al. Analysis of recognition of a musical instrument in sound mixes using support vector machines
JP4218066B2 (ja) カラオケ装置およびカラオケ装置用プログラム
JP2007071903A (ja) 楽曲創作支援装置
JP7268547B2 (ja) 情報処理装置及びプログラム
JP6073618B2 (ja) カラオケ装置
JP6954780B2 (ja) カラオケ装置
JP5847048B2 (ja) ピアノロール型譜表示装置、ピアノロール型譜表示プログラム、及びピアノロール型譜表示方法
JP2017161572A (ja) 音信号処理方法および音信号処理装置
JP4218064B2 (ja) カラオケ装置およびカラオケ装置用プログラム
JP7331388B2 (ja) 情報処理装置、方法、及びプログラム
US20230368760A1 (en) Audio analysis system, electronic musical instrument, and audio analysis method
JP5663948B2 (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: 19793880

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: 19793880

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: JP