Search the Community
Showing results for tags 'midi'.
Found 14 results
-
Real-Time Pitch Memory: Compositional Feedback System Using MaxMSP and OPUSMODUS
Real-Time Pitch Memory: Compositional Feedback System Using MaxMSP and OPUSMODUS This text outlines a specific aspect of a larger project I am developing for live electronics and instruments. Since the work heavily involves live electronic processing in real time, it is based on a MaxMSP patch that I am currently building. An important component of this system involves integrating OPUSMODUS for certain compositional processes—specifically, the processing of pitch material collected in real time via a pitch follower from an improvising musician. In MaxMSP, this means that every few seconds, the most recently played pitches (as MIDI note numbers) are saved into a .txt file. Meanwhile, in OPUSMODUS, I run a routine that checks once per second whether a new pitch list has been saved (i.e., a list that differs from the previous one). If a new list is detected, I generate an OMN sequence based on this list and export it as a MIDI file. Only ten MIDI files are generated and continuously overwritten in a rotating manner. These MIDI files can then be precisely triggered within MaxMSP (e.g., when a specific pitch is detected, a stored MIDI file is played back) and integrated into the live electronic performance. Essentially, the system acts as a memory/archive that is generated from the live improvisation of the performer. Through a specific grammar created in OPUSMODUS, this musical material can then be re-injected into the live setting, forming a loop between improvisation, analysis, and compositional feedback. Another development step would be to replace the current .txt-based communication with a direct OSC (Open Sound Control) connection, streamlining the entire process. demo-video.mov could sound like this: electric feedbacker guitar (live and improvised) + this system (in a test setup) demo_sound.m4a
-
Seamless midi accelerando for export
Hello everyone, I am working on a piece with midi sampling in my DAW (Cubase) and want to generate the midi data with Opusmodus. Currently I am trying to get a seamless as possible rhythmic accelerando from 1 note/second to 10 notes/second over the course of 20 seconds. I guess I'll have to express it in note values for midi export, so 1/4 to 1/40 in 5 bars of tempo 60? All attempts so far have resulted in audible rhythmic steps, so how can I achieve this as seamless as possible with minimal rhythmic shifts?
-
fermata combined with changing tempo results in wrong tempo in MIDI output
It seems the `fermata` attribute would cause tempo change in MIDI output, however when combined with changing tempo in `def-score`, the restored level is the last value in the `:tempo` list, which I guess is a bug. the problem can be demonstrated by the following code snippet: (setf ns '((q a4b4d5fs5cs6 mp arp e b5 e5 q fs4g4b4d5a5 arp d5) (q c3g3d4e4b4 arp h. a5b5d6 #|fermata|#) ;; uncomment this ((leg e b2 fs3 s a3 e d4 s_h e4)) ;; the tempo starts here will be whichever is the last ((leg e b2 fs3 s a3 e d4 s_h e4)) ;; in the `:tempo' list, which is 164 ((leg e d4fs4a4 mf marc d4 e4 cs4e4gs4 marc cs4 e4 d4fs4cs5 marc d4 leg)) ((leg e e4 d4fs4a4 marc d4 e4 cs4e4gs4 marc cs4 d4fs4cs5 marc d4)))) (def-score score (:key-signature '(d major) :time-signature '(4 4) :tempo '((q :rit 74 70 1/32 :bars 2) (70 2) (164 3) ) :layout (list '(:treble notes)) ) (notes :omn ns)) My current version is 2.2.26652.
-
changing pan in every event
dear all is there a possibility to change the PAN in every EVENT? 1) like '((q c4 mp pan-30) (e c3 pp pan100)) would be interesting for LIVE-CODING is there something predifined? like it will come up with microtonality/tuning 2) and why does it work with simple-midi-sound (a list in :pan) and not with a player like conTimbre (there is something i don't understand with midi/players/etc)? thanx for a hint andré an example: (setf omn '((5q c4 5q 5q 5q 5q 5q 5q 5q) (-q) (e e e e e) (-q) (7q 7q) (3q 3q) (-q) (5q 5q 5q) (7q 7q) (3q 3q 3q 3q) (e e) (-q) (3q 3q 3q 3q 3q) (e e e e e))) ;;; (def-score signature (:title "signature" :key-signature 'atonal :time-signature '(4 4) :tempo 60) (instr ;:port 0 :omn (omn-replace :velocity (pick-norepeat 100 '(pppp ppppp ppp ppp pp p)) (length-diminution 4 (gen-repeat 10 omn))) :tuning (gen-white-noise 100 :scale 0.1) :pan '(1 1 1 1 1 1 1 1 10 30 1 1 1 100 100 80 77 15 100 100 100) :channel 1 :sound 'gm-trumpet))
-
Playback of articulations
It would be useful for playback, if certain articulations would affect the sounding note durations and velocity values. With some articulations this already seems to be the case (e.g., stacc seems to reduce note durations by 50%), while other articulations are ignored during playback in that regard (e.g., leg is notated, but makes seemingly no difference in playback -- notes played legato are not overlapping, as would be expected, nor are non-legato notes very slightly separated). Other articulations are seemingly even wrongly set (e.g., marc is an accent, but it instead shortens the note). Here is a little example demonstrating the problem, which results in the attached MIDI file. EDIT: The upload failed, but you can easily listening to this or export it to MIDI yourself. '((e c4 leg d4 e4 leg f4) (q g4 marc -q -h)) Can users somewhere set/correct these playback settings? BTW: Ideally settings would allow for code (functions) evaluationed on the fly. That would allow, e.g., to add custom humanisation, e.g., to slightly vary the length of staccato articuations, or the velocity values set by non-legato notes.... Thanks! Best, Torsten
-
Changing MIDI channels with articulations
How is it possible to change the MIDI output channel of an instrument? For example, when writing for organ, you have two staffs for the right and left hand, but hands can change manuals, and this is best represented by different MIDI channels. Is there a way to define articulations that result in changing the MIDI channel? Thanks! Best, Torsten
-
best way to import midi with tuplets, etc
Hello, I'm trying to import Goldberg Variation No 26 into omn (to then process further), and I'm getting a bunch of fairly crazy rhythms (it certainly is a complicated midi file with ornaments, etc). I've tried both with the midi file included in the distro, and also with the attached. Essentially, I'd love to be able to see pretty much the same rhythms that I see when looking at these midi files in, say, Sibelius, once I export from omn. Anyone able to import that file successfully with respect to rhythmic notation (also, am I correct that there's no way to import musicxml into omn currently), and/or have any tips to offer? thanks very much, michael 988-v26.mid
- Sending MIDI directly
-
Converting MIDI or MusicXML to OMN
Hello, I'm a new user and wondering if there is a recommended method to input and convert a score to OpusModus. I have a score I've written in 4 parts each part represented in its own file in both MusicXML and MIDI. My goal is to import (either the MIDI or MusicXML) and convert these to OMN so that I can modify them using functions. I have been able to import them but I'm having difficulty converting them to OMN and I haven't been able to find this specific use case in any of the documentation. Any best practice or advice is appreciated. Regards, Tom
-
Sort Pitches with lengths
Good morning. I'm interested in score analysis and I've encountered an issue. Is it possibile in Opusmodus, after I've create a score in OMN form (for example : (h c6 mp) (w. f5 pp) (d a4 mp) ) sort these sublist in PITCH ascending order linking the corresponding value of LENGTH? example: convert this: (h c6 mp) (w. f5 pp) (d a4 mp) in this: (d a4 mp) (w. f5 pp) (h c6 mp) where every sublist remains the same but the order is changed on a pitch base (in this case ascending). I've tried SORT-ASC and similar, but probably there's something to try and I'm new to the program. Thank you a lot! Pietro
- raw midi file no meter
-
Real-time MIDI Output
Hi, One feature that I believe will add great value to Opusmodus (esp. Live Coding) is the ability to emit MIDI data as it is generated by the program. Currently, the whole MIDI sequence is constructed from def-score and then emitted. If we have functions for sending MIDI data directly, that will help in interacting with other devices (e.g DAW) in live, dynamic mode. I am guessing that this functionality is already there, but not exposed. Sometime ago, I had asked about OSC support, and the reply was that it will be available in ver 1.2. Both these features will enhance the value of the program. Regards, Rangarajan
-
Defining :port option in def-score
Hi, We are allowed to define :port option in the instruments section of def-score in order to drive other virtual instruments through that port (this is my understanding). In this case, is it still necessary to define :sound and :program options? What about :channel option? Regards, Rangarajan
-
MIDI files Playback
Many MIDI files from the web are setup to use ports. If you use an internal GM (General MIDI) sound then you need to select 'Ignore Ports' from the pop-up menu - ctrl-click (Contextual Menu).