mirror of
https://github.com/microtherion/VocalEasel.git
synced 2024-12-23 11:44:03 +00:00
285 lines
8.4 KiB
HTML
285 lines
8.4 KiB
HTML
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2 Final//EN">
|
|
|
|
<!--Converted with LaTeX2HTML 2002-2-1 (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 NAME="Generator" CONTENT="LaTeX2HTML v2002-2-1">
|
|
<META HTTP-EQUIV="Content-Style-Type" CONTENT="text/css">
|
|
|
|
<LINK REL="STYLESHEET" HREF="mma.css">
|
|
|
|
<LINK REL="next" HREF="node12.html">
|
|
<LINK REL="previous" HREF="node10.html">
|
|
<LINK REL="up" HREF="mma.html">
|
|
<LINK REL="next" HREF="node12.html">
|
|
</HEAD>
|
|
|
|
<BODY bgcolor="#ffffff">
|
|
<!--Navigation Panel-->
|
|
<A NAME="tex2html481"
|
|
HREF="node12.html">
|
|
<IMG WIDTH="37" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="next" SRC="next.png"></A>
|
|
<A NAME="tex2html479"
|
|
HREF="mma.html">
|
|
<IMG WIDTH="26" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="up" SRC="up.png"></A>
|
|
<A NAME="tex2html473"
|
|
HREF="node10.html">
|
|
<IMG WIDTH="63" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="previous" SRC="prev.png"></A>
|
|
<BR>
|
|
<B> Next:</B> <A NAME="tex2html482"
|
|
HREF="node12.html">Chord Voicing</A>
|
|
<B> Up:</B> <A NAME="tex2html480"
|
|
HREF="mma.html">Reference Manual</A>
|
|
<B> Previous:</B> <A NAME="tex2html474"
|
|
HREF="node10.html">Solo and Melody Tracks</A>
|
|
<BR>
|
|
<BR>
|
|
<!--End of Navigation Panel-->
|
|
|
|
<H1><A NAME="SECTION001100000000000000000"></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><B>egs/aria</B></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>, 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 would let
|
|
<FONT Face="Serif" Color="Navy"><I>MMA</I></FONT> work on a 2
|
|
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 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.
|
|
|
|
<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". With "r" a
|
|
random value -1, 0 or 1 will be used. Important: in an A<SMALL>RIA</SMALL>
|
|
track the sequence size/point is ignored for D<SMALL>IRECTION</SMALL>.
|
|
|
|
<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>
|
|
Direction r 0 0 1 -1 0 0 1 r
|
|
</B>
|
|
|
|
</td></tr>
|
|
</Table>
|
|
|
|
<P>
|
|
Next assume that we have a few bars of music with only a CMajor
|
|
chord the default R<SMALL>ANGE</SMALL> of ``1'' and the default S<SMALL>CALE</SMALL>T<SMALL>YPE</SMALL>
|
|
of ``Scale'. The following table shows the notes which would be generated
|
|
for each time event:
|
|
|
|
<P>
|
|
<BLOCKQUOTE>
|
|
<TABLE CELLPADDING=3 BORDER="1">
|
|
<TR><TD ALIGN="LEFT">Event</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">c</TD>
|
|
</TR>
|
|
<TR><TD ALIGN="LEFT">2</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">e</TD>
|
|
</TR>
|
|
<TR><TD ALIGN="LEFT">4</TD>
|
|
<TD ALIGN="LEFT">3 .. 0</TD>
|
|
<TD ALIGN="LEFT">c</TD>
|
|
</TR>
|
|
<TR><TD ALIGN="LEFT">5</TD>
|
|
<TD ALIGN="LEFT">4 .. 0</TD>
|
|
<TD ALIGN="LEFT">c</TD>
|
|
</TR>
|
|
<TR><TD ALIGN="LEFT">6</TD>
|
|
<TD ALIGN="LEFT">-2 .. 2</TD>
|
|
<TD ALIGN="LEFT">g</TD>
|
|
</TR>
|
|
<TR><TD ALIGN="LEFT">7</TD>
|
|
<TD ALIGN="LEFT">random</TD>
|
|
<TD ALIGN="LEFT">c, e or g</TD>
|
|
</TR>
|
|
<TR><TD ALIGN="LEFT">8</TD>
|
|
<TD ALIGN="LEFT">random</TD>
|
|
<TD ALIGN="LEFT">c, e, or g</TD>
|
|
</TR>
|
|
<TR><TD ALIGN="LEFT">9</TD>
|
|
<TD ALIGN="LEFT">....</TD>
|
|
<TD ALIGN="LEFT">etc.</TD>
|
|
</TR>
|
|
</TABLE>
|
|
</BLOCKQUOTE>
|
|
|
|
<P>
|
|
In the above table the ``..'' notation indicates that the offset is
|
|
out-of-range and converted to the second value.
|
|
|
|
<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.
|
|
|
|
<P>
|
|
Please note the following:
|
|
|
|
<P>
|
|
|
|
<UL>
|
|
<LI>A<SMALL>RIA</SMALL>s are <I>not</I> 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 behaviour 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.
|
|
|
|
<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 predicable
|
|
patterns; use H<SMALL>ARMONLY</SMALL>O<SMALL>NLY</SMALL> with a different voice and pattern.
|
|
|
|
<P>
|
|
Oh, and have fun!
|
|
|
|
<P>
|
|
<HR>
|
|
<!--Navigation Panel-->
|
|
<A NAME="tex2html481"
|
|
HREF="node12.html">
|
|
<IMG WIDTH="37" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="next" SRC="next.png"></A>
|
|
<A NAME="tex2html479"
|
|
HREF="mma.html">
|
|
<IMG WIDTH="26" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="up" SRC="up.png"></A>
|
|
<A NAME="tex2html473"
|
|
HREF="node10.html">
|
|
<IMG WIDTH="63" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="previous" SRC="prev.png"></A>
|
|
<BR>
|
|
<B> Next:</B> <A NAME="tex2html482"
|
|
HREF="node12.html">Chord Voicing</A>
|
|
<B> Up:</B> <A NAME="tex2html480"
|
|
HREF="mma.html">Reference Manual</A>
|
|
<B> Previous:</B> <A NAME="tex2html474"
|
|
HREF="node10.html">Solo and Melody Tracks</A>
|
|
<!--End of Navigation Panel-->
|
|
<ADDRESS>
|
|
bob
|
|
2007-03-07
|
|
</ADDRESS>
|
|
</BODY>
|
|
</HTML>
|