I apologize for asking something that is probably very basic but I am just a noob and currently I am a bit stuck…
What I want to do is to play piano-chords via supercollider and pianoteq but unfortunately I know nothing about about either supercollider or music theory (my plan is to learn the two together as I go along).
So far I have figured out how to use pianoteq as a plugin and to use it to play notes via a simple Pbind specifying midinotes.
I also have installed the MusicalNotation-quark but now I don’t know how to proceed as I lack some basic understanding.
What I can do with the quark is something like this:
Chord.at(\m7Flat5)
and that gives me
Chord([ 0, 3, 6, 10 ], "Minor 7 Flat 5")
So this seems to be the series of intervals that make up said chord.
So now I want to hear such a chord and I don’t know what to do as I don’t really understand the concepts.
Does it even make sense to play m7Flat5-chord as such? Or do I need to pick a starting note onto which I apply the intervals? If so how would I do that?
So in short: What do I need to do to make a such a chord audible?
Don’t know anything about Pianoteq, but to just get the notes try Chord.at(\m7Flat5).notes
( // This could be so much more elegant but works to run through all the chords (:
c=Chord.names;
fork{
while({c.size>0},
{ a=c.pop;
play{
Splay.ar(SinOsc.ar(220*Chord.at(a.postln).notes.midiratio)*Env.perc.ar(2,1))};
1.wait;
});
});
Edit: Forget everything i wrote, @jamshark70 got it right! (:
[0, 3, 6, 10] aren’t exactly the intervals (those would be 3, 3, 4). They’re the semitones in the chord: 3 = minor 3rd, 6 = diminished 5th, 10 = minor 7th.
To play them, transpose them chromatically to the desired root pitch. In semitones, transposition is +.
[0, 3, 6, 10] + 60
-> [ 60, 63, 66, 70 ]
… and these are MIDI notes that you can stick into your pattern. Patterns support math so you can also have Pseq( ... chord forms ... ) + Pseq( ... root notes ... ).
What I don’t recall offhand is whether the vst_midi event type expects chords as [note, note, note] or [[note, note, note]] but you could try them both and see which one works (or maybe they both do). I expect the first will be fine though, I’m probably overthinking a bit.