Imitating the Groove: Making Drum Machines More Human
Total Page:16
File Type:pdf, Size:1020Kb
Imitating the Groove: Making Drum Machines more Human Axel Tidemann1 and Yiannis Demiris 2 Abstract. Current music production software allows rapid pro- of each beat, in addition to adding or removing beats to create varia- gramming of drum patterns, but programmed patterns often lack the tions. This can be very time-consuming, and requires musical knowl- groove that a human drummer will provide, both in terms of being edge of how to produce variations that will be perceived as those of rhythmically too rigid and having no variation for longer periods a human drummer. Current DAWs have the ability to alter the beats of time. We have implemented an artificial software drummer that by adding random noise, which might provide a more human-like learns drum patterns by extracting user specific variations played by feel to the drum tracks since the added noise will be perceived as hu- a human drummer. The artificial drummer then builds up a library of man flaws. However, there is no guarantee that the result will sound patterns it can use in different musical contexts. The artificial drum- more human-like, since the DAW itself has no understanding of what mer models the groove and the variations of the human drummer, makes a drum pattern sound like it was played by a human. The re- enhancing the realism of the produced patterns. search goal of this paper is to make an artificial drummer that is able to play patterns with feel and variation. This is realized by making 1 Introduction the artificial drummer learn drum patterns from human drummers. The artificial drummer will model the variations that provide the feel Our motivation for creating an artificial drummer was to combine the of the drum pattern, which it can use to imitate the drumming style low-cost approach of programming drum parts through Digital Au- of the human drummer. dio Workstations (DAWs, such as Pro Tools3, Logic4, Cubase5, Dig- ital Performer6) with the groove that a human drummer will provide. When producing music, recording the drums is a time-consuming 2 Background and expensive process. The drums must be set up in a room with suit- The music software industry has created more complex samplers and able acoustics and high quality microphones in order to produce good synthesizers over the years as computers have become an important sounding drums. Subsequently, the drummer must play the actual tool for musicians. To recreate the sound of a drumkit, a lot of ef- part that is to be recorded. Most drummers do not play an entire song fort has gone into recording huge libraries with gigabytes of sam- without any flaws, so the actual recording is also time-consuming. ples (e.g. FXpansion BFD8, Toontrack dfh9, Reason Drum Kits10, The current DAWs allow for cut-and-paste editing of the recorded Native Instruments Battery11). The samples are then layered to sim- audio, so a perfect take of a song is not required to produce a good ulate the dynamics experienced when playing real drums, i.e. that the result. This has drastically reduced the time required to record mu- pitch changes when playing soft or hard. Typically, when playing the sic in general, not only drums. But still the cost of recording drums is snare drum in one of the aforementioned libraries, it will consist of a high, so for producers it is often more desirable to program the drums multitude of samples to achieve a more life-like response to playing in the DAW. This approach is very low-cost, but it is often difficult to dynamics. get a result similar to that of a real drummer. Programmed patterns These libraries are very sophisticated and sampled with meticu- have perfect timing and the velocity (i.e. how hard a note is played) lous precision, but they still need to be programmed. Even though of the beats is the same. A human drummer will always have small these libraries come with software interfaces that are easy to pro- variations in both timing and velocity of each beat, which is often gram (most of them even come with rhythm pattern templates), there described as the feel or groove of the drummer. In addition, a human is still no substitution for a real drummer: the libraries themselves drummer will vary what he/she plays, such as adding an extra snare are merely tools for reproducing drum sounds, and the software in- drum7 beat or a fill when playing a certain pattern. terfaces have no intelligent way of generating human-like drum pat- Programmed patterns can be altered to mimic these variations, but terns. The templates will often be too rigorous and lifeless, some- this requires the producer to manually change the velocity and timing thing patterns programmed by the user also often suffer from (unless 1 SOS Group, IDI, Norwegian University of Science and Technology. Email: the user manually changes every note in the patterns generated, a [email protected] very time-consuming process). 2 BioART, ISN Group, Department of Electrical and Electronic Engineering, If the groove of a drummer could be modeled, a studio producer Imperial College London. Email: [email protected] 3 http://www.digidesign.com would have access to an artificial drummer that would be more life- 4 http://www.apple.com/logicpro/ like than what is currently available. The artificial drummer would 5 http://www.steinberg.net/ 6 http://www.motu.com/ 8 http://www.fxpansion.com/index.php?page=30 7 A drumkit typically consists of a kick drum (which produces the low- 9 http://www.toontrack.com/superior.shtml frequency “thud” sound), a snare drum (a more high-pitched crackling 10 http://www.propellerheads.se/products/refills/rdk/index.cfm?fuseaction=mainframe sound) and a hihat (a high-frequent “tick” sound), see figure 3. 11 http://www.native-instruments.com/index.php?id=battery us in Proceedings of the AISB-2007, pp. 232-240, (2007) be able to imitate a certain style of playing, specific to the drummer Another advantage with representing the drum patterns using it has learned from. For producers, this would lower the cost of hav- MIDI is that it is a tempo-less representation. Once SHEILA has ing life-like drums, and the producer could have the drummer of his learnt a pattern, it can be played back at a different tempo then when choice to perform with the drummer’s unique style. A professional it was demonstrated, which gives the producer even greater flexibil- drummer will have the opportunity to teach the artificial drummer ity. his own unique style of playing, which he/she could later use in the studio or sell as a software plug-in. 3.2 Modeling We will now present a brief overview of research done in mod- eling the expressive performance of musicians. Saunders et al. [17] The system operates at two levels by modeling small and large scale use string kernels to identify the playing style of pianists. The playing variations, which will now be explained. style is identified by looking at changes in beat-level tempo and beat- level loudness. However, imitating the style of the pianists was not at- 3.2.1 Small-scale variations tempted. Tobudic and Widmer also consider variations in tempo and dynamics as the two most important parameters of expressiveness. The small-scale variations arises as follows: when a drummer plays To learn the playing style of a pianist, they use first-order logic to de- a specific pattern, he/she will play each beat of the pattern slightly scribe how the pianist would play a certain classical piece, and then a different each time. The differences will occur in both timing and clustering algorithm to group similar phrases together [19, 18]. They velocity. By calculating the mean and standard deviation of both the use the models to play back music in the style of given pianists, but velocity and timing of each beat over similar patterns, the small-scale some errors arise during playback. Tobudic and Widmer admit that variations can be modeled using the Gaussian distribution. We inves- these errors are due to the modeling approach (in fact, in [19] they tigated whether the Gaussian distribution was an appropriate model claim it is “not feasible” to model the playing style of a pianist with for the data by playing quarter-notes for about 8 minutes at 136 beats the current data and training methods; the modeling approach was per minute (BPM), yielding 1109 samples. The histogram of the on- deemed too crude by the authors to be used as sufficiently accurate set time and the velocity can be seen in figures 1 and 2 respectively, training data). Pachet’s Continuator uses Markov models to create showing that the normal distribution is an appropriate model of the a system that allows real-time interactions with musicians [3, 5, 2], data. however his focus is more on replicating the tonal signature of a mu- 300 sician; the Markov model represents the probabilities that a certain note will follow another. A musician plays a phrase (i.e. a melody 250 line), and the Continuator will then play another phrase which is a continuation of the phrase played by the musician (hence its name). 200 Mantaras and Arcos use case-based-reasoning to generate expressive 150 music performance by imitating certain expressive styles, such as joyful or sad [16, 15, 13, 12]. 100 As far as the authors know, modeling the style of drummers is a 50 novel approach to create an artificial drummer. The Haile drummer 0 of Weinberg [23, 22] has some similarities, but there are some major −0.12 −0.1 −0.08 −0.06 −0.04 −0.02 0 0.02 0.04 0.06 0.08 points that separate it from our approach: first of all, it is a percus- Figure 1.