Jump to content

JulioHerrlein

Members
  • Posts

    806
  • Joined

  • Last visited

Everything posted by JulioHerrlein

  1. Dear All, Some help needed in wildcard uses in Opusmodus Functions and OMN expressions... ><><><><><><><><><><> The definition.... https://en.wikipedia.org/wiki/Wildcard_character In computer (software) technology, a wildcard is a symbol used to replace or represent one or more characters.[2] Algorithms for matching wildcards have been developed in a number of recursive and non-recursive varieties. In Unix-like and DOS operating systems, the question mark ? matches exactly one character. ><><><><><><><><><><><><>< I was in need of a wildcard to represent a pitch class in ANY register, like "cs?" meaning all C# pitch classes in any register/octave (cs0, cs1, cs2, cs3, cs4, cs5, cs6, cs7, etc). There are other interesting uses for this wildcards inside functions, to generalize and make recursions possible elegantly. Any Hints ? Best, Julio
  2. Aparently, this works (pattern-map '(((c5 d5 e5) (e4g4a4c5 f4gs4b4d5 e5c5a4g4))) '(c5 d5 e5 fs4) :otherwise 'c4f4bb4eb5) Is there some WILDCARD to mean all C pitch classes? If no, I will have to program it for all the octaves of the range of the melody. For example cs$ or cs? meaning all C# in ANY octave. Best, Julio
  3. Interesting, Stephane ! Any way of filtering actions based on specific pitch classes ? Best, Julio
  4. Dear Janusz, The chord generators in the system (as far as I know) are root based systems, i.e., they buid chords stacking notes over a root. When you work a saxophone soli section in a big band arrangement, you use a top to bottom approach, i.e., you start with the melody of a song or an origianl tune (think a Charlie Parker bebop head) and you build an harmonization under it. The melody becomes the top note of a 4-part harmonization. We use some rules to determine wich chord will be used in each case, depending on the melodic function. In the above example, the notes C, E, G and A will be always harmonized with the corresponding close position inversions of the C6 chord while the B, D, F and Ab will be always harmonized with the corresponding close position inversions of the Bdim7 chord. We need a function that will transform a melody to a 4-part harmonization, similar to chord-interval-add function. For example: (chord-interval-add '(-3 -3)(chord-interval-add '(-4 -3)(chord-interval-add '(-3 -3) '(c5 d5 e5 f5 g5 gs5 a5 b5)))) This will result in a 4-part harmonization, but this is not "note selective", it will apply the same interval series over the entire list of notes. I need a filter to apply diferent series of intervals over each different note. For example: Over all the C notes, I want the (-3 -2 -3) as interval add. Over all the D, F, A and Ab/G# notes, I want (-3 -3 -3) Over all the E notes, I want the (-4 -3 -2) as interval add. Over all the G notes, I want the (-3 -4 -3) as interval add. This is the Barry Harris Rule for harmonizing a bebop scale. So I need a chord-interval-add function with note selection (a kind of IF - DO filter): IF this is an C note (in any register) DO ADD this interval list (-3 -2 -3) from the melody, forming a 4-part C6 chord with melody on top. IF this is a B, D, F or G#/Ab note, ADD this interval list (-3 -3 -3) from the melody, forming a 4-part Bdim7 chord with melody on top. And prefearably, a chord-interval-add function with multiple choice of intervals, but I can workaround this, if not possible, working with variables setf, I think... Is it clear now ? BEst, Julio
  5. This would be great to make fast block harmonizations for arrangements.
  6. In other words: Given and OMN expression, how can I apply one operation (like transposition, for example) to just the C notes, or just the B notes (in any register)? Best Julio
  7. In the jazz world, Barry Harris came up with the idea of harmonizing a bebop scale. Combining a C6 (C, E, G, A) and a Bdim7 (B, D, F, Ab) chords, we have this scale: From this stantpoint we can alternate tonic and dominant sounds, like this: Every pair of chords have all the 8-note set. The notes C,E, G and A are always harmonized with a C6 chord. The notes D, F, Ab and B are always harmonized with a Bdim7 chord. So, from the point of view of sets, there is no problem. WHAT IS NEEDED: I want a way to start FROM the melody, and then make a four part block harmonization with this (or any other) harmonic system from the melody as an OMN expression. So, I need a way to filter the notes to aply the right chord: FOR EXAMPLE: For the notes C, E, G and A If the note is an C (in any register), I will apply a chord like , I will add the notes A, G and E, below the melody. If the note is an (in any register), I will apply a chord like , I will add the notes G, E and C, below the melody. And so on... For the notes D, F, Ab and B: If the note is an B (in any register), I will apply a chord like , I will add the notes Ab, F and D, below the melody. And so on: So, to make any procedure: I need first find a way to apply a specific procedure only over the notes I want, over all the C notes, all the B notes, etc. How to filter from an OMN expression ? All the best ! Julio
  8. Quoting André: But, despite this, we always want to have the output as close as possible to the final score. Best, Julio
  9. WOWWWWWWW !!!! This version is getting better every day !!! Best ! Julio
  10. Very interesting, André ! Two things: 1) How it works over chord lists, like '(c4e4g4) ? The chord is counted as one item in the span, or each note counts as one item ? 2) Would be interesting to have an argument for an "span-ignore-pauses" option, while doing the span, because the way you write the pause will chanbe the span function. Sometimes it can be good and sometimes not, depending on the desired effect. For example (-q -q) counts as 2 items, while (-h) counts as one item. Best, Julio
  11. Yes, this is exactly the way I see it. I was just thinking of chord symbols as another tool, because in my book I coded all the Forte numbers as chord symbols. As a jazz oriented musician chord symbols are very organic to me. I appreciate different viewpoints and and I think that music can originate from Any material, including popular music. In Brazil we have one of the most solid popular Expressions. All the best, Julio
  12. Anyway, Opusmodus is amazing and can do A LOT for the composition process ! Best, Julio
  13. Popular music is so important and fundamental. As jazz too... It could make Opusmodus more... popular ! Minimalistic music is related to it also. Best, Julio And chord symbols can be important in the compositional process, to track harmony changes. Actually, I use some advanced and crazy chord symbols that I invented to describe every kind of set (based on Forte list). Fr6 It's far more intuitive than 4-25, and it relates to the music history (french sixth chord...etc). Best, Julio Just my 2 cents...
  14. Can the font and font size be changed in the text attributes function ? Best, Julio Maybe a "general-text" function could be added. A goodreason for that is to use in a more gramatical-based music, like the music made using functional harmony. Best
  15. Would be Great to have a simple function to make chord symbols over staves...
  16. Yes, Janusz ! I have this EXACT result when I evaluate the expression. The problem is when I do some chord processing, like chord-closest-path, like this: (setf comping (gen-repeat '(2) (gen-divide 1 (flatten (omn :pitch (chord-closest-path '(b3c4e4g4) '((h (b3 maj7) (d3 7)) (h (g3 maj7) (bb3 7)) (h (eb3 maj7) (eb3 maj7)) (h (a3 m7) (d3 7)) (h (g3 maj7) (bb3 7)) (h (eb3 maj7) (gb3 7)) (h (b3 maj7) (b3 maj7)) (h (f3 m7) (bb3 7)) (h (eb3 maj7) (eb3 maj7)) (h (a3 m7) (d3 7)) (h (g3 maj7) (g3 maj7)) (h (cs3 m7) (fs3 7)) (h (b3 maj7) (b3 maj7)) (h (f3 m7) (bb3 7)) (h (eb maj7) (eb maj7)) (h (cs3 m7) (fs3 7))))))))) and the resulting score comes without the symbols, like this: Is there some way of building my own chord library ? Best, Julio
  17. When I did this post, I used the Giant Steps (Coltrane) progression as harmonic path, in this way: (setf harmpath '((h (b3 maj7) (d3 7)) (h (g3 maj7) (bb3 7)) (h (eb3 maj7) (eb3 maj7)) (h (a3 m7) (d3 7)) (h (g3 maj7) (bb3 7)) (h (eb3 maj7) (gb3 7)) (h (b3 maj7) (b3 maj7)) (h (f3 m7) (bb3 7)) (h (eb3 maj7) (eb3 maj7)) (h (a3 m7) (d3 7)) (h (g3 maj7) (g3 maj7)) (h (cs3 m7) (fs3 7)) (h (b3 maj7) (b3 maj7)) (h (f3 m7) (bb3 7)) (h (eb maj7) (eb maj7)) (h (cs3 m7) (fs3 7))) But in the resulting score, the chord symbols won't show. I have some questions: 1) How to make the chord symbols appear ? 2) How to make my own custom chord symbols ? 3) Can I make associations of chord symbols with specific sets of notes ? 4) Can I display chord symbols over a melody with a Hidden Piano Part playing them ? All the best ! Julio
  18. Great!! Always good to see your loop functions!
  19. An important correction: In order to produce the right voicings is it necessary to sort the notes before transposing, so the Command to make the voicings over the original chord progression is like this: VOICINGS (setf chordprogdrop (chordize-list (pitch-transpose-n droplist (sort-desc (pitch-melodize chordtrp-rpt)))))
  20. Thank you, SB ! Sometimes we need to comunicate with machines, instead of musicians. Best, Julio
×
×
  • Create New...

Important Information

Terms of Use Privacy Policy