Jump to content


Popular Content

Showing content with the highest reputation since 10/23/2017 in all areas

  1. 7 points


    Achim Bornhoeft and I we had a brain storming session on quantisation here in Venice for two days. The code will be ready for testing in few days. The holidays might delay the release a bit. The test are already very promising :-)
  2. 6 points
    Yuichi Yamamoto


    Hi people, Though I've been using Opusmodus for about 2 years now, and in great love with it, I haven't really had a chance to share my work on the community. But here I have my piano piece vastly written with Opusmodus, and guess what, it's got a cool video, too! Yamaha corporation kindly offered me to use their automated piano for filming, and I think an algorithmic music like this goes very well with it! Yuichi
  3. 5 points

    Midi In Collect

    Ver 2. will be able to import musicXML files and convert to omn.
  4. 5 points

    Opusmodus 1.2.22703

    New function: TIME-SWALLOW and minor bug fixes. The function TIME-SWALLOW 'swallows' sequence of pitches derived from the divide of every length value of a sequence by a given time value: (/ 1/2 1/16) = 8. The rest-lengths are omitted. (setf length '(1/2 1/16 7/16 1/8 3/8 3/16 5/16 1/4 1/4 5/16 3/16 3/8)) (setf infinity (infinity-series 100 '(g4 gs4))) => (g4 gs4 fs4 a4 gs4 g4 f4 bb4 fs4 a4 g4 gs4 a4 fs4 e4 b4 gs4 g4 f4 bb4 g4 gs4 fs4 a4 f4 bb4 gs4 g4 bb4 f4 eb4 c5 fs4 a4 g4 gs4 a4 fs4 e4 b4 g4 gs4 fs4 a4 gs4 g4 f4 bb4 a4 fs4 e4 b4 fs4 a4 g4 gs4 e4 b4 a4 fs4 b4 e4 d4 cs5 gs4 g4 f4 bb4 g4 gs4 fs4 a4 f4 bb4 gs4 g4 bb4 f4 eb4 c5 g4 gs4 fs4 a4 gs4 g4 f4 bb4 fs4 a4 g4 gs4 a4 fs4 e4 b4 f4 bb4 gs4 g4) (time-swallow 1/16 1 length pitch) => (g4 fs4 a4 gs4 f4 f4 g4 fs4 a4 g4 g4 a4) Time 1/16 in each length: 8 1 7 2 6 3 5 4 4 5 3 6 8 1 7 2 g4 gs4 fs4 a4 gs4 g4 f4 bb4 fs4 a4 g4 gs4 a4 fs4 e4 b4 gs4 g4 6 3 5 4 f4 bb4 g4 gs4 fs4 a4 f4 bb4 gs4 g4 bb4 f4 eb4 c5 fs4 a4 g4 gs4 4 5 3 6 a4 fs4 e4 b4 g4 gs4 fs4 a4 gs4 g4 f4 bb4 a4 fs4 e4 b4 fs4 a4 Example with swallow :type 1 (default) and with chord-size (3 3 2 1): (make-omn :length length :pitch (time-swallow 1/16 '(3 3 2 1) length pitch)) => (h g4gs4fs4 s fs4a4g4 q.. a4g4 e gs4 q. f4bb4g4 e. f4bb4gs4 qs g4bb4 q fs4 a4fs4e4 qs g4gs4fs4 e. g4f4 q. a4) 8-3 1-3 7-2 2-1 g4 gs4 fs4 a4 gs4 g4 f4 bb4 fs4 a4 g4 gs4 a4 fs4 e4 b4 gs4 g4 6-3 3-3 5-2 4-1 f4 bb4 g4 gs4 fs4 a4 f4 bb4 gs4 g4 bb4 f4 eb4 c5 fs4 a4 g4 gs4 4-3 5-3 3-2 6-1 a4 fs4 e4 b4 g4 gs4 fs4 a4 gs4 g4 f4 bb4 a4 fs4 e4 b4 fs4 a4 Same as above but with swallow :type 2: (make-omn :length length :pitch (time-swallow 1/16 '(3 3 2 1) length pitch :type 2)) => (h g4gs4fs4 s g4gs4a4 q.. fs4e4 e gs4 q. a4f4bb4 e. c5fs4a4 qs a4fs4 q fs4 f4bb4a4 qs fs4a4g4 e. fs4b4 q. cs5) 8-3 1-3 7-2 g4 gs4 fs4 a4 gs4 g4 f4 bb4 fs4 a4 g4 gs4 a4 fs4 e4 b4 gs4 g4 f4 bb4 g4 2-1 6-3 3-3 gs4 fs4 a4 f4 bb4 gs4 g4 bb4 f4 eb4 c5 fs4 a4 g4 gs4 5-2 4-1 4-3 a4 fs4 e4 b4 g4 gs4 fs4 a4 gs4 g4 f4 bb4 a4 fs4 e4 b4 5-3 3-2 6-1 fs4 a4 g4 gs4 e4 b4 a4 fs4 b4 e4 d4 cs5 gs4 g4 f4 bb4 g4 More examples: (make-omn :length length :pitch (time-swallow 'e '(3 3 2 1) length pitch)) => (h g4gs4fs4 s gs4g4f4 q.. gs4g4 e fs4 q. a4g4gs4 e. a4fs4e4 qs e4b4 q gs4 f4bb4g4 qs g4gs4fs4 e. fs4a4 q. f4) (make-omn :length length :pitch (time-swallow 'e '(3 3 2 1) length pitch :type 2)) => (h g4gs4fs4 s f4bb4fs4 q.. fs4a4 e fs4 q. e4b4gs4 e. bb4g4gs4 qs a4f4 q gs4 bb4f4eb4 qs fs4a4g4 e. a4fs4 q. b4) (setf length2 (gen-length (distributive-cube (interference2 '(3 2))) '(1/16))) => ((1/2 1/4 1/4 1/2 1/4 1/8 1/8 1/4 1/4 1/8 1/8 1/4 1/2 1/4 1/4 1/2) (1/4 1/8 1/8 1/4 1/8 1/16 1/16 1/8 1/8 1/16 1/16 1/8 1/4 1/8 1/8 1/4) (1/4 1/8 1/8 1/4 1/8 1/16 1/16 1/8 1/8 1/16 1/16 1/8 1/4 1/8 1/8 1/4) (1/2 1/4 1/4 1/2 1/4 1/8 1/8 1/4 1/4 1/8 1/8 1/4 1/2 1/4 1/4 1/2)) (make-omn :length length2 :pitch (time-swallow '(3e e s) '((3 3 2 1) (2 3)) length2 pitch)) => ((h g4gs4fs4 q a4fs4e4 f4bb4 h f4 q a4fs4e4 e fs4a4gs4 g4f4 q a4 g4gs4e4 e b4e4d4 cs5gs4 q f4 h f4bb4gs4 q gs4g4f4 g4gs4 h f4) (q g4gs4 e fs4a4gs4 a4gs4 q gs4g4f4 e f4bb4 s bb4fs4a4 bb4fs4 e bb4fs4a4 fs4a4 s a4g4gs4 a4g4 e a4g4gs4 q g4gs4 e a4fs4e4 fs4e4 q e4b4gs4) (q g4gs4fs4 e gs4g4f4 f4bb4 q fs4 e a4fs4e4 s e4b4gs4 b4gs4 e gs4 f4bb4g4 s g4gs4fs4 gs4fs4 e fs4 q f4bb4gs4 e bb4f4eb4 eb4c5 q fs4) (h g4gs4 q a4fs4e4 f4bb4 h f4bb4gs4 q a4fs4 e fs4a4gs4 g4f4 q a4fs4e4 g4gs4 e b4e4d4 cs5gs4 q f4bb4g4 h f4bb4 q gs4g4f4 g4gs4 h f4bb4gs4)) (make-omn :length length2 :pitch (time-swallow '(3e e s) '((3 3 2 1) (2 3)) length2 pitch :type 2)) => ((h g4gs4fs4 q e4b4gs4 fs4a4 h f4 q gs4fs4a4 e fs4e4b4 g4gs4 q a4 gs4g4f4 e f4bb4gs4 f4eb4 q gs4 h bb4fs4a4 q gs4fs4a4 a4g4 h gs4) (q g4gs4 e a4gs4g4 f4bb4 q fs4a4g4 e a4fs4 s e4b4gs4 gs4g4 e g4f4bb4 g4gs4 s fs4a4f4 f4bb4 e bb4gs4g4 q bb4f4 e c5fs4a4 g4gs4 q a4fs4e4) (q g4gs4fs4 e f4bb4fs4 g4gs4 q fs4 e g4f4bb4 s gs4fs4a4 f4bb4 e gs4 bb4f4eb4 s fs4a4g4 gs4a4 e fs4 q b4g4gs4 e g4f4bb4 fs4e4 q fs4) (h g4gs4 q fs4e4b4 gs4fs4 h bb4f4eb4 q fs4a4 e fs4e4b4 g4gs4 q a4fs4b4 f4bb4 e bb4gs4g4 eb4c5 q fs4a4gs4 h g4gs4 q a4gs4g4 gs4a4 h f4bb4g4)) JP
  5. 5 points
    Hello, This is my participation at Pianoteq Video Contest 2017. The composition was written with Opusmodus and played in Ableton Live with seven instances of Pianoteq (modified TubularBells, modified ConcertArp recording, Steinway D Classical Recording A, modified Celesta, modified Cinbalom, modified original ChurchBells, Steinway D Classical Recording BA and completed with a Ircam Solo Instruments bank instance (flute, Horn, Cello) read via the UVI Workstation : and the list of videos in competition : http://www.forum-pianoteq.com/viewtopic.php?id=5301 Do not hesitate to tell me what you think. Didier PS : It is advisable to play the video in 1080p HD and listen to the headphone for panoramic movements.
  6. 4 points

    Turing Piano (Julio Herrlein)

    Dear Friends, I'd like to share a composition all made in Opusmodus. The composition is part of the Portfolio of my Doctoral Dissertation. I'd like to thank you so much, Opusmodus and the support of you here in this forum was amazing !! Love you all !! TURING PIANO (Julio Herrlein) Here is the commented code for the First Section: ;;;PART A ;PITCHES – The pitch structure are based on "chevron-like" patterns. This can be related to some Xenakis ideas: the arborescences, the music as a plot idea. (setf patpit (integer-to-pitch (gen-integer-step 0 68 '(1 -2 3 -4 5 -6 7 -8 9 -10 11)))) (setf patpit2 (integer-to-pitch (gen-integer-step 0 68 '(11 -10 9 -8 7 -6 5 -4 3 -2 1)))) ;;; This interval pattern leads to an infinite ascending movement, like the picture below: ;;; After that, I decided to restrict the ambitus of the pattern, otherwise it goes ascending forever. I did the restriction thinking in the hands of the pianist, in a way to not collide or crossing the hands. ;;;After the ambitus restriction, the next step was find some partitions to make some chords for the piece, so each hand have a diferent partition of the chevron-like pattern, like below (setf pitpartition (ambitus '(g3 c6)(chordize-list (gen-divide '(1 1 1 3 1 1 1 2) patpit)))) (setf pitpartition2 (ambitus '(g1 g3)(chordize-list (gen-divide '(2 1 1 1 1 2 1 1 1 1 1 1 1 1) patpit2)))) ;;; Next, i decided on the Rhythms to use. The rhythms are complementary, i.e., each hand plays on the silence of the other, using the following pattern: DIGRESSION: The FORTE NUMBERS are part of my dissertation that makes the conversion of the entire Forte sets onto Rhythms modulo 12. The dissertation (in portuguese) can be downloaded HERE: Das alturas ao ritmo : teoria dos conjuntos rítmicos como ferramenta composicional From pitches to rhythm: rhythmic set theory as a compositional tool. http://hdl.handle.net/10183/179457 Abstract This doctoral dissertation is divided into two parts: the first deals a rhythmic set theory, and the second contains the portfolio of compositions developed during this period of studies. This dissertation presents a system of rhythmic organization parallel to the musical set theory pitch class organization FORTE (1973), as well as an adaptation of the time-point-system (BABBITT, 1962). From the standpoint of the traditional set theory, and also from the diatonic set theory, this unified approach allows to estabilish a connecting tissue of basic aspects: from the harmony and chords symbols to the rhythmic organization. At one time, in a complete catalog, the families of pitch class sets and chord symbols are related to their respective rhythmic counterparts. The musical motivation for this research came from my interest in the swinging and groovy repetitive rhythms called timelines (TOUSSAINT, 2013), commonly used in popular music. These dancing timelines have properties similar to those of the diatonic sets, and for this reason, this dissertation presents some properties of the diatonic pitch class sets, drawing a parallel with their rhythmic counterparts. These relationships also appear in the portfolio of compositions, characterizing some procedures used. The portfolio of compositions, which includes a composition for symphony orchestra, is presented form the standpoint of a duality between transparency and opacity. This duality address the essential differences in the audibility of the results from various composition techniques. This study of Rhythmic Set Theory will serve as an analytical approach of my compositional output in popular music, with a systematic way to understant and to extrapolate some aspects already used in my practice as composer and improviser. Here is the rhythm used in Turing Piano (with Forte numbers and rotations) (setf ritmo1 (gen-repeat 10 '(s s -s s s -s -s -s s -s -s s -s s -s -s s -s s -s -s -s s -s))) (setf ritmo1b (length-invert ritmo1 :omn t)) ; DINAMICS: Following the parametric stuff, I decided to set the dynamics, according to the harmonic density, i.e. the more notes, the more louder. (setf din1 (span pitpartition '(p p p ff p mf pp ff))) (setf din2 (span pitpartition2 '(f p p p p ff p p ff pp pp f mf mf))) ;ASSEMBLING of the materials (setf lhmat1 (make-omn :length ritmo1 :pitch (pitch-transpose 4 pitpartition) :velocity din1)) (setf rhmat1 (make-omn :length ritmo1b :pitch (pitch-transpose 4 pitpartition2) :velocity din2)) ;MONTAGE of music blocks (assemblage) (setf pianoassemblerh (assemble-seq lhmat1)) (setf pianoassemblelh (assemble-seq rhmat1)) ;;;SCORE- Layout (def-score Miniatura-pno1 (:key-signature 'atonal :time-signature '(3 4) :tempo 85 :octave-shift '(c2 c6) :layout (grand-layout 'pno :all-accidentals 'all)) (pno :omn (merge-voices lhmat1 rhmat1) :channel 1 :sound 'gm :program 0) ) COMPLETE VIDEO
  7. 4 points
    Audition format (excerpts) of various personal application studies for Opusmodus. .. .
  8. 4 points
    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
  9. 4 points

    Posting seed value

    I think it will help us to work even more freely and this is what we expect from Opusmodus :-) Thank you for the suggestion.
  10. 4 points

    Posting seed value

    I found a way to display an internal seed if seed is nil (random process). Example without a seed (each time different result): (rnd-number 12 1 10) ? rnd-number :seed 678732 => (10 6 10 6 1 9 5 6 10 2 4 2) Now the same function with a manually "lock" using the :seed (rnd-number 12 1 10 :seed 678732) ? rnd-number :seed 678732 => (10 6 10 6 1 9 5 6 10 2 4 2) (rnd-pick '((q c4 p d4 ff s a4 stacc) (s e4 app q c5 d5 pp))) ? rnd-pick :seed 598336 => (q c4 p d4 ff s a4 stacc) I hope everybody will be happy with the solution :-) To add this functionality to all the functions using random seed will take some time to do. Hopefully tomorrow :-) Best, Janusz
  11. 4 points
    Stephane Boussuge

    Nuit d'hiver For Woodwinds

    Small piece for Woodwinds. S.
  12. 4 points
    Here's my way for diatonic transposition. It is very simple but do exactly what i want when composing I use this system extensively in all my compositions now, not always in diatonic context but also with synthetic modes, row, algorithmic pitch material etc... I love the concept of degree and transpositions inside a scale and use that technique very often. (setf motiv '((q c4 e4 g4)(q c4 e4 g4)(q c4 e4 g4)(q c4 e4 g4)(q c4 e4 g4))) (setf degree '(1 4 2 5 1)) (setf harmonic-path (harmonic-progression degree '(c4 major) :step 1 :size 7 :base 1 )) (setf p1 (tonality-map (mclist harmonic-path) motiv)) S.
  13. 4 points


    Few QUANTIZE examples: (setf val1 (gen-white-noise 19 :seed 56)) => (0.42731586 0.21048035 0.14944322 0.05199222 0.33933866 0.8851649 0.93565786 0.93476516 0.3839242 0.03127964 0.39819628 0.18478736 0.9568939 0.6663358 0.26542348 0.4052874 0.68264747 0.95090246 0.12790146) (quantize val1 '(3 5 7)) => (7h. 7q 7q 7q 7q_3q 3h_t e. t_e.. t_s t s. t t_5w 5q_e s s_5q 5h. 5q_e. s) (setf val2 (gen-white-noise 19 :scale 2.2 :seed 875)) => (0.5896695 1.3854954 1.7601246 0.15660097 1.0577743 2.005573 0.8151905 0.83697665 0.17089269 1.5035293 0.97181803 0.54288834 1.810276 1.551678 2.1626956 0.7790575 1.5867842 1.6030518 1.3905888) (quantize val2 '(3 5 7)) => (e e_e.. t_q_7wq 7q 7q_e.. t_q_e.. t_3h 3q_e s s_q_e e_s e s_q_e e_q_s e._q_e e_5q 5w_e e_q_e e_q) (setf val3 (vector-range -1.0 1.0 (gen-white-noise 19 :seed 154))) => (-0.24158841 -0.9634026 -0.99552864 -0.4178778 0.9713292 -0.58351946 -0.77635634 0.532539 0.4349326 -0.85446167 -0.9610649 -0.9799211 1.000001 -0.4322123 0.3123653 -1.0 0.74611676 0.66992795 -0.034718752) (quantize val3 '(3 5 7)) => (-3q -3h -3q -3h -3q -3q 3q_e -e -7q -7wq 7q_3q 3q -3q -3h -3q -e -e -e e_e -e -s s -e -e e_e e) Best wishes, J
  14. 4 points
    WOW !!! GREAT ! Thanks ! It was really a lot of work done ! Lots of sets, but it's really useful, I think. Best ! Julio This will be in the next release, I think. Looking Forward ! added 2 minutes later If you like Set Theory and Guitar, you gonna like my book. Please, Check it out ! https://www.melbay.com/Products/Default.aspx?bookid=30042BCDEB Best, Julio
  15. 4 points

    Opusmodus 1.2.22733

    Extended documentation and bug fix in do-timeline and do-timline2 functions if binary list.
  16. 4 points
    Hello, Following the 2017 Pianoteq contest, I was surprised to be ranked 4th in the contest and get a special prize with this little piece written with Opusmodus. Didier http://www.forum-pianoteq.com/viewtopic.php?id=5373
  17. 4 points

    Opusmodus 1.2.22714

    Fix to DO-TIMELINE and DO-TIMELINE2 functions when with T or NIL plus minor bug fixes.
  18. 4 points

    DADA Quartet

    Dear Janusz, Here is a first result from a series of pitches based on "Mi Myxolydien" (a mix with the notes of Amazing Grace version Judy Collins and Third Stone from the Sun by Jimi Hendrix) insert in Def-Library. I recorded the IAC tracks in Ableton Live in the arrangement window and since I do not have an interesting jazz saxophone, I split the tracks and the piano so I could get some changes to the timbres. Besides the bass, the piano and the drums, I used three sessions of Softube modular synthesizer, Modular, including one with the Buchla 259e module (the somewhat space-like sound and which sometimes emphasizes the piano) and two instruments of the Korg Gadget suite for Mac, the Arp Odyssey emulation and the Wave Station emulation in a synthetic brass sound). Didier
  19. 3 points
    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".
  20. 3 points
    Wow, thank you...that means a lot coming from you :) Even at my extremely novice level with Opusmodus, the possibilities of what I can accomplish towards my own goals (experimental electronics) are seemingly endless :) The combination of the online documentation and the continuing insights/inspiration derived from this forum and it's generous and talented contributors....is making this first leg of my learning Opusmodus an extremely exciting and rewarding period of education...and as I am able generate and collect these audio materials into a personal library, no doubt Opusmodus will allow me to develop unique approaches to electronic musiking which is my primary driving force ;-)
  21. 3 points
    We will add this, I love it too :-)
  22. 3 points
    The PCS-ANALYSIS function returns two more results: inverted-form and interval-class: (pcs-analysis '(4 1 8 10 3 7)) => Sequence: (4 1 8 10 3 7) Set: 6-z29 Prime Form: (0 2 3 6 7 9) Inverted Form: nil Pitch: (c4 d4 eb4 fs4 g4 a4) Normal Order: (1 3 4 7 8 10) Complement: (0 2 5 6 9 11) Inversion: (8 11 4 2 9 5) Vector: (2 2 4 2 3 2) Interval Class: (3 5 2 5 4) (pcs-analysis '(0 3 7)) => Sequence: (0 3 7) Set: 3-11 Prime Form: (0 3 7) Inverted Form: (0 4 7) Pitch: (c4 eb4 g4) Normal Order: (0 3 7) Complement: (1 2 4 5 6 8 9 10 11) Inversion: (0 9 5) Vector: (0 0 1 1 1 0) Interval Class: (3 4) (pcs-analysis '(0 4 7)) => Sequence: (0 4 7) Set: 3-11b Prime Form: (0 3 7) Inverted Form: (0 4 7) Pitch: (c4 e4 g4) Normal Order: (0 4 7) Complement: (1 2 3 5 6 8 9 10 11) Inversion: (0 8 5) Vector: (0 0 1 1 1 0) Interval Class: (4 3) The new function PCS-FORMS takes care of both forms: prime-form and inverted-form. The inverted form set ends with letter b: (pcs-forms '((0 4 7) (0 3 7)) :type :set) => (3-11b 3-11)
  23. 3 points

    tutorial guide

    Next - which will take some time - I will add all Opusmodus System Function with examples to our forum.
  24. 3 points
    I will add the inverted form into to the system with the next update.
  25. 3 points
    Ah, great! The documentation does not mention that the input can also be MIDI velocity integers, so I missed that. Best, Torsten added 2 minutes later BTW: I needed that to translate values from OpenMusic data objects into Opusmodus. I am currently working on a library that will bring OpenMusic functions/methods to Opusmodus... Best, Torsten