Se connecter
Se connecter

ou
Créer un compte

ou
Agrandir
Ajouter ce produit à
  • Mon ancien matos
  • Mon matos actuel
  • Mon futur matos
Ableton Live 8
Photos
1/80
Ableton Live 8

Séquenceur généraliste de la marque Ableton appartenant à la série Live 8

Qui utilise Live API

  • 96 réponses
  • 17 participants
  • 16 589 vues
  • 8 followers
Sujet de la discussion Qui utilise Live API
Hello,
qui utilise Live API et Python ici?
je me suis mis à Python il y a 2 jours pour réaliser une set up perso de mon controleur MPD32 , je cherche à utiliser les control change mais j'ai un peu de mal.
Pour les pads pas de probleme il suffit de modifier le fichier const.py
J'utilise la classe TRACE fournie pour reperer les bugs et autres , est ce que quelqu'un a déja écrit un script perso pour son controleur , en partant du script python pour le MPD16 dispo merci.

Si ça fonctionne , plus besoin d'acheter une APC lol...

Je suis sur live 7 pour le moment.

Merci
Afficher le sujet de la discussion
61
Capable oui , mais je ne peux tester l'api concernée car je n'ai pas de contrôleur rotatif, et le développement avec une api incomplète comme celle de Live est purement empirique. donc les tests risquent d'être plutot hasardeux


ton contrôleur doit envoyer un certain message quand tu le tournes vers la droite et un autre quand tu le tournes vers la gauche. il suffit de créer une structure conditionnelle (if/elif) en relation avec les 2 messages pour augmenter ou diminuer la valeur de ton pan.

pour la méthode dans l'api , regarde les scripts trackcontroler.py de l'alesis photon que je donne en lien , une méthode a déjà été écrite pour accéder au pan

si tu veux plus d'aide publie l'implémentation midi complète de ton contrôleur.
62
Voici l' implémentation de mon contrôleur:

32 Encodeurs: encoderMapMode est LinearBinaryOffset
Enc1:CC31 Enc5:CC35 Enc9:CC39 Enc13:43 Enc17:47 Enc21:51 Enc25:55 Enc29:59

Enc2:CC32 Enc6:CC36 Enc10:CC40 Enc14:44 Enc18:48 Enc22:52 Enc26:56 Enc30:60

Enc3:CC33 Enc7:CC37 Enc11:CC41 Enc15:45 Enc19:49 Enc23:53 Enc27:57 Enc31:61

Enc4:CC34 Enc8:CC38 Enc12:CC42 Enc16:46 Enc20:50 Enc24:54 Enc28:58 Enc32:62

Comme tu peux voir j'ai 8 colonnes de 4 encodeurs, les CC je peux les assigner comme je veux.


Pourrait-on partir du dossir Mackie Control et de rajouter les 32 encodeurs.

La Mackie Control me convient très bien, si on pouvait implémenter les 32 encodeurs ça serait le TOP
63
Ca veut dire quoi LinearBinaryOffset ? quel message précis envoie ton controleur? un message de combiens de bytes et avec quel comportement quand tu le tournes, c'est ça que tu dois savoir.
Après tout le code concernant le volume , pan , sends , etc... est déja dans les scripts du alesis photon dont j'ai donné le lien.
64
Puis 8 boutons pour les 8 premier Track

Track1:note 24
Track2:note 25
Track3:note 26
Track4:note 27
Track5:note 28
Track6:note 29
Track7:note 30
Track8:note 31

Puis 8 boutons pour les 8 premier Mute

Mute1: note 16
Mute2: note 17
Mute3: note 18
Mute4: note 19
Mute5: note 20
Mute6: note 21
Mute7: note 22
Mute8: note 23

Puis 8 boutons pour les 8 premier Solo

Solo1: note 8
Solo2: note 9
Solo3: note 10
Solo4: note 11
Solo5: note 12
Solo6: note 13
Solo7: note 14
Solo8: note 15

Puis 8 boutons pour les 8 premier Armement

Arm1: note 0
Arm2: note 1
Arm3: note 2
Arm4: note 3
Arm5: note 4
Arm6: note 5
Arm7: note 6
Arm8: note 7

Puis 8 fader motorisé pour les 8 premier volume

Vol1: PitchBend canal 1
Vol2: PitchBend canal 2
Vol3: PitchBend canal 3
Vol4: PitchBend canal 4
Vol5: PitchBend canal 5
Vol6: PitchBend canal 6
Vol7: PitchBend canal 7
Vol8: PitchBend canal 8

Là j'ai repris la même configuration de la Mackie Control

Puis il y a le transport: Rew-FFwd-Stop-Play-Rec
les flèches haut-bas-gauche-droit pour naviguer dans les clips
un bouton pour déclencher les clips
un bouton pour déclencher les Scènes
Puch in
puch out
Loop
Arrangemnt/session
Afficher/masquer le navigatuer
Bank+ et Bank- pour passer au 8 pistes suivantes

Bon tout ça avec mon contrôleur ça marche nickel en mode Mackie
65

Citation : Ca veut dire quoi LinearBinaryOffset ? quel message précis envoie ton controleur? un message de combiens de bytes et avec quel comportement quand tu le tournes, c'est ça que tu dois savoir.



Où là comment savoir ça, ce que je sais mes encodeurs font 24 impulsions par rotations.
Pour les bytes je vais voir sur ucapps.de
Je me demande si c'est pas 7 bit
66
Et avec ça qu'est ce qu'on en fait, ça se met dans quel ficher

Citation : class MapMode(Boost.Python.enum)



Method resolution order:
MapMode
Boost.Python.enum
__builtin__.int
__builtin__.object

Data and non-method functions defined here:

__doc__ = None

__getstate__ = <built-in function __getstate__>

__slots__ = ()
tuple() -> an empty tuple
tuple(sequence) -> tuple initialized from sequence's items

If the argument is a tuple, the return value is the same object.

absolute = MidiMap.MapMode.absolute

absolute_14_bit = MidiMap.MapMode.absolute_14_bit

relative_binary_offset = MidiMap.MapMode.relative_binary_offset

relative_signed_bit = MidiMap.MapMode.relative_signed_bit

relative_signed_bit2 = MidiMap.MapMode.relative_signed_bit2

relative_smooth_binary_offset = MidiMap.MapMode.relative_smooth_binary_offset

relative_smooth_signed_bit = MidiMap.MapMode.relative_smooth_signed_bit

relative_smooth_signed_bit2 = MidiMap.MapMode.relative_smooth_signed_bit2

relative_smooth_two_compliment = MidiMap.MapMode.relative_smooth_two_compliment

relative_two_compliment = MidiMap.MapMode.relative_two_compliment

values = {0: MidiMap.MapMode.absolute, 1: MidiMap.MapMode.relative_signed_bit, 2: MidiMap.MapMode.relative_binary_offset, 3: MidiMap.MapMode.relative_two_compliment, 4: MidiMap.MapMode.relative_signed_bit2, 5: MidiMap.MapMode.absolute_14_bit, 6: MidiMap.MapMode.relative_smooth_signed_bit, 7: MidiMap.MapMode.relative_smooth_binary_offset, 8: MidiMap.MapMode.relative_smooth_two_compliment, 9: MidiMap.MapMode.relative_smooth_signed_bit2}
dict() -> new empty dictionary.
dict(mapping) -> new dictionary initialized from a mapping object's
(key, value) pairs.
dict(seq) -> new dictionary initialized as if via:
d = {}
for k, v in seq:
d[k] = v

67
Ça c'est juste une doc dont j'ai donné le lien.
68
Si tes encodeurs envoient des messages continus, pourquoi veux tu changer le mapmode cela ne sert à rien.

Il suffit d'adapter les données du fichiers const.py aux infos qu'envoie ton controleur , tu n'as rien à faire de plus.

tu dois changer le map mod uniquement quand ton contrôleur envoie un message complexe (genre CC43 vers la droite et CC44 vers la gauche) , ce qui n'est absolument pas le cas si on se base sur ce que tu viens d'écrire.
69
Je ferai un test quand mon contrôleur sera monté complètement et je te dis quoi avec mes encodeurs. :bravo:
70
Quand je parle de LinearBinaryOffset ,c'est quand j'assigne mes encodeurs un paramètre en midi, Live m'indique en bas à gauche de l'écran LinearBinaryOffset et pas Absolut comme les simples potentiomètres.

une info pour ceux qui ne savent pas la différence entre un encodeur et un potentiomètre

L'avantage des encodeurs c'est qu'il n'y a pas de saut quand on bouge un paramètre.
Alors qu'avec un potentiomètre, si ton paramètre dans Live (ex: PAN) est complètement à droite et que ton pot de ton contrôleur est à gauche ( mode de reprise: Graduer dans les option MIDI ), il faut tourner ton pot à droite et puis seulement régler ton paramètre.