Skip to content
View in the app

A better way to browse. Learn more.

Opusmodus

A full-screen app on your home screen with push notifications, badges and more.

To install this app on iOS and iPadOS
  1. Tap the Share icon in Safari
  2. Scroll the menu and tap Add to Home Screen.
  3. Tap Add in the top-right corner.
To install this app on Android
  1. Tap the 3-dot menu (⋮) in the top-right corner of the browser.
  2. Tap Add to Home screen or Install app.
  3. Confirm by tapping Install.

AM

Members
  • Joined

  • Last visited

Everything posted by AM

  1. it don't works!? no score-display > Error: OMN Parse Error: fail > While executing: omn-to-ast, in process Listener-1(7). > Type cmd-. to abort, cmd-\ for a list of available restarts. > Type :? for other options.
  2. perhaps with a non-overlapping structure of the voices? and perhaps the tuplet-5/tuplet-3 will be shown as tuplet-15...
  3. ok, thanx! i see my "wishes" are a little bit special - but perhaps OPUSMODUS can do that (without ties... or...) andré example.sib
  4. hi all i would like to MERGE/FIT the following 3-layer-voices(-EXAMPLE) into a ONE-layer-voice (with complex rhythms) - is it possible in OPUSMODUS? thanx for help! andré EXAMPLE: (setf voices (merge-voices (make-omn :length (gen-length '(1 2 3 4 5 6 7 8) 1/20) :pitch '(c4) :velocity '(pppp ppp pp p)) (make-omn :length (gen-length '(1 2 3 4 5 6 7 8) 1/8) :pitch '(c5) :velocity '(pppp ppp pp p)) (make-omn :length (gen-length '(1 2 3 4 5 6 7 8) 1/12) :pitch '(c6) :velocity '(pppp ppp pp p)))) (def-score example (:key-signature 'atonal :time-signature '(4 4) :tempo '(96) :layout (treble-layout '3-layers)) (3-layers :omn voices :channel 1 :sound 'gm :program 1))
  5. more informations: bug (with the 1/20) only when i start with a pitch. when the first value is a rest everthing seems to be okay!
  6. interesting bug: have a look at the 1/20-layer (c6) -> midi sounds correct (!), notation is wrong ;;;;;;;;;;;;;;;;;;;; (setf duration1 '(8 5 3 2 3 5 8)) (setf duration2 '(8 5 3 2 3 5 8)) (setf duration3 '(8 5 3 2 3 5 8)) (setf voices (merge-voices (make-omn :length (gen-length duration1 1/20) :pitch '(c6)) (make-omn :length (gen-length duration2 1/32) :pitch '(b4)) (make-omn :length(gen-length duration3 1/8) :pitch '(as2)))) (def-score voices (:key-signature '(c maj) :time-signature '(4 4) :tempo '(60)) (piano :omn voices :channel 1 :sound 'gm :program 0)) (display-midi (compile-score 'voices) :display :quick-view) ;;;;;;;;;;;;;;;;;;;;
  7. thanx, but midi don't like such VALUES :-( - so it works only for notation (or sibelius/finale)... for the future it would be nice for my work (and perhaps interesting for other composers), when the time/rhythm-things could be more flexible - i think the biggest bounderies in opusmodus are the time/rhythm-things and it's notation (paper/pencil is the most flexible way, and i don't want to be a limited by software). if you work really "experimental" you want to map rhythm-values in a complexer way... for me it would be great and very nice, when it would be possible to notate/play such rhy-sequences like '(1/4 1/4 1/12 1/12 3/16 1/16....) with values that are not completing 1/4. at the moment OPUSMODUS is "correcting" this... (would be nice to have irregular time-signatures or bars with no time-signature!!!).... in my work for example: i have programmed BOTS/non-trivial-machines, who are generating values "step-by-step" and the inner-state of the non-trivial-machine always changes its datas/memory (in a rnd-way). the result is, that the rhythm-values all the times are changing (more or less like in the special-bars-examples). and because it's not possible to calculate the output of the non-trivial-machine (that's the natural constitution of them), it's not possible to "fit the rhyhm-values" into prefiexed-bar-structures. that's a problem for my work and so i have to write such strange programs who fix the complicated rhy-changes :-) thanx for your great work!!! andré
  8. a solution: perhaps it's interesting for anyone (or as an example for OPMUSMODUS-implementation) - a simple function (programmed by a friend and myself) - not very smart but it (should) work(s) :-) greetings a. (defun time-sign-changes (durations rhys &key (complex-bars 'nil)) (if (equal complex-bars 'nil) (loop for i in durations for j in rhys with sum = 0 with last-j = (first durations) when (and (/= j last-j) (/= sum 0)) collect (list (numerator sum) (denominator sum) 1) into bag and do (setq sum 0) do (setq sum (+ sum (abs (* i j)))) when (> sum 1/4) collect '(1 4 1) into bag and do (setq sum (- sum 1/4)) do (setq last-j j) finally (return (append bag (list (list (numerator sum) (denominator sum) 1))))) (loop for i in durations for j in rhys with sum = 0 with last-j = (first durations) when (and (/= j last-j) (/= sum 0)) collect (list (numerator sum) (denominator sum) 1) into bag and do (setq sum 0) do (setq sum (+ sum (abs (* i j)))) when (> sum 1/2) collect '(1 2 1) into bag and do (setq sum (- sum 1/2)) do (setq last-j j) finally (return (append bag (list (list (numerator sum) (denominator sum) 1))))))) (setq durations '(-1 2 3 4 3 2 -5 4 3 2 4 3 1 7)) (setq rhythms '(1/32 1/32 1/32 1/32 1/20 1/20 1/20 1/20 1/20 1/12 1/12 1/12)) ;;creating the lengths (setq lengths (loop for i in durations for j in rhythms collect (* i j))) ;; creating the bar-changes -> :complex-bars 'nil or 't (setq bars (time-sign-changes durations rhythms :complex-bars 'nil)) (def-score solo (:title "example" :key-signature 'atonal :time-signature bars :tempo '90 :layout (treble-layout 'example)) (example :omn (make-omn :pitch '(c4) :length lengths) :channel 1 :volume 100 :sound 'gm))
  9. thanx for the anwser... first example: it's possible to do this, i can realize with "special-bars" like 2/3 or 5/20 - by a little (self-made) lisp-function - so it works...
  10. seems to be a bug... evaluate this: (make-omn :pitch '(c5 c3 c2 c3 c4) :length '(-2/12 2/12 -1/12 6/12 -1/12 3/12 1/12) :velocity '(mf)) after the 6/12 the next value -1/12 is shown as -1/8 in the score score
  11. when i evaluate this: (make-omn :pitch '(c5) :length '(3/12 -1/12 4/12 -1/20 3/20 1/20) :velocity '(mf)) the result is wrong (look at (3/12 -1/12 4/12).... but i would like to notate something like valeur ajoutée isn't it possible? thanx a.
  12. what's new/different in Opusmodus 1.1.18273 thanx a.
  13. thanx, that's the way it works a.
  14. little lisp-problem/question with &optionel / &key... here are two test-programs to explore keyword and optional paramters this test-program works (defun test1 (liste add &key (add-on/off)) (loop for i in liste when (equal add-on/off 'on) collect (+ i add) else collect i)) (test1 '(1 2 3 4 5) 100 :add-on/off 'on) this version with &optional don't work... why? (defun test2 (liste add &optional (x 10) &key (add-on/off)) (loop for i in liste when (equal add-on/off 'on) collect (+ i add x) else collect i)) (test2 '(1 2 3 4 5) 100 :add-on/off 'on) > Error: While compiling test2 : > Bad lambda list : (liste add &key add-on/off &optional (x 10)), in process Listener-1(7). thanx for help andré
  15. i will write a little function and post it at the forum later.
  16. yes, that's the way it will works... only one little "problem"... the pitch will be always different... so the search-pattern should be something like '(e ?) -> to '((acc ?) -> pitch sould be overtaken to (acc ?), i only want to replace the length-val to an acc..
  17. simple question, perhaps someone could help me. i like to replace some ordinary notes (example) with an "acciaccatura"? example: from... '((e c6 q. ab5 3e g5 f5 e5 q f5 -)) to... '((acc c6) q. ab5 3e g5 f5 e5 q f5 -) ; = replace e c6 with (acc c6) i think, its not complicated but i didn't found the OMN-solution. thanx for your help!! andré
  18. a solution could be... to write the cents (-14) or what ever as TEXT-file above each note - so you could work with it in sibelius/finale/paper
  19. POLYTEMPO: would be great and very interesting! here is the technology to do/perform this LIVE on STAGE... http://www.smc-conference.net/smc-icmc-2014/images/proceedings/PS2-B03-PolytempoNetwork.pdf. (by philippe kocher - institute for computer music and sound technology zurich university of art). it works simple and fantastic!! MICROTONAL: i prefer (q c4.0456) but i would like more (or as an option) 60.0456 (via midi-note-number), so you could work/calculate directly with numbers and "pure lisp-code"....
  20. it works in PWGL, not really for notation but i can listen/programm/simulate polytempo-scores in midi (or other players). so i could transfer my lisp-code to pwgl-boxes... etc... but i would be nice, if i could do it in OPUSMODUS, no boxes etc... :-) best wishes andré
  21. short question... i've programmed a score with special bars like... ......3/20 5/16 7/12 3/32 1/10....... etc. musicXML/notation has no problem with it, but MIDI can not play it (errors)!!! it works, when i do an musicXML-export to SIBLEIUS... score/notation is okay, and no playback-problems on SIBELIUS. but it would be nice, if i could simulate it directly on OM via MIDI (an later with the contimbre-library). where is the problem? or is there a solution..? thanx for help andré
  22. thanks for you answer. but it seems that the nancarrow/carter-idea is not possible with opusmodus.... because i would like to programm a SCORE. best way for me would be, if i could combine two or more different (setups/tempi) "def-score"s to a MAIN-score.... but anyway, thanks!!!!!! andré
  23. dear users and opusmodus-guys i'm an OPUSMODUS-newby, very happy with this direct and cool LISP-programming! now the question: i would like to create an polytempo-score for example: this BOTS (bot1-bot4) are playing/written in ONE score with ONE tempo - is it possible to create a score, so that every bot has his own tempo? in extremis: bot1 = 90bpm, bot2 = 91bpm... etc... like in "ars subtilior", but not with a modification of rhythm/duration... thanks for you support - perhaps it's very simple, i don't know... andré further informations to ploytempo etc... http://www.greschak.com/polytempo/ptword.htm -------my simple score-OMN with "material" bot1 to bot4 (def-score multi-bots (:title "multi-bots" :key-signature 'atonal :time-signature '(4 4) :tempo 90 :layout (bracket-group (treble-layout 'bot1) (treble-layout 'bot2) (treble-layout 'bot3) (treble-layout 'bot4))) (bot1 :omn mat_bot1 :channel 1 :sound 'gm :program 'acoustic-grand-piano) (bot2 :omn mat_bot2 :channel 2 :sound 'gm :program 'acoustic-grand-piano) (bot3 :omn mat_bot3 :channel 3 :sound 'gm :program 'acoustic-grand-piano) (bot4 :omn mat_bot4 :channel 4 :sound 'gm :program 'acoustic-grand-piano))

Copyright © 2014-2026 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

Account

Navigation

Search

Search

Configure browser push notifications

Chrome (Android)
  1. Tap the lock icon next to the address bar.
  2. Tap Permissions → Notifications.
  3. Adjust your preference.
Chrome (Desktop)
  1. Click the padlock icon in the address bar.
  2. Select Site settings.
  3. Find Notifications and adjust your preference.