Jump to content

opmo

Administrators
  • Posts

    2,894
  • Joined

  • Last visited

Everything posted by opmo

  1. Go to the Opusmodus/Extensions folder and remove the double name function form the user functions file.
  2. Whats new: —'Check for Updates...' menu in Opusmodus app menu (no more manual downloads). —New CLM instruments with omn-form plist input and documentation. badd-synth bandedwg-synth circular-scanned-synth fm-bell-synth fm-insect-synth fm-violin-synth grani-synth piano-synth pvoc-synth scanner-synth singbowl-synth —Additional _About documents for various function groups (Wikipedia). —CLM bug fixes. Installation: There are some changes to the Opusmodus user system folder and CLM implementation. Before opening the new application you need to delete the old Opusmodus folder. Make sure you save your personal files (scores, docs etc...) before. A good solution is to rename the Opusmodus folder first and then compress it. After you have deleted the Opusmodus user folder you can start the new application. At the start Opusmodus will ask you for permission to create a new user folder in your home directory, if you don’t see a window for it, it means the old folder is still on your computer. Make sure the new Opusmodus folder is installed in your home directory. Hopefully this is the last time we need to delete the previous Opusmodus user folder from the home directory. Best wishes, Janusz P.S. Few CLM examples from the "3.Howto Score/CLM/Sound Synthesis.opmo" file: fm-bell-synth (progn (defparameter count 50) (setf partials (library 'marangona-partials 'partials nil :random 20)) (setf par (rnd-sample count (partial :freq (flatten partials)))) (defparameter freq (gen-divide (rnd-sample count '(1 2 3 4 5)) par)) (defparameter dur (list (length-span 42 (rnd-sample count '(w h q w))))) (do-timeline '(dur (---xx--xx- ---xx---x- --x--xx--- ---x------ x----x---)) '(gen-pause x) :time '(w)) (defparameter vel (rnd-number count 0.05 0.43)) (defparameter dist (rnd-number count 0.5 1.0)) (defparameter env '((0 0 40 .1000 60 .2000 75 .4000 82 1 90 1 100 0) (0 0 60 .1000 80 .2000 90 .4000 95 1 100 0) (0 0 10 1 16 0 32 .1000 50 1 56 0 60 0 90 .3000 100 0) (0 0 30 1 56 0 60 0 90 .3000 100 0) (0 0 50 1 80 .3000 100 0) (0 0 40 .1000 60 .2000 75 .4000 82 1 90 1 100 0) (0 0 10 1 32 .1000 50 1 90 .3000 100 0) (0 0 60 .1000 80 .3000 95 1 100 0) (0 0 80 .1000 90 1 100 0))) (with-sound (:reverb jc-reverb :scaled-to .7) (fm-bell-synth dur freq vel :amp-env (rnd-sample count env) :index-env (rnd-sample count env) :index (rnd-number count 0.3 0.9) :reverb-amount 0.30 :distance dist)) ) fm-insect-synth (progn (defparameter par (library 'tbn-cs3-partials 'partials nil :random 12)) (defparameter dur '(rnd-sample 12 '(-q q. h -h. -w w. d -d.))) (defparameter freq '(rnd-sample 12 (flatten (partial :freq par)))) (defparameter amp '(rnd-sample 12 '(pppp ppp p mp))) (defparameter mod-freq-env '(0 0 40 1 95 1 100 .5)) (defparameter mod-index-env '(0 1 25 .7 75 .78 100 1)) (defparameter amp-env '(0 0 25 1 75 .7 100 0)) (defparameter fm-index '(rnd-number 12 .01 .6)) (defparameter mod-skew '(rnd-number 12 -20.0 -1.0)) (defparameter mod-freq '(rnd-number 12 20 60)) (with-sound '() (fm-insect-synth (eval dur) (eval freq) (eval amp) amp-env (eval mod-freq) (eval mod-skew) mod-freq-env 500.866 mod-index-env (eval fm-index) .500) (fm-insect-synth (eval dur) (eval freq) (eval amp) amp-env (eval mod-freq) (eval mod-skew) mod-freq-env 649.490 mod-index-env (eval fm-index) .500) (fm-insect-synth (eval dur) (eval freq) (eval amp) amp-env (eval mod-freq) (eval mod-skew) mod-freq-env 562.087 mod-index-env (eval fm-index) .500) (fm-insect-synth (eval dur) (eval freq) (eval amp) amp-env (eval mod-freq) (eval mod-skew) mod-freq-env 300.866 mod-index-env (eval fm-index) .500) ) ) grani-synth (progn (defparameter dur '(q h w d -q -h)) (defparameter amp '(pppp p pp f mp)) (with-sound (:reverb jc-reverb :reverb-channels 2) (grani-synth (rnd-sample 12 dur) (rnd-sample 12 amp) "oboe" :grain-envelope '(0 0 .2 .2 .5 1 .8 .2 1 0)) (grani-synth (rnd-sample 12 dur) (rnd-sample 12 amp) "oboe" :grains 10) (grani-synth (rnd-sample 12 dur) (rnd-sample 12 amp) "oboe" :grain-start '(0 .1 .3 .1 1 .6) :amp-envelope '(0 1 1 1) :grain-density 8 :grain-envelope '(0 0 .2 .2 .5 1 .8 .2 1 0) :grain-envelope-end '(0 0 .01 1 .99 1 1 0) :grain-envelope-transition '(0 0 .4 1 .8 0 1 0)) (grani-synth (rnd-sample 12 dur) (rnd-sample 12 amp) "oboe" :grain-start '(0 0 1 1) :amp-envelope '(0 1 1 1) :grain-density 20 :grain-duration '(0 .003 .2 .01 1 .3)) (grani-synth (rnd-sample 12 dur) (rnd-sample 12 amp) "oboe" :grain-start '(0 0 1 1) :amp-envelope '(0 1 1 1) :grain-density 20 :grain-duration '(0 .003 .2 .01 1 .3) :grain-duration-limit .02) (grani-synth (rnd-sample 12 dur) (rnd-sample 12 amp) "oboe" :amp-envelope '(0 1 1 1) :grain-density 40 :grain-start '(0 .1 .3 .1 1 .6)) (grani-synth (rnd-sample 12 dur) (rnd-sample 12 amp) "oboe" :amp-envelope '(0 1 1 1) :grain-density 40 :grain-start '(0 .1 .3 .1 1 .6) :grain-start-spread .01) (grani-synth (rnd-sample 12 dur) (rnd-sample 12 amp) "oboe" :grain-start '(0 0 1 1) :grain-start-spread 0.01 :amp-envelope '(0 1 1 1) :grain-density 40 :srate '(0 0 .2 0 .6 5 1 5)) (grani-synth (rnd-sample 12 dur) (rnd-sample 12 amp) "oboe" :grain-start '(0 0 1 1) :grain-start-spread .01 :amp-envelope '(0 1 1 1) :grain-density (rnd-sample 12 '(40 30 20)) :srate-base 2 :srate '(0 0 .2 0 .6 -1 1 -1)) (grani-synth (rnd-sample 12 dur) (rnd-sample 12 amp) "oboe" :grain-start '(0 0 1 1) :grain-start-spread .01 :amp-envelope '(0 1 1 1) :grain-density (rnd-sample 12 '(40 30 20)) :srate-linear t :srate (list 0 1 .2 1 .6 (expt 2 5/12) 1 (expt 2 5/12))) (grani-synth (rnd-sample 12 dur) (rnd-sample 12 amp) "oboe" :grain-start '(0 0 1 1) :grain-start-spread .01 :amp-envelope '(0 1 1 1) :grain-envelope '(0 0 .2 .2 .5 1 .8 .2 1 0) :grain-density (rnd-sample 12 '(40 30 20)) :grain-duration '(0 .02 1 0.1) :grain-duration-spread '(0 0 .5 .1 1 0)) (grani-synth (rnd-sample 12 dur) (rnd-sample 12 amp) "oboe" :grain-start '(0 0 1 1) :grain-start-spread 0.01 :amp-envelope '(0 1 1 1) :grain-density (rnd-sample 12 '(40 30 20)) :grain-degree '(0 0 1 90) :grain-degree-spread 10) (grani-synth (rnd-sample 12 dur) (rnd-sample 12 amp) "oboe" :grain-duration .06 :grain-density 20 :grain-density-spread 2 :srate 0) (grani-synth (rnd-sample 12 dur) (rnd-sample 12 amp) "oboe" :grain-duration .08 :grain-density (rnd-sample 12 '(40 30 20)) :grain-density-spread 2 :srate 5 :grain-degree 0 :grain-envelope '(0 0 .2 .2 .5 1 .8 .2 1 0) :grain-envelope-end '(0 0 .01 1 .99 1 1 0)) (grani-synth (rnd-sample 12 dur) (rnd-sample 12 amp) "oboe" :grain-duration .05 :grain-density 35 :grain-density-spread 3 :srate -5 :grain-degree 90 :srate (list 0 1 .3 1 .3 (expt 2 5/12) 1 (expt 2 5/12)))) ) piano-synth (progn (setf frames1 (library 'marangona-partials 'partials nil :random 48)) (setf frames2 (library 'marangona-frames 'partials nil :random 48)) (setf par1 (remove-partial frames1 :type :freq :min 27.5 :max 4186)) (setf par2 (remove-partial frames2 :type :freq :min 27.5 :max 4186)) (defparameter freq1 (rnd-order (gen-collect (rnd-sample 24 '(3 5 6 7 8)) (partial :freq par1)))) (defparameter freq2 (rnd-order (gen-collect (rnd-sample 38 '(2 3 4)) (partial :freq par2)))) (with-sound (:reverb jc-reverb) (piano-synth '(3e) (flatten freq1) '(.2 .3 .4) :bpm 72 :drypedalresonancefactor .25 :singlestringdecayrate-table '(21 -5 24.000 -5.000 36.000 -5.4 41.953 -5.867 48.173 -7.113 53.818 -8.016 59.693 -8.875 66.605 -9.434 73.056 -10.035 78.931 -10.293 84.000 -12.185) :singlestringpole-table '(21 .8 24 0.7 36.000 .6 48 .5 60 .3 84 .1 96 .03 108 .03) :stiffnesscoefficient-table '(21.000 -0.920 24.000 -0.900 36.000 -0.700 48.000 -0.250 60.000 -0.100 75.179 -0.040 82.986 -0.040 92.240 .3 96.000 .5 99.000 .7 108.000 .7)) (piano-synth '(e) freq2 '(0.1 0.2 0.3) :bpm 72 :drypedalresonancefactor .55 :detuningfactor-table '(24 5 36 7.0 48 7.5 60 12.0 72 20 84 30 96 100 108 300))) ) pvoc-synth (with-sound (:scaled-to .99) (pvoc-synth (rnd-sample 12 '(q h e s w d -q -h)) '(pppp pp ppp f) "marangona" :input-start 0 :input-end 12 :pitch-scaler (rnd-sample 12 '(.5 .1 .05 .8 .3 .16)) :pitch-offset (rnd-sample 20 '(20 100 200 300 440 150 730)) :pitch-offset-env '(0 0 20 0 50 100 70 100 80 0 100 0) :pitch-scaler-env '(0 1 50 2 100 1) :amp-env '(0 1 40 0 50 1 60 0 100 1) :gate 70) ) singbowl-synth (progn (defparameter size 120) (defparameter partials (library 'marangona-partials 'partials nil :random 50)) (defparameter par (rnd-sample size (partial :freq (flatten partials)))) (defparameter freq (gen-divide (rnd-sample size '(2 3 4 5)) par)) (defparameter length (rnd-sample size '(w h q e))) (defparameter velocity (rnd-number size .05 .43)) (defparameter env '((0 0 40 .1000 60 .2000 75 .4000 82 1 90 1 100 0) (0 0 60 .1000 80 .2000 90 .4000 95 1 100 0) (0 0 10 1 16 0 32 .1000 50 1 56 0 60 0 90 .3000 100 0) (0 0 30 1 56 0 60 0 90 .3000 100 0) (0 0 50 1 80 .3000 100 0) (0 0 40 .1000 60 .2000 75 .4000 82 1 90 1 100 0) (0 0 10 1 32 .1000 50 1 90 .3000 100 0) (0 0 60 .1000 80 .3000 95 1 100 0) (0 0 80 .1000 90 1 100 0))) (with-sound (:reverb jc-reverb :scaled-to .7 :output "ma-partials") (singbowl-synth length freq velocity :amp-env (rnd-sample size env) :reverb-amount 0.30)) ) fm-violin-synth (progn (defparameter size 10) (defparameter count 50) (setf glc-v1 (gen-length-cartesian 1 3 'd '? 'w 3 (rnd-sample size '(13 11 10 8)) '(1 2 3 4 5))) (setf glc-v2 (gen-length-cartesian 1 3 'd '? 'w 3 (rnd-sample size '(13 11 10 8)) '(1 2 3 4 5))) (setf glc-va (gen-length-cartesian 1 3 'd '? 'w 3 (rnd-sample size '(13 11 10 8)) '(1 2 3 4 5))) (setf glc-vc (gen-length-cartesian 1 3 'd '? 'w 3 (rnd-sample size '(13 11 10 8)) '(1 2 3 4 5))) (setf gu-sq (gen-unison (list glc-v1 glc-v2 glc-va glc-vc))) (setf l-v1 (1~ gu-sq)) (setf l-v2 (2~ gu-sq)) (setf l-va (3~ gu-sq)) (setf l-vc (4~ gu-sq)) (setf l-max (first (sort-desc (list (get-count l-v1 :length :note :sum t) (get-count l-v2 :length :note :sum t) (get-count l-va :length :note :sum t) (get-count l-vc :length :note :sum t))))) (setf intervals '((0 7) (0 0) (11 5) (-4 5) (-5 5) (0 13) (-5 18) (-36 13) (-13 13) (8) (-18 7) (-1 17) (-17 17) (-26 13) (-27 23) (-19 19) (-23 23) (18) (0) (7) (-14) (13) (-23 5) (-23 2) (-2 2) (6 2) (6 5) (19) (-10) (-17 11) (-11 11) (-11 5) (-24 13) (1 14) (-14 14) (-29 1) (-1 1) (7 0) (12 6) (-21 7) (-7 7) (-18 0) (1 13) (0 1) (-14 13) (-10 5) (-14 8) (0 6) (6) (-20 6) (-5 1) (17) (1) (-17 5) (-1 5) (-10 16) (-12 8) (0 8) (1 11) (-24 4) (-18 16) (-17) (-6 6) (-18 18) (-15 3) (-6 31) (-2 5) (-29 6) (-6 13) (-13 6) (7 13))) (setf pcount (gen-repeat 2 (get-count l-v1 :length :note))) (setf gr (gen-repeat (length pcount) (list intervals))) (setf gm-v1 (gen-markov gr :size pcount)) (setf gm-v2 (gen-markov gr :size pcount)) (setf gm-va (gen-markov gr :size pcount)) (setf gm-vc (gen-markov gr :size pcount)) (setf im-v1 (interval-map nil (append-sublist gm-v1))) (setf im-v2 (interval-map nil (append-sublist gm-v2))) (setf im-va (interval-map nil (append-sublist gm-va))) (setf im-vc (interval-map nil (append-sublist gm-vc))) (setf s-v1 (span l-v1 im-v1)) (setf s-v2 (span l-v2 im-v2)) (setf s-va (span l-va im-va)) (setf s-vc (span l-vc im-vc)) (setf ra-v1 (rnd-octaves 'violin s-v1)) (setf ra-v2 (rnd-octaves 'violin s-v2)) (setf ra-va (rnd-octaves 'viola s-va)) (setf ra-vc (rnd-octaves 'cello s-vc)) (setf p-v1 (ambitus 'violin ra-v1 :type :invert)) (setf p-v2 (ambitus 'violin ra-v2 :type :invert)) (setf p-va (ambitus 'viola ra-va :type :invert)) (setf p-vc (ambitus '(a2 c5) ra-vc :type :invert)) (setf weight '(29 19 8 8 17)) (setf vel '(0.07 0.1 0.15 0.2 0.25 0.35)) (setf v-v1 (gen-weight l-max (mapcar 'list vel weight))) (setf v-v2 (gen-weight l-max (mapcar 'list vel weight))) (setf v-va (gen-weight l-max (mapcar 'list vel weight))) (setf v-vc (gen-weight l-max (mapcar 'list vel weight))) (setf vln1 (make-omn :length l-v1 :pitch p-v1 :velocity v-v1)) (setf vln2 (make-omn :length l-v2 :pitch p-v2 :velocity v-v2)) (setf vla (make-omn :length l-va :pitch p-va :velocity v-va)) (setf vlc (make-omn :length l-vc :pitch p-vc :velocity v-vc)) (do-timeline '( vln1 (---x---x-- ---x-x-x-- --x--xx--- ---x------ x-) vln2 (---x---x-- ---x---x-- --x--xx--- ---x------ x-) vla (---x---x-- ---x---x-- --x--xx--- ---x------ --) vlc (---x---x-- ---x---xx- --x--xx--- ---x------ --) ) '(gen-pause x) :time '(h h. w)) (defparameter v1 vln1) (defparameter v2 vln2) (defparameter v3 vla) (defparameter v4 vlc) (defparameter env '((0 0 40 .1000 60 .2000 75 .4000 82 1 90 1 100 0) (0 0 60 .1000 80 .2000 90 .4000 95 1 100 0) (0 0 10 1 16 0 32 .1000 50 1 56 0 60 0 90 .3000 100 0) (0 0 30 1 56 0 60 0 90 .3000 100 0) (0 0 50 1 80 .3000 100 0) (0 0 40 .1000 60 .2000 75 .4000 82 1 90 1 100 0) (0 0 10 1 32 .1000 50 1 90 .3000 100 0) (0 0 60 .1000 80 .3000 95 1 100 0) (0 0 80 .1000 90 1 100 0))) (with-sound (:reverb jc-reverb :scaled-to .7) (fm-violin-synth v1 v1 v1 :bpm 30 :degree (rnd-number count 45 85) :fm-index (rnd-number count 0.10 1.0) :reverb-amount 0.30 :noise-amount (rnd-number count 0.00 0.004) :amp-env (rnd-sample count env) :glissando-amount (rnd-number count 0.00 0.8)) (fm-violin-synth v2 v2 v2 :bpm 30 :degree (rnd-number count 45 85) :fm-index (rnd-number count 0.03 1.0) :reverb-amount 0.30 :noise-amount (rnd-number count 0.00 0.004) :amp-env (rnd-sample count env) :glissando-amount (rnd-number count 0.00 0.8)) (fm-violin-synth v3 v3 v3 :bpm 30 :degree (rnd-number count 45 85) :fm-index (rnd-number count 0.10 1.0) :reverb-amount 0.30 :noise-amount (rnd-number count 0.00 0.004) :amp-env (rnd-sample count env) :glissando-amount (rnd-number count 0.00 0.8)) (fm-violin-synth v4 v4 v4 :bpm 30 :degree (rnd-number count 45 85) :fm-index (rnd-number count 0.70 1.0) :reverb-amount 0.30 :noise-amount (rnd-number count 0.00 0.004) :amp-env (rnd-sample count env) :glissando-amount (rnd-number count 0.00 0.8))) ) scanned-synth (progn (defparameter size 120) (setf partials1 (library 'tbn-cs3-partials 'partials nil :random 64)) (setf partials2 (library 'tbn-cs3-partials 'partials nil :random 64)) (setf freq1 (rnd-sample size (partial :freq (flatten partials1)))) (setf freq2 (rnd-sample size (partial :freq (flatten partials2)))) (defparameter dur1 (rnd-sample size '(s s s s))) (defparameter dur2 (rnd-sample size '(q e s s s -s))) (defparameter amp1 (rnd-number size .005 .13)) (defparameter amp2 (rnd-number size .005 .13)) (defparameter waves '(1 2 3 4 5 6 7 8 9 10 11 12 13)) (with-sound (:reverb jc-reverb) (scanned-synth dur1 freq1 amp1 :wave (rnd-sample size waves) :bpm 96 :pts (rnd-sample size '(192 256 512))) (scanned-synth dur2 freq2 amp2 :wave (rnd-sample size waves) :bpm 96 :pts (rnd-sample size '(192 256 512))) ) ) circular-scanned-synth (progn (defparameter size 24) (setf partials1 (library 'tbn-cs3-partials 'partials nil :random 50)) (setf partials2 (library 'tbn-cs3-partials 'partials nil :random 50)) (setf par1 (rnd-sample size (partial :freq (flatten partials1)))) (setf par2 (rnd-sample size (partial :freq (flatten partials2)))) (defparameter dur1 (rnd-sample size '(1 2 3 4 5))) (defparameter dur2 (rnd-sample size '(1 2 3 4 5))) (defparameter freq1 (gen-divide (rnd-sample size '(2 3 4 5)) par1)) (defparameter freq2 (gen-divide (rnd-sample size '(2 3 4 5)) par2)) (defparameter amp1 (rnd-number size .05 .43)) (defparameter amp2 (rnd-number size .05 .43)) (defparameter env '((0 0 40 .1000 60 .2000 75 1 90 1 100 0) (0 0 60 .1000 80 .2000 90 1 100 0) (0 0 10 1 16 0 32 .1000 50 1 100 0) (0 0 30 1 56 0 60 0 90 .3000 100 0) (0 0 50 1 80 .3000 100 0) (0 0 40 .1000 60 .2000 82 1 100 0) (0 0 10 1 32 .1000 50 1 100 0) (0 0 60 .1000 80 .3000 95 1 100 0) (0 0 80 .1000 90 1 100 0))) (with-sound (:reverb jc-reverb) (circular-scanned-synth dur1 freq1 amp1 :wave (rnd-sample size '(1 2 3 4)) :recompute-samps (rnd-sample size '(14 222 32 162 211 72)) :pts (rnd-sample size '(192 256 512)) :cycles (rnd-sample size '(1 2 3)) :amp-env (rnd-sample size env)) (circular-scanned-synth dur2 freq2 amp2 :wave (rnd-sample size '(1 2 3 4)) :recompute-samps (rnd-sample size '(14 222 32 162 211 72)) :pts (rnd-sample size '(192 256 512)) :cycles (rnd-sample size '(1 2 3)) :amp-env (rnd-sample size env)) ) ) badd-synth (progn (defparameter size 12) (setf partials (library 'marangona-partials 'partials nil :random 64)) (setf mpar (remove-partial partials :type :freq :max 1800.0)) (setf par (partial :freq mpar)) (setf freq '(rnd-sample size (flatten par))) (defparameter dur '(rnd-sample size '(1 2 3 4 5))) (defparameter amp '(rnd-number size .12 .33)) (with-sound (:reverb jc-reverb) (badd-synth (eval dur) (eval freq) (eval amp)) (badd-synth (eval dur) (eval freq) (eval amp)) (badd-synth (eval dur) (eval freq) (eval amp)) (badd-synth (eval dur) (eval freq) (eval amp)) (badd-synth (eval dur) (eval freq) (eval amp)) (badd-synth (eval dur) (eval freq) (eval amp)) ) ) bandedwg-synth (progn (setf row (library 'vienna 'berg 'r11)) (setf degree '(0 3 4 0 -2 -3 -1 0 -2)) (setf mat (gen-eval 6 '(harmonic-progression (setf degree (gen-rotate 2 degree)) row :relative t))) (setf end1 (harmonic-progression '(-13 -13) row :relative t)) (setf end2 (harmonic-progression '(-12 -12) row :relative t)) (setf end3 (harmonic-progression '(-13 -13) row :relative t)) (setf end4 (harmonic-progression '(-12) row :relative t)) (defparameter omn (make-omn :length '((q) (-h)) :pitch (assemble-seq mat end1 end2 end3 end4) :velocity '(mp) :span :pitch)) (with-sound (:reverb jc-reverb) (bandedwg-synth omn omn omn :mode 1) ) ) As you can see it is quite easy to use CLM in OM with OMN. More CLM instruments to come.
  3. This is how all functions work - with span or trim build in.
  4. I will make the octave-map function work with octaves numbers as well. (octave-map '(c3 cs3 e5 f5 fs6 g5 gs4 a4 as3 b3) '(c3 d3 e3 f3 g4 f4 e4 d4 c4 cs4)) => (c3 d3 e5 f5 g6 f5 e4 d4 c3 cs3) (octave-map '(3 3 5 5 6 5 4 4 3 3) '(c3 d3 e3 f3 g4 f4 e4 d4 c4 cs4)) => (c3 d3 e5 f5 g6 f5 e4 d4 c3 cs3)
  5. At the moment you can't convert musicxml file into omn score. But it is in our TODO list.
  6. I have some idea how we could do that - possibly next week.
  7. It is a new function which generate a variations of a given score or section. The function has around 20 keywords and is not yet ready for release.
  8. Variations on "Webern Variationen Fuer Klavier Op.27, I" (2019) by JP Instrument: VSL Steinway D
  9. Dear Timothy, Lets delete some folders and files from the Library folder. 1. Quit app. 2. Go to Library/Preferences folder and delete the com.opusmodus.Opusmodus.plist file: 3. Go to Library/Caches folder and delete the com.opusmodus.Opusmodus folder: 4. Start Opusmodus app 5. Create a new workspace Let me know if the app is still crashing. best, Janusz P.S. To play with the CLM please use the CLM.opmo file which you find in the Library panel '3. HowTo Score/Sound Synthesis' folder: As well the 3 files in '5. Sound Synthesis' folder: The CLM folder should not be used. There are some clm instruments which may course crash. With the time we will add more clm instruments with OMN form.
  10. What macOS you are running. What course the crash ie. closing a window, evaluation etc... I need more information in order to reproduce the crash.
  11. Whats new in version 1.3 Compatibility with macOS Mojave 
macOS 10.14 Dark Mode 
CLM added
 OSC added 
MIDI player improvements New functions: binary-to-attribute merge-attributes circle-pitch-plot
 circle-rhythm-plot xy-plot pcs-rhythm
 edit-events find-max-span fit-to-span
 gen-osc-data
 osc-thread 
stop-osc-threads Enhancements and fixes: quantizer returns now the count of given length-notes single-events returns given type don't join dissimilar rests fixed rest grouping fixed tied 8va or 8vb tuplets Installation: There are some changes to the Opusmodus user system folder. Before opening the new application you need to delete the old Opusmodus folder. Make sure you save your personal files (scores, docs etc...) before. A good solution is to rename the Opusmodus folder first and then compress it. After you have deleted the Opusmodus user folder you can start the new application. At the start Opusmodus will ask you for permission to create a new user folder in your home directory, if you don’t see a window for it, it means the old folder is still on your computer. Make sure the new Opusmodus folder is installed in your home directory. New Opusmodus folder: Upgrade: Opusmodus 1.3 requires a new serial number to run. When purchasing upgrade 1.3 the current user will need to provide an Opusmodus 1.2 serial number. After the confirmation which takes a few seconds only, you will be redirected to the purchase page. Following the purchase a new serial number will be sent to you by email. Happy New Year 2019 Yours, Janusz Podrazik
  12. Delete the source code of the DOUBLE function from the 'User Source.opmo' file.
  13. Just delete the function double for the Opusmodus Extensions folder, the function is just an example.
  14. The function name length-rest-weight has changed to length-weight. I fixed the score of above as well.
  15. The midi channels should to be the same in each score.
  16. You will find the answer in the Stephane score "DseExta.opmo" in the 4. Score Examples/Strings and Piano.
  17. GEN-AMBITUS-SERIES - expanding and narrowing
  18. OSC is build in version 1.3
  19. I would need a few examples, input and output to see how could this work in our system.
  20. Upgrade/crossgrade from Symbolic Composer to Opusmodus is the price of the academic licence.
  21. (setf sequence '((t s t) (3q 3e_s. t) (5h 5h 5q_7q 7q 7q 7q 7q 7q 7q_5q 5h 5h) (t s._3e 3q))) (gen-retrograde sequence) => ((t s t) (t s._3e 3q) (5h 5h 5q_7q 7q 7q 7q 7q 7q 7q_5q 5h 5h) (3q 3e_s. t)) best, JP
  22. Will be fixed in the next update. The problem not the ratios but the tied lengths. What we need to do is to reverse the order of tied lengths: 5q_7q = 7q_5q
  23. With EDIT-EVENT (ver1.3) function you will be able to edit any parameter in any given bar: (edit-event '( (0 0 '(pitch-transpose 12 x) :pitch) (0 2 '(chord-inversion 2 x) :pitch) (0 3 '(pitch-variant x :variant 'i) :pitch) (2 1 '(chord-inversion 1 x) :pitch) (2 2 '(chord-inversion 1 (pitch-transpose 12 x)) :pitch) (3 1 '(chord-inversion 1 (pitch-transpose 12 x)) :pitch) (3 2 '(chord-inversion 2 x) :pitch) (3 3 '(chord-inversion 2 x) :pitch) (3 5 '(chord-inversion 4 x) :pitch) (3 6 'g3e4c5 :pitch) ) '((e c2 c3e3g3 c3e3g3 c3e3g3) (e f2 c3f3a3 c3f3a3 c3f3a3) (e e2 e3g3c4 e3g3c4 e3g3c4) (e gs2 e3b3 e3b3 e3b3 g2 d3g3b3 d3g3b3 d3g3b3))) => ((e c3 mf c3e3g3 g3c4e4 c3gs2f2) (e f2 c3f3a3 c3f3a3 c3f3a3) (e e2 mf g3c4e4 g4c5e5 e3g3c4) (e gs2 mf b4e5 e4b4 e4b4 g2 g4b4d5 g3e4c5 d3g3b3))
×
×
  • Create New...

Important Information

Terms of Use Privacy Policy