Jump to content

Search the Community

Showing results for tags 'tonality'.

More search options

  • Search By Tags

    Type tags separated by commas.
  • Search By Author

Content Type


  • Welcome to Opusmodus
    • Announcements
    • Pre-Sales Questions
  • Support Forum
    • Support & Troubleshooting
    • OMN Lingo
    • Function examples
    • Score & Methods
    • Notation & Layout
    • Live Coding Instrument
    • Library & Sound Sets
    • MIDI Setup
    • Programming (Common Lisp)
  • Sharing
    • Made in Opusmodus
    • Templates & Customisation
  • Feedback
    • Suggestions & Ideas


  • Stephane Boussuge's Blog
  • Deb76's Blog


  • Tutorial Guide
  • OMN The Language


There are no results to display.


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

Find results in...

Find results that contain...

Date Created

  • Start


Last Updated

  • Start


Filter by number of...


  • Start





Website URL







Found 5 results

  1. I'm thinking about the formal conditions of the diatonic transposition. It may seem trivial, but actually is much more difficult than it appears. I think that modelling tonality and diatonic stuff is far more difficult than the 12-tone operations. One of the things I think is that in diatonic transposition you need to inform more to the machine, a kind of axis point or map, because the transposition of each degree is going to be different. In the case of the diatonic set, the MyHill property assures that each diatonic distance will be in exactly 2 sizes. Seconds: major and minor; Thirds: major and minor; Fourths: perfect and augmented; Fifths: perfect and diminished and so on... The Morris pitch spaces are also part of the problem... Do you have any hint in relation to this intuitions to share ? Maybe the way that OM make this operations ? Best, Julio
  2. Stephane Boussuge

    New Tonality system: Few examples.

    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
  3. short question... is there a function in OM to map an interval-list directly on a TONALITY or a SIEVE? in a way that the intervals are like steps? ..i coded that alreday for myself, but perhaps there is an OM-solution for such things? nonsense-example: (setf intervallist '(1 1 0 -2)) (setf pitches '(c4 e4 g4 b4)) => :start 'c4 => result: '(c4 e4 g4 g4 c4) thanx andré
  4. Hello! Is there a way to do a simple conversion from integer (representing scale degree) to pitch (via a Tonality)? map-to-tonality assumes that the integer input is a chromatic pitch class. Thank you! Elliot
  5. L'utilisation des tonalités est basée sur quelques principes, le plus important étant que: si vous voulez appliquer plusieurs tonalités, il faut les appliquer à plusieurs listes sinon, Opusmodus vous renverra un signal d'erreur. Par exemple, pour appliquer '((major) (natural-minor)) il faut au moins 2 listes à traiter: (setf ex1 (tonality-map '((pentatonic)(natural-minor)) '((c4 d4 e4 f4 g4) (c4 d4 e4 f4 g4)))) vous pouvez également spécifier des paramètres de tonalité directement au niveau de la tonalité: (setf ex2 (tonality-map '((pentatonic :root f4) (natural-minor :root e5)) '((c4 d4 e4 f4 g4) (c4 d4 e4 f4 g4)))) vous pouvez utiliser à peu près n'importe quoi comme tonalité: (setf ex3 (tonality-map '((d4e4f4G4a4b4c5) (f4g4ab4c5d5e5)) '((c4 d4 e4 f4 g4) (c4 d4 e4 f4 g4)))) (setf ex4 (tonality-map '(((0 1 2 4 5 7 8)) ((0 2 3 6 7 11))) '((c4 d4 e4 f4 g4) (c4 d4 e4 f4 g4)))) (setf ex5 (tonality-map '(((f mb5)) ((d maj7))) '((c4 d4 e4 f4 g4) (c4 d4 e4 f4 g4)))) Maintenant tonalité et bibliothèques: J'utilise la fonction MCLIST (mapcar 'list) devant LIBRARY pour "parentheser" la sortie, car comme vous avez pu le constater dans mes exemples au dessus, TONALITY-MAP à besoin de tonalités entre parenthèses. (setf ex6 (tonality-map (mclist (library 'modes 'minor nil :random 3)) '((c4 d4 e4 f4 g4) (c4 d4 e4 f4 g4)))) Maintenant, nous allons utiliser TONALITY-SERIES qui sert à "préparer" des suites de tonalité et qui simplifie beaucoup le travail des parenthèses ;-) Préparation de la structure harmonique (setf ex7-path (tonality-series (library 'modes 'minor nil :random 3))) Application de la structure: (setf ex7-path (tonality-map ex7-path '((c4 d4 e4 f4 g4) (c4 d4 e4 f4 g4)))) Autre exemple: Préparation de la structure harmonique (setf ex8-path (tonality-series '(d4f4g4a4c5 e4gs4as4c5d5))) Application de la structure: (setf ex7-path (tonality-map ex8-path '((c4 d4 e4 f4 g4) (c4 d4 e4 f4 g4)))) Autre exemple: préparation de la structure harmonique (setf ex9-path (tonality-series '((c m) (f maj)))) Application de la structure: (setf ex9-path (tonality-map ex9-path '((c4 d4 e4 f4 g4) (c4 d4 e4 f4 g4)))) Autre exemple: Préparation de la structure harmonique (setf ex10-path (tonality-series '(pentatonic dorian) :root '(d4 g4) :closest 'down)) Application de la structure: (setf ex10-path (tonality-map ex10-path '((c4 d4 e4 f4 g4) (c4 d4 e4 f4 g4)))) Voila, ce ne sont que quelques exemples très basiques mais qui, je l'espère, pourrons vous éclairer un peu sur l'usage de tonality-.... dans Opusmodus. SB.