Jump to content

Search the Community

Showing results for tags 'articulation'.

  • 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
    • Zoom into Opusmodus
  • Sharing
    • Made In Opusmodus
    • User Extensions Source Code

Categories

  • OMN The Language
  • Tutorial Guide
  • CLM Examples

Categories

  • Getting Started
  • HowTo
  • Live Coding
  • Music Theory and Analysis
  • How-to in 100 sec
  • Presentation
  • Convention

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 7 results

  1. Dear Friends, Very basic question: I use some old VSL sample .gig files with gplayer. I really like this libraries and the way it sounds. The combination patches alternate sounds via keyswitches in the lower range of keyboard (or the upper range in some instruments). Something like: C normal sound C# pizz D marcato etc Can I use this keyswitches in the OMN lingo, without having to send the midi note itself to activate the keyswitch, something like: (marcato e c4 d4 s legato fs4 g4 cs5 eb5 ) Opusmodus will send the keyswitches as a hidden midi note in the expression ? All the best, Julio
  2. I've been away from OM for a while, and now I am preparing some examples for teaching. For some reason this simple example won't playback staccato properly (Snippet > Audition and Notation). What am I missing here? The notation shows the staccato markings. (make-omn :length (gen-repeat 20 'q) :pitch (integer-to-pitch '(0 2 5 7 10)) :velocity '(mp) :attribute '(- - stacc) :span :length )
  3. Dear Friends, In a previous post (link below) there is a great description on how to configure old vsl gig versions. There is a place where you can configure the relation between the OMN articulation command with the correspondent keyswitch. QUESTIONS: 1) Let´s say I invent a new articulation in a custom sample library, for example "nail-scrape" for indicating the violin player to scrape the string with his/her nail. In this case, I need this OMN expression to: a) apear in the score notation and b) change the corresponding keyswitch. 2) In the case of the OMN expression "long", I configured it to change to the crescendo/diminuendo long samples in VSL, but this does not appear in the notation. This is great, because I don´t need it to be specified in the notation, since the long note values are enough, I just need the keyswitch. So there is the two scenarios: 1) CASE 1: OMN change keyswitch AND appear on the score 1) CASE 1: OMN change keyswitch AND DO NOT appear on the score The articulation expression syntax is a kind of yellow/brown word in the OMN code. Only articulation related words appear as an assignable articulation for this kind of use. FINALLY, THE GREAT QUESTION: How can I create my CUSTOM articulation OMN expression, like the "nail-scrape" example, so that this articulation can be customized also as appearing or not appearing in the score ? This can be really useful for expanded techniques in special scores with special sample libraries or even with scores based on customized samples, or new instruments. All the best ! Julio Herrlein :group omn stacc (:key c1 :key c1 cc1 40) stacs (:key c1 :key c1 cc1 25) ord (:key eb1 cc1 5) portato (:key cs1 cc1 5) sfz (:key e1 :key e1 cc1 25) cres (:key f1 :key f1 cc1 25) marc (:key e1 cc1 64) spicc (:key c1 cc1 120) leg (:key d1 :key d1 cc1 40) tasto (:key cs2 :key cs1 cc1 40) leg+tasto (:key cs2 :key cs1 cc1 40) tasto+leg (:key cs2 :key cs1 cc1 40)
  4. Hello, Simple question: 1) How to specify in the articulation list for no displaying any articulation in the note without using "ord" ? 2) Is there some reset to "normal" articulation (without symbols) ? Best, Julio
  5. i didn't find a OM-library-solution for this kind of thing, so i coded it... if you want to REPLACE the articulation of some specific pitches. perhaps all 'd4 sould be PONTE... you could use this. it was necessary to code it like that, because otherwise you get in trouble with the empty parameter-slots... should work fine greetings andré ;;; SUBFUNCTIONS (defun eliminate-nil (alist) (loop for i in alist when (not (null i)) collect i)) (defun complete-event-slots (omn-list) (let ((omn-art (omn :articulation (single-events (flatten omn-list))))) (single-events (omn-replace :articulation (flatten (eliminate-nil (loop for i in omn-art for cnt = 0 then (incf cnt) when (equal (car i) '-) collect (nth (1- cnt) omn-art) else collect i))) omn-list)))) ;(complete-event-slots '(5q a4 ff pizz 5q e3 -e 5q a4 f)) ;;; MAIN FUNCTION (defun replace-articulation-of-a-pitch (omn-list &key pitches articulation (chance 1.0)) (loop for i in (complete-event-slots (flatten omn-list)) when (and (member (car (omn :pitch i)) pitches) (prob? chance)) append (omn-component-replace i (list articulation)) else append i)) ;;; EXAMPLE (replace-articulation-of-a-pitch '(5q a4 ff pizz 5q e3 p -q 5q d4 pizz) :pitches '(a4 d4) :articulation 'ponte :chance 1.0) -> (5q a4 ff ponte 5q e3 p pizz -q 5q d4 p ponte)
  6. Sometimes we generate some flow of pitch and lengths that we assemble later into OMN material, It can be tiedous to add manually the articulations particularly the "leg" omn instruction, and it can sometimes be useful to have a technique for automated implementation of part of these task, who it will be always possible to edit more precisely thereafter. Below a possible technique based on the recognition and association of patterns of lengths values with articulation instructions. At first, we define a stream of lengths for our phrase: (setf len '(1/8 1/8 1/16 1/16 -1/16 1/8 1/8 1/8 1/8)) and we generate with the help of the function substitute-motif some articulations based on motivic lengths patterns. The substitute-motif will search for motives and will replace this motives by other (in that case, replace by motives of articulation instructions) If the function doesn't find some corresponding motives, it will use the :otherwise clause. (setf artic (substitute-motif '((1/8 1/8)(1/16)) '((leg -)(stacc)) len :otherwise '-)) ;=> (leg - stacc stacc - leg - leg -) We have to process this output now with the function gen-swallow for "swallow" the item corresponding to rest values. (setf artic.swallow (gen-swallow len artic)) => (leg - stacc stacc leg - leg -) Finally, we assemble all the parameters into an OMN stream with the make-omn function: (setf omn (make-omn :pitch '((c4 d4 e4 f4 g4)) :length len :velocity '((f)) :articulation artic.swallow)) Here's a complementary score example: ;;; Length defintion based on euclidean algorithm (setf basery (euclidean-rhythm (rnd-sample 16 '(16 18 24)) 4 16 '1/16 :type 2)) ;;; Apply the search and substitute process on each of the sublists ;;; with mapcar function (setf artic (mapcar (lambda(x) (substitute-motif '((1/16 1/16 1/16 1/16)(1/16 1/16 1/16)(1/16 1/16)(1/8 1/8) (1/4)(1/8) ) ;old '((leg leg leg -)(- - -)(leg -)(leg -) (stacc)(stacc) ) ;new x :otherwise '- )) basery)) ;;;Cleaning with gen-swallow (setf artic.swa (gen-swallow basery artic)) ;;; Pitch generation based on white noise (setf pch (vector-to-pitch '(g3 c5) (gen-white-noise 64))) ;;; Parameters assembly (setf p1.omn (make-omn :pitch pch :length basery :velocity '((f)) :articulation artic.swa )) ;;; Get the times signatures (setf ts (get-time-signature p1.omn)) ;;; Score definition (def-score solo ( :title "solo" :composer "S.Boussuge" :key-signature 'chromatic :time-signature ts :tempo 108 :layout (violin-layout 'violon) ) (violon :omn p1.omn :channel 1 :sound 'gm :program 'violin) ) SB.
  7. Hi, often when we generate articulation and particularly legato articulation with functions like LENGTH-MAP, the legato slur could finished on marc or stacc notes like that: a possible way for improve this could be to use a post processing of LENGTH-MAP outputs with a MOTIF-MAP function: Attached to this post, a work in progress, Flux for ensemble, as an example of a possible use "in context" of this technique. Have a good day. SB. Flux-Extrait.pdf flux1.mp3 Flux1-02.opmo
×
×
  • Create New...

Important Information

Terms of Use Privacy Policy