Posted
How about dynamic instrument "groups" that function like other instruments?
This could be loosely compared to the concept of "buses" in audio, with dynamic routing throughout the arrangement.
I am not talking about hierarchy here, where an instrument is only a member of one group (or lineage of groups); I am talking about full-blown "many-to-many" relationships, that can either remain static from beginning to end, or change many times throughout.
Here are a few details of what I have in mind:
* An instrument can be in any number of groups. A group can contain any number of instruments.
* At any given time in the arrangement, an instrument can join or leave a group.
* Groups can be assigned priority in relation to other groups, in case there is a conflict.
* While in a group, an instrument has a particular relationship with that group:
- Active: influences the harmony of the rest of the group
- Passive: follows the figures in the group, or harmonizes with other active members of the group
- Independent: does what it does, without influencing the rest of the group
- Follow: directly follows another voice in the group, according to some specified transposition/time offset rule.
- Pause: is quiet!
Say you wanted to make a "String Ensemble" group. You might add "Violin 1" and "Cello" as Active members of the group by default, and "Violin 2" and "Viola" as passive members to fill in the inner voices as dictated.
In the same arrangement, you can create a "Basses" group. You would add the "Cello" instrument to this group as an Active member, and "Double Bass" as a Follow member, set to a transpose of -12 (to function as the sub-bass).
The Cello would be a member of both groups at the same time!
Suppose you wanted to go another step further, and have two cellos in your arrangement: most of the time playing in unison, both in some parts of the arrangement, you'd like to add some extra drama by having the cellos play an octave apart.
In this case, you'd start with two individual instruments, "Cello 1" and "Cello 2" and create a "Cellos" group. Add Cello 1's membership as "Active" and Cello 2's membership as "Follow +0" or "Pause". When you want your dramatic doubled cello phrase to begin, you'd change the group membership state at the time in the arrangement to "Follow +12", or whatever. When the phrase is finished, memberships in the group could be withdrawn or changed.
If groups can contain groups as members, this "Cellos" group could also have membership in the "String Ensemble" group. This would allow a lot of flexibility, but potentially a lot of complexity as well.
Groups could work just like instruments. Figures could be added to the group and parameters could be set the affect the entire group. Similarly, individual instruments could have their own figures at the same time, overriding or influencing the phrase in the groups, in a way that depends on the instrument's relationship to the group at that point.
Say there is one particular section of the arrangement, where a guitar and flute are playing in unison, but only in this section. You could instruct both the guitar and flute to join this group (call it "Ad Hoc Group 1") when the section starts, exit the group when it is done, and then edit the figures and phrases on Ad Hoc Group 1 directly.
Optionally, a instrument can have a voice relationship with a group (soprano/alto/tenor/bass/sub-bass/etc.). This way one can just place a number of polyphonic figures into the group's phrase, and Synfire can assign the individual notes to its members depending on what type of voice it is.
Another useful application of groups would be for a drum kit. It would offer a lot of flexibility to be allowed to tweak individual drums at different parts of an arrangement, while also being able to tweak and apply parameters to the entire drumkit.
I think that dynamic instrument groups would double Synfire's power! :-)
Of course it would certainly steepen the learning curve, but this is perfectly fine in my opinion!
Tue, 2010-08-10 - 23:20 Permalink
I absolutely agree the idea has a lot of interesting aspects. Thanks scrapdog for sharing your thoughts with us.
Since the very first version of Synfire, I was always thinking about how to increase the productivity for sketching out more complex orchestration. Grouping instruments and distributing phrases across multiple instruments in a group is a very standard technique. No doubt, in the long term Synfire should offer a concept for this, which is easy to handle and versatile at the same time.
My concern with overly automated conducting however is that the resulting music will quickly sound all the same. Human listeners are very capable of recognizing this as an element of style. It would be a shame if all Synfire users would be forced into the same style, only because they are using the same tool.
That said, concepts like followers and voice distribution over multiple instruments must be modeled after real composition techniques rather than fancy math and algorithms.
I'll keep thinking about this.