Coder Social home page Coder Social logo

schollz / amen Goto Github PK

View Code? Open in Web Editor NEW
13.0 3.0 0.0 8.23 MB

sampler & mangler for monome norns

Home Page: https://llllllll.co/t/amen

License: MIT License

Lua 80.23% SuperCollider 19.38% Makefile 0.39%
norns norns-script norns-library sampler supercollider

amen's Introduction

amen

sampler and mangler of loops.

image

for my latest album I made a lot of breakbeats and some of those breakbeats were informed by norns scripts (like abacus, clcks, glitchlets, and beets). this latest script is a different take on those previous iterations by utilizing supercollider for loop mangling and softcut for loop sampling. supercollider provides a mostly seamless loop slicing engine by allowing crossfades when jumping within loops (preventing pops/clicks) as well as easily allowing lots of effects.

another aim of this script is to make sure things are pretty much always "in sync" / "on beat". the loops are synced up with the norns internal tempo every loop (unless using an effect) and all the effects are queued up to occur on subdivided beats. loops loaded from disk are automatically re-pitched into the current tempo as long as their name contains bpmX where X is the original bpm of the file.

the name comes from Gregory Coleman's performance in "Amen, Brother", now a legendary sample used in all sorts of music but especially breakbeat type genres.

requirements

  • norns

documentation

there are two different modes - a "performance mode" for making loops and a "sampler mode" for playing loops back and punching-in effects. switch between the modes using k1. if you don't want to sample a loop you can use the parameters menu to load a loop (just make sure the loop you load has bpmX somewhere in the title so that the bpm can be correctly attributed). amen loads in performance mode by default.

performance mode

performance mode is indicated by the "stop" and "start" buttons.

performance

you can enter performance mode either by pressing k1 while in sampler mode, or by loading a file via the parameters (AMEN > load file). make sure the file you load has bpmX in the name, where X is the bpm of the file so that the tempo is matched correctly.

performance mode controls:

  • k1 switches to sampler mode
  • k2 activates left effect
  • k3 activates right effect
  • e1 switches effects
  • e2/e3 changes effect probabilities
  • OR
  • e2 changes loop start (unquantized)
  • e3 changes loop end (quantized)
  • when stop/start is shown

in this mode you can playback the current loop with all sorts of punch-in effects (its pretty easy to add more effects but to keep cpu usage low, they need to be not super intensive). you can also set the probabilities of these effects to occur automatically. effects stack. current effects:

  • scratching
  • looping / retrigger
  • reverse
  • jumps
  • slow / tape stop
  • low-pass filter
  • high-pass filter
  • stutter
  • strobe / tremelo
  • bitcrush
  • vinyl / lofi
  • timestretching
  • ??? (your favorite effect?)

unquantized vs quantized loop lengths: when you see "stop" and "start" you can change the loop lengths manually with e2 and e3. e2 changes the start position and e3 changes the end position. however, its important to note that when you change e2 you are making fine adjustments without quantizing loop length. conversely, when you change e3 it will force the loop to now snap to the nearest beat. so if don't want to snap to a beat, set e2 last, or conversely if you do want to snap to a beat, use e3 after adjusting e2. the beat sync will still be quantized in both cases, but it can be interesting to have (or not have) a quantized loop length.

startup: startup will automatically load the last loop you were working with, but not any saved parameters. save/load PSETs normally to save your state.

grid: divided into left and right sides corresponding to loops #1 and #2 respectively. the first six rows are mapped across the entire sample, with brightness showing transient heights. pressing a key in this area will jump to that position. pressing and holding two keys will resize the current loop. the bottom two rows map to all the parameters (pressing one will show it on the norns so you can see what they are).

sampler mode

sampler mode is indicated by the "rec" and "play" buttons.

performance

in this mode you can sample stereo audio to make new loops or edit the start/end points of a current loop from performance mode.

sampler mode controls:

  • k1 switches to performance mode
  • k2 starts/stops recording
  • k3 starts/stops playback of loop
  • e1 zooms into loop start
  • e2 jogs loop window
  • e3 changes loop length

sampling strategy: this sampler has plenty of memory (~minutes) so its best to record more than you need and then fit the sample window to what you need after recording is over. to get started, first turn e1 to expand the recording space to a little more than you might need and then press k2 to start/stop recording. when done recording use e2 and e3 to clip just the sample you want to use (e1 is handy again here to zoom in on the beginning to get the right transients).

download

;install https://github.com/schollz/amen

https://github.com/schollz/amen

amen's People

Contributors

schollz avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar

amen's Issues

MIDI command to record

Hello. Really great app! The one thing really missing here is that I can't map a MIDI controller to start recording a new loop.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.