app: dj-mlr

  • http://docs.monome.org/doku.php?id=app:dj-mlr

    having trouble adding files to the wiki at the moment so ill post them here.

    this is a version of mlr I created for chapelier fou specifically for DJing with a 256.

    two decks (top and bottom)
    drop sample folders (up to 14 files) on to the decks
    2 pattern recorders per deck
    1 stop button per deck(so essentially 1 group)
    page switching between first 7 and the rest of the 14 files.

    serialosc / 256.

    1070 x 800 - 156K
  • What would it take to cut this back to 128? (Ie/ too much for an outsider or Goldiloks and Baby Bear?)

  • Depends if you wanna use it vertically or horizontally. Either way would require a fair amount of editing..

  • for the record (pun intended?) horizontal.

  • You could probably use pages to switch between the top and bottom half.
    Would require no editing of this patch.

    Also be handy for mapping the faders..

  • Hi all !
    Here's the story of this app :
    a year ago or so, i've been asked to make a DJ set (opening for Suuns). I am absolutely not a DJ, but said yes anyway. I didn't want to make a basic 2 turntables set (cause i don't have the skills), and also didn't want to make an ableton live type of set (too much 'unlive' for me).
    So i decided to make a DJ set with MLR, using loops taken from song, and with the monome cut in two halves, like two decks. It's been a really good experience, but i felt that setting up all the presets was a HUGE pain, and also i felt totally restricted by the nature of the preset system of MLR (which is great to play your song, but doesn't allow the improvisation aspect of a DJ set).
    So at first i tried (with the help of stevieraysean and some other fellow forumers) to enhance the preset system. Then, i let it go for a year or so.
    I ended up realizing that what i wanted was in fact NO PRESET AT ALL.
    So i went a bit into max and realized that the combo of 'dropfile' and 'folder' could allow to drop folders of soundfiles and order them in the alphabetical order.
    So this was the basic idea : create a folder containing loops which are roughly the pieces of a song, and drop the folder on the fly.
    With the great help of stevieraysean, i managed to see it become reality : he basically patched everything (Thanks again!!).

    The app consists on two MLR-like Decks in which you can drop folders containing up two 14 files. You can drop the next song while a song is playing.
    The two top rows have just a stop button, 2 pattern recorders and a page selection (loops 1-7 / 8-14).
    You can midi map the faders, the crossfader, and tempo buttons.
    The loaded files will always play at the closest rate to the original rate, whatever the tempo is. This is great. For instance let's say you are playing a song at 80 BPM. The next one you wanna play is 150 BPM (a bit less then twice faster). So instead of increasing from 80 to 150, you can TYPE 160 BPM while it's playing, and it won't affect anything in the playback. The you can just decrease from 160 to 150. This is massively helpful.

    So my workflow is :
    - pick up a song, warp it in ableton live. Spot the BPM.
    - create a folder which name is starting with the BPM, then artist and song name.
    - cut the song into up to 14 loops, naming them '*BPM*01xxxxxx', '*BPM*02xxxxxx', and so on, so it loads in the right order.

    At the end i got a root folder containing as many folders as songs, all ordered by BPM. You think this is a lot of work ? Yeah, kind of, but it's worth it, and you'll see, after a while, you'll become like a robot in warping and rendering in ableton live.

    The app is running absolutely seamlessly, never crashed once, and uses about 5% of the CPU.

  • Holy shit this looks well done.

    Concept, execution, everything. And all at the perfect time for me. Just within the past week have I considered branching out of my production hole to interact with the DJ world.

    As a 128 owner I must give the obligatory "+1 For 128 version!". I could make either vertical or horizontal work for me. So if it ever becomes an endeavor of yours, stevieraysean, I'm on board. Personally, it seems as though vertical makes more sense in this situation, yes? Same structure, same workflow even, just less step resolution in the end. But regardless, the work you put into this is not the be undermined by those of us with less buttons.

    I've plugged my 128 in with it to get an idea of the workflow, and I can get pieces of it, but I'm gonna take your advice on pages in the meantime. I think that could work well.

    Thanks for all the hard work you put into such a well done app. I appreciate you.

  • Using pages, you will miss some fun, and it would be less obvious for the watching audience.
    For a 128 version, i agree that using it vertically would make more sense.
    Glad to see some interest from other users here !

  • So after playing around with the 128 a bit I've got some things I'd like to throw out there.

    First off, I can't wrap my head around any conceivable way to use pages for this. How would I go about essentially making my 128 simultaneously act like both the top and bottom half of a 256 that I could toggle between? I'm baffled.

    Secondly, yes, I agree vertical is the best bet. Having both decks at your finger tips at the same time is essential for this to work best. Horizontal with deck toggles would diminish audience reception, as well as possibly hinder the cool transition techniques you could achieve otherwise.

    And lastly, I would be very appreciative of some further explanation surrounding the tempo system, and what a common technique for transitions would be. Especially harmonic transitions. I was having some unintuitive pitch shifting, and tempo mismatch issues with loops that were locked solid to a beat grid and exported from ableton. So how does that whole thing work again?

  • Cannot help you with the pages thing, i don't know anything about this.

    The tempo system is...well...tempo.
    The thing is it kind of considers 60 as 120 or 240. Which is logical, if you think about it, it's just a matter of perception.
    My explanation for a transition from 80 to 150 BPM should help you.
    When you drastically change the tempo and go far from a loop's original tempo, you can have at some point a sudden big pitch shift, because it shifts to the playing speed which is the closest possible from the original.

    For harmonic transitions, well, it's DJing. Use your ears ! And if you're going thru a DJ mixer, then you can pre-listen as a normal DJ would.
    Personally i don't really care, i tend to have at least one 'pitchless' loop in the songs (for instance just drums, or an a capella loop) which basically can allow any transition, regardless of the songs' pitch matching.

    Hope this helps !

  • sorry, i thought pages had offsets for grids. that was monomeserial I was thinking about it think, and you cannot control those.

    basically the app plays loops as close to there original tempo as possible.

    so you can play a clip at 120 over a clip at 60 and it wont play either at double or half speed like mlr would without any interference.

    if your playing something thats 120 at 120 then drop the speed to far it will eventually jump up to a higher speed closer to the original tempo.

  • Now that it is mentioned, vertical would be best for this. Now for that max app that doubles my width...

  • In my experience, you don't need a max app to double your width; just carbohydrates.

  • mmmmmm.... Carbohydrates.

  • "In my experience, you don't need a max app to double your width; just carbohydrates. "

    I'm currently eating a bowl of Cocoa Puffs as I browse the forum. But I don't know what you're talking about.

  • This is a very useful app, thank you very much!

    Now I feel lucky that I didn't sell my GS 128, I now have 2 128 now.
    So I can place my 2 "desks" beside a mixer.

    It is even better than having a 256!

  • hell yeah, 2 128 side by side looks great !

  • This version fixes a bug for midi mapping the tempo buttons.

  • Added midi mappable tempo divider/multiplier.

  • Just bringing this up. This app is awesome to me.

  • Thanks so much u both for this. Was just playing around a few Kraftwerk tunes I'd previously cut up and tempo mapped in Cubase, so much fun. If only Polygome had the tempo divider/multiplier. The midi learn for the faders etc is super-useful too.

    One thing I did notice is that I can't seem to get a backwards loop to loop back to the first step. This means it's not possible to play full 16 steps of a loop in reverse.
    e.g. button 16 held and then button 2 will play backwards, but button 16 then 1 will only play forwards.

    Once again many thanks.

  • Nope, it doesn't play backwards. You can have an inner loop which seems to be backward but it's a display bug happening for instance when you press button 2 while holding button 5. But the result that you hear is 2-3-4, not 4-3-2.
    Inner loops only work inside the loop sample. Too loop to the end, hold a button and press the first in the row.

  • Another thing I noticed last night is that there are very audible clicks when changing loops or when playing slices within a loop.

    MLRV has a "sample interpolation" adjustment which adds a slight transient to the attack of each sample, removing the click. Could be an idea.

  • Maybe I'm doing something wrong, but am I correct that this app does not support MP3s?

  • Yep. Groove~ doesn't handle mp3s.

  • Figured as much. Seems like you are mainly using this to dj your own tunes/mixes/stems from Ableton.

    It's a shame as I could see this being very useable in a live context. Seems a bit of a no-brainer as and I'm sure like me, quite a lot of folks have most of their music collections in MP3 format. Then again, I suppose if tracks need to be tempo mapped beforehand, exporting them as a WAV instead is no biggie.

  • Exactly.
    That's what i do :
    Load an mp3 file in Ableton Live. Warp it. Create a folder. Make aif. or wav. files rendered in this folder.
    Anyway you need to edit and cut the songs into loops, right ? So just save as wav. or aif. instead of mp3.

  • Monsieur Fou - I remember the original pondering that lead you to pursue this project. Following that thread, I'm quite impressed that you and stevieraysean endured and came up with a solution. Congrats, I'm excited to enjoy the fruits of your collective labors!

  • looks really, really cool! looking forward to playing with this. :)

  • I'm so glad if this app can be used by other users. i'm starting to have some real fun with this. So far i 'cut' 100 songs or so. It takes time, but i'm getting faster and faster. The organizing and naming process of the files has improved, also. I found my own way to name the files so i can predict how it will sound.
    I'll start very soon to make my first dj sets with it. i'm taking the monome on my little UK/Switzerland/Paris tour next week, in case i can mix after shows, who knows.
    100 songs or so is good, but still frustrating. i guess reaching 1000 would allow real improv fun. Maybe i'll reach this point in a few months ?... Too bad it's illegal to share the cut songs. A kind of data base would be so nice. Anyway, illegal is illegal. And the choices you make when cutting a song into 14 pieces makes it personal.

  • A glimpse of the app in action here :
    http://www.youtube.com/watch?v=zVHhFDneiOI

  • Marginally related FYI: you can use MP3 files in groove~/buffer~ patches if you send buffer~ an "import" message rather than "read". Requires Quicktime.

  • @dewb : thanks for this surprising info ! Anyway i'm cutting loops in ableton, so it's either wav or aiff.
    @Raja : just had my first set booked on friday, so hopefully i'll have some vids then.

  • Thank you so much for this! I'm gonna try it out on a gig soon...

  • i just realized that my output signal was clipping very often because, when using just a stereo out, the signal is the sum of the two decks. So you can have none of the deck 'in the red' but the output is still clipping. Made an update with a master VuMeter to avoid clipping.
    Will post it tomorrow, hoping that the (very simple) way i used is properly working.

  • Hey, this is an updated version with a Master VuMeter. If someone could check that my patching is all right, that would be nice. it seems to work, though, i just want to be sure.

    Also, i'd like to know if there is a way to bring the max app in the front when i drop a folder into a deck. this would avoid having to click on the app after dropping a folder. Any help appreciated !

    louis

  • Updated with the app coming back in the front of the screen when a new song is loaded. Important to me since my song folder was hiding the tempo and meters. Did this using thispatcher receiving a bang from the uzi in the 'buffers' patcher within the Deck patch.
    i am very bad at patching so if someone could check the master meter and the 'bring back to front', it would be really nice.

    thank you !!

  • anyone got any videos yet?

  • Anyone had a chance to check this out ?
    Anyway, i think i just lack of confidence. It works, and no bugs or crash....