Method and apparatus for music generation
A method and apparatus for music generation may include steps of receiving any length of input; recognizing pitches and rhythm of the input; generating a first segment of a full music; generating segments other than the first segment to complete the full music; generating connecting notes, chords and beats of the segments of the full music and handling anacrusis; and generating instrument accompaniment for the full music, and comprise a music generating system to realize the steps of music generation.
1. A method for music generation comprising steps of:
(a) receiving any length of a music input;
(b) recognizing pitches and rhythm of the music input;
(c) generating one or more music segments according to the music input through a computer-implemented learning system;
(d) generating connecting notes, chords and beats of said one or more music segments and handling anacrusis by generating unstressed notes before a first bar of segment; and
(e) generating an instrument accompaniment for said one or more music segments.
2. The method for music generation of claim 1 , wherein the step of recognizing pitches and rhythm of the input further includes a step of generating an initial short melody, initial bars, and a time signature.
3. The method for music generation of claim 1 , wherein the step of generating one or more music segments according to the music input for a full music through a computer-implemented learning system further includes steps of extracting music instrument digital interface (MIDI) data from the music input; extracting score information from said MIDI data; extracting a main melody from said MIDI data; extracting a chord progression from said MIDI data; extracting a beat pattern from said MIDI data; extracting a music progression from said MIDI data; and applying a music theory to the extracted melody, chord progression and beat pattern.
4. The method for music generation of claim 3 , wherein the step of applying a music theory includes a step of utilizing a music sequence handler and a melody mutation handler.
5. The method for music generation of claim 4 , wherein the step of utilizing the music sequence handler further includes steps of: identifying keys of the music input and perform a chord-progression recognition; splitting the music input into segments based on said chord-progression recognition; extracting a main melody and beat pattern for each bar in each segment; and utilizing said computer-implemented learning system to determine repetition of melody, beat pattern, or chord progression in each bar.