Jump to content

Support & Troubleshooting

Discuss anything related to Opusmodus that doesn't fit in another sub-forum here!

  1. Started by strum,

    I want to map a melody over chords taking into consideration both of their durations. (setf motif '(s b3 b3 b3 b3 b3 b3 b3 b3 b3 b3 b3 b3 b3 b3 b3 b3)) (setf chords '(q c3e3g3 d3f3a3 h g3b3d3)) (setf map-1 (harmonic-path chords motif)) yet I get (s c3 e3 g3 d3 f3 a3 g3 b3 d3 c3 e3 g3 d3 f3 a3 g3) I find that no matter what notes I put in motif, I always get the same result which is just the 9 chord notes being arppegiated 16 times in sequence. Ideally I would like the notes of motif, to find it's closest match in the chord.

  2. Started by mstep,

    Hello, using pitch-transpose i sometimes get unexpected results with pitches as transpose value. the results are one octave lower than expected. Here are examples: (pitch-transpose 'd3 '(c3 d3 e3 f3)) -> (d2 e2 fs2 g2) (pitch-transpose 'd2 '(c3 d3 e3 f3)) -> (d1 e1 fs1 g1) (pitch-transpose 'd4 '(c3 d3 e3 f3)) -> (d3 e3 fs3 g3) interestingly, this one works as expected: (pitch-transpose 'd5 '(c4 d4 e4 f4)) -> (d5 e5 fs5 g5) What am i missing?

  3. Started by strum,

    Hi, Using diatonic-chord Is there a work around to be able to omit 3rd from a chord, as I don't see any defined explicitly with omit 3rd. Are all the chords defined somewhere accessible that I could add more? thanks

  4. I've been working in a scratch file, and setting a bunch of variables and defining functions. Now I want to tidy things up by extracting those parts to a separate file. However, because I've evaluated the code, it's all still valid. So I can easily make a new file that doesn't have the necessary definitions. Is there a way to reset the lisp environment so I can test whether a file works from a clean slate? Obviously I can restart the application entirely - I'm just wondering if there's some way to not do that. Note: My experiments with built-in GPT are short-lived. Here's a summary of when I inquired with it: Use the clear-all function. This command is not found directl…

  5. Hello Opusmodus team and community, I'm working on a simple live-coded techno drum loop using live-coding-midi, and while the loop plays and repeats, it's not looping seamlessly — the playback seems to stutter or lose sync at the loop boundary. Despite matching total durations across parts (kick = 16 quarter notes, snare = 4 hits, hats = 64 sixteenths), something isn't syncing correctly at the loop point. I suspect it's an issue with the alignment of the final bar or a nuance in how live-coding-midi handles timing across instruments. Is there something I'm missing in how Opusmodus expects score lengths to be structured for seamless looping? Do I need to pad rests or exp…

  6. Started by AM,

    a simple small function I had to write for a project: it generates a kind of accelerando towards the value 1 (defun gen-acc (alist) (loop while (not (equal alist (gen-repeat (length alist) 1))) collect (setf alist (loop for i in alist when (> i 1) collect (- i 1) else collect i)))) (gen-acc (rnd-order (primes 11))) => ((30 2 6 12 10 18 28 1 4 16 22) (29 1 5 11 9 17 27 1 3 15 21) (28 1 4 10 8 16 26 1 2 14 20) (27 1 3 9 7 15 25 1 1 13 19) (26 1 2 8 6 14 24 1 1 12 18) (25 1 1 7 5 13 23 1 1 11 17) (24 1 1 6 4 12 22 1 1 10 16) (23 1 1 5 3 11 21 1 1 9 15) (22…

  7. Started by Andy,

    Would have been nice to include the upgrade in the sale? (but no surprise you didn't) In my humble opinion Opusmodus is way overpriced and always has been. I would have upgraded to the latest version a long time ago if you made it accessible to mere mortals in the real world i.e not academics Just my feedback.

  8. Started by eboats,

    Using the GM instruments in OM ( I'm on a MacBook), I'd like to reduce the reverb on the Flute for example. Do I add something to the below or change that elsewhere? (flute :omn omn :channel 1 :volume 127 :sound 'gm :program 'flute) Also, what is the easiest way to record the OM audio output to a wav? In Supercollider for example, you can record the audio from a running script. In Dorico, you can export the notation output as audio/wav. Is there something like that in OM or would I have to use some sort of loopback tool to record the OM General Midi audio output to Audacity or Cubase? Thanks for any info!

  9. I wrote a script to reproduce Steve Reich's "Clapping Music" by brute forcing a list of rhythm permutations. Is there a single command that would do the same? ;; --------------------------------------------------------- ;; Welcome to the Composer panel. ;; This is the space where you write your score. ;; --------------------------------------------------------- (setf Clap1 '(e g4 e e -e e e -e e -e e e -e )) (setf Clap2 '( ( e c4 e e -e e e -e e -e e e -e ) ( e e -e e e -e e -e e e -e e ) ( e -e e e -e e -e e e -e e e ) ( -e e e -e e -e e e -e e e e ) ( e e -e e -e e e -e e e e -e ) ( e -e e -e e e -…

  10. Started by eboats,

    I have a simple question. In the attached pic, how do I write the two 16th note triplets in OM notation? I'm not sure how to write it if one of the notes is an 8th note like in the example ( something like '(3e d5 b4) )?

  11. Started by tambarskjelve,

    I take the the unified window layout you see in "100 seconds" videos is not available in Opusmodus 3?

  12. Started by RedDot,

    Hi, OM2 had a dark mode, but I can't find it in OM3... Isn't there a dark mode in OM3? If there is, where do I find it? All the best, AntĂłnio

  13. Started by paul,

    Hi, As shown in the picture below: the output of gen-dictum doesn't contain tonality information, I would appreciate some help on this matter. Thanks gen-dictum- tonality.pdf

  14. Started by david,

    Hi, i have a problem with pitch melodize (setf i22 (harmonic-progression '(1 2 3 4 5 6 7 8 9 10 11) scale :base 1 :size 4 :step '((4 4 5 )(4 4 5)(4 4 5)(4 5 4)(4 5 4)(4 4 5)(4 5 4)(5 4 4)(5 4 4)(4 5 5)(5 4 5)))) my tenth chord is good. (setf m (pitch-melodize i22)) bar 10 chord ten is not good, could someone explain what is going on? thanks for your help several problems as well bar 6

  15. Started by PatrickMimran,

    if i use chat gpt from opusmodus, we cannot copy paste from within the page, and from one window to another. If i use chat gpt from a browser outside of opusmodus it works. It would be nice to fix this problem Thank you Patrick

  16. Hello, I'm searching for a way to split a chord back into its pitches (so basically the reverse of "chordize"). Is there a function to do that (not "dechord" or "dissolve"...)? Thanks & cheers, Alex

  17. Started by HenryT,

    Hello! I haven't had any luck in creating connection between OM and Emacs. (start-swank) from OM Listener gives error: "The file #P"OM-SRC:SWAML-LOADER.LISP.NEWEST" does not exist". If I try (start-swank) with path to a Slime on Quicklisp path (I have both 2.28 and 2.24 versions of Slime, result is the same), compilation starts but gets stuck and must be aborted. Help appreciated Henry

  18. Started by jbm,

    I'm trying to figure out what might be wrong with this script: (setf melody '(q c4 mp q db4 q eb4 q e4 q fs4 q bb4 q a4 q d4)) ; Melody (setf melody-pairs (gen-divide 2 melody)) ; Group melody into pairs (setf chords '( h c4db4e4g4 p ; Cdim7 h e4gs4b4d5 p ; E7 h fs4a4c5eb5 p ; F#7b9 h d4f4a4c5 p ; Dmin9 )) ; Chord progression (setf seq-melody melody-pairs) ; Separate melody for staff (setf seq-chords chords) ; Separate chords for staff (setf len1 (omn-length seq-chords)) (midi-destinations) (def-score test (:title "Score Test" :composer "JBM" :time-signature '(4 4) :tempo 72) (part1 :omn seq-melody …

  19. Is there perhaps still an HTML version around of the full and up-to-date Opusmodus documentation? Context I am currently playing around with multiple AI coders (so far, I used Github Copilot, aider and Cursor at work). I am still exploring, but they definitely are helpful, in particular for popular programming languages and libraries. Not so much for more niche environments like Opusmodus yet. However, this is something that we can change, e.g., by using RAG (retrieval augmented generation, i.e. letting some system automatically extract user query-relevant information from project-relevant sources and then automatically complement the query w…

  20. Hi, Where is this file ? (defparameter *default-notation-editor* "MuseScore 4.app")

  21. Started by EAIP,

    Is there a command to move the cursor to the end of a line of code? In word processors etc a standard shortcut is [cmd+arrow] to move between start/end of line, and [option+arrow] to move between words. In OM only the latter seems to work. Thanks!

  22. In the video "Mapping Velocity to Pitch - How To in 100 Seconds", it is demonstrated how to apply MIDI velocities to a composition. However, one might just want to apply a certain velocity curve purely for a playback effect, without getting that many visually excessive dynamic markings in the actual score. I hope that is possible to achieve right now? Of course, one could later manually remove excessive markings in their preferred notation program. However, this is an inconvenience; moreover, during the compositional process within Opusmodus, you can see how it is an inconvenience to constantly see all those markings.

  23. I am trying to add a new text attribute for half pedalling (later in my scoring application Dorico I can translate that into the proper pedalling notation) and then specify for playback the MIDI CC messages it would need to send (e.g., the new attribute half-pedal sets the damper-pedal CC set to 64). Naively, a simple solution seems to be to complement this half pedalling with a text attribute for releasing the pedal (rel-pedal sets damper-pedal to 0) as shown below. So, I added the following to my pianoteq sound set (besides defining these text attributes). :group omn full-pedal (Ped 127) half-pedal (Ped 64) rel-pedal (Ped 0) This is partially already …

  24. I'm stuck. Why does the first example work but not the second? Thanks! (setf v1 '((-w h a4 d4) (h f4 e4 d4 q a4 g4) (q f4 g4 e a4 bb4 c5 a4 q bb4 h a4 q g4) (h a4 bb4 w a4))) First example: (loop for n from 1 to 4 collect (get-events '(1 2 (2..4)) v1)) ;; "works" Second example: (loop for n from 1 to 4 collect (get-events '(1 n (2..4)) v1)) ;; doesn't work, why? This is the error message: Error: In 1- of (n) arguments should be of type number. 1 (continue) Return a value to use. 2 Supply a new argument. 3 (abort) Return to top loop level 0.

    • 7 replies
    • 324 views

Copyright © 2014-2025 Opusmodus™ Ltd. All rights reserved.
Product features, specifications, system requirements and availability are subject to change without notice.
Opusmodus, the Opusmodus logo, and other Opusmodus trademarks are either registered trademarks or trademarks of Opusmodus Ltd.
All other trademarks contained herein are the property of their respective owners.

Powered by Invision Community

Important Information

Terms of Use Privacy Policy