Nog meer mididings

Mididings script voor 29 oktober is klaar:

#!/usr/bin/python

from mididings import *
from mididings.extra import *

config(
    backend='jack',
    client_name='sodap-live',
    data_offset=0,
)

run(
    Filter(PROGRAM) >> [
        [
            ProgramFilter(0) >> NoteOn(64,50),
            ProgramFilter(7) >> NoteOn(69,86),
            ProgramFilter(0) >> NoteOn(72,60),
            ProgramFilter(1) >> NoteOn(74,62),
            ProgramFilter(2) >> NoteOn(76,64),
            ProgramFilter(3) >> NoteOn(71,30),
            ProgramFilter(7) >> NoteOn(77,88),
            ProgramFilter(8) >> NoteOn(79,96),
            ProgramFilter(9) >> NoteOn(81,84),
        ] >>
        LatchNotes() >> [
            KeyFilter(64) % NoteOff(69,0),
            KeyFilter(69) % NoteOff(64,0),
        ],
        ProgramFilter(4) >> Panic(),
        ProgramFilter(10) >>
        Channel(2) >>
        NoteOn(36,64),
    ]
)

Met dit script kan ik nu de strijkers spelen in Soda P – Icon of your Time en heb een Vibraslap sample van Freesound.org in een soundfontje gezet met Swami zodat ik deze met de FluidSynth DSSI plug-in ook vanuit Qtractor kan triggeren met behulp van de Boss FC-50. De strijkers gaan via het eerste paralelle ‘blok’ waarin Program Changes worden omgezet in Note Ons, daarna gaan ze door de LatchNotes Unit en daarna worden in een genest parallel blok nog twee Note Offs gedefinieerd. Stuurt de FC-50 Program Change 4 uit dan worden alle noten uitgezet (‘Panic’), bij Program Change 10 stuurt mididings een MIDI noot 36 op MIDI kanaal 2 naar Qtractor voor de Vibraslap. Het config deel aan het begin van het script vertelt mididings dat er JACK MIDI poorten aangemaakt moeten worden met als naam ‘sodap-live’. data_offset=0 is nodig omdat de FC-50 bij 0 begint met tellen en niet bij 1.

Nog meer mididings

Boss FC-50 en mididings

De Boss FC-50 doet alleen aan MIDI Program Changes en wat Control Changes. Maar ik wil er noten mee kunnen spelen. Dat zou op zich kunnen met QMidiRoute maar het mooiste zou zijn als ik ook Note Off events zou kunnen genereren, of nog beter, als een volgende noot de vorige af zou kunnen kappen. mididings heeft deze functionaliteit en heb een scriptje gemaakt dat precies doet wat ik wil:

#!/usr/bin/python

from mididings import *
from mididings.extra import *

run(
    Filter(PROGRAM) >>
    NoteOn(EVENT_VALUE,100) >>
    Transpose(36) >>
    LatchNotes(),
)

Wat dit mididings scriptje doet is de Program Changes eruit filteren, deze omzetten naar Note On events, de gegenereerde noten 3 octaven omhoog gooien en met de LatchNotes Unit ‘latch’ je de noten (je laat ze aanhouden) en zet je elke vorige noot uit bij een nieuwe noot. Dit scriptje maakt van de FC-50 een mooi footkeyboardje.

mididings kun je vinden in de lucid-unstable repository van Tango Studio.

Boss FC-50 en mididings

MIDI Foot Controller

Van de week heb ik een tweedehands Boss FC-50 MIDI Foot Controller op de kop weten te tikken. Gelijk aangesloten op mijn live set-up (HP Notebook met Focusrite Saffire Pro 10, Ubuntu 10.04) en getest met o.a. QMidiRoute. Werkt perfect. Ga in mididings duiken zodat ik deze controller kan gaan gebruiken als keyboard (dus om noten te produceren) en als MIDI footswitch voor Rakarrack en Guitarix. Hopelijk kan ik de controller de 29e al live gebruiken op het Rock de IJmond XL Festival.



MIDI Foot Controller