mirror of
https://github.com/microtherion/VocalEasel.git
synced 2024-12-23 11:44:03 +00:00
330 lines
9.6 KiB
HTML
330 lines
9.6 KiB
HTML
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
|
|
|
|
<!--Converted with LaTeX2HTML 2008 (1.71)
|
|
original version by: Nikos Drakos, CBLU, University of Leeds
|
|
* revised and updated by: Marcus Hennecke, Ross Moore, Herb Swan
|
|
* with significant contributions from:
|
|
Jens Lippmann, Marek Rouchal, Martin Wilck and others -->
|
|
<HTML>
|
|
<HEAD>
|
|
<TITLE>Automatic Melodies: Aria Tracks</TITLE>
|
|
<META NAME="description" CONTENT="Automatic Melodies: Aria Tracks">
|
|
<META NAME="keywords" CONTENT="mma">
|
|
<META NAME="resource-type" CONTENT="document">
|
|
<META NAME="distribution" CONTENT="global">
|
|
|
|
<META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=utf-8">
|
|
<META NAME="Generator" CONTENT="LaTeX2HTML v2008">
|
|
<META HTTP-EQUIV="Content-Style-Type" CONTENT="text/css">
|
|
|
|
<LINK REL="STYLESHEET" HREF="mma.css">
|
|
|
|
<LINK REL="next" HREF="node13.html">
|
|
<LINK REL="previous" HREF="node11.html">
|
|
<LINK REL="up" HREF="mma.html">
|
|
<LINK REL="next" HREF="node13.html">
|
|
</HEAD>
|
|
|
|
<BODY bgcolor="#ffffff">
|
|
|
|
<DIV CLASS="navigation"><!--Navigation Panel-->
|
|
<A NAME="tex2html581"
|
|
HREF="node13.html">
|
|
<IMG WIDTH="37" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="next" SRC="next.png"></A>
|
|
<A NAME="tex2html579"
|
|
HREF="mma.html">
|
|
<IMG WIDTH="26" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="up" SRC="up.png"></A>
|
|
<A NAME="tex2html573"
|
|
HREF="node11.html">
|
|
<IMG WIDTH="63" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="previous" SRC="prev.png"></A>
|
|
<BR>
|
|
<B> Next:</B> <A NAME="tex2html582"
|
|
HREF="node13.html">Randomizing</A>
|
|
<B> Up:</B> <A NAME="tex2html580"
|
|
HREF="mma.html">Reference Manual</A>
|
|
<B> Previous:</B> <A NAME="tex2html574"
|
|
HREF="node11.html">Emulating plucked instruments: Plectrum</A>
|
|
<BR>
|
|
<BR></DIV>
|
|
<!--End of Navigation Panel-->
|
|
|
|
<H1><A NAME="SECTION001200000000000000000"></A>
|
|
<A NAME="chap-aria"></A>
|
|
<BR>
|
|
Automatic Melodies: Aria Tracks
|
|
</H1>
|
|
|
|
<P>
|
|
A<SMALL>RIA</SMALL> tracks are designed to let
|
|
<FONT Face="Serif" Color="Navy"><I>MMA</I></FONT> automatically generate
|
|
something resembling melody. Honest, this will never put real
|
|
composers on the unemployment line (well, no more than they are mostly
|
|
there already).
|
|
|
|
<P>
|
|
You might want to use an A<SMALL>RIA</SMALL> to embellish a section of a song
|
|
(like an introduction or an ending). Or you can have
|
|
<FONT Face="Serif" Color="Navy"><I>MMA</I></FONT> generate a
|
|
complete melody over the song chords.
|
|
|
|
<P>
|
|
In a traditional song the melody depends on two parts: patterns
|
|
(IE. note lengths, volume, articulation) and pitch (usually determined
|
|
by the chords in a song). If you have been using
|
|
<FONT Face="Serif" Color="Navy"><I>MMA</I></FONT> at all you will
|
|
know that that chords are the building block of what
|
|
<FONT Face="Serif" Color="Navy"><I>MMA</I></FONT> does
|
|
already. So, to generate a melody we just need some kind of
|
|
pattern. And, since
|
|
<FONT Face="Serif" Color="Navy"><I>MMA</I></FONT> already uses patterns in most things it
|
|
does, it is a short step to use a specialized pattern to generate a
|
|
melody.
|
|
|
|
<P>
|
|
It might serve to look at the sample song files enclosed in this
|
|
package in the directory <TT><SPAN CLASS="textbf">egs/aria</SPAN></TT>. Compile and play them. Not
|
|
too bad?
|
|
|
|
<P>
|
|
Just like other track, you can create as many A<SMALL>RIA</SMALL>s as you
|
|
want. So, you can have the tracks A<SMALL>RIA-1</SMALL>, A<SMALL>RIA</SMALL>, and
|
|
A<SMALL>RIA-SILLY</SMALL> all at the same time. And, the majority of other
|
|
commands (like O<SMALL>CTAVE</SMALL>, A<SMALL>RTICULATE</SMALL>, H<SMALL>ARMONY</SMALL>, etc.)
|
|
apply to A<SMALL>RIA</SMALL>s.
|
|
|
|
<P>
|
|
The following commands are important to note:
|
|
|
|
<P>
|
|
<DL>
|
|
<DT><STRONG>Range</STRONG></DT>
|
|
<DD>Just like scale tracks. A R<SMALL>ANGE</SMALL> of 2.5 would let
|
|
|
|
<FONT Face="Serif" Color="Navy"><I>MMA</I></FONT> work on a two and one-half octave chord, etc.
|
|
|
|
<P>
|
|
</DD>
|
|
<DT><STRONG>ScaleType</STRONG></DT>
|
|
<DD>Much like a scale track. By default, the setting for
|
|
this is CHORD. But, you can use AUTO, SCALE, CHORD or
|
|
CHROMATIC. AUTO and SCALE are identical and force
|
|
<FONT Face="Serif" Color="Navy"><I>MMA</I></FONT> to select
|
|
notes from the scale associated with the current chord; CHROMATIC
|
|
generates an 11 tone scale starting at the root note of the chord;
|
|
CHORD forces the selection to the notes in the current chord.
|
|
|
|
<P>
|
|
</DD>
|
|
<DT><STRONG>Direction</STRONG></DT>
|
|
<DD>As
|
|
<FONT Face="Serif" Color="Navy"><I>MMA</I></FONT> processes the song it moves a note-selection
|
|
pointer up or down. By default D<SMALL>IRECTION</SMALL> is set to the single
|
|
value "1" which tells
|
|
<FONT Face="Serif" Color="Navy"><I>MMA</I></FONT> to add 1 after each note is
|
|
generated. However, you can set the value to an integer -4 to 4 or
|
|
the special value "r*". The “r” setting creates a random
|
|
direction. You can have 1 to 4 “r”s:
|
|
|
|
<P>
|
|
<BLOCKQUOTE>
|
|
<TABLE CELLPADDING=3 BORDER="1">
|
|
<TR><TD ALIGN="LEFT"># of 'r's</TD>
|
|
<TD ALIGN="LEFT">Direction Adjust</TD>
|
|
</TR>
|
|
<TR><TD ALIGN="LEFT">r</TD>
|
|
<TD ALIGN="LEFT">-1 to 1</TD>
|
|
</TR>
|
|
<TR><TD ALIGN="LEFT">rr</TD>
|
|
<TD ALIGN="LEFT">-2 to 2</TD>
|
|
</TR>
|
|
<TR><TD ALIGN="LEFT">rrr</TD>
|
|
<TD ALIGN="LEFT">-3 to 3</TD>
|
|
</TR>
|
|
<TR><TD ALIGN="LEFT">rrrr</TD>
|
|
<TD ALIGN="LEFT">-4 to 4</TD>
|
|
</TR>
|
|
</TABLE>
|
|
</BLOCKQUOTE>
|
|
|
|
<P>
|
|
With "r" a random value -1, 0 or 1 will be used.
|
|
|
|
<P>
|
|
<SPAN CLASS="textit">Important: in an A<SMALL>RIA</SMALL> track the sequence size/point is
|
|
ignored for D<SMALL>IRECTION</SMALL>.</SPAN>
|
|
|
|
<P>
|
|
</DD>
|
|
</DL>
|
|
|
|
<P>
|
|
A bit more detail on defining an A<SMALL>RIA</SMALL>:
|
|
|
|
<P>
|
|
First, here is a simplified sample track definition:
|
|
|
|
<P>
|
|
|
|
<Table Hspace="40%" CellSpacing=0 CellPadding=10 BGColor="OldLace" Border=3>
|
|
<tr><td>
|
|
<B>Begin Aria
|
|
<BR>
|
|
Voice JazzGuitar
|
|
<BR>
|
|
Volume f
|
|
<BR>
|
|
Sequence 1.5 8 90; 2 8 90; 2.5 8 90;
|
|
<BR>
|
|
3 8 90; 3.5 8 90; 4 8 90; 4.5 8 90
|
|
<BR>
|
|
ScaleType Scale Range 1
|
|
Direction 0 0 1 2 -4 0 1 r
|
|
<BR>
|
|
End </B>
|
|
|
|
</td></tr>
|
|
</Table>
|
|
|
|
<P>
|
|
Next assume that we have a few bars of music with only a CMajor chord.
|
|
The following table shows the notes which would be generated for each
|
|
event in the set S<SMALL>EQUENCE</SMALL>:
|
|
|
|
<P>
|
|
<BLOCKQUOTE>
|
|
<TABLE CELLPADDING=3 BORDER="1">
|
|
<TR><TD ALIGN="LEFT">Event</TD>
|
|
<TD ALIGN="LEFT">Direction</TD>
|
|
<TD ALIGN="LEFT">Offset Pointer</TD>
|
|
<TD ALIGN="LEFT">Note</TD>
|
|
</TR>
|
|
<TR><TD ALIGN="LEFT">1</TD>
|
|
<TD ALIGN="LEFT">0</TD>
|
|
<TD ALIGN="LEFT">0</TD>
|
|
<TD ALIGN="LEFT">c</TD>
|
|
</TR>
|
|
<TR><TD ALIGN="LEFT">2</TD>
|
|
<TD ALIGN="LEFT">0</TD>
|
|
<TD ALIGN="LEFT">0</TD>
|
|
<TD ALIGN="LEFT">c</TD>
|
|
</TR>
|
|
<TR><TD ALIGN="LEFT">3</TD>
|
|
<TD ALIGN="LEFT">1</TD>
|
|
<TD ALIGN="LEFT">1</TD>
|
|
<TD ALIGN="LEFT">d</TD>
|
|
</TR>
|
|
<TR><TD ALIGN="LEFT">4</TD>
|
|
<TD ALIGN="LEFT">2</TD>
|
|
<TD ALIGN="LEFT">3</TD>
|
|
<TD ALIGN="LEFT">f</TD>
|
|
</TR>
|
|
<TR><TD ALIGN="LEFT">5</TD>
|
|
<TD ALIGN="LEFT">-4</TD>
|
|
<TD ALIGN="LEFT">6</TD>
|
|
<TD ALIGN="LEFT">b</TD>
|
|
</TR>
|
|
<TR><TD ALIGN="LEFT">6</TD>
|
|
<TD ALIGN="LEFT">0</TD>
|
|
<TD ALIGN="LEFT">6</TD>
|
|
<TD ALIGN="LEFT">b</TD>
|
|
</TR>
|
|
<TR><TD ALIGN="LEFT">7</TD>
|
|
<TD ALIGN="LEFT">1</TD>
|
|
<TD ALIGN="LEFT">0</TD>
|
|
<TD ALIGN="LEFT">c</TD>
|
|
</TR>
|
|
<TR><TD ALIGN="LEFT">8</TD>
|
|
<TD ALIGN="LEFT">r</TD>
|
|
<TD ALIGN="LEFT">??</TD>
|
|
<TD ALIGN="LEFT">??</TD>
|
|
</TR>
|
|
</TABLE>
|
|
</BLOCKQUOTE>
|
|
|
|
<P>
|
|
If you were to change the S<SMALL>CALE</SMALL>T<SMALL>YPE</SMALL> or R<SMALL>ANGE</SMALL> you would
|
|
get a completely different series. Really, tables like this one are
|
|
very difficult to determine and quite useless. Just try different
|
|
D<SMALL>IRECTION</SMALL> and R<SMALL>ANGE</SMALL> settings, S<SMALL>CALETYPE</SMALL>s,
|
|
etc. Most combinations will sound fine, but Chromatic scales might not
|
|
be to your liking.
|
|
|
|
<P>
|
|
Please note the following:
|
|
|
|
<P>
|
|
|
|
<UL>
|
|
<LI>A<SMALL>RIA</SMALL>s are <SPAN CLASS="textit">not</SPAN> saved or modified by G<SMALL>ROOVE</SMALL>
|
|
commands. Well, almost ... the sequence size will be adjusted to
|
|
match the new size from the groove. This might be unexpected:
|
|
|
|
<P>
|
|
|
|
<UL>
|
|
<LI>Load a groove. Let's say it has a S<SMALL>EQSIZE</SMALL> of 4.
|
|
</LI>
|
|
<LI>Create an A<SMALL>RIA</SMALL>. Use 4 patterns to match the groove size
|
|
(if you don't
|
|
<FONT Face="Serif" Color="Navy"><I>MMA</I></FONT> will expand the sequence size for the
|
|
A<SMALL>RIA</SMALL>, just like other tracks).
|
|
</LI>
|
|
<LI>Process a few bars of music.
|
|
</LI>
|
|
<LI>Load a new groove, but this time with a S<SMALL>EQSIZE</SMALL> of
|
|
2. Now, the A<SMALL>RIA</SMALL> will be truncated. This behavior is
|
|
duplicated in other tracks as well, but it might be unexpected
|
|
here.
|
|
|
|
</LI>
|
|
</UL>
|
|
|
|
<P>
|
|
</LI>
|
|
<LI>D<SMALL>IRECTION</SMALL> can not be changed on a bar per bar basis. It
|
|
applies to the entire sequence. After each note in the A<SMALL>RIA</SMALL>
|
|
is generated a pointer advances to the next direction in the list.
|
|
|
|
<P>
|
|
</LI>
|
|
</UL>
|
|
|
|
<P>
|
|
You can make dramatic changes to your songs with a few simple
|
|
tricks. Try modifying the D<SMALL>IRECTION</SMALL> settings just slightly; use
|
|
several patterns and S<SMALL>EQ</SMALL>R<SMALL>ND</SMALL> to generate less predictable
|
|
patterns; use H<SMALL>ARMONY</SMALL>O<SMALL>NLY</SMALL> with a different voice and pattern.
|
|
|
|
<P>
|
|
Oh, and have fun!
|
|
|
|
<P>
|
|
|
|
<P>
|
|
|
|
<DIV CLASS="navigation"><HR>
|
|
<!--Navigation Panel-->
|
|
<A NAME="tex2html581"
|
|
HREF="node13.html">
|
|
<IMG WIDTH="37" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="next" SRC="next.png"></A>
|
|
<A NAME="tex2html579"
|
|
HREF="mma.html">
|
|
<IMG WIDTH="26" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="up" SRC="up.png"></A>
|
|
<A NAME="tex2html573"
|
|
HREF="node11.html">
|
|
<IMG WIDTH="63" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="previous" SRC="prev.png"></A>
|
|
<BR>
|
|
<B> Next:</B> <A NAME="tex2html582"
|
|
HREF="node13.html">Randomizing</A>
|
|
<B> Up:</B> <A NAME="tex2html580"
|
|
HREF="mma.html">Reference Manual</A>
|
|
<B> Previous:</B> <A NAME="tex2html574"
|
|
HREF="node11.html">Emulating plucked instruments: Plectrum</A></DIV>
|
|
<!--End of Navigation Panel-->
|
|
<ADDRESS>
|
|
bob
|
|
2010-11-07
|
|
</ADDRESS>
|
|
</BODY>
|
|
</HTML>
|