Difference between revisions of "Max Drum Beat Generator"

From vjmedia
Line 66: Line 66:
  
  
 +
Here is a demo video:
  
 +
<div style="position: relative; padding-bottom: 56.25%; padding-top: 0px; height: 0; overflow: auto; -webkit-overflow-scrolling: touch;"><htmltag tagname="iframe" id="ensembleEmbeddedContent_WhbHBuGGw0OG3rvBue6m8g" src="https://video.wpi.edu/app/plugin/embed.aspx?ID=WhbHBuGGw0OG3rvBue6m8g&isResponsive=true&isNewPluginEmbed=true&displayTitle=false&startTime=0&autoPlay=false&hideControls=true&showCaptions=false&displaySharing=false&displayAnnotations=false&displayAttachments=false&displayLinks=false&displayEmbedCode=false&displayDownloadIcon=false&displayMetaData=false&displayDateProduced=false&audioPreviewImage=false&displayCaptionSearch=false" frameborder="0" style="position: absolute; top: 0; left: 0; width: 100%; height: 100%;" scrolling="no" allowfullscreen></htmltag></div>
  
[A video will be uploaded shortly]
 
  
 +
 +
Here is the Max patch:
 +
 +
[[File:msidler_mu2300_final.zip]]
  
 
[[Category:Interactive Systems]]
 
[[Category:Interactive Systems]]
 
[[Category:Foundations of Music Technology (2300)]]
 
[[Category:Foundations of Music Technology (2300)]]

Revision as of 03:04, 1 May 2018

Ms main locked.PNG

This project uses the Axiom 25 keyboards in the music lab to create a live performance that allows you to switch between beats for the 5 drums, adjust the volume of individual drums, and change the overall tempo.

The top box allows the user to start/stop the beat, reset the counters, and adjust the tempo. It also includes a counter reset button if needed.

The bottom box allows the user to configure up to 8 MIDI Encoders. The top 4 and bottom right are used for the volume of each of the individual tracks. The bottom left (E5) adjusts the tempo and the following knob (E6) controls the maximum beats before repetition.

The section on the right turns on and off individual instruments, allows the user to change the pattern that instrument is playing, and see the pattern. The first 5 white keys on the keyboard allow the user to randomize each of the corresponding instruments, and the second set of 5 keys allows the user to toggle those instruments on or off.


Ms unlocked.PNG

This is the unlocked Max patch.


Ms unlocked ctl.PNG

The section on the right of the patch takes MIDI control data in and uses it to control volumes. It has a sub patch that is used to set the MIDI control number for each channel. This lets the user select which encoder they want for each parameter as described above.


Ms unlocked keyIn.PNG

This section of the patch gets the input from the 15 white keys on the keyboard. The outputs are routed to other sections of the patch for use in randomizing or enabling/disabling instruments. The last two keys are tied back to others to make them "enable all" and "randomize all" keys.


Ms unlocked mainIn.PNG

This is the main controller for the patch, with the enable button, reset button, volume slider, and beat slider.


Ms unlocked metro.PNG

This section of the patch converts the tempo to BPM for the user to read. It also has the main metronome. On the right is a section that sets the number of beats in the loop.


Ms unlocked fastMetro.PNG

When initially testing, I found that the base metronome speed could cause phasing between the main beat and the 8th/16th notes added in to it. To fix this I added a faster clock to send more bangs to the math objects.


Ms unlocked beat.PNG

This section uses if statements and addition blocks to generate a number that corresponds to the beat.


Ms unlocked generators.PNG

This section contains the generators. It takes the beat, volume info, a toggle for on/off, a bang to randomize, and 3 numbers for MIDI pitch, duration, and channel.


Ms patcher 4.PNG

This is the randomC patcher used for the high hat. The randomA and randomB patchers are very similar, but have fewer choices for beats.


Here is a demo video:


Here is the Max patch:

File:Msidler mu2300 final.zip