MIDI en OSC

Inleiding

Sonic Pi ondersteunt zowel MIDI als OSC om externe apparatuur of software te gebruiken voor het sturen en ontvangen van signalen. Dit maakt het mogelijk om Sonic Pi te integreren met andere instrumenten of software, en biedt je extra mogelijkheden om je muziek live te manipuleren.

AKAI MPK Mini MK3 MIDI keyboard controller USB

Wat is MIDI?

MIDI (Musical Instrument Digital Interface) is een standaard die gebruikt wordt om informatie tussen elektronische muziekinstrumenten, computers en andere apparaten te versturen. In plaats van geluid zelf te versturen, stuurt MIDI informatie over welke noten gespeeld worden, met welke snelheid (velocity), en wanneer. Je kunt MIDI gebruiken om Sonic Pi aan te sturen vanaf een MIDI-keyboard of controller.

Wat is OSC?

OSC (Open Sound Control) is een protocol dat wordt gebruikt om data te verzenden tussen verschillende multimediatoepassingen, vaak in real-time. OSC wordt gebruikt om verschillende parameters, zoals noten of effecten, tussen software en apparaten te versturen en ontvangen. Het is flexibel en wordt vaak gebruikt in kunstinstallaties en live performances.

Verschillen tussen MIDI en OSC

Het grootste verschil tussen MIDI en OSCis dat MIDI specifiek is ontworpen voor het versturen van muziekinformatie, zoals noten en velocity, en wordt gebruikt voor het aansturen van instrumenten en controllers. OSC daarentegen is veel flexibeler en kan allerlei soorten gegevens versturen, niet alleen muziekgerelateerd. Dit maakt OSC geschikt voor toepassingen buiten muziek, zoals het aansturen van visuals en interactieve installaties.

MIDI OSC
Ontworpen voor muziekgerelateerde informatie zoals noten, velocity, en instrumentbesturing. Veel flexibeler: kan allerlei soorten gegevens versturen, inclusief muziekgerelateerde en niet-muziekgerelateerde informatie.
Beperkt tot 127 waarden voor parameters zoals velocity en control changes. Ondersteunt een veel breder scala aan waarden en datatypes, zoals tekst, getallen, en zelfs complexe structuren.
Gebruikelijk bij fysieke muziekinstrumenten zoals keyboards en controllers. Meer gebruikt in software en interactieve kunstinstallaties. Kan eenvoudig communiceren met meerdere apparaten tegelijkertijd.
Standaard in de muziekindustrie sinds de jaren '80, vooral voor hardware-integratie. Moderner en breder toepasbaar dan MIDI. Het kan worden gebruikt voor het aansturen van audio, video, licht, en andere multimediatoepassingen.
Vooral gericht op muziek en beperkt tot noten en muziekgerelateerde berichten. Kan veel meer dan alleen muziek: OSC kan data versturen naar visuele projecten, interactieve systemen, of zelfs robotica.

Gebruik van MIDI in Sonic Pi

Sonic Pi kan communiceren met MIDI-apparaten als je computer MIDI ondersteunt. Je kunt MIDI-signalen zowel verzenden als ontvangen, bijvoorbeeld vanaf een MIDI-keyboard. Hier is een eenvoudig voorbeeld van hoe je MIDI-noten kunt ontvangen:

live_loop :midi_piano do
  note, velocity = sync "/midi/*/note_on"
  play note, amp: velocity / 127.0
end

In dit voorbeeld luister je naar inkomende MIDI-noten (zoals vanaf een MIDI-keyboard). Elke keer dat een noot wordt ingedrukt (note_on), wordt de toon afgespeeld in Sonic Pi. De amplitude wordt aangepast op basis van de snelheid (velocity) waarmee de toets wordt aangeslagen.

Om MIDI te kunnen gebruiken in Sonic Pi, moet je je MIDI-apparaat verbinden en het juiste MIDI-kanaal kiezen. Zorg er ook voor dat je in je instellingen de MIDI-opties hebt ingeschakeld.

MIDI-noten verzenden

Je kunt ook noten vanuit Sonic Pi naar een extern MIDI-apparaat sturen, zoals een synthesizer of een ander geluidsgenerator. Hier is een voorbeeld:

midi_note_on 60, port: "loopmidi_port", channel: 1
sleep 0.5
midi_note_off 60, port: "loopmidi_port", channel: 1

In dit voorbeeld wordt een MIDI-noot (C4, oftewel 60) verzonden naar een MIDI-apparaat op kanaal 1 via een virtuele MIDI-poort. Na 0,5 seconde wordt de noot weer uitgeschakeld met midi_note_off.

Gebruik van OSC in Sonic Pi

Sonic Pi ondersteunt OSC-berichten, waardoor je met andere software of apparaten kunt communiceren. Hier is een voorbeeld van hoe je een OSC-bericht kunt ontvangen:

live_loop :osc_listener do
  b = sync "/osc/trigger/note"
  play b[0]
end

In dit voorbeeld luistert Sonic Pi naar een OSC-bericht op het pad /osc/trigger/note. Wanneer een bericht binnenkomt, wordt de eerste waarde gebruikt om een noot te spelen.

OSC-berichten verzenden

Je kunt ook OSC-berichten vanuit Sonic Pi naar andere applicaties sturen. Hier is een eenvoudig voorbeeld:

osc "/trigger/note", 72

Dit stuurt een OSC-bericht met het pad /trigger/note en een waarde van 72 (C5) naar een andere OSC-compatibele toepassing.

Voor- en nadelen van MIDI en OSC in Sonic Pi

  • MIDIis geweldig voor het verbinden van fysieke muziekinstrumenten zoals keyboards en controllers, maar het kan beperkt zijn tot specifieke muziekinformatie zoals noten en velocities.
  • OSCis flexibeler dan MIDI en kan meer soorten informatie verzenden, zoals parameters voor visuals of data voor andere toepassingen. Het is echter minder standaard voor hardware-integratie dan MIDI.

Conclusie

Met MIDI en OSC kun je Sonic Pi naar een hoger niveau tillen door het te integreren met andere apparaten en software. MIDI is handig voor het werken met fysieke muziekinstrumenten, terwijl OSC flexibel is en veel wordt gebruikt in interactieve installaties en live performances. Experimenteer met beide om je creativiteit uit te breiden!

Tik hier je tekst

Volgende pagina