Jump to content


  • Content Count

  • Joined

  • Last visited

Everything posted by torstenanders

  1. Some attributes are sticky (they do not need to be repeated to maintain being set, and when they are repeated they are not shown again in the score) -- while others are not. For example, the articulation pizz is sticky, while stacc is not. It seems that add-text-attributes declares only sticky attributes. Is it perhaps possible to also have custom non-sticky attributes? For example, want to annotate certain motif or phrase names, and if I repeat the same motif the text label is not shown again. Just in case this is already possible... Thank you!
  2. I am trying to clarify my point by adding an example. With the new multi-voice snippet previews we can now do arbitrary processing of polyphonic score snippets. In the code below, some short polyphonic snippet is transposed, but different parts are transposed differently. With this approach, arbitrary Opusmodus functions defined for single parts can be used for processing full polyphonic score snippets on one go, and arbitrary combinations of arguments for such Opusmodus functions can be provided. The trick is to include some special symbol (_) for marking the position of the actual part in th
  3. Ah, it is very useful to have all such changes collected in one place.
  4. I really like seeing the function ps and multi-voice snippet previews -- and ps looks a bit familiar score TANDERS.GITHUB.IO However, perhaps we can do even better. The real power of the monophonic (old) snippets preview is that in a sequence of algorithmic transformations of musical material, quick score previews can be seen/heard of any intermediate stage without any extra code, just with those snipped keyboard shortcuts. For example, in the 2nd line of short code below, using the shortcut cmd-1 we can see/hear the original motif, its transposition an
  5. Ah, renaming is easy. I seemingly like that function, had to replace it 7 times
  6. Has the function find-ambitus perhaps be renamed or otherwise be refactored? I cannot find it anymore, but some of my code depends on it. I seems it can be reproduced with possibly new function get-ambitus, but as I do not have the doc of find-ambitus with its defaults, but because I do not have the doc of find-ambitus anymore, I am not quite sure. Thank you! Best, Torsten
  7. I found what I needed: the function audition-last-score (called together with display-musicxml). Thanks for offering help...
  8. Is there perhaps also a way to display the score in a window and start MIDI playback without opening a separate window for the latter? Basically a variant of (audition-musicxml-last-score)? Only if this is easy, but it would help the workflow. Thanks for providing the extra window. Best, Torsten
  9. Dear all, After updating to a recent Opusmodus version 1.3, I ran into some errors when loading code that had been loaded and compiled before, e.g., quicklisp, quicklisp libraries, swank (the interface that allows using Emacs Slime with Opusmodus), and my own Lisp libraries. The errors I saw were rather cryptic, like the following: Error: The value "CL" is not of the expected type list. While executing: (:internal ccl::operation-on-all-specs ccl::%define-package), in process Listener-1(7). After exchanges with Janusz (thanks a lot for your help!) I learnt
  10. > While I can create a canon, counterpoint and a fugue myself with a bit of time, it would be much less time-consuming for me if I were able to use existing examples. Is there an existing library of OMN examples of these types of compositions? I cannot offer ready-made examples, but a constraint-based library with various counterpoint (and also harmony) rules ready-made. Cluster engine implements the constraint solver, and many functions for applying user-defined rules to various score contexts in a flexible way (e.g., consecutive notes in certain voices, simultane
  11. Here are some links to another project working on a bridge between Max and Common Lisp. They are calling SBCL in the background using the shell interface of Max, if I recall correctly. The project is not yet very mature, but they have several OpenMusic/PWGL libraries running with a Max interface for pedagogic purposes. LISP in Max: Exploratory Computer-Aided Composition in Real-Time QUOD.LIB.UMICH.EDU MOZ’Lib | bach WWW.BACHPROJECT.NET MOZ’Lib is a set of pedagogical tools designed to explore, at the same
  12. > Sometimes is interesting for hearing snippets with different sounds without having to compile the entire score My Opmo score data structure already allows for that, though you always have to render snippets with an explicit function call, as we cannot define custom shortcuts so far. It is part of my tools at https://github.com/tanders/tot. Check out the function preview-score (https://tanders.github.io/tot/sources/score.html#_g232191). Various other functions allow to transform polyphonic score snippets for one or more instruments in various ways. Be
  13. FYI, the changes I proposed are meanwhile merged into the repository at https://github.com/ormf/cm, so you can directly load the Common Music version shared there into Opusmodus 1.3 again. Best, Torsten
  14. I should add that all I fixed was that the full Common Music can be loaded again into Opusmodus 1.3. However, Common Music does not "see" CLM and the interface to it is broken, because CLM is now seemingly defined in another package. However, if anyone wants to use CM with CLM you can load it into a Lisp image without Opusmodus. Best, Torsten
  15. Common Music (CM) is another interesting composition system (http://commonmusic.sourceforge.net), and a recent revision of the old CM version 2 (https://github.com/ormf/cm), which was still implemented in Common Lisp (in contrast to later versions defined in Scheme) can be loaded into and used alongside Opusmodus 1.2 without problems. This was possible primarily due to a largely revised load mechanism of the old CM sources. With the new Opusmodus 1.3 this is not possible any more. It seems the problem is caused by the fact that :CLM (and a number of variants) are still added to *
  16. EDIT: I fixed the problem by updating the Lisp side of SLIME manually, as the SLIME version in Quicklisp is quite old (20150709). Best, Torsten
  17. Opusmodus 1.2 can be used from within the Emacs editor as well (see the post at the link below for details). For me as a programmer having additionally access to the Emacs Lisp IDE SLIME is greatly preferable due to various advanced features provided by Slime when compared with the more easy-to-use native IDE of Opusmodus. For more information on SLIME see its website: https://common-lisp.net/project/slime Unfortunately, the SLIME link is seemingly broken in Opusmodus 1.3, which I just started for the first time. For those who have no SLIME installed (but have Qu
  18. Do you perhaps mean the following? Reina, R. (2016) Applying Karnatic Rhythmical Techniques to Western Music. Routledge. https://books.google.co.uk/books?id=4RSrCwAAQBAJ&printsec=frontcover#v=onepage&q&f=false Online material http://www.rafaelreina.org/book-online-material.html Related course http://www.contemporary-music-through-non-western-techniques.com Apologies for my late response. Best, Torsten
  19. There is currently no support for multiple monitors, unfortunately, but it may be on the TODO list of the developers. See also the following link.
  20. BTW: It seems that Opusmodus sends various redundant MIDI events when looking at its realtime output with MIDI monitor. Initially, CC 123 and 120 are initialised to 0 for all 16 channels, but this is done several times (at the end this is done again, but only once). More worryingly, notes are send multiple times. For example, when you send the example below in a score, a note-on for the first note (C5) is send twice almost simultaneously, followed by a note-off for both those notes simultaneously. Indeed, you can commonly hear the result of that as a quasi hick-up in the output, or
  21. I am still working on getting playback for GrandOrgue working properly. I defined a sound set with various articulations (shown in a related post, see link below) for setting, e.g., which manual to use for the current hand, and which stop combinations on that manual. Those articulations already work individually in Opusmodus. The problem I am facing is that I need to constantly combine multiple of such articulations in a single note. For example, I may need to specify that the right hand stops playing on the manual I (one articulation), that it instead plays on manual II and III co
  22. In common music notation, if you use some "sticky" playing technique and you want to "disable" it later, then you should tell so the performer, should you not? Best, Torsten
  23. > Check the GET-RUNNING function. This will explain as well how to use floats in tuning. Is that a new function? It is not available in my image. Best, Torsten -------------------------- Unfortunately, evaluating add-cents-tuning-to-text-atrributes results in an error for me. > Error: ((= (length (explode i)) 5) (filter-first 3 (explode i))  (filter-first 2 (explode i))) can't be destructured against the lambda list (ccl::test true &optional false), because it cont
  24. Good to hear that you have both IRCAM solo-instruments and conTimbre. I was considering getting one of those at some stage. What is your impression of either using them for sequencing with a DAW or notation software? Best, Torsten
  25. > with MIDI you can either send pitch bend values, but that always affects the whole voice. Actually, MIDI pitch bend always detunes all notes in the respective MIDI channel (no voice). The same is true for CC messages, channel aftertouch etc. That is a principle limitation of the MIDI protocol, and not related to ConTimbre. So, if you have an instrument performing polyphonic music (more than one note at a time), and you want to detune different notes differently, this is not possible if all the notes are played by the same MIDI channel. One workaround, meanwhile pa
  • Create New...

Important Information

Terms of Use Privacy Policy