Groove is the rhythmic feel or swing that gives music motion and makes it compelling to tap your foot or dance. It emerges from accents, rhythm-section interplay, and tempo, especially in funk, jazz, and soul. section 13.2.1
In MuseGAN-style generation, groove is one of four coordinated controls alongside chords, style, and melody. It shapes rhythmic behavior across the composition while the other controls provide harmonic, stylistic, and melodic structure. section 13.2.1 section 13.2
Groove as a track-level control
For a composition with four tracks and two bars, the groove vector has shape (4, 32). The generator applies one 32-dimensional groove representation to each track and keeps its values consistent across both bars, while melody varies across track-and-bar combinations. section 13.2.1
Figure 13.5 Music generation using chords, style, melody, and groove. Each music composition consists of four tracks and spans two bars. We will extract four noise vectors from the latent space for this purpose. The first vector, representing chords, has a dimension of (1, 32). This vector will be processed through a temporal network to expand the chords into two (1, 32) vectors, corresponding to the two bars, with identical values across all tracks. The second vector, denoting style, also has a dimension of (1, 32) and remains constant across all tracks and bars. The third vector, melody, is shaped as (4, 32). It will be stretched through a temporal network into two (4, 32) vectors, resulting in eight (1, 32) vectors, each representing a unique track and bar combination. Lastly, the fourth vector, groove, with a dimension of (4, 32), will be applied to the four tracks, maintaining the same values for both bars.
Use the architecture figure to compare groove with the chord, style, and melody vectors and trace how each controls different dimensions of a four-track, two-bar composition. section 13.2.1
