(cc) 2005 David Asorey Álvarez
Este documento puede difundirse libremente bajo los términos de la licencia Creative Commons.
MMA son las siglas de un programa llamado "Musical MIDI Accompaniment". Como su nombre indica, este programa sirve para generar ficheros MIDI con acompañamiento musical. Es una alternativa al programa comercial "Band in a Box", de la compañia PG Music.
La filosofía de funcionamiento es parecida a la de otros programas como Lilypond (hay un tutorial en español disponible en la dirección http://www.contrabajo.org/laclavedefa/tutorial-lilypond/index.html). Se escriben una serie de instrucciones en un fichero de texto y después se invoca un programa (MMA en este caso) que nos devuelve un fichero con el resultado del proceso (en el caso de MMA, se nos devuelve un archivo MIDI que podemos escuchar con nuestro reproductor MIDI favorito).
Este enfoque, aunque pueda parecer arcaico, es muy flexible y tiene bastantes ventajas frente a los programas basados en el uso del ratón e interfaz gráfica:
Por otra parte, el programa MMA es libre: además de poder utilizarlo sin ningún coste, podemos ver (si tenemos conocimientos de programación) cómo está hecho y podemos mejorarlo (si nos atrevemos ;-)
MMA es un programa escrito por Bob van der Poel, y la página web del programa es http://www.mellowood.ca/mma/
No vamos a insistir en las ventajas de este programa sobre otros, en particular, el programa Band in a Box. A nuestro parecer, son muchas:
Lo primero que hay que hacer es descargarse el programa desde su página web. En el momento de escribir este tutorial, la última versión es la 0.19. El fichero a descargar es algo como "mma-bin-0.19.tar.gz", aunque el número de versión puede cambiar. Es muy recomendable descargarse también la documentación y los ejemplos.
MMA requiere tener un intérprete de Python instalado, versión 2.4
como mínimo. Si utilizas Linux o *BSD, probablemente ya lo
tendrás instalado. Hay que ejecutar el fichero
"install" con permisos de root (superusuario). Los
usuarios de Windows o Mac OS X pueden descargar Python desde la
página de Python (http://www.python.org/download/).
Para facilitar la instalación, el autor de este tutorial
ha preparado un instalador para sistemas Windows llamado WinMMA,
disponible en la página http://winmma.sourceforge.net.
Este instalador instala MMA, el intérprete de Python, un
editor de textos configurado para trabajar con ficheros
.mma, documentación y ejemplos.
Si la versión instalada de Python es inferior a la 2.4,
MMA no funcionará. Por ejemplo, en Debian Sarge la
versión por defecto de Python es la 2.3. Hay que instalar
python2.4 con el comando apt-get install
python2.4
Para los usuarios de Windows, hay información específica acerca del proceso de instalación en la página http://www.mellowood.ca/mma/win/WindowsHowto.html
Los usuarios de Mac OS X tienen las correpondientes instrucciones en http://www.mellowood.ca/mma/mac/machowto.html
Si nos hemos descargado la documentación, hay un tutorial en inglés muy sencillo que es perfecto para empezar a utilizar MMA. Comenzaremos con un ejemplo sencillo: un blues de doce compases.
Tenemos que crear un fichero de texto con la extensión
.mma, éste es el contenido del fichero:
// Blues en F // Ejemplo sencillo de un blues // Ajustamos el tempo Tempo 150 // Ajustamos el estilo Groove EasySwing // Queremos que el coro se repita Repeat // Escribimos los acordes, un compás por línea 1 F7 2 Bb7 3 F7 4 F7 5 Bb7 6 Bdim 7 F7 8 D7 9 Gm7 10 C7 11 F7 / D7 12 Gm7 / C7 // Queremos 4 coros RepeatEnd 4 // Final 13 F7
Sencillo, ¿verdad? Los ficheros mma son autoexplicativos. Vamos a detallar un poco todo lo que hay en el fichero:
¡Ya está!. En un momento ya tenemos nuestra canción escrita. Vamos a ver cómo la procesa MMA. Tecleamos la siguiente orden en una terminal ("símbolo del sistema", para quien use Windows):
mma blues-en-f.mma Warning: No RC file was found or processed Overwriting existing midi file (49 bars): 'blues-en-f.mid'
Y veremos un fichero llamado blues-en-f.mid en el
mismo directorio donde se encuentra el fichero
blues-en-f.mma. Podemos escuchar el resultado con
nuestro reproductor MIDI favorito.
Hay varias cosas que podemos mejorar:
Groove Metronome2-4 z * 2Esto nos proporciona dos compases de metrónomo antes de que empiece el resto de instrumentos.
Bass
Off o Chord Off, si lo que queremos es
silenciar al instrumento armónico (guitarra o piano).Groove con el estilo que nos apetezca. Tenemos que
poner el comando Groove ahora al principio de la
repetición para volver al estilo inicial:
Repeat
Groove EasySwing
// Aquí van acordes ...
Groove Rhumba
// Más acordes y vuelta al principio
RepeatEnd 4
Veamos cómo queda este blues con las pequeñas mejoras que le hemos hecho:
// Blues en F // Ejemplo sencillo de un blues // Versión mejorada (según como se mire ;-) Tempo 150 Groove Metronome2-4 z * 2 Bass Off Walk Off Repeat Groove SlowJazz1Walk F7 Bb7 F7 F7 Bb7 Bdim F7 D7 Gm7 C7 Groove Rhumba F7 / D7 Gm7 / C7 RepeatEnd 4 Groove SlowJazz1Walk F7
Bueno, no se puede decir que lo hayamos mejorado mucho, pero hemos mostrado cómo se pueden añadir cambios en mitad de una canción. Recomiendo encarecidamente echarle un vistazo a todos los estilos disponibles en la documentación. En la siguiente tabla hay un resumen de los estilos que incorpora MMA.
MMA define en cada estilo o Groove varias características: el compás o medida (4/4, 3/4, etc.), la instrumentación (qué tipo de bajo -eléctrico, contrabajo-, qué instrumento hace acordes -guitarra, piano, órgano, etc.-) y qué patrones rítmicos hace cada instrumento.
Básicamente, cada Groove define las siguientes pistas o Tracks:
Bass Off Walk Off
En MMA pueden crearse nuevos estilos o modificar los existentes.
En el directorio de instalación de MMA encontramos el
subdirectorio /lib/stdlib, dentro de éste hay un
montón de ficheros .mma, que son los que
definen los estilos. Podemos crear los nuestros propios pero hay
que leer el manual antes.
Sólo hemos presentado las características más básicas del programa. MMA tiene muchísimas opciones y posibilidades, para utilizarlas sólo hay que leer el manual de usuario.
.mma podemos
utilizar el editor de textos SciTE. Se puede descargar en la
dirección http://scintilla.sourceforge.net/SciTEDownload.html-ig
ó -ia (por ejemplo, el comando sería:
timidity -ig mifichero.mid)(Copiado de la documentación del programa)
| #5 | Augmented triad. |
|---|---|
| + | Augmented triad. |
| +7 | An augmented chord (raised 5th) with a dominant 7th. |
| 11 | 9th chord plus 11th. |
| 11b9 | 9th chord plus flat 11th. |
| 13 | Dominant 7th (including 5th) plus 13th. |
| 5 | Altered Fifth or Power Chord; root and 5th only. |
| 6 | Major tiad with added 6th. |
| 7 | Dominant 7th. |
| 7#11 | Dominant 7th plus 9th and sharp 11th. |
| 7#5 | 7th, sharp 5. |
| 7#5#9 | Dominant 7th with sharp 5th and sharp 9th. |
| 7#5b9 | Dominant 7th with sharp 5th and flat 9th. |
| 7#9 | Dominant 7th with sharp 9th. |
| 7#9#11 | Dominant 7th plus sharp 9th and sharp 11th. |
| 7+ | An augmented chord (raised 5th) with a dominant 7th. |
| 7+5 | 7th, sharp 5. |
| 7+9 | Dominant 7th with sharp 9th. |
| 7-5 | 7th, flat 5. |
| 7-9 | Dominant 7th with flat 9th. |
| 7b5 | 7th, flat 5. |
| 7b5#9 | Dominant 7th with flat 5th and sharp 9th. |
| 7b5b9 | Dominant 7th with flat 5th and flat 9th. |
| 7b9 | Dominant 7th with flat 9th. |
| 7sus | 7th with suspended 4th, dominant 7th with 3rd raised half tone. |
| 7sus2 | A sus2 with dominant 7th added. |
| 7sus4 | 7th with suspended 4th, dominant 7th with 3rd raised half tone. |
| 9 | Dominant 7th plus 9th. |
| 9#11 | Dominant 7th plus 9th and sharp 11th. |
| 9#5 | Dominant 7th plus 9th with sharp 5th. |
| 9+5 | Dominant 7th plus 9th with sharp 5th. |
| 9-5 | Dominant 7th plus 9th with flat 5th. |
| 9b5 | Dominant 7th plus 9th with flat 5th. |
| 9sus | Dominant 7th plus 9th, omit 7th. |
| M | Major triad. This is the default and is used in the absense of any other chord type specification. |
| M13 | Major 7th (including 5th) plus 13th. |
| M6 | Major tiad with added 6th. |
| M7 | Major 7th. |
| M7#11 | Major 7th plus 9th and sharp 11th. |
| M7#5 | Major 7th with sharp 5th. |
| M7+5 | Major 7th with sharp 5th. |
| M7-5 | Major 7th with a flat 5th. |
| M7b 5 | Major 7th with a flat 5th. |
| M9 | Major 7th plus 9th. |
| aug | Augmented triad. |
| aug7 | An augmented chord (raised 5th) with a dominant 7th. |
| aug7b9 | Augmented 7th with flat 5th and sharp 9th. |
| aug9 | Dominant 7th plus 9th with sharp 5th. |
| dim | A dim7, not a triad! |
| dim3 | Diminished triad (non-standard notation). |
| dim7 | Diminished seventh. |
| m | Minor triad. |
| m#5 | Major triad with augmented 5th. |
| m(maj7) | Minor Triad plus Major 7th. You will also see this printed as "m(maj7)", "m+7", "min(maj7)" |
| m(sus9) | Minor triad plus 9th (no 7th). |
| m+5 | Major triad with augmented 5th. |
| m+7 | Minor Triad plus Major 7th. You will also see this printed as "m(maj7)", "m+7", "min(maj7)" |
| m11 | 9th with minor 3rd, plus 11th. |
| m6 | Minor 6th. |
| m7 | Minor 7th. |
| m7-5 | Minor 7th, flat 5 (aka 1/2 diminished). |
| m7b5 | Minor 7th, flat 5 (aka 1/2 diminished). |
| m7b9 | Minor 7th with added flat 9th. |
| m9 | Minor triad plus 7th and 9th. |
| m9b 5 | Minor triad, flat 5, plus 7th and 9th. |
| mM7 | Minor Triad plus Major 7th. You will also see this printed as "m(maj7)", "m+7", "min(maj7)" |
| maj7 | Major 7th. |
| mb5 | Minor triad with flat 5th. |
| min#7 | Minor Triad plus Major 7th. You will also see this printed as "m(maj7)", "m+7", "min(maj7)" |
| min(maj7) | Minor Triad plus Major 7th. You will also see this printed as "m(maj7)", "m+7", "min(maj7)" |
| sus | Suspended 4th, major triad with 3rd raised half tone. |
| sus2 | Suspended 2nd, major triad with major 2nd above root substituted for 3rd. |
| sus4 | Suspended 4th, major triad with 3rd raised half tone. |
| sus9 | Dominant 7th plus 9th, omit 7th. |
| 50sRock 50sRockSus 50sRock1 50sRock1Sus 50sRockIntro 50sRockEnd |
Ballad BalladSus Ballad1 Ballad1Sus BalladEnd BalladIntro |
Blues BluesTriple BluesSus BluesTripleSus Blues1 Blues1Sus BluesIntro BluesEnd |
Calypso CalypsoSus Calypso1 Calypso1Sus CalypsoEnd |
| 60sRock 60sRock1 60sRockSus 60sRock1Sus 60sRockEnd |
Beguine BeguineSus Beguine1 Beguine1Sus BeguineEnd |
Bolero BoleroFill BoleroSus BoleroSusFill BoleroIntro BoleroEnd Bolero1 Bolero1Fill Bolero1Sus Bolero1SusFill Bolero1Intro Bolero1End |
CountryBlues CountryBluesSus CountryBluesWalk CountryBluesWalkSus CountryBlues1 CountryBlues1Sus CountryBlues1Walk CountryBlues1WalkSus CountryBluesFill CountryBluesWalkFill CountryBlues1Fill CountryBlues1WalkFill CountryBluesEnd |
| 8Beat 8BeatSus 8Beat1 8Beat1Sus 8BeatEnd |
BigBand BigBandSus BigBandPlus BigBandSusPlus BigBand1 BigBand1Sus BigBand8 BigBand8Sus BigBandIntro BigBandEnd BigBand1End BigBand4End |
BoggieWoggie BoggieWoggie1 BoggieWoggie2 BoggieWoggie3 BoggieWoggieEnd |
CountrySwing CountrySwingSus CountrySwing1 CountrySwing1Sus CountrySwing2 CountrySwing2Sus CountrySwingIntro CountrySwingEnd |
| BasicRock BasicRockSus BasicRock4 BasicRock4Sus BasicRockEnd |
BlueGrass BlueGrassClap BlueGrassBottle BlueGrassBottleClap BlueGrassSus BlueGrassEnd |
BossaNova BossaNovaSus BossaNova1Sus BossaNovaFill BossaNovaIntro BossaNovaEnd BossaNova1End |
CountryWaltz CountryWaltzSus CountryWaltz1 CountryWaltz1Sus CountryWaltz2 CountryWaltz2Sus CountryWaltzWalk CountryWaltzWalkSus CountryWaltz1Walk Countrywaltz2Walk CountryWaltz1SusWalk CountryWaltz2SusWalk CountryWaltzEnd |
| Desert DesertSus DesertFill DesertEnd |
Dixie Dixie1 Dixie2 Dixie3 DixieStrum DixieEnd |
DixieMarch DixieMarchPlus DixieMarchSus DixieMarchSusPlus DixieMarchIntro DixieMarchEnd |
EasySwing EasySwingSus EasySwingFill EasySwingWalk EasySwingWalkSus EasySwingWalkFill EasySwing1 EasySwing1Sus EasySwing1Fill EasySwing2 EasySwing2Sus EasySwing2Fill EasySwing42 EasySwing42Sus EasySwing42Fill EasySwing42Walk EasySwing42WalkSus EasySwing42WalkFill EasySwingIntro EasySwingIntro1 EasySwingIntro2 EasySwingIntro3 EasySwingEnd |
| FastBlues FastBluesSus FastBluesWalk FastBluesWalkSus FastBlues1 FastBlues1Sus FastBluesEnd |
Folk FolkWalk FolkArticulated FolkIntro FolkEnd |
Foxtrot FoxtrotSus FoxTrotPlus FoxTrotSusPlus Foxtrot1 FoxTrot1Sus FoxTrotIntro FoxTrotEnd FoxTrot1End |
FrenchWaltz FrenchWaltzSus FrenchWaltz1 FrenchWaltz1Sus FrenchWaltzEnd FrenchWaltz1End |
| HillCountry HillCountryPlus HillCountrySus HillCountrySusPlus |
Jazz54 Jazz54Walk Jazz54Intro |
JazzWaltz JazzWaltzSus JazzWaltz1 JazzWaltz1Sus JazzWaltzIntro JazzWaltzIntro8 JazzWaltzEnd JazzWaltz1End |
Jive JiveClap JiveSus JiveClapSus JivePlus JiveSusPlus Jive1 Jive1Clap Jive1Sus Jive1ClapSus Jive1Plus Jive1SusPlus JiveIntro JiveEnd |
| LFusion LFusionSus LFusion1 LFusion1Sus LFusionEnd Lfusion1End |
LightTango LightTangoSus LightTangoEnd |
MilIntro4 MilIntro2 March March1 March1Slow March2 March3 March4 MarchEnd |
Metronome2 Metronome4 Metronome2-4 Metronome3 |
| ModernJazz ModernJazz1 ModernJazzSus ModernJazz1Sus ModernJazzIntro ModernJazzEnd |
Polka PolkaSus PolkaArp PolkaSusArp Polka1 Polka1Sus Polka1Arp Polka1SusArp PolkaIntro PolkaEnd |
PopBallad PopBallad1 PopBallad2 PopBalladEnd |
QuickStep QuickStepHit QuickStepSus QuickStepHitSus QuickStepIntro QuickStepEnd |
| R&B R&BSus R&BIntro R&BEnd |
Rhumba RhumbaSus RhumbaTriple RhumbaTripleSus RhumbaTriple12 RhumbaTriple12Sus RhumbaTriple34 RhumbaTriple34Sus Rhumba1 Rhumba1Sus Rhumba2 Rhumba2Sus Rhumba3 Rhumba3Sus RhumbaIntro RhumbaEnd RhumbaEnd1 |
Rock128 Rock128Sus Rock128Intro Rock128End |
RockBallad RockBalladFill RockBalladVoice RockBalladIntro RockBalladEnd |
| SambaFill SambaPlus SambaSus SambaSusFill SambaSusPlus SambaIntro SambaEnd |
Ska Ska1 SkaSus Ska1Sus SkaClap SkaEnd |
SlowBlues SlowBluesFill SlowBluesFill1 SlowBluesFill2 SlowBluesFill3 SlowBluesSus SlowBluesWalk4 SlowBluesWalk4Sus SlowBluesWalk8 SlowBluesWalk8Sus SlowBluesEnd |
SlowCountry SlowCountrySus SlowCountryFill SlowCountryWalk SlowCountryWalkSus SlowCountryWalkFill SlowCountryIntro SlowCountryEnd |
| SlowJazz SlowJazzSus SlowJazzWalk SlowJazzWalkSus SlowJazz1 SlowJazz1Sus SlowJazz1Walk SlowJazz1WalkSus SlowJazz2 SlowJazz2Sus SlowJazzIntro SlowJazz1Intro SlowJazz2Intro SlowJazzEnd SlowJazz2End |
SoftRock SoftRockSus SoftRock1 SoftRock1Sus SoftRockIntro SoftRockSusIntro SoftRockEnd |
Swing SwingWalk SwingTriple SwingPlus SwingWalkPlus SwingSus SwingPlusSus SwingWalkSus SwingWalkPlusSus Swing1 Swing1Walk Swing1Triple Swing1Sus Swing1WalkSus Swing1Plus Swing1PlusSus Swing1WalkPlus Swing1WalkPlusSus Swing2 Swing2Triple Swing2Plus Swing2Sus Swing2PlusSus SwingIntro SwingIntro2 SwingEnd Swing1End Swing2End |
Tango Tango1 TangoEnd |
| VieneseWaltz VieneseWaltzSus VieneseWaltz1 VieneseWaltz1Sus VieneseWaltzEnd |
Waltz WaltzSus Waltz1 Waltz1Sus WaltzWalk WaltzWalkSus Waltz1Walk Waltz1WalkSus WaltzEnd |
Zydeco ZydecoPlus ZydecoSus ZydecoSusPlus ZydecoIntro ZydecoEnd ZydecoPlusEnd |
[La clave de Fa] || [www.contrabajo.org]