-
-
Notifications
You must be signed in to change notification settings - Fork 0
1.3.1. The Atonal Line Generator
This is a legacy generator dedicated to synthesizing freely atonal lines.
The module mixes stochastic procedures with balancing algorithms in order to make melodic and rhythmic decisions that yield melodic itineraries, which are stylistically valid in the atonal realm. Results' musicality heavily relies on the provided configuration — and a solid background in music theory can only help here — but so does a firm understanding of the way the generator works.
The Atonal Line Generator approaches pitch and duration separately: while duration is handled mostly stochastically, pitch is treated, for the most part, deterministically.
Note: as of MAIDENS 1.5, the Atonal Line generator is considered legacy implementation, having been superseded by the more recent Multiline Generator, which uses a reengineered musical generation engine that is significantly more flexible, robust and effective. Atonal Line is scheduled to be decommissioned in MAIDENS 1.6.
The generator segregates the intervalic constituents of the melody in two semantically distinct classes:
- step motion intervals: they include primes and seconds and convey a sense of introspection and cohesion;
- skip motion intervals: they include all the rest and are seemingly loquacious, expansive and unstable.
Also, by looking at the way intervals progress in the melody, one can distinguish:
- ascending motion: seen as optimistic, daring, but also dramatic;
- descending motion: an icon of fall, humility, but also recovery.
The balancing algorithms previously noted attempt to deliver an even distribution of the above, by analyzing a portion of the already generated music and acting accordingly.
A significant share of the processes employed by Atonal Line are non-deterministic. As a direct consequence, there will be situations where musical output does not seem to reflect the current configuration (if not defy it, altogether). You must consider the results statistically, and only amend the configuration when several melodies generated by the same set of parameters fail to meet your expectations.
Atonal Line uses 10 configuration parameters, which are described below.
The generator operates on a predefined selection of (simple) melodic profiles. Namely, you can choose one of four possible essential melodic profiles: peak, valley, ascent or descent. To reach any of these, you combine this parameter with the Climax point
parameter. Effectively, by switching this parameter on or off, you control whether the direction of the first melodic profile segment is ascending or descending. For instance, with this parameter set to on (checkbox ticked), you lock onto a peak or ascent melodic profile, excluding the other two.
This parameter puts a weight (or likeliness) for subsequent melodic segments to replicate the direction of the first one. This usually tends to bend the melody up or down. The higher the value, the more apparent the bent, and on occasion this can change the overall melodic profile, to the point that it contradicts the joint effect of the Initial direction is up
and Climax point
parameters.
This is the third parameter that controls the overall melodic profile. The percent value resolves to a point in time relative to the full length of the melody to generate. The melodic segments following this point in time reverse their natural tendency of going up or down. In other words, the climax point is responsible for the exact position of the ridge of a peak profile, or the pit of a valley profile. If set to extreme values (0% means start, 100% means end), the Climax point
will turn, e.g., a peak into an ascent, or a valley into a descent.
This is self-explanatory. Set this parameter to on (checkbox ticked), so that your generated melody contains rests; set it to off to obtain a continuously playing line. Usually you want to leave this checked, as rests provide a sense of phrasing to your melody, which adds to its musical comprehensibility.
This parameter is only meaningful if Use rests
is also turned on. It accepts a percentage value that establishes about how many rests will there be. To its lowest value of 10%, the music generated will sound very "punctualistic", much like Webern and Nono's. To its highest value (90%), a dense, breathless and somewhat lyrical music may be produced (like in Schöneberg's early works, for instance).
Atonal Line provides a fixed, narrow selection of musical durations to use in generated melodies. You have wholes (1/1), halves (1/2), quarters (1/4), eighths (1/8) and sixteenths (1/16).
This parameter lets you define which of the available durations should be used, and about how often. You use the picker to select combinations of durations and odds. The odds picked for each duration get summed up and converted into percentages. The percentages are fed into a non-deterministic process — therefore, your input is taken as a hint rather than a firm instruction.
AS an example, suppose we pick these values:
1/2 +50
1/2 -10
1/16 +10
They get summed up internally as 1/2 40
and 1/16 10
, and interpreted by the program as "use preferably 80% halves and 20% sixteenths". The generated melody will, most likely, use about four times more halves than sixteenths.
This parameter specifies what melodic intervals to be used in the step motion passages, and about how often. You handle this value very much like you handle the Durations
.
For example, suppose we pick these values:
2M +50
2m +10
2m -1
1p +1
They get summed up internally as 2M 50
, 2m 9
and 1p 1
, and interpreted by the program as "use preferably 83% major seconds, 15% minor seconds and 2% perfect primes". The generated melody will, most likely, contain about five times more major seconds than minor seconds, and only scarcely perfect primes.
This parameter behaves identically to Step Motion Intervals
, the only difference being that it addresses the melodic intervals to be used in skip motion passages.
As previously mentioned, Atonal Line uses a mix of deterministic and stochastic processes to produce melodic lines.
Constructing the melody is based on a feed-back loop: the notes already added are observed and evaluated, and based on that, a decision is made on what to add next. Evaluating all existing notes is impractical from a performance perspective. Instead, the algorithm only looks at some of the most recently added notes, and Analysis window
establishes exactly how many of them.
For example, setting Analysis window
to 5
means that only five of the most recent notes in the melody are evaluated.
The practical implication is that the higher the Analysis window
value, the more qualitative an educated guess will be made on what to add next, and the more thought-out the resulting music might sound. This will also consume more processing power and generation will take longer. Conversely, the smaller the Analysis window
, the more chaotic the resulting music will be (the process will be faster, though).
A value of 5
tends to provide a good balance both in terms of musicality and computer resources. Extremely high and low extremes tend to give dull or pointless melodies, respectively.
This parameter is related to Analysis Window
.
As described, for each new note to be added to the melody, educated decisions are to be made. If Analysis window
determines the quality of these decisions, Max adjustment
controls their weight, or importance in the decision-making process.
For example, let's suppose that the algorithm found out that — at some point in the melody — the most tuneful thing to do would be adding an up major third. If Max adjustment
was set to 80%
, then there are 80 out of 100 chances for his to happen. That is, there are four time more chances for an up major third to be added than any other permitted interval.
High values are likely to produce eloquent melodies that work for solos or descants. Low values tend to yield aimless lines that might work for inner voices or as part of non-thematic surfaces.
You use Atonal Line to synthesize freely atonal melodies. Statistically, generated lines are good enough to serve as a starting point for inner/secondary voices, or as raw material for solos (you will need to combine/adapt multiple takes).
- MAIDENS — Machine Aided New Sounds
- The Project Hierarchy
- Project Node
- Generators Node
- Generator Node
- Score Node
- Section Node
- Part Node
- Measure Node
- Voice Node
- Cluster Node
- Note Node
- Introducing Generators
- Getting to Know the User Interface
- Score UI
- Editor UI
- Project UI
- Menu UI
- Toolbar UI
- Notifications UI
- Picker UI
- Navigator UI
- Configuration UI Legacy
- Configuration UI (New)
- Presets Manager
- How to Edit the Score
- Add a Note, Rest or Chord
- Edit or Remove Notes, Rests or Chords
- Add, Edit or Remove Measures
- Add, Edit, or Remove Instruments
- Use Second Voice
- Use Tuplets
- Use Sections
- Use Copy/cut/paste
- Use Undo/Redo
- Use the Macros
- How to Generate Music
- Limitations in 1.5.5
- Prospects