in/decrement tempo by MIDI ?
in/decrement tempo by MIDI ?
hi, i got me a monome for hands-on control of my live sets. triggering clips and fx routings with the monome's buttons work great. now i m trying to find a way to control the tempo with the monome too. i'd like to use 2 buttons, one for decrement and one for increment, in 1 BPM steps. i haven't found a way to map that in live. i'm using a max/msp interface layer in between the monome and live and i could program it into my max/msp patch but i 'd rather keep it in live, if possible.
any ideas? i can make a monome button press send midi note or cc data to live. is there a way to map that to de/increment tempo instead of absolute mapping?
any ideas? i can make a monome button press send midi note or cc data to live. is there a way to map that to de/increment tempo instead of absolute mapping?
-
chapelier fou
- Posts: 6357
- Joined: Mon May 15, 2006 12:15 pm
doesn t seem possible in live itself so i worked my way around it in max/msp. the patch gets midi clock from live, de/increments in 1 BPM steps and sends out the new tempo value as MIDI CC to live.
there s rounding errors of around 0.15 BPM because of the necessary scaling to 0-127 and inaccuracy of the incoming MIDI clock and sync~ object. that s good enough for me though.
here s a discussion about it on the monome forum with some other alternatives involving LiveAPI and python scripting: http://post.monome.org/comments.php?DiscussionID=2824
my max5 patch for anyone interested:
----------begin_max5_patcher----------
811.3ocyX0saaBCF85jmBKtZSqMCa.aX2M0cSk1dB1plHfap2.aD3r0tptm8
YafUZRPEvIzdSH9GrOmiO96yl6WtvYs3VZkC3CfuBVr39kKVXpRWwhlxKbxi
uMIKtxzMmDQdNkKcNqtMI8VoodIMuP.9xke5RPdbAnLlugBpnRfT.BbOGFQ.
LN3yreQae0qEbYE6OT8qCQqbapluMmwynRyzAapjkZlDw5ebtmyicTrU11y1
WuHVlbCiu46kzDYMwfQgpQGfvDyC+5RtqbAW0AJ73bCTb9XIKNyQ2vCKWp+4
LKklKtPKBZp+M9azRRNKkAJDkx2112LFmlH1xMu.xNABMdAx2UKIdA5IQMU9
lR9yl.kReOimTR613DIObBj2P2fH8ujnSj2fS+sBd6w7R0ZdpkTNJ3vbF1Om
Il0aTDV+vGNDN2zR83KuqfVORNNfqlfbbclPAVaIdOgBPOKw8LKyAXaHthBw
J2JvYsJT2zTgdLEUIwYTUPyUpHWjU.8SDY0XDK7ADKzTcI0gMgn.6UqooRay
WSKs0q3NQuhGxy3Ubsg8LtkNkix9kvvQqAHrI3.D68pXCSFM0YnjkLZ+NBax
+E50xxc35AWVOla7SjYp4..U58XVp8N.6wiNOHo6Y.v34MO36.PW2QEhCsOo
w3oFhCZdTePfWfHb4zpp3Mz8TEnsBx3OY.z0rxiah8sJPs4ObNOYPeZw4VKF
dSzc7xoE8cdYysrRxDI+DbcoHeFuZAYzgUPgcLTmtqVz+4qkTv5BqScN4Lmd
FFis5vS5jlG0DMkRF2REYBoW8IO5DPDaOO0Q8D22wS9qkBh+gEDumUPftFyg
uUGtphsgqat1rrm9XFRSnfc9XOFXoq+ohVkXaYR6X2F8D7HxRoUJKTrjI3c6
D9Ic5FVZJk2M9fJ5TgPAtFPzyR3fwTvI.SPXfNPeHo4yAz7eagJd.PMxabPs
Fcn5HLcJXIV0WSXXxJb3XEoxkpyeFEUa48+eIKQazPLA5a+MiFS8csedLELu
XZHaf2A3mZLMDi1NtwSMj7ehstGHMqHhL.Qx+UGhBIyq61cHXxlzSpBOr7e.
0wNxW.
-----------end_max5_patcher-----------
there s rounding errors of around 0.15 BPM because of the necessary scaling to 0-127 and inaccuracy of the incoming MIDI clock and sync~ object. that s good enough for me though.
here s a discussion about it on the monome forum with some other alternatives involving LiveAPI and python scripting: http://post.monome.org/comments.php?DiscussionID=2824
my max5 patch for anyone interested:
----------begin_max5_patcher----------
811.3ocyX0saaBCF85jmBKtZSqMCa.aX2M0cSk1dB1plHfap2.aD3r0tptm8
YafUZRPEvIzdSH9GrOmiO96yl6WtvYs3VZkC3CfuBVr39kKVXpRWwhlxKbxi
uMIKtxzMmDQdNkKcNqtMI8VoodIMuP.9xke5RPdbAnLlugBpnRfT.BbOGFQ.
LN3yreQae0qEbYE6OT8qCQqbapluMmwynRyzAapjkZlDw5ebtmyicTrU11y1
WuHVlbCiu46kzDYMwfQgpQGfvDyC+5RtqbAW0AJ73bCTb9XIKNyQ2vCKWp+4
LKklKtPKBZp+M9azRRNKkAJDkx2112LFmlH1xMu.xNABMdAx2UKIdA5IQMU9
lR9yl.kReOimTR613DIObBj2P2fH8ujnSj2fS+sBd6w7R0ZdpkTNJ3vbF1Om
Il0aTDV+vGNDN2zR83KuqfVORNNfqlfbbclPAVaIdOgBPOKw8LKyAXaHthBw
J2JvYsJT2zTgdLEUIwYTUPyUpHWjU.8SDY0XDK7ADKzTcI0gMgn.6UqooRay
WSKs0q3NQuhGxy3Ubsg8LtkNkix9kvvQqAHrI3.D68pXCSFM0YnjkLZ+NBax
+E50xxc35AWVOla7SjYp4..U58XVp8N.6wiNOHo6Y.v34MO36.PW2QEhCsOo
w3oFhCZdTePfWfHb4zpp3Mz8TEnsBx3OY.z0rxiah8sJPs4ObNOYPeZw4VKF
dSzc7xoE8cdYysrRxDI+DbcoHeFuZAYzgUPgcLTmtqVz+4qkTv5BqScN4Lmd
FFis5vS5jlG0DMkRF2REYBoW8IO5DPDaOO0Q8D22wS9qkBh+gEDumUPftFyg
uUGtphsgqat1rrm9XFRSnfc9XOFXoq+ohVkXaYR6X2F8D7HxRoUJKTrjI3c6
D9Ic5FVZJk2M9fJ5TgPAtFPzyR3fwTvI.SPXfNPeHo4yAz7eagJd.PMxabPs
Fcn5HLcJXIV0WSXXxJb3XEoxkpyeFEUa48+eIKQazPLA5a+MiFS8csedLELu
XZHaf2A3mZLMDi1NtwSMj7ehstGHMqHhL.Qx+UGhBIyq61cHXxlzSpBOr7e.
0wNxW.
-----------end_max5_patcher-----------
The easiest way is to map the tempo to 1 cc controller or knob and then set the max and min setting on the control 127 apart - for example min=60 max=187 (or whatever range you need)
This will give you 127 1bpm increments which you can easily control.
If you want 0.1 bpm increments, set the min max 12.7 apart. etc.
This will give you 127 1bpm increments which you can easily control.
If you want 0.1 bpm increments, set the min max 12.7 apart. etc.
if you have monome, there are a few options.
Pages and monome basic asatte
i worked on asatte and there isnt much documentation, for which i apologize, but if you press the button above the lower right and then fiddle with the second to last column you will find
90BPM
120BPM
105BPM
90BPM
75BPM
60BPM
+5BPM
-5BPM
http://post.monome.org/comments.php?Dis ... e=1#Item_0
Pages and monome basic asatte
i worked on asatte and there isnt much documentation, for which i apologize, but if you press the button above the lower right and then fiddle with the second to last column you will find
90BPM
120BPM
105BPM
90BPM
75BPM
60BPM
+5BPM
-5BPM
http://post.monome.org/comments.php?Dis ... e=1#Item_0
