Jump to content

Search the Community

Showing results for tags 'score'.



More search options

  • Search By Tags

    Type tags separated by commas.
  • Search By Author

Content Type


Forums

  • Welcome To Opusmodus
    • Announcements
    • Pre Sales Questions
  • Support Forum
    • Support & Troubleshooting
    • OMN Lingo
    • Function Examples
    • Score and Notation
    • Live Coding Instrument
    • Library Setup
    • MIDI Setup
  • Question & Answer
    • Suggestions & Ideas
  • Sharing
    • Made In Opusmodus
    • User Extensions Source Code

Blogs

  • Stephane Boussuge
  • Didier Debril

Categories

  • OMN The Language
  • Tutorial Guide
  • CLM Examples

Categories

  • Getting Started
  • HowTo
  • Live Coding
  • Music Theory and Analysis

Find results in...

Find results that contain...


Date Created

  • Start

    End


Last Updated

  • Start

    End


Filter by number of...

Joined

  • Start

    End


Group


Website URL


Gender


Location


Interests


About Me

Found 53 results

  1. Hi, here's a new piece with score. All the best to all of the Opusmodus users ! S.B. 18/07/19 => Small update, missing function added. PolygonsV1-05-Forum.opmo Polygons1-05.mp3
  2. The forthcoming POLYGON-RHYTHM function will allow you to think and compose in a clear symmetrical structures. The great amount of keywords (OPMO stile) makes this algorithm very powerful. This is a short example using POLYGON-RHYTHM exclusively. Instruments: VSL Tenor Sax and Jazz Drumset.
  3. Here's a short study for a small ensemble. All the best ! SB. Mapcar1.opmo MapcarStudy1ForEnsemble.mp3
  4. Hi, Here's a score for 4 hands recently finished. SB. PourEtContre1Edit2.opmo PourEtContre1-4Hands.mp3
  5. Live Coding Instrument improvisation by Janusz Podrazik, for FM8, Reaktor, Absynth, Vienna Imperial and Prepared Pianos with five workspaces.
  6. In memoriam Narcis Bonet who was one of my teachers. Opusmodus score attached. SB. PlutonV1-02.opmo
  7. A score for String Quartet and Clarinet. Global random seed initialisation for the whole score. (init-seed 37929) Harmonic paths for each section of the piece. (setf path1 (tonality-series '(chromatic) :root (rnd-sample 64 '(d4 e4 fs4 gs4 as4)))) (setf path2 (tonality-series '(chromatic) :root (rnd-sample 64 '(c4 ds4 f4 g4 a4)))) (setf path3 (tonality-series '(chromatic) :root (rnd-sample 64 '(c4 ds4 f4 g4 a4)))) (setf path4 (tonality-series '(chromatic) :root (rnd-sample 64 '(d4 e4 fs4 gs4 as4)))) (setf path5 (tonality-series '(chromatic) :root (rnd-sample 64 '(c4 ds4 f4 g4 a4)))) (setf path6 (tonality-series '(chromatic) :root (rnd-sample 64 '(c4 ds4 f4 g4 a4)))) (setf path7 (tonality-series '(chromatic) :root (rnd-sample 64 '(c4 ds4 f4 g4 a4)))) Part1 (13-77) Definition of size (number of bars) for the section. (setf size 64) Binary Mute / Play system for each instrument. GEN-TRIM will extend the duration of the binary list until size parameter. (setf clamuteplay (gen-trim size '(1 1 1 1 1 1 1 1 0 0 0 0 1 1 1 1 1 1 1 1 0 0))) (setf vnmuteplay (gen-trim size '(0 0 1 1 1 1 1 1 1 1 1 1 0 0 0 0 1 1 1 1 1 1))) (setf vamuteplay (gen-trim size '(0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1 0 0 0 0 1 1))) (setf vcmuteplay (gen-trim size '(0 0 0 0 1 1 1 1 1 1 1 1 1 1 1 1 0 0 0 0 0 0))) Generation and smoothing of vectors for velocity. (setf velvect (vector-smooth 0.41 (gen-white-noise size))) (setf clavel (mclist (vector-to-velocity 'mp 'ff velvect))) (setf rvel (mclist (vector-to-velocity 'p 'f velvect))) Definition of basics rhythmics cells. (setf baselength '((q. q q) (e e e e e e e) (e e e e e e e) (q. e e e e) (e e e q e e) (e e e e e q))) Conditional articulation based on lengths. (def-case make-art ((3/8 1/4 1/4) '(leg leg leg)) ((1/8 1/8 1/8 1/8 1/8 1/8 1/8) '(stacc+marc stacc stacc stacc+marc stacc stacc+marc stacc)) ((3/8 1/8 1/8 1/8 1/8) '(leg+marc stacc stacc leg leg)) ((1/8 1/8 1/8 1/4 1/8 1/8) '(stacc+marc stacc stacc leg+marc leg leg leg)) ((1/8 1/8 1/8 1/8 1/8 1/4) '(stacc+marc stacc stacc stacc+marc leg leg)) (otherwise '(leg))) Cello Ostinato Pitch def. Random sample of integer, conversion to pitch and append 3 repeated c2 pitch in front. (setf vc1.pitch (gen-loop size (append '(c2 = =) (integer-to-pitch (rnd-sample 4 (gen-integer -24 -6)))))) Length (setf vc1.length (gen-repeat size '((e e e e e e e)))) Articulation (setf vc1.art (gen-repeat size '((stacc+marc stacc stacc stacc+marc stacc stacc+marc stacc)))) OMN generation (setf vc1.omn (make-omn :pitch vc1.pitch :length vc1.length :articulation vc1.art :velocity rvel)) Mapping (setf vc1.map (tonality-map path1 vc1.omn)) Ambitus (setf vc1 (ambitus '(c2 c4) vc1.map)) Alto Pitch def. (setf alt.pitch (gen-loop size (integer-to-pitch (rnd-sample 7 (gen-integer -12 0))))) Length (setf alt.len (gen-repeat size '((e e e e e e e)))) Articulation (setf alt.art (gen-repeat size '((stacc+marc stacc stacc stacc+marc stacc stacc+marc stacc)))) OMN generation (setf alt1.omn (make-omn :pitch alt.pitch :length alt.len :articulation alt.art :velocity rvel)) Mapping (setf alt.map (tonality-map path1 alt1.omn)) Ambitus constraint (setf alt1 (ambitus '(c3 g5) alt.map)) Violin Pitch (setf vn1.pitch (gen-loop size (integer-to-pitch (rnd-sample 7 (gen-integer -5 12))))) Random choice of length cells in baselength list. (setf vn1.len (rnd-sample size baselength)) Articulation (setf vn1.art (make-art vn1.len)) OMN assembly (setf vn1.omn (make-omn :pitch vn1.pitch :length vn1.len :articulation vn1.art :velocity rvel)) Mapping (setf vn1.map (tonality-map path1 vn1.omn)) Ambitus constraint (setf vn1 (ambitus '(g3 g6) vn1.map)) Clarinet Pitch generation from vector (setf clavect (gen-white-noise 256)) Convert vector to pitch (setf clapitch (vector-to-pitch '(g3 c5) clavect)) Random choice of length cells in baselength list. (setf clalen (rnd-sample size baselength)) Articulation (setf claart (make-art clalen)) OMN (setf cla1.omn (make-omn :pitch clapitch :length clalen :velocity clavel :articulation claart)) Mapping (setf cla1.map (tonality-map path1 cla1.omn)) Ambitus (setf cla1.amb (ambitus '(a3 g5) cla1.map)) Adding the rests (setf cla1 (length-weight cla1.amb :weight '(8 1))) Mute/Play Application (setf cla1mp (binary-timeline clamuteplay cla1)) (setf vn1mp (binary-timeline vnmuteplay vn1)) (setf va1mp (binary-timeline vamuteplay alt1)) (setf vc1mp (binary-timeline vcmuteplay vc1)) Time signatures (setf ts (get-time-signature vc1 :group '((3 2 2)))) Now we define the score (def-score LessThanEight-1 (:title "Less Than Eight - I" :composer "Stephane Boussuge" :copyright "Copyright 2014 Stephane Boussuge" :key-signature 'atonal :time-signature ts :tempo 144 :layout (list (clarinet-layout 'clarinet) (bracket-group (violin-layout 'violin) (viola-layout 'viola) (violoncello-layout 'cello)))) (clarinet :omn cla1mp :channel 1 :sound 'gm :program 'clarinet) (violin :omn vn1mp :channel 2 :sound 'gm :program 'violin) (viola :omn va1mp :channel 3 :sound 'gm :program 'viola) (cello :omn vc1mp :channel 4 :sound 'gm :program 'cello)) Part2 (78-142) Definition of size (number of bars) for the section. (setf size 64) Binary Mute / Play system for each instrument. GEN-TRIM will extend the duration of the binary list until size parameter. (setf clamuteplay (gen-trim size '(1 1 1 1 1 1 1 1 0 0 0 0 1 1 1 1 1 1 1 1 0 0))) (setf vnmuteplay (gen-trim size '(0 0 1 1 1 1 1 1 1 1 1 1 0 0 0 0 1 1 1 1 1 1))) (setf vamuteplay (gen-trim size '(0 0 0 0 1 1 1 1 1 1 1 1 1 1 1 1 0 0 0 0 1 1))) (setf vcmuteplay (gen-trim size '(0 0 0 0 1 1 1 1 1 1 1 1 1 1 1 1 0 0 0 0 0 0))) Generation and smoothing of vectors for velocity. (setf velvect (vector-smooth 0.41 (gen-white-noise size))) (setf clavel (mclist (vector-to-velocity 'mp 'ff velvect))) (setf rvel (mclist (vector-to-velocity 'p 'f velvect))) Definition of basics rhythmics cells. (setf baselength '((q. q q) (e e e e e e e) (q. e e e e) (e e e q e e) (e e e q -q))) Conditionnal articulation based on lengths. (def-case make-art ((3/8 1/4 1/4) '(leg leg leg)) ((1/8 1/8 1/8 1/8 1/8 1/8 1/8) '(stacc+marc stacc stacc stacc+marc stacc stacc+marc stacc)) ((3/8 1/8 1/8 1/8 1/8) '(leg+marc stacc stacc leg leg)) ((1/8 1/8 1/8 1/4 1/8 1/8) '(stacc+marc stacc stacc leg+marc leg leg leg)) ((1/8 1/8 1/8 1/8 1/8 1/4) '(stacc+marc stacc stacc stacc+marc leg leg)) (otherwise '(leg))) Cello Pitch (setf vc1.pitch (append '(c2 = =) (integer-to-pitch (rnd-sample 4 (gen-integer -24 -6))))) Random choice of length cells in baselength list. (setf vc1.len (rnd-sample size baselength)) Articulation (setf vc1.art (make-art vc1.len)) OMN (setf vc1.omn (make-omn :pitch vc1.pitch :length vc1.len :velocity rvel :articulation vc1.art)) Mapping (setf vc1.map (tonality-map path2 vc1.omn)) Ambitus (setf vc1 (ambitus '(c2 c4) vc1.map)) Viola Pitch (setf alt1.pitch (integer-to-pitch (rnd-sample 7 (gen-integer -12 0)))) Random choice of length cells in baselength list. (setf alt1.len (rnd-sample size baselength)) Articulation (setf alt1.art (make-art alt1.len)) OMN (setf alt1.omn (make-omn :pitch alt1.pitch :length alt1.len :velocity rvel :articulation alt1.art)) Mapping (setf alt1.map (tonality-map path2 alt1.omn)) Ambitus (setf alt1 (ambitus '(c3 g5) alt1.omn)) Violin Pitch (setf vn1.pitch (gen-loop size (integer-to-pitch (rnd-sample 7 (gen-integer -5 12))))) Random choice of length cells in baselength list. (setf vn1.len (rnd-sample size baselength)) Articulation (setf vn1.art (make-art vn1.len)) OMN (setf vn1.omn (make-omn :pitch vn1.pitch :length vn1.len :articulation vn1.art :velocity rvel)) Mapping (setf vn1.map (tonality-map path2 vn1.omn)) Ambitus (setf vn1 (ambitus '(g3 g6) vn1.map)) Clarinet Pitch (setf clapitch (vector-to-pitch '(g3 c5) clavect)) Random choice of length cells in baselength list. (setf clalen (rnd-sample size baselength)) Articulation (setf claart (make-art clalen)) OMN (setf cla1.omn (make-omn :pitch clapitch :length clalen :velocity clavel :articulation claart)) Mapping (setf cla1.map (tonality-map path2 cla1.omn)) Ambitus (setf cla1.amb (ambitus '(a3 g5) cla1.map)) Adding the rests (setf cla1 (length-weight cla1.amb :weight '(8 1))) Mute/Play Application (setf cla1mp (binary-timeline clamuteplay cla1)) (setf vn1mp (binary-timeline vnmuteplay vn1)) (setf va1mp (binary-timeline vamuteplay alt1)) (setf vc1mp (binary-timeline vcmuteplay vc1)) Time signatures (setf ts (get-time-signature vc1 :group '((3 2 2)))) Score definition for Part 2 (def-score LessThanEight-2 (:title "Less Than Eight - II" :composer "Stephane Boussuge" :copyright "Copyright 2014 Stephane Boussuge" :key-signature 'atonal :time-signature ts :tempo 144 :layout (list (clarinet-layout 'clarinet) (bracket-group (violin-layout 'violin) (viola-layout 'viola) (violoncello-layout 'cello)))) (clarinet :omn cla1mp :channel 1 :sound 'gm :program 'clarinet) (violin :omn vn1mp :channel 2 :sound 'gm :program 'violin) (viola :omn va1mp :channel 3 :sound 'gm :program 'viola) (cello :omn vc1mp :channel 4 :sound 'gm :program 'cello)) Part3 (143-175) Definition of size (number of bars) for the section. (setf size 32) Adding one bar rest between part2 and part3 (cons 0) Binary Mute / Play system for each instrument. GEN-TRIM will extend the duration of the binary list until size parameter. (setf clamuteplay (cons 0 (gen-trim size '(0 0 0 0 1 1 1 1 0 0 0 0 1 1 1 1 1 1 1 1 0 0)))) (setf vnmuteplay (cons 0 (gen-trim size '(0 0 1 1 1 1 1 1 1 1 1 1 0 0 0 0 1 1 1 1 1 1)))) (setf vamuteplay (cons 0 (gen-trim size '(0 0 0 0 1 1 1 1 1 1 1 1 1 1 1 1 0 0 0 0 1 1)))) (setf vcmuteplay (cons 0 (gen-trim size '(1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 0 0 0 0 0)))) Generation and smoothing of vectors for velocity. (setf velvect (vector-smooth 0.41 (gen-white-noise size))) (setf clavel (mclist (vector-to-velocity 'mp 'ff velvect))) (setf rvel (mclist (vector-to-velocity 'p 'f velvect))) Definition of basics rhythmics cells. (setf baselength '((q. q q) (q. q. -e) (h q.) (h. -e) (-e q q q) (-q q e e e) (h. e))) Conditional articulation based on lengths. (def-case make-art ((3/8 1/4 1/4) '(leg leg leg)) ((3/8 1/8 1/8 1/8 1/8) '(leg+marc stacc stacc leg leg)) ((1/8 1/8 1/8 1/4 1/8 1/8) '(stacc+marc stacc stacc leg+marc leg leg leg)) ((1/8 1/8 1/8 1/8 1/8 1/4) '(stacc+marc stacc stacc stacc+marc leg leg)) ((3/8 3/8 -1/8) '(leg+marc leg)) ((1/2 3/8) '(leg+marc leg)) ((-1/4 1/4 1/8 1/8 1/8) '(leg stacc stacc stacc)) (otherwise '(leg))) Shared material for the section Smoothed vector generation from white noise (setf pvect (vector-smooth 0.84 (gen-white-noise 256))) Pitch from smoothed vector (setf phpch (vector-to-pitch '(g3 g5) pvect)) Random choice of length cells in baselength list. (setf phlen (rnd-sample size baselength)) Articulation (setf phart (make-art phlen)) Cello OMN (setf vc1.omn (make-omn :pitch phpch :length phlen :velocity rvel :articulation phart)) Mapping (setf vc1.map (tonality-map path3 vc1.omn)) Tie repeated notes (setf vc1.ft (filter-tie vc1.map)) Ambitus constraint (setf vc1 (ambitus '(c2 c4) vc1.ft)) Viola OMN with rotation on pitch and length (setf alt1.omn (make-omn :pitch (gen-rotate 1 phpch) :length (gen-rotate 1 phlen) :velocity rvel :articulation phart)) Mapping (setf alt1.map (tonality-map path3 alt1.omn)) Tie repeated notes (setf alt1.ft (filter-tie alt1.map)) Ambitus (setf alt1 (ambitus '(c3 g5) alt1.ft)) Violin OMN with rotation on pitch and length (setf vn1.omn (make-omn :pitch (gen-rotate 2 phpch) :length (gen-rotate 2 phlen) :velocity rvel :articulation phart)) Mapping (setf vn1.map (tonality-map path3 vn1.omn)) Tie repeated notes (setf vn1.ft (filter-tie vn1.map)) Ambitus (setf vn1 (ambitus '(g3 g6) vn1.ft)) Clarinet Vector generation (setf clavect (gen-white-noise 256)) Pitch from vector (setf clapitch (vector-to-pitch '(g3 c5) clavect)) Random choice of length cells in baselength list. (setf clalen (rnd-sample size baselength)) Articulation (setf claart (make-art clalen)) OMN (setf cla1.omn (make-omn :pitch clapitch :length clalen :velocity clavel :articulation claart)) Mapping (setf cla1.map (tonality-map path3 cla1.omn)) Tie repeated notes. (setf cla1.ft (filter-tie cla1.map)) Ambitus constraint (setf cla1.amb (ambitus '(a3 g5) cla1.ft)) Adding the rests (setf cla1 (length-weight cla1.amb :weight '(8 1))) Mute/Play Application (setf cla1mp (binary-timeline clamuteplay cla1)) (setf vn1mp (binary-timeline vnmuteplay vn1)) (setf va1mp (binary-timeline vamuteplay alt1)) (setf vc1mp (binary-timeline vcmuteplay vc1)) Time signature (setf ts (get-time-signature vc1 :group '((3 2 2)))) Score definition for part 3 (def-score LessThanEight-3 (:title "Less Than Eight - III" :composer "Stephane Boussuge" :copyright "Copyright 2014 Stephane Boussuge" :key-signature 'atonal :time-signature ts :tempo 144 :layout (list (clarinet-layout 'clarinet) (bracket-group (violin-layout 'violin) (viola-layout 'viola) (violoncello-layout 'cello)))) (clarinet :omn cla1mp :channel 1 :sound 'gm :program 'clarinet) (violin :omn vn1mp :channel 2 :sound 'gm :program 'violin) (viola :omn va1mp :channel 3 :sound 'gm :program 'viola) (cello :omn vc1mp :channel 4 :sound 'gm :program 'cello)) Introduction (1-12) Number of bars for introduction (setf size 24) Binary Mute / Play system for each instrument. GEN-TRIM will extend the duration of the binary list until size parameter. (setf clamuteplay (gen-trim size '(1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 0 1 1 1 1))) (setf vnmuteplay (gen-trim size '(0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 1 0 1 1 1 1 1 1 1))) (setf vamuteplay (gen-trim size '(0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1))) (setf vcmuteplay (gen-trim size '(0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1))) Definition of basics rhythmics cells. (setf baselength '((q. q q) (e e e e e e e) (e e e e e e e) (q. e e e e) (e e e q e e) (e e e e e q))) Conditional articulation based on lengths. (def-case make-art ((3/8 1/4 1/4) '(leg leg leg)) ((1/8 1/8 1/8 1/8 1/8 1/8 1/8) '(stacc+marc stacc stacc stacc+marc stacc stacc+marc stacc)) ((3/8 1/8 1/8 1/8 1/8) '(leg+marc stacc stacc leg leg)) ((1/8 1/8 1/8 1/4 1/8 1/8) '(stacc+marc stacc stacc leg+marc leg leg leg)) ((1/8 1/8 1/8 1/8 1/8 1/4) '(stacc+marc stacc stacc stacc+marc leg leg)) (otherwise '(leg))) Cello Pitch (setf vc1.pitch (gen-loop size (append '(c2 = =) (integer-to-pitch (rnd-sample 4 (gen-integer -24 -6)))))) Length (setf vc1.len (gen-repeat size '((e e e e e e e)))) Velocity (setf vc1.vel (gen-repeat size '((p)))) Articulation (setf vc1.art (gen-repeat size '((stacc+marc stacc stacc stacc+marc stacc stacc+marc stacc)))) OMN assembly (setf vc1.omn (make-omn :pitch vc1.pitch :length vc1.len :velocity vc1.vel :articulation vc1.art)) Mapping (setf vc1.map (tonality-map path1 vc1.omn)) Ambitus (setf vc1 (ambitus '(c2 c4) vc1.map)) Viola Pitch (setf alt1.pitch (gen-loop size (integer-to-pitch (rnd-sample 7 (gen-integer -12 0))))) Length (setf alt1.len (gen-repeat size '((e e e e e e e)))) Velocity (setf alt1.vel (gen-repeat size '((p)))) Articulation (setf alt1.art (gen-repeat size '((stacc+marc stacc stacc stacc+marc stacc stacc+marc stacc)))) OMN assembly (setf alt1.omn (make-omn :pitch alt1.pitch :length alt1.len :velocity alt1.vel :articulation alt1.art)) Mapping (setf alt1.map (tonality-map path1 alt1.omn)) Ambitus (setf alt1 (ambitus '(c3 g5) alt1.map)) Violin Pitch (setf vn1.pitch (gen-loop size (integer-to-pitch (rnd-sample 7 (gen-integer -5 12))))) Length (random choice in baselength list) (setf vn1.len (rnd-sample size baselength)) Articulation (setf vn1.art (make-art vn1.len)) Velocity (setf vn1.vel (gen-repeat size '((p)))) OMN (setf vn1.omn (make-omn :pitch vn1.pitch :length vn1.len :velocity vn1.vel :articulation vn1.art)) Mapping (setf vn1.map (tonality-map path1 vn1.omn)) Ambitus (setf vn1 (ambitus '(g3 g6) vn1.map)) Clarinet White-noise vector generation (setf clavect (gen-white-noise 256)) Transforming vector to pitch (setf cla1.pitch (vector-to-pitch '(g3 c5) clavect)) Length (setf cla1.len (rnd-sample size baselength)) Articulation (setf cla1.art (make-art cla1.len)) Velocity (setf cla1.vel (gen-repeat size '((mp)))) OMN (setf cla1.omn (make-omn :pitch cla1.pitch :length cla1.len :velocity cla1.vel :articulation cla1.art)) Mapping (setf cla1.map (tonality-map path1 cla1.omn)) Ambitus (setf cla1.amb (ambitus '(a3 g5) cla1.map)) Adding some rest (setf cla1 (length-weight cla1.amb :weight '(8 1))) Mute/Play Application (setf cla1mp (binary-timeline clamuteplay cla1)) (setf vn1mp (binary-timeline vnmuteplay vn1)) (setf va1mp (binary-timeline vamuteplay alt1)) (setf vc1mp (binary-timeline vcmuteplay vc1)) Time signature (setf ts (get-time-signature vc1 :group '((3 2 2)))) Score definition for Introduction (def-score LessThanEight-intro (:title "Less Than Eight - Intro" :composer "Stephane Boussuge" :copyright "Copyright 2014 Stephane Boussuge" :key-signature 'atonal :time-signature ts :tempo 144 :layout (list (clarinet-layout 'clarinet) (bracket-group (violin-layout 'violin) (viola-layout 'viola) (violoncello-layout 'cello)))) (clarinet :omn cla1mp :channel 1 :sound 'gm :program 'clarinet) (violin :omn vn1mp :channel 2 :sound 'gm :program 'violin) (viola :omn va1mp :channel 3 :sound 'gm :program 'viola) (cello :omn vc1mp :channel 4 :sound 'gm :program 'cello)) Part4 (tutti) (176-184) Number of bars (size) for the section (setf size 8) Binary Mute / Play system for each instrument. GEN-TRIM will extend the duration of the binary list until size parameter. (setf clamuteplay (gen-trim size '(1 1 1 1 1 1 1 1))) (setf vnmuteplay (gen-trim size '(1 1 1 1 1 1 1 1))) (setf vamuteplay (gen-trim size '(1 1 1 1 1 1 1 1))) (setf vcmuteplay (gen-trim size '(1 1 1 1 1 1 1 1))) Definition of basics rhythmics cells. (setf baselength '((q. q q) (e e e e e e e) (e e e e e e e) (q. e e e e) (e e e q e e) (e e e e e q))) Conditional articulation based on lengths. (def-case make-art ((3/8 1/4 1/4) '(leg leg leg)) ((1/8 1/8 1/8 1/8 1/8 1/8 1/8) '(stacc+marc stacc stacc stacc+marc stacc stacc+marc stacc)) ((3/8 1/8 1/8 1/8 1/8) '(leg+marc stacc stacc leg leg)) ((1/8 1/8 1/8 1/4 1/8 1/8) '(stacc+marc stacc stacc leg+marc leg leg leg)) ((1/8 1/8 1/8 1/8 1/8 1/4) '(stacc+marc stacc stacc stacc+marc leg leg)) (otherwise '(leg))) Global length generation (random choice in baselength list) for all instruments (tutti). (setf tuttilen (rnd-sample size baselength)) Cello Pitch (setf vc1.pitch (append '(c2 = =) (integer-to-pitch (rnd-sample 4 (gen-integer -24 -6))))) Length (setf vc1.len tuttilen) Articulation (setf vc1.art (make-art vc1.len)) Velocity (setf vc1.vel (gen-repeat size '((f)))) OMN (setf vc1.omn (make-omn :pitch vc1.pitch :length vc1.len :velocity vc1.vel :articulation vc1.art)) Mapping (setf vc1.map (tonality-map path4 vc1.omn)) Tie repeated notes (setf vc1.ft (filter-tie vc1.map)) Ambitus (setf vc1 (ambitus '(c2 c4) vc1.ft)) Viola Pitch (setf alt1.pitch (integer-to-pitch (rnd-sample 7 (gen-integer -12 0)))) Length (setf alt1.len tuttilen) Articulation (setf alt1.art (make-art vc1.len)) Velocity (setf al1.vel (gen-repeat size '((f)))) OMN (setf alt1.omn (make-omn :pitch alt1.pitch :length alt1.len :velocity alt1.vel :articulation alt1.art)) Mapping (setf alt1.map (tonality-map path4 alt1.omn)) Tie repeated notes (setf alt1.ft (filter-tie alt1.map)) Ambitus (setf alt1 (ambitus '(c3 g5) alt1.ft)) Violin Pitch (setf vn1.pitch (gen-loop size (integer-to-pitch (rnd-sample 7 (gen-integer -5 12))))) Length (setf vn1.len tuttilen) Articulation (setf vn1.art (make-art vn1.len)) OMN (setf vn1.omn (make-omn :pitch vn1.pitch :length vn1.len :velocity '((f)) :articulation vn1.art)) Mapping (setf vn1.map (tonality-map path4 vn1.omn)) Tie repeated notes (setf vn1.ft (filter-tie vn1.map)) Ambitus (setf vn1 (ambitus '(g3 g6) vn1.ft)) Clarinet Pitch Vector generation (setf clavect (gen-white-noise 256)) Vector-to-pitch (setf clapitch (vector-to-pitch '(g3 c5) clavect)) Length (setf clalen tuttilen) Articulation (setf claart (make-art clalen)) Velocity (setf clavel (gen-repeat size '((ff)))) OMN (setf cla1.omn (make-omn :pitch clapitch :length clalen :velocity clavel :articulation claart)) Mapping (setf cla1.map (tonality-map path4 cla1.omn)) Tie repeated notes (setf cla1.ft (filter-tie cla1.map)) Ambitus (setf cla1 (ambitus '(a3 g5) cla1.ft)) Mute/Play Application (setf cla1mp (binary-timeline clamuteplay cla1)) (setf vn1mp (binary-timeline vnmuteplay vn1)) (setf va1mp (binary-timeline vamuteplay alt1)) (setf vc1mp (binary-timeline vcmuteplay vc1)) Time signature (setf ts (get-time-signature vc1 :group '((3 2 2)))) Score definition (def-score LessThanEight-4 (:title "Less Than Eight - IV" :composer "Stephane Boussuge" :copyright "Copyright 2014 Stephane Boussuge" :key-signature 'atonal :time-signature ts :tempo 144 :layout (list (clarinet-layout 'clarinet) (bracket-group (violin-layout 'violin) (viola-layout 'viola) (violoncello-layout 'cello)))) (clarinet :omn cla1mp :channel 1 :sound 'gm :program 'clarinet) (violin :omn vn1mp :channel 2 :sound 'gm :program 'violin) (viola :omn va1mp :channel 3 :sound 'gm :program 'viola) (cello :omn vc1mp :channel 4 :sound 'gm :program 'cello)) Part5 (185-207) Number of bars (size) for the section (setf size 22) Binary Mute / Play system for each instrument. GEN-TRIM will extend the duration of the binary list until size parameter. (setf clamuteplay (gen-trim size '(1 1 1 1 1 1 1 1 0 0 0 0 1 1 1 1 1 1 1 1 0 0))) (setf vnmuteplay (gen-trim size '(0 0 1 1 1 1 1 1 1 1 1 1 0 0 0 0 1 1 1 1 1 1))) (setf vamuteplay (gen-trim size '(0 0 0 0 1 1 1 1 1 1 1 1 1 1 1 1 0 0 0 0 1 1))) (setf vcmuteplay (gen-trim size '(0 0 0 0 0 0 1 1 1 1 1 1 1 1 1 1 0 0 0 0 0 0))) Generate a white noise vector and smooth it. (setf velvect (vector-smooth 0.41 (gen-white-noise size))) Map the vector to dynamics value (velocity) (setf clavel (mclist (vector-to-velocity 'mp 'ff velvect))) (setf rvel (mclist (vector-to-velocity 'p 'f velvect))) Definition of basics rhythmics cells. (setf baselength '((q. q q) (e e e e e e e) (q. e e e e) (e e e q e e) (e e e q -q))) Conditional articulation based on lengths. (def-case make-art ((3/8 1/4 1/4) '(leg leg leg)) ((1/8 1/8 1/8 1/8 1/8 1/8 1/8) '(stacc+marc stacc stacc stacc+marc stacc stacc+marc stacc)) ((3/8 1/8 1/8 1/8 1/8) '(leg+marc stacc stacc leg leg)) ((1/8 1/8 1/8 1/4 1/8 1/8) '(stacc+marc stacc stacc leg+marc leg leg leg)) ((1/8 1/8 1/8 1/8 1/8 1/4) '(stacc+marc stacc stacc stacc+marc leg leg)) (otherwise '(leg))) Clarinet Pitch Vector generation from white noise (setf clavect (gen-white-noise 256)) Map the vector to pitch (setf clapitch (vector-to-pitch '(g3 c5) clavect)) Random choice of length celles in baselength list. (setf clalen (rnd-sample size baselength)) Articulation (setf claart (make-art clalen)) OMN (setf cla1.omn (make-omn :pitch clapitch :length clalen :velocity clavel :articulation claart)) Mapping (setf cla1.map (tonality-map path5 cla1.omn)) Ambitus (setf cla1.amb (ambitus '(a3 g5) cla1.map)) Adding rest (setf cla1 (length-weight cla1.amb :weight '(8 1))) Cello Pitch (setf vc1.pitch (gen-rotate 1 clapitch)) Length (setf vc1.len (gen-rotate 1 clalen)) Articulation (setf vc1.art (make-art vc1.len)) OMN (setf vc1.omn (make-omn :pitch vc1.pitch :length vc1.len :velocity rvel :articulation vc1art)) Mapping (setf vc1.map (tonality-map path5 vc1.omn)) Ambitus (setf vc1 (ambitus '(c2 c4) vc1.omn)) Viola Pitch (setf alt1.pitch (gen-rotate 2 clapitch)) Length (setf alt1.len (gen-rotate 2 clalen)) Articulation (setf alt1.art (make-art alt1.len)) OMN assembly (setf alt1.omn (make-omn :pitch alt1.pitch :length alt1.len :velocity rvel :articulation alt1.art)) Mapping (setf alt1 (tonality-map path5 alt1.omn)) Ambitus (setf alt1 (ambitus '(c3 g5) alt1.omn)) Violin Pitch (setf vn1.pitch (gen-rotate 3 clapitch)) Length (setf vn1.len (gen-rotate 3 clalen)) Articulation (setf vn1.art (make-art vn1.len)) OMN (setf vn1.omn (make-omn :pitch vn1.pitch :length vn1.len :velocity rvel :articulation vn1.art)) Mapping (setf vn1.map (tonality-map path5 vn1.omn)) Ambitus (setf vn1 (ambitus '(g3 g6) vn1.omn)) Mute/Play Application (setf cla1mp (binary-timeline clamuteplay cla1)) (setf vn1mp (binary-timeline vnmuteplay vn1)) (setf va1mp (binary-timeline vamuteplay alt1)) (setf vc1mp (binary-timeline vcmuteplay vc1)) Time signature (setf ts (get-time-signature vc1 :group '((3 2 2)))) Score definition for part 5 (def-score LessThanEight-5 (:title "Less Than Eight - V" :composer "Stephane Boussuge" :copyright "Copyright 2014 Stephane Boussuge" :key-signature 'atonal :time-signature ts :tempo 144 :layout (list (clarinet-layout 'clarinet) (bracket-group (violin-layout 'violin) (viola-layout 'viola) (violoncello-layout 'cello)))) (clarinet :omn cla1mp :channel 1 :sound 'gm :program 'clarinet) (violin :omn vn1mp :channel 2 :sound 'gm :program 'violin) (viola :omn va1mp :channel 3 :sound 'gm :program 'viola) (cello :omn vc1mp :channel 4 :sound 'gm :program 'cello)) Part6 (208-272) Number of bars (size) for the section (setf size 64) Binary Mute / Play system for each instrument. GEN-TRIM will extend the duration of the binary list until size parameter. (setf clamuteplay (gen-trim size '(1 1 1 1 1 1 1 1 0 0 0 0 1 1 1 1 1 1 1 1 0 0))) (setf vnmuteplay (gen-trim size '(0 0 1 1 1 1 1 1 1 1 1 1 0 0 0 0 1 1 1 1 1 1))) (setf vamuteplay (gen-trim size '(0 0 0 0 1 1 1 1 1 1 1 1 1 1 1 1 0 0 0 0 1 1))) (setf vcmuteplay (gen-trim size '(0 0 0 0 1 1 1 1 1 1 1 1 1 1 1 1 0 0 0 0 0 0))) Generate a white noise vector and smooth it. (setf velvect (vector-smooth 0.41 (gen-white-noise size))) Map the vector to dynamics value (velocity) (setf clavel (mclist (vector-to-velocity 'mp 'ff velvect))) (setf rvel (mclist (vector-to-velocity 'p 'f velvect))) Definition of basics rhythmics cells. (setf baselength '((q. q q) (e e e e e e e) (e e e e e e e) (q. e e e e) (e e e q e e) (e e e e e q) (s s s s s s s s s s s s s s) (s s s s s s s s q -e) (q s s s s s s e e))) Conditional articulation based on lengths. (def-case make-art ((3/8 1/4 1/4) '(leg leg leg)) ((1/8 1/8 1/8 1/8 1/8 1/8 1/8) '(stacc+marc stacc stacc stacc+marc stacc stacc+marc stacc)) ((3/8 1/8 1/8 1/8 1/8) '(leg+marc stacc stacc leg leg)) ((1/8 1/8 1/8 1/4 1/8 1/8) '(stacc+marc stacc stacc leg+marc leg leg leg)) ((1/8 1/8 1/8 1/8 1/8 1/4) '(stacc+marc stacc stacc stacc+marc leg leg)) (otherwise '(leg))) Cello Pitch (setf vc1.pitch (gen-loop size (append '(c2 = =) (integer-to-pitch (rnd-sample 4 (gen-integer -24 -6)))))) Length (setf vc1.len (gen-repeat size '((e e e e e e e)))) Articulation (setf vc1.art (gen-repeat size '((stacc+marc stacc stacc stacc+marc stacc stacc+marc stacc)))) Velocity (setf vc1.vel rvel) OMN (setf vc1.omn (make-omn :pitch vc1.pitch :length vc1.len :articulation vc1.art :velocity vc1.vel)) Mapping (setf vc1.map (tonality-map path6 vc1.omn)) Ambitus (setf vc1 (ambitus '(c2 c4) vc1.map)) Viola Pitch (setf alt1.pitch (gen-loop size (integer-to-pitch (rnd-sample 7 (gen-integer -12 0))))) Length (setf alt1.len (gen-repeat size '((e = = = = = =)))) Articulation (setf alt1.art (gen-repeat size '((stacc+marc stacc stacc stacc+marc stacc stacc+marc stacc)))) OMN (setf alt1.omn (make-omn :pitch alt1.pitch :length alt1.len :articulation alt1.art)) Mapping (setf alt1.map (tonality-map path6 alt1.omn)) Remove repetitions (setf alt1.rpt (filter-repeat 1 alt1.map)) Ambitus (setf alt1 (ambitus '(c3 g5) alt1.rpt)) Violin Pitch (setf vn1.pitch (gen-loop size (integer-to-pitch (rnd-sample 7 (gen-integer -5 12))))) Length (setf vn1.len (rnd-sample size baselength)) Articulation (setf vn1.art (make-art vn1.len)) Dynamics (velocity) (setf vn1.vel rvel) OMN (setf vn1.omn (make-omn :pitch vn1.pitch :length vn1.len :articulation vn1.art :velocity vn1.vel)) Mapping (setf vn1.map (tonality-map path6 vn1.omn)) Remove repetitions (setf vn1.rpt (filter-repeat 1 vn1.map)) Ambitus (setf vn1 (ambitus '(g3 g6) vn1.rpt)) Clarinet Pitch White noise vector generation (setf clavect (gen-white-noise 256)) Map vector to pitch (setf clapitch (vector-to-pitch '(g3 c5) clavect)) Random selection of rhytmics cells in baselength list (setf clalen (rnd-sample size baselength)) Articulation (setf claart (make-art clalen)) OMN (setf cla1.omn (make-omn :pitch clapitch :length clalen :velocity clavel :articulation claart)) Mapping (setf cla1.map (tonality-map path6 cla1.omn)) Tie repeated notes (setf cla1.ft (filter-tie cla1.map)) Ambitus (setf cla1.amb (ambitus '(a3 g5) cla1.ft)) Adding some rest (setf cla1 (length-weight cla1.amb :weight '(8 1))) Mute/Play Application (setf cla1mp (binary-timeline clamuteplay cla1)) (setf vn1mp (binary-timeline vnmuteplay vn1)) (setf va1mp (binary-timeline vamuteplay alt1)) (setf vc1mp (binary-timeline vcmuteplay vc1)) Time signature (setf ts (get-time-signature vc1 :group '((3 2 2)))) Score definition for part 6 (def-score LessThanEight-6 (:title "Less Than Eight - VI" :composer "Stephane Boussuge" :copyright "Copyright 2014 Stephane Boussuge" :key-signature 'atonal :time-signature ts :tempo 144 :layout (list (clarinet-layout 'clarinet) (bracket-group (violin-layout 'violin) (viola-layout 'viola) (violoncello-layout 'cello)))) (clarinet :omn cla1mp :channel 1 :sound 'gm :program 'clarinet) (violin :omn vn1mp :channel 2 :sound 'gm :program 'violin) (viola :omn va1mp :channel 3 :sound 'gm :program 'viola) (cello :omn vc1mp :channel 4 :sound 'gm :program 'cello)) Part7 (coda) (273-281) Number of bars (size) for the section (setf size 8) Binary Mute / Play system for each instrument. GEN-TRIM will extend the duration of the binary list until size parameter. (setf clamuteplay (gen-trim size '(1 1 1 1 1 1 1 1))) (setf vnmuteplay (gen-trim size '(1 1 1 1 1 1 1 1))) (setf vamuteplay (gen-trim size '(1 1 1 1 1 1 1 1))) (setf vcmuteplay (gen-trim size '(1 1 1 1 1 1 1 1))) Velocity for each bar. (setf rvel (mclist '(p p mp mp mf mf f ff))) Definition of basics rhythmics cells. (setf baselength '((q. q q) (e e e e e e e) (e e e e e e e) (q. e e e e) (e e e q e e) (e e e e e q))) Conditional articulation based on lengths. (def-case make-art ((3/8 1/4 1/4) '(leg leg leg)) ((1/8 1/8 1/8 1/8 1/8 1/8 1/8) '(stacc+marc stacc stacc stacc+marc stacc stacc+marc stacc)) ((3/8 1/8 1/8 1/8 1/8) '(leg+marc stacc stacc leg leg)) ((1/8 1/8 1/8 1/4 1/8 1/8) '(stacc+marc stacc stacc leg+marc leg leg leg)) ((1/8 1/8 1/8 1/8 1/8 1/4) '(stacc+marc stacc stacc stacc+marc leg leg)) (otherwise '(leg))) Cello Pitch (setf vc1.pitch (append '(c2 = =) (integer-to-pitch (rnd-sample 4 (gen-integer -24 -6))))) Length (random choice in baselength list) (setf tuttilen (rnd-sample size baselength)) Append tuttilen to one final rhytmic cell. (setf vc1.len (append tuttilen '((3/8 -2/8 2/8)))) Articulation (setf vc1.art (make-art vc1.len)) OMN (setf vc1.omn (make-omn :pitch vc1.pitch :length vc1.len :velocity rvel :articulation vc1.art)) Mapping (setf vc1.map (tonality-map path4 vc1.omn)) Tie repeated notes (setf vc1.ft (filter-tie vc1.map)) Ambitus (setf vc1 (ambitus '(c2 c4) vc1.ft)) Viola Pitch (setf alt1.pitch (integer-to-pitch (rnd-sample 7 (gen-integer -12 0)))) Length (setf alt1.len vc1.len) Articulation (setf alt1.art (make-art vc1.len)) OMN (setf alt1.omn (make-omn :pitch alt1.pitch :length alt1.len :velocity rvel :articulation alt1.art)) Mapping (setf alt1.map (tonality-map path4 alt1.omn)) Tie repeated notes. (setf alt1.ft (filter-tie alt1.map)) Ambitus (setf alt1 (ambitus '(c3 g5) alt1.ft)) Violin Pitch (setf vn1.pitch (gen-loop size (integer-to-pitch (rnd-sample 7 (gen-integer -5 12))))) Length (setf vn1.len vc1.len) Articulation (setf vn1.art (make-art vn1.len)) OMN (setf vn1.omn (make-omn :pitch vn1.pitch :length vn1len :velocity rvel :articulation vn1.art)) Mapping (setf vn1.map (tonality-map path4 vn1.omn)) Tie repeated notes. (setf vn1.ft (filter-tie vn1.map)) Ambitus (setf vn1 (ambitus '(g3 g6) vn1.ft)) Clarinet Pitch Generate a white noise vector (setf clavect (gen-white-noise 256)) Map vector to pitch (setf clapitch (vector-to-pitch '(g3 c5) clavect)) Length (setf clalen vc1.len) Articulation (setf claart (make-art clalen)) OMN (setf cla1.omn (make-omn :pitch clapitch :length clalen :velocity rvel :articulation claart)) Mapping (setf cla1.map (tonality-map path4 cla1.omn)) Tie repeated notes (setf cla1.ft (filter-tie cla1.map)) Ambitus (setf cla1.amb (ambitus '(a3 g5) cla1.amb)) Adding the rests (setf cla1 (length-weight cla1.amb :weight '(8 1))) Mute/Play Application (setf cla1mp (binary-timeline clamuteplay cla1)) (setf vn1mp (binary-timeline vnmuteplay vn1)) (setf va1mp (binary-timeline vamuteplay alt1)) (setf vc1mp (binary-timeline vcmuteplay vc1)) Time signature (setf ts (get-time-signature vc1 :group '((3 2 2)))) Score definition for Coda (part 7) (def-score LessThanEight-7 (:title "Less Than Eight - VII" :composer "Stephane Boussuge" :copyright "Copyright 2014 Stephane Boussuge" :key-signature 'atonal :time-signature ts :tempo 144 :layout (list (clarinet-layout 'clarinet) (bracket-group (violin-layout 'violin) (viola-layout 'viola) (violoncello-layout 'cello)))) (clarinet :omn cla1mp :channel 1 :sound 'gm :program 'clarinet) (violin :omn vn1mp :channel 2 :sound 'gm :program 'violin) (viola :omn va1mp :channel 3 :sound 'gm :program 'viola) (cello :omn vc1mp :channel 4 :sound 'gm :program 'cello)) Full score compilation (assembly) (compile-score '(LessThanEight-intro LessThanEight-1 LessThanEight-2 LessThanEight-3 LessThanEight-4 LessThanEight-5 LessThanEight-6 LessThanEight-7)) LessThanEightRv04.opmo
  8. Here's a small piano study using my new function make-chord-if-length and few others from my personal lib. Enjoy SB. ;;; UTILITIES ;;; ======================================== ;;; GEN-PITCH-LINE ;;; Fonction de génération de hauteurs basées sur une conversion de vecteur de bruit ;;; avec un grand choix de type de bruit, taux de compression du vecteur, filtrage des répétitions et ambitus. (defun gen-pitch-line (nb-pitch &key (compress 1) (ambitus '(c4 c6)) seed filter-repeat (type :white)) (setf seed (rnd-seed seed)) (let (pitches) (do-verbose ("gen-pitch-line :seed ~s" seed) (labels ((white-or-pink (nb-pitch seed type) (if (eq type ':pink) (gen-pink-noise nb-pitch :seed seed) (gen-white-noise nb-pitch :seed seed :type (if (eq type ':white) :normal type)))) (process (nb-pitch &key (compress 1) (ambitus '(c4 c6)) seed filter-repeat type) (setf pitches (vector-to-pitch ambitus (vector-smooth compress (white-or-pink nb-pitch seed type)))) (when filter-repeat (setf pitches (gen-trim nb-pitch (filter-repeat filter-repeat pitches)))) pitches) ) (process nb-pitch :compress compress :ambitus ambitus :filter-repeat filter-repeat :seed (seed) :type type))))) #| USAGE (gen-pitch-line 24 :compress 0.42 :type :white :filter-repeat 1) (gen-pitch-line 24 :compress 0.42 :type :pink :filter-repeat 1) (gen-pitch-line 24 :compress 0.42 :type :extreme :filter-repeat 1) (gen-eval 8 '(make-omn :pitch (gen-pitch-line 24 :compress 0.42 :type :white :filter-repeat 1) :length (euclidean-rhythm 16 1 16 's :type 2) ) :seed 33) |# ;;; OMN-ARTICULATION-PROCESSOR (defun omn-articulation-processor (map omn-mat &key (section nil)) (do-verbose ("omn-articulation-processor") (let ((artic (pattern-map map (omn :length omn-mat) :otherwise '(default) :section section)) ) (omn-replace :articulation artic omn-mat) ))) ;;; MAKE-CHORD-IF-LENGTH (defun make-chord-if-length-aux (omn &key (test #'>) (length-val 1/8) (interval-list '((4 7)(7 12))) (cycle t)(relative nil) seed) (setf seed (rnd-seed seed)) (let ((s-events (single-events omn))) (loop for e in s-events when (funcall test (omn-encode (first e)) length-val) append (omn-replace :pitch (gen-chord3 (list (second e)) interval-list :cycle cycle :relative relative :seed (seed)) e ) else append e))) (defun make-chord-if-length (omn &key (test #'>) (length-val 1/8) (interval-list '((4 7)(7 12)))(cycle nil)(relative nil) seed) (setf seed (rnd-seed seed)) (do-verbose ("make-chord-if-length :seed ~s :length-val ~s :interval-list ~s :cycle ~s :relative ~s" seed length-val interval-list cycle relative) (let ((test-fn (case test (> #'>) (< #'<) (= #'=) (otherwise test)))) (if (listp (car omn)) (mapcar #'(lambda (x) (make-chord-if-length-aux x :test test-fn :length-val (omn-encode length-val) :interval-list interval-list :cycle cycle :relative relative :seed (seed))) omn) (make-chord-if-length-aux omn :test test-fn :length-val (omn-encode length-val) :interval-list interval-list :cycle cycle :relative relative :seed (seed)))))) ;;; ======================================== ;;;--------------------------------------------------------- ;;; Parameters ;;;--------------------------------------------------------- (setf size 24) (setf flow1 (pitch-transpose -7 (make-omn :pitch (gen-pitch-line 128 :compress 0.33 :seed 729353) :length (rnd-sample size '((s s s s s s s s -q) (e e h)(h.)(q q e e) (e e q q)(s s s s q q) (q s s s s q)(s s e -e s s q) ) :seed 729355) :velocity (rnd-sample size '((ppp)(pp)(p)(mp)(mf)) :seed 729356) ))) (setf flow2 (pitch-transpose -4 (make-omn :pitch (gen-pitch-line 128 :compress 0.73 :seed 353) :length (rnd-sample size '((h. ) (q. e q)(h.)(q q q) (h -q)(e e h) (h e e) ) :seed 729355) :velocity (rnd-sample size '((ppp)(pp)(p)) :seed 729356) ))) (setf flow3 (pitch-transpose -7 (make-omn :pitch (gen-pitch-line 128 :compress 0.33 :seed 7353) :length (rnd-sample size '((s s s s s s s s -q) (e e h)(h.)(q q e e) (e e q q)(s s s s q q) (q s s s s q)(s s e -e s s q) ) :seed 7255) :velocity (rnd-sample size '((ppp)(pp)(p)(mp)(mf)) :seed 7256) ))) ;;; Articulation remap (setf map '(((1/16 1/16 1/16 1/16)(leg leg leg default)))) (setf with-ch1 (omn-articulation-processor map (pitch-ornament (make-chord-if-length flow1 :interval-list '((-7 -19 3 9)(-4 -16 3 7) (-5 -17 4 12)(-3 -15 7)) :cycle nil :relative t :seed 729358 )))) (setf with-ch2 (omn-articulation-processor map (pitch-ornament (make-chord-if-length flow2 :interval-list '((-7 -19 3 9)(-4 -16 3 7) (-5 -17 4 12)(-3 -15 7)) :cycle nil :relative t :seed 729358 )))) (setf with-ch3 (omn-articulation-processor map (pitch-ornament (make-chord-if-length flow3 :interval-list '((-7 -19 3 9)(-4 -16 3 7) (-5 -17 4 12)(-3 -15 7)) :cycle nil :relative t :seed 729358 )))) ;;; SCORE ASSEMBLY (setf piano-rh (omn-replace :articulation '(default leg leg leg default fermata-l) (ambitus-filter '(c4 c8) (assemble-seq with-ch1 with-ch2 with-ch3)) :section '(71))) (setf piano-lh (omn-replace :articulation '(default fermata-l) (ambitus-filter '(c0 b3) (assemble-seq with-ch1 with-ch2 with-ch3)) :section '(71))) ;;;--------------------------------------------------------- ;;; Score and Layout ;;;--------------------------------------------------------- (def-score Study (:title "Mcil-study" :composer "S.Boussuge" :copyright "Copyright © 2018 s.boussuge " :key-signature 'chromatic :time-signature '((1 1 1) 4) :tempo 82 :layout (piano-solo-layout 'piano-rh 'piano-lh)) (piano-rh :omn piano-rh :channel 1 :sound 'gm :program 'acoustic-grand-piano :volume 100 :pan 64 :controllers (91 '(48)) ) (piano-lh :omn piano-lh :channel 2 :controllers (91 '(48)) ) )
  9. Here's a short piece for violin solo and Strings ensemble with Fibonacci based harmony. Full score attached to this post fully commented but in French SB. BrinD'or-V04.opmo
  10. Eno/Byrne-esque 'Beat-Betas' as audition tape (i.e. 60 second continuous excerpts). Opusmodus generated MIDI...Mixed as "prototypes" in Logic 9.1.8,'auditioned' in iTunes 'live' to "Audio Hijack Pro".
  11. Hi, here's for study purpose the Opusmodus score of the first movement of my piano trio. All the best to the wonderful Opusmodus users community ! SB. PianoTrio-SlonimskyV2.opmo
  12. Hi, Here's a Strings Trio composed in memory of the victims of Paris attack. Attached Part-a and part-d opmo scores for study purpose. S.B st-a.opmo st-d.opmo
  13. In memoriam to Nigel St. Clair Morgan. RequiemCommented.opmo
  14. Hello, a new piece for ensemble after viewing an Egon Schiele exposition in Albertina museum, Vienna. SB TheSingleOrangeWasTheOnlyLight Partition complète.pdf
  15. Hi, here's the first movement of a work in progress, my strings quartet No.1. OpmoScore attached. You can also find how it was algorithmically made in this forum article/example: SB. Sqrt1-Full-GM.opmo
  16. Algorithmic avant garde jazz improvisation for tenor saxophone, piano, bass and drums. I thought it is time to add something new to our 'Made in Opusmodus' forum. Samples: VSL Ensemble Pro with Vienna Instruments Pro. If you like to study the score, here it is: DADA Quartet.opmo
  17. Hi, for study purpose only, you will find attached to this post the score script of this Prelude for Piano. SB. PreludeForNicolai.opmo
  18. Hi, new piece after a paint by Egon Schiele. SB. mwploaFullScoreEdit.opmo (update)
  19. There are many occasions when we would like to add articulations by hand to our generated scores. The first thing we need to do is to convert (output) the score into omn format. Algorithmically generated score. (setf size 200) (setf vector (add-triangle-waves 4 size 1 0.6 :modulation (gen-triangle size 1 '(0.5 0.4 0.3 0.6) :modulation (gen-triangle size 1 0.3 :phase 180)))) (setf pitches (gen-divide 4 (vector-to-pitch '(g1 g6) vector))) (setf transpose (pitch-transpose -12 pitches)) (setf variants (pitch-variant transpose :variant '?)) (setf length (rnd-sample 120 '(s e s s))) (setf time (span pitches length)) (setf dynamics '(p mf ff)) (def-score add-triangle (:title "Waves Add-Triangle" :composer "OPMO" :copyright "© 2014 Opusmodus" :key-signature 'chromatic :time-signature (get-time-signature time) :tempo 120 :layout (piano-solo-layout 'rh 'lh :flexible-clef t)) (rh :length time :pitch pitches :velocity (rnd-sample size dynamics) :port 0 :sound 'gm :channel 1 :program 'acoustic-grand-piano) (lh :length time :pitch variants :velocity (rnd-sample size dynamics))) The expression below will convert the score into omn score format. (compile-score 'add-triangle :output :score) To get a more readable version of the score add PPRINT (print pretty) at the beginning of the expression. (pprint (compile-score 'add-triangle :output :score)) Output in the Listener: (def-score add-triangle (:title "Waves Add-Triangle" :composer "OPMO" :copyright "© 2014 Opusmodus" :key-signature 'chromatic :layout '(:brace (:flexible-treble rh) (:flexible-bass lh) :name "" :abbr "" :flexible-clef t) :time-signature '((1 4 2) (5 16 2) (1 4 1) (5 16 1) (3 8 2) (5 16 2) (3 8 1) (5 16 2) (1 4 1) (5 16 1) (1 4 1) (3 8 2) (1 4 1) (3 8 1) (5 16 1) (3 8 1) (5 16 2) (3 8 1) (7 16 1) (1 4 1) (3 8 1) (1 4 1) (5 16 1) (1 4 2) (5 16 2) (1 4 1) (5 16 1) (3 8 2) (5 16 2) (3 8 1) (5 16 2) (1 4 1) (5 16 1) (1 4 1) (3 8 2) (1 4 1) (3 8 1)) :tempo '120) (rh :omn '((s g1 ff gs1 p a1 ff b1) (s c2 mf cs2 ff d2 e2 mf) (e f2 p s fs2 ff g2 p a2) (s b2 mf e c3 s cs3 ff eb3) (s e3 mf f3 ff fs3 p a3 mf) (s bb3 ff b3 e c4 p s e4) (e e4 ff s f4 e s b4 p) (e b4 s s mf e fs5 ff) (s fs5 mf f5 p mf e cs6) (s cs6 c6 p e b5 mf s g6 ff) (s g6 p ff e f6 g6 mf) (s g6 g6 p ff e fs6) (s g6 mf p e s fs6) (s fs6 fs6 ff mf ff) (e fs6 p s ff fs6 fs6 mf) (s fs6 fs6 ff p f6) (s fs6 ff mf e e f6) (s f6 e fs6 fs6 p s f6) (s f6 mf fs6 fs6 p f6) (e f6 f6 ff s fs6 p f6 ff) (s f6 p e s s) (s f6 e mf p s ff) (s f6 mf p mf e ff) (s f6 p e s mf p) (s f6 ff e mf s e p) (e f6 s e ff mf) (s f6 p mf e6 ff f6 p) (s f6 ff e6 mf e eb6 p f6 mf) (s f6 e6 d6 f6) (s f6 e6 ff d6 e f6 p) (s f6 mf e6 ff cs6 f6 mf) (s f6 ff f6 cs6 mf f6 ff) (e f6 mf s s cs6 p fs6 mf) (s f6 ff e e6 p s bb5 mf f6) (s e6 p b5 f5 eb6) (s bb5 fs5 ff e cs5 p s a5 mf) (e e5 ff s c5 e gs4 mf s d5) (e bb4 s fs4 d4 e g4) (s e4 ff d4 b3 mf e eb4) (s cs4 p bb3 mf e gs3 p s c4 ff) (s a3 a3 mf e b3 ff gs3) (s bb3 c4 d4 e b3 mf) (s cs4 p eb4 mf e f4 p s eb4 ff) (s e4 fs4 gs4 p fs4 ff) (e g4 p s a4 mf bb4 a4) (s bb4 c5 cs5 p c5 mf) (s cs5 eb5 ff e e5 mf eb5 ff) (s e5 mf e fs5 g5 p s fs5 ff) (s g5 mf gs5 a5 p a5) (e bb5 ff b5 mf s c6 ff c6)) :channel 1 :sound 'gm :program 'acoustic-grand-piano :volume 90 :pan 64) (lh :omn '((s b0 p a0 mf gs1 g1) (s e1 d1 cs1 ff c1) (e a1 mf s g1 p fs1 mf f1) (s eb2 ff e cs2 s c2 mf b1 p) (s e2 mf eb2 d2 b1 p) (s e3 mf c3 p e b2 ff s bb2) (e b3 p s f3 mf e s e3 ff) (e b3 p s s ff e e3 mf) (s cs5 ff a5 p a5 e gs5 mf) (s cs5 ff c5 e b4 mf s g5 ff) (s g5 mf a5 ff e g5 p g5) (s g5 g5 mf g5 e fs5 ff) (s g5 p g5 e ff s gs5 mf) (s fs5 fs5 ff mf fs5) (e fs5 s p mf fs5) (s fs5 p ff p f5 mf) (s f5 p fs5 mf e e) (s f5 p e e5 e5 ff s f5) (s f5 p e5 e5 f5) (e f5 ff fs5 p s f5 ff f5) (s f5 e s p f5) (s f5 ff e e p s ff) (s f5 mf f5 f5 e p) (s f5 e ff s mf ff) (s f5 mf e p s e mf) (e f5 s e p f5) (s e5 f5 mf p f5) (s f5 g5 ff e fs5 p f5 ff) (s f5 fs5 mf gs5 f5 ff) (s f5 d5 e5 e f5 mf) (s cs5 e5 f5 f5 p) (s f5 ff mf p cs5) (e cs5 ff s f5 mf p fs5 mf) (s f5 e fs5 s c6 f5) (s e5 b4 p f4 eb5 mf) (s bb4 p a4 mf e fs4 p s cs4 ff) (e e4 mf s gs4 p e c5 mf s fs4 ff) (e bb3 s fs3 d3 e g3 mf) (s e3 p d3 b2 e eb3 ff) (s c3 mf e3 p e d3 ff s b2 mf) (s b2 ff a2 p e e gs2) (s b2 ff gs2 mf bb2 ff e c3 p) (s cs3 b2 mf e a2 ff s b2 p) (s fs3 e3 mf fs3 p gs3) (e g3 ff s f3 e3 p f3 ff) (s c4 mf cs4 c4 bb3) (s cs4 p eb4 mf e e4 eb4) (s fs4 p e g4 mf fs4 s e4) (s g4 gs4 p a4 a4) (e c5 ff mf s cs5 ff d5 p)) :channel 1 :sound 'gm :program 'acoustic-grand-piano :volume 90 :pan 64)) Copy the score from the Listener and paste it into the Composer panel. Now we are ready to add articulations etc... to the score by hand.
  20. Hi, is it possible to use Klangfarbenmelodie with OMN ? It could be like that: pitch 1, midi channel 1 pitch 2, midi channel 2... Is there any easy way to do it, or maybe a function I haven't see yet ? Thanks Alain
  21. Here's some few examples of use of the recently updated tonality-system. (complete opmo score attached to this post.) ;; Utility function useful for using ;; bass note of chords/scales as root ;; in tonality-series. (defun get-lowest-chord-tone (chords) (do-verbose ("get-lowest-chord-tone") (integer-to-pitch (mapcar 'find-min (pitch-to-integer chords))) )) #| ;;; USAGE (setf chords '(d4f4a4 ab3d4eb4g4 f4eb3c5)) (get-lowest-chord-tone chords) |# It is better now to see the tonality as kind of PCS (pitch Class Set). If you would express them in pitch, it is easier to work on C base. Something interesting if the fact tonality can now be sorted or not. It will be reflected in the output of tonality-map. ;; Some tests (tonality-map '(d4e4f4g4a4b4) '(c4 d4 e4 f4 g4 a4 b4)) (tonality-map '(d4e4f4g4a4b4) '(c3 e4g4)) (tonality-map '(d4e4f4g4a4b4 :root d4) '(c3 e4g4)) (tonality-map '((0 2 3 5 7 9 10) :root d4) '(c3 e4g4)) (tonality-map '((0 2 3 5 7 9 10) :root d4 :closest 'down) '(c3 e4g4)) More extended test with use of bass note as root: (setf row '(c4 e4 f4 b4 a4 bb4 cs4 gs4 fs4 g4 eb4 d4)) (setf modes1 (harmonic-progression '(0 1 2 3 4 5 6 7 8 9 10 11) row :step 1 :size 8 )) (setf mtv '((s c4 d4 e4 f4 g4 a4 b4 c5))) (setf test1 (tonality-map (mclist modes1) (gen-repeat 12 mtv))) (setf path1 (tonality-series modes1 :root (get-lowest-chord-tone modes1) ;:closest '(down) )) (setf test2 (tonality-map path1 (gen-repeat 12 mtv))) (setf mtv2 '((s c4 cs4 d4 ds4 e4 f4 fs4 g4))) (setf test3 (tonality-map (mclist modes1) (gen-repeat 12 mtv2))) (setf test4 (tonality-map path1 (gen-repeat 12 mtv2))) (setf path2 (tonality-series modes1 :root (get-lowest-chord-tone modes1) ;:closest '(down) :map '(step) )) (setf test5 (tonality-map path2 (gen-repeat 12 mtv))) (setf test6 (tonality-map path2 (gen-repeat 12 mtv2))) (setf path3 (tonality-series modes1 :root (get-lowest-chord-tone modes1) ;:closest '(down) :map '(step) :sort t )) (setf test7 (tonality-map path3 (gen-repeat 12 mtv2))) (setf test8 (tonality-map path3 (gen-repeat 12 mtv))) SB. NewTonalitySystemExamples.opmo
  22. Hello, a small piece for piano solo. Score script attached to this post. SB. Jeu2PourPiano.opmo
  23. This is a simple piano piece by Patrick Mimran . SimpleSpringPianoPiece - - Output - Stereo Out.mp3 SimpleSpringPianoPiece.opmo
  24. Score with ADD-TEXT-ATTRIBUTES and GEN-DYNAMIC-CONTROLLER. ;;;--------------------------------------------------------- ;;; Sechs Bagatellen fuer Streichquartett OP.9, I ;;;--------------------------------------------------------- (add-text-attributes '(daempfer "mit Dämpfer") '(steg "am Steg") '(d-saite "d-Saite") ) (setf violin1-I '((-q - cs5 pp< daempfer+ubow+tie) (e cs5 > - - bb5 p> leg e5 > leg f4) (q g4 pp> leg eb4 -) (-3q eb4ab4 <> harm - -q -) (-q -3q 3h f6 pp<> ubow) (-q e a6 f< ten fs6 < ten) (q g5 ff - -3q - b3 f marc) (e. c4 < leg s b3 -q -e f3ds4 p leg) (q a3gs4 < - -) (-e q g3fs4 ppp> ten -e fermata -q))) (setf violin2-I '((-h.) (e c4 pp< daempfer+leg gb4 < leg 3h ab4 -3q -q) (-h.) (q bb3 pp pizz+ten - gs3e4 pp<> ubow+arco) (-q d4 pp< ttrem+steg+leg fs4 steg) (-h) (-q -3q 3h gs5 ff d-saite+leg q f4 >) (-q -3q gs3 f> stacc+pizz a4 > stacc -q) (-3q 3h eb6 f> ten+arco+tie s eb6 - e gb4 p> leg+d-saite f5 leg s e5 -) (-h. fermata))) (setf viola-I '((-q -3q 3h eb4 pp<> ubow+harm+ten+steg+daempfer -q) (-q s a3 pp stacc+steg b3 stacc+steg a3 stacc+steg b3 stacc+steg a3 stacc+steg b3 stacc+steg a3 stacc+steg b3 stacc+steg) (-h.) (-e. s c4 p< arco+leg q. c5 leg e bb4 >) (-h) (-s e b5 sf leg s bb4 >p< tie e bb4 -) (-q e f5 fff ten+pizz eb5 ten -q) (-e q. cs5fs5 sfp harm+arco+trem -e b3fs4 p leg) (q c3cs4 < - -s e. bb5 p> marc+tie) (e. bb4 pp -s -3q c5 ppp> fermata+ten - -q))) (setf cello-I '((-q d4 pp< ten+harm+daempfer -) (-q - -3q 3h fs2 pp leg+tie) (q. fs2 < leg e e2 > e4 p leg d5 leg+tie) (e d5 < leg f5 > -q a2f3 pp<>) (-e q cs3fs3 p< ten+harm e g2 pp ten+tie) (3q g2 < 3h cs3fs3 f ten+harm -e c2b2 f stacc+pizz) (-s gs4 ff< leg+arco e e5 < leg+tie q e5 < -e db3c4 f stacc+pizz) (-q -e g3 sffp harm+arco+marc+leg q d4 > app+leg 3q g3 harm 3h g3 f> harm+marc+tie) (e g3 > harm g3 p harm+marc+tie 3q g3 > harm - - -q) (3q b2 pp pizz - cs2fs2 pp< harm+arco+tie e cs2fs2 > harm -e fermata -q))) (setf tempo-I '(("Mäßig" 60 :length 10/4) (:rit 60 40 1/64 2/4) (60 2/4) (:accel 60 96 1/64 2/4) ("heftig" 96 2/4) (:rit 96 60 1/64 1/4) ("wieder mäßig" 60 4/4) (:rit 60 44 1/64 2/4) (44 3/4))) (def-score Anton-Webern-OP-9-I ( :title "Sechs Bagatellen für Streichquartett OP.9, I" :composer "Anton Webern" :copyright "Copyright © 1924 Universal Edition" :key-signature 'chromatic :time-signature (get-time-signature violin1-I) :tempo tempo-I :octave-shift '(c2 c6) :merge-rests t :flexible-clef t :accidentals :cautionary :layout (string-quartet-layout 'vln1 'vln2 'vla 'vlc) ) (vln1 :omn violin1-I ;:port 0 :channel 1 :sound 'vsl-violin-solo :controllers (11 (gen-dynamic-controller violin1-I))) (vln2 :omn violin2-I :channel 2 :sound 'vsl-violin-solo :controllers (11 (gen-dynamic-controller violin2-I))) (vla :omn viola-I :channel 3 :sound 'vsl-viola-solo :controllers (11 (gen-dynamic-controller viola-I))) (vlc :omn cello-I :channel 4 :sound 'vsl-cello-solo :controllers (11 (gen-dynamic-controller cello-I))) )
  25. Hi, here's the score script of a small piece for piano inspired by my first day in Vienna. SB. Klavier-Gallery-1.opmo
×
×
  • Create New...