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 597 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
71
Dans ce cas ton "encoder" n'envoie pas un contrôle change mais un autre type de message en fait 2 messages différents selon la direction de 'révolution' du contrôleur , donc l'implémentation que tu décrit ci dessus n'est pas bonne.

quoiqu'il en soit, je t'ai proposé une solution avec une structure conditionnelle, ou alors l'utilisation de la classe midimap avec les dictionnaires en python, faut que tu te plonges un minimum dans le code sinon tu n'iras pas loin.

tu as la classe trace fournie avec le script de départ , à toi de regarder dans le fichier log qui sera crée quel message exact envoie ton contrôleur , parce que la on n'en sait toujours rien.
72
J'ai fait un test de mes encodeurs avec le logiciel MIDI Monitior sur Mac pour voir ce que les encodeurs envoient.

voici les messages en tournant l'encodeur 22 vers la gauche, c'est toujours le chiffre 63 qu'envoie l'encodeur

Time Source Messge Chan DATA

22:35:15.394 From YAMAHA UX96 Port1 Control 1 Controller 22 63
22:35:15.544 From YAMAHA UX96 Port1 Control 1 Controller 22 63
22:35:15.654 From YAMAHA UX96 Port1 Control 1 Controller 22 63
22:35:16.137 From YAMAHA UX96 Port1 Control 1 Controller 22 63
22:35:16.288 From YAMAHA UX96 Port1 Control 1 Controller 22 63
22:35:16.511 From YAMAHA UX96 Port1 Control 1 Controller 22 63
22:35:16.690 From YAMAHA UX96 Port1 Control 1 Controller 22 63

En tournant vers la droite, c'est toujours 65 qu'envoie l'encodeur

22:47:41.528 From YAMAHA UX96 Port1 Control 1 Controller 22 65
22:47:41.688 From YAMAHA UX96 Port1 Control 1 Controller 22 65
22:47:41.823 From YAMAHA UX96 Port1 Control 1 Controller 22 65
22:47:41.970 From YAMAHA UX96 Port1 Control 1 Controller 22 65
22:47:42.358 From YAMAHA UX96 Port1 Control 1 Controller 22 65
22:47:42.528 From YAMAHA UX96 Port1 Control 1 Controller 22 65

C'est bien comme tu disais, il y a 2 valeurs différentes quand on tourne à gauche et à droite




Un autre test avec mon contrrôleur PCP-300 d'Edirol.
Ici j'utilise des potentiomètres


quand je tourne le potentiomètre vers la droite, on voit défiler des chiffres de 0 à 127

22:53:57.845 From EDIROL PCR 1 Control 1 Controller 22 1
22:53:57.881 From EDIROL PCR 1 Control 1 Controller 22 2
22:53:57.899 From EDIROL PCR 1 Control 1 Controller 22 3
22:53:57.935 From EDIROL PCR 1 Control 1 Controller 22 4
22:53:57.953 From EDIROL PCR 1 Control 1 Controller 22 5
22:53:57.971 From EDIROL PCR 1 Control 1 Controller 22 6
22:53:58.007 From EDIROL PCR 1 Control 1 Controller 22 7
22:53:58.025 From EDIROL PCR 1 Control 1 Controller 22 8
22:53:58.061 From EDIROL PCR 1 Control 1 Controller 22 9
22:53:58.079 From EDIROL PCR 1 Control 1 Controller 22 10
22:53:58.097 From EDIROL PCR 1 Control 1 Controller 22 11
22:53:58.116 From EDIROL PCR 1 Control 1 Controller 22 12
22:53:58.170 From EDIROL PCR 1 Control 1 Controller 22 13
22:53:58.224 From EDIROL PCR 1 Control 1 Controller 22 14
22:53:58.278 From EDIROL PCR 1 Control 1 Controller 22 15
22:53:58.404 From EDIROL PCR 1 Control 1 Controller 22 16
22:53:58.476 From EDIROL PCR 1 Control 1 Controller 22 17

Et vers la gauche de 127 à 0


23:00:47.018 From EDIROL PCR 1 Control 1 Controller 22 126
23:00:47.072 From EDIROL PCR 1 Control 1 Controller 22 125
23:00:47.198 From EDIROL PCR 1 Control 1 Controller 22 124
23:00:47.740 From EDIROL PCR 1 Control 1 Controller 22 123
23:00:47.812 From EDIROL PCR 1 Control 1 Controller 22 122
23:00:47.938 From EDIROL PCR 1 Control 1 Controller 22 121
23:00:47.956 From EDIROL PCR 1 Control 1 Controller 22 120
23:00:47.992 From EDIROL PCR 1 Control 1 Controller 22 119
23:00:48.028 From EDIROL PCR 1 Control 1 Controller 22 118
23:00:48.064 From EDIROL PCR 1 Control 1 Controller 22 117
23:00:48.082 From EDIROL PCR 1 Control 1 Controller 22 116
23:00:48.118 From EDIROL PCR 1 Control 1 Controller 22 115
23:00:48.136 From EDIROL PCR 1 Control 1 Controller 22 114
23:00:48.172 From EDIROL PCR 1 Control 1 Controller 22 113
73
Dans Live avec tout ce qui est generic Encoder, mes encodeurs ne répondent pas
avec photon_X25 marche pas non plus.

Il y a qu'avec Mackie Control et Mackie Control Classic que mes encodeurs répondent, mais quand je tourne à gauche le Pan piste 1 tourne vite vers la droite et quand je tourne l'encodeur vers la droite le Pan tourne tout doucement vers la gauche.

dansle dossier Mackie Control, fichier Mackie Control.py il y a


def suggest_map_mode(self, cc_no, channel):
result = Live.MidiMap.MapMode.absolute
if (cc_no in range(FID_PANNING_BASE, (FID_PANNING_BASE + NUM_CHANNEL_STRIPS))):
result = Live.MidiMap.MapMode.relative_signed_bit
return result


J'ai changé result=Live.MidiMap.MapMode.relative_signed_bit

par
result=Live.MidiMap.MapMode.relative_binary_offset

Mais là, mes encodeurs ne répondent plus???
J'y comprend rien :(((
74
Ou à tu trouvé le fichier Mackie Control.py puisque les fichiers livrés avec Live sont compilés?

Pour faire marcher ton controleur avec le script photon il faut au minimum changer les numéros de CC dans le fichier const et surtout changer les canaux midi du midi channel mal sachant que le canal 1 = 0 , canal 2 = 1 , etc...
75
J'ai tous les dossiers des contrôleurs en .py ,je ne sais plus où je les est téléchargés, je peux te les envoyer par mail.
76
ça y est !!!!!!! 

Mes encodeurs fonctionnent , le problème c'est que j'oubliais d'indiquer le canal midi.

Merci Camus .

J'ai fait le test avec Photon_X25
Pour que ça fonctionne je doit assigner mes encodeurs en mode absolute.
L'inconvénient en mode absolute, j'ai des saut brutaux des paramètres.
C'est pour ça que j'aimerai integrer le Live.MidiMap.MapMode.relative_binary_offset.

[ Dernière édition du message le 27/06/2009 à 00:35:05 ]

77
J'ai réussi à faire fonctinner mes encodeurs en Live.MidiMap.MapMode.relative_binary_offset.

Dans le dossier MPD32
Dans le fichier init

def create_instance(c_instance):
""" The generic script can be customised by using parameters (see config.py). """
return GenericScript(c_instance, Live.MidiMap.MapMode.relative_binary_offset, Live.MidiMap.MapMode.relative_binary_offset, DEVICE_CONTROLS, TRANSPORT_CONTROLS, VOLUME_CONTROLS, TRACKARM_CONTROLS, BANK_CONTROLS, CONTROLLER_DESCRIPTION, MIXER_OPTIONS) 

Et là je n'est plus de saut brusque quand je change les paramètres
78
Salut camus,

j'ai le dossier _Generic avec les fichier en py, dans Device on peut modifier les Bank de 1 à 8 de tous les périphérique de Live.
Mais en remplaçant ce dossier  _Generic par le dossier d'origine _Generic de Live ça ne fonctionne plus, même sans modifier aucun fichier.
Saurais-tu me dire pourquoi ?
79
aucune idée.chez moi tout les fichiers pythons sont en pyc donc déja compilés.
80
des prHors sujet :
euh pour te faire des presets sur le mpd32 y a VYZEX MPD32 c'est quand même plus intuitif ! tu peux partir du réglage prévu pour live et modifier que ce que tu veux…