Only this pageAll pages
Powered by GitBook
1 of 23

EspaƱol

Loading...

Loading...

Loading...

Loading...

Songs

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Rhythms

Loading...

Loading...

Rhythm engines

Loading...

Loading...

Loading...

Loading...

Contribute

Loading...

Loading...

Loading...

Chord lead sheet

Use the chord leadsheet editor to:

  • Add chord symbols, eg Cm6, Ab7

  • Add sections, eg A, B, verse, chorus, ...

  • Move and edit chords to adjust rhythm accents, interpretation or harmony

Chord symbols

Input

Select a bar or a chord symbol then:

  • type the first letter of the chord symbol ('A' to 'G'), or

  • press ENTER, or

  • double-click, or

  • right-click menu, Edit

You can also select an existing chord symbol and move it while pressing the control button, it will create a new copy that can be edited.

To move a chord symbol just select it and move it with the mouse.

To change the size of the lead sheet, select a bar then right-click menu and select Set end bar.

Use ctrl-click or shift-click for multiple selection.

In order to input a lead sheet from scratch, the easier way is to select the first bar, directly type in the chord symbols, press ENTER (it will automatically select the next bar), type in the chord symbols for the second bar, etc.

Aliases

JJazzLab recognizes many aliases for each chord symbol. For example C7M can be written Cmaj7, Cma7, CM7, CMAJ7 etc.

You can add more aliases in menu Options/Chord Symbols.

Interpretation

Select a chord symbol, edit it (double-click, press enter, or right-click menu), and select the Interpretation tab.

The Interpretation tab lets you decide how this chord symbol should be played:

  • Normal

  • Accent: add a rhythmic accent and randomly a crash cymbal. You can make the accent stronger, or make sure a crash cymbal is played or not played.

  • Hold: add a rhythmic accent and hold notes until next chord symbol. If extended more instruments are hold.

  • Shot: add a rhythmic accent with chord notes played briefly. If extended more instruments are shot.

  • Pedal bass: bass line will only play the bass note (for ex. F for Fm7 or C for Fm7/C). This setting is on by default when you enter a slash chord.

Each rhythm generation engine may render these Interpretation parameters differently.

The shape of the marker below the chord symbol depends on the interpretation mode:

For example, in order to render:

you could use the following interpretation parameters:

See below the keyboard shortcuts to change the interpretation of selected chords.

Harmony

Select a chord symbol, edit it and select the Harmony tab.

The Harmony tab lets you select the scale to be used when rendering the music for this chord symbol.

Example Suppose that the reference bass line for Eb7M contains a Ab (4th degree of the Eb major scale). If you select the Lydian mode (which has a sharp 11th degree) then the reference bass note Ab will be rendered as A for this chord symbol.

By default no scale is selected: each rhythm generation engine will decide the "best" scale to use.

Substitute chord symbol

Select a chord symbol, edit it and select the substitute chord symbol tab.

Snapshot to be updated! Alternate > Substitute

This tab lets you define a substitute chord symbol which will be used when some conditions are met.

Substitute chord symbols are useful when you need to introduce a slight variation in a part of a song.

The substitute chord symbol can be any chord symbol, with any interpretation or harmony, or no chord symbol at all (void chord). Chord symbols which have an substitute chord symbol defined are displayed with a different color (see image below).

Example:

In the Carlos Santana's "Europa" song, the 1st ending of the theme is a Cm7, but the 2nd one is a C major. To implement this in JJazzLab, one solution could be to duplicate section A1 to create section A2 with the different ending, then update the song structure accordingly. This is perfectly fine, but when changes are minor the substitute chord symbol can provide a simpler solution.

You can see below (and in the dialog snapshot above) that a C7M substitute chord has been created for Cm7. C7M will be used for all song parts (see the song structure editor) where the marker is set to Theme2. On the image below it means the C7M will be used only for the 2nd song part.

Snapshot to be updated! ALTERNATE > SUBSTITUTE

There is another substitute chord symbol example in the 3rd bar: A7. If you listen to the original song you'll notice that they play a A7 on the last beat of the 3rd bar only during solos. So the A7 chord symbol defines its substitute chord symbol as the "void chord symbol" (same as no chord symbol) when marker is not "Solo".

Sections input

Typical sections are 'intro', 'verse', 'chorus', etc.

A Song section is the basic unit used by JJazzLab to define the song structure. There is always a section defined on the first bar.

To add a section select a bar which is not after the end then:

  • press ENTER, or

  • double-click, or

  • right-click menu, Edit

The new section name must be different than the existing one.

Force a section at new line

You can force a section which is not on the first bar of a row to start on the next line. This can be useful when some sections have an odd number of bars.

Select a bar with a section defined or select the section itself, right-click menu "Force Section at New Line".

This will result in the display below.

Mouse shortcuts

Selection

Mouse

Action

bar, chord symbol, section

click

select

chord symbol

double click

edit using chord symbol editor

bar, section

double click

edit using bar editor

bar, chord symbol, section

right-click

popup menu

chord symbol

mouse-wheel

transpose

editor

ctrl mouse-wheel

change X zoom factor

Keyboard shortcuts

Many actions are also available via the context menu (right-click on Windows/Linux, ctrl-click on Mac), and when available the associated keyboard is displayed.

Selection

Key

Action

chord Symbol

enter

edit with chord symbol editor

bar, section

enter Ā Ā Ā Ā Ā Ā 

edit with bar editor dialog

bar

ctrl-E

set end bar

bar

I

insert bars

bar

delete

clear bar contents

chord symbol, section

delete

remove

chord symbol, section

ctrl-left/right

move item one bar left/right

bar

shift-delete

remove

chord symbol

ctrl-up/down

transpose

chord symbol

P

change interpretation

chord symbol

S

stronger accent

chord symbol

H

crash cymbal/no crash

chord symbol

X

hold/shot more instruments

chord symbol, section

ctrl-A

select all in section, then in lead sheet

bar, chord symbol, section

ctrl-C/X/V

copy/cut/paste items

editor

ctrl-Z/Y

undo/redo

editor

ctrl-O

set song active (On/Off)

editor

ctrl-W

close song

Preguntas Frecuentes

Me gustaría ayudar a JJazzLab y me gustaría que siga siendo gratis, cómo puedo ayudar?

  • Puedes donar para que JJazzLab siga siendo gratis

  • Ayuda a traducir JJazzLab => translate

  • Contribuye para mejorar la documentación => Contribute

  • Dale me gusta a los videos de Youtube y suscrĆ­bete al canal => YouTube channel

  • Graba un video tuyo tocando con JJazzLab: los videos serĆ”n colocados en el canal de JJazzLab de YouTube

  • Haz correr la voz! Habla sobre el tema y agrega enlaces a www.jjazzlab.com en redes sociales, blogs, sitios de internet, etc.

  • Si eres desarrollador => contribute code

Uso MacOS, No puedo encontrar el menĆŗ Herramientas/Opciones?

En MacOS las opciones son accesadas a través del menú principal JJazzLab/Preferencias.

Cómo cambio la tonalidad de una canción?

  1. Selecciona todos los sĆ­mbolos de los acordes (click derecho y luego elegir "seleccionar todos los acordes")

  2. Luego utiliza la rueda del ratón o haz click con el botón derecho y elige "Transponer"

How to force a clean re-installation?

You need to reset all JJazzLab user settings (uninstall/re-install is not enough).

The simple way: menu Tools/Options/Advanced, button Reset all user settings.

The hard way: find the location of your Netbeans user dir in menu Help/About/System Information, **exit JJazzLab, then delete the Netbeans user dir**.

I don't have administration privileges on my Windows computer, can I install JJazzLab?

Yes. When first prompted by the JJazzLab installer, select "Install only for me", then select an installation directory where you have write access (in My Documents for example).

How to make fonts bigger?

In the JJazzLab installation directory, edit the file etc/jjazzlab.conf and add --fontsize 16 (16 or any other value, default is 11) in the default_options variable, you should end up with something like this:

default_options="--branding jjazzlab -J-Djjazzlab.version=2.2.0 -J-Dplugin.manager.check.new.plugins=true -J-Dplugin.manager.check.interval=EVERY_DAY --fontsize 16"

Restart JJazzLab. All menus should look bigger now.

This won't solve everything though, as some editor fonts do not depend on this setting. But you can tweak some of them using menu Tools/Options/Theme. Check each item in the list and if there is a font defined, change it to make it bigger. The user settings are automatically saved, so you need to do this only once.

Can I start JJazzLab with command line arguments?

You can pass one or more .sng file names on the command line, JJazzLab will open them upon start.

# Example on Win10 (x64)
"C:\Program Files\JJazzLab\bin\jjazzlab64.exe" "C:\my dir\MySong.sng" "D:\AnotherSong.sng"

How to submit a bug? How to find the "log" file?

Send an email or, if you're a GitHub user, create an issue.

We need the following information in order to help you:

  • Provide the content of the log file

  • Describe what does not work as expected

  • Describe the sequence of actions that caused the issue

A new log file is created upon each start of JJazzLab. It's important to get the right log file when the problem occured.

To get the log file content:

  1. Right after the problem has occured, go to menu Tools/Options/Advanced

  2. Click on Show Log Window

  3. Copy & paste the full content of this window in your bug report

If for some reason the above does not work:

  1. Go to menu Help/About and find the location of your Netbeans user dir. For ex. on Windows C:\Users\MyName\AppData\Roaming\jjazzlab\2.2 For ex. on Linux /home/MyName/.jjazzlab/2.2

  2. Open an explorer, go to this directory then to the var/log subdirectory

  3. The last log file is messages.log, the previous one is messages.log.1, the before previous is messages.log.2, etc.

  4. Find the relevant log file and send it with your bug report

If you can't find the Netbeans user dir., make sure your explorer shows the hidden files (e.g. the AppData directory is usually hidden on Windows)

JJazzLab

!! The spanish documentation might not be updated with the latest version JJazzLab 4 !!

ĀæQuieres agregar temas o mejorar la documentación? Ā”Claro que puedes! šŸ˜€ Visita la pagina de contribución para la documentación.

ĀæPor donde empiezo?

Hecha un vistazo a este video tutorial.

¿Qué es JJazzLab?

šŸŽµ JJazzlab es una aplicación de escritorio que genera pistas automĆ”ticamente para cualquier canción, aunque se trate de canciones complejas. Es un amigo para la Jam con el cual te puedes divertir improvisando en casa, aprender cosas nuevas o simplemente practicar tu instrumento. Es una gran herramienta para profesores.

šŸŽ· JJazzLab esta diseƱado para poder crear pistas de audio que no sean aburridas, con variedad, acentos rĆ­tmicos y que sean dinĆ”micas. Puedes empezar un solo tranquilamente y gradualmente ir creando la atmósfera que mas gustes!

šŸ’» Gracias a la plataforma de base JJazzlab que es open source los desarrolladores pueden agregar nuevas caracterĆ­sticas muy fĆ”cilmente y generar nuevas posibilidades para la aplicación.

CaracterĆ­sticas

Pistas (backing tracks)

  • Generación instantĆ”nea de pistas Midi con baterĆ­a, percusiones, bajo, piano, guitarra, etc.

  • Gran nivel de detalle para configurar las pistas: variaciones en el ritmo, intensidad, silencios en los instrumentos, variación del tempo, etc.

  • Reproducir desde el inicio, desde un compĆ”s determinado o en bucle la selección deseada.

  • Reproducir con transposición directa (interesante para el saxo por ejemplo).

  • Cualquier estructura de canción: Intro, solo, 1ra coda, etc.

  • Ajuste de tempo, transposición, silenciar instrumentos deseados.

  • Soporte para pistas con distintos ritmos, con tempos distintos.

  • Posibilidad de exportar a un archivo Midi, facilidad para convertir de Midi a MP3.

  • Click configurable y pre conteo.

Editor

  • Posee distintos tipo de editores: editor de hoja de acordes, editor de estructura de canción, editor de acordes, consola de mezcla (mix), editor de notas de cada canción.

  • Editor multi-archivo con ventanas flotantes o fijas

  • Interfaz de usuario intuitiva con la posibilidad de deshacer/rehacer ilimitadamente y copiar y pegar entre canciones

  • Inserción libre de acordes (cuantificados o no), posibilidad de definir acordes sincopados o anticipaciones

  • Soporta todos los tipos de acordes de pop-rock y jazz, permite tambiĆ©n acordes definidos por el usuario

  • Permite editar la forma en que los acordes son reproducidos: la armonĆ­a que hay por detras, acentos, variacion en la armonia durante solos, sustitucion de acordes, ...

  • Moldes (templates) de canciones personalizables

  • Interfaz de usuario personalizable (colores y fuentes con temas)

  • Posibilidad de imprimir la hoja de acordes y la estructura de la canción

Ritmos

  • Soporte de archivos de estilos Yamaha (formatos SFF1 & SFF2) y con ello acceso a miles de estilos gratis en la web!

  • Cientos de ritmos por defecto con el instalador

  • Soporte de archivos de estilo "YamJJazz Yamaha extendidos" para obtener mas variaciones en los ritmos

  • Arquitectura abierta: Se pueden agregar nuevos motores de generación de ritmos con plugins

Midi

  • Conectate a cualquier motor de audio gracias a la tecnologĆ­a Midi: SoundFont player (recomendado para la JJazzLab SoundFont), sintetizador interno de Java, sintetizador externo, VST host vĆ­a puerto Midi virtual como ā€˜LoopBe1’

  • Compatible con instrumentos GM/GM2/XG/GS

  • Compatible con cualquier instrumento Midi a travĆ©s de archivos de instrumentos Cakewalk (.ins)

  • Mapeo automĆ”tico de baterĆ­a/percusiones desde archivos Yamaha XG a archivos GM/GM2/GS.

  • Fuentes de sonido JJazzlab optimizadas para una alta calidad de reproducción y selección automĆ”tica de instrumentos

  • Seteos listos para usar para VirtualMidiSynth (Windows) y FluidSynth (Linux)

  • Posibilidad de definir mezclas por defecto para cada ritmo

  • Posibilidad de definir instrumentos por defecto a ser utilizados

Importación

  • Hojas de acordes de Band-In-A-Box

  • Hojas de acordes de musicXML

  • Hojas de acordes de Impro-Visor

Otros

  • Notificaciones automĆ”ticas cuando hay nuevas versiones

  • Basado en el framework de aplicaciones open-source de Netbeans

Instalación

!!! THIS PAGE IS OUT OF DATE, IT SHOULD BE UPDATED FOR JJAZLAB 4 !!!

Instrucciones para Windows

Descarga y corre el programa de instalación.

Si no tienes derecho de administrador en tu PC puedes elegir "instalar solamente para mí" en el menú de instalación.

Recomendamos encarecidamente usar JJazzLab con las fuentes/archivos de Sonido JJazzLab SoundFont (mejor calidad).

Si recibes una ventana de alerta de Windows Smart Screen

Windows Smart Screen bloquea el programa NO PORQUE SEA UN MALWARE (No lo es!) sino porque JJazzLab es un software nuevo. Al ser nuevo los servidores de seguridad de Windows no tienen las suficientes estadísticas disponibles como para evaluar su "reputación de seguridad" y por ende lo bloquean.

Una vez que una cantidad suficiente de usuarios de Windows hayan descargado e instalado JJazzLab, Windows Smart Screen no bloquearÔ mÔs la instalación.

Puedes encontrar las explicaciones en este artƭculo (inglƩs) => good article.

Instrucciones para Linux

Descarga y descomprime el paquete.

Para ejecutar JJazzLab usa el archivo jjazzlab dentro de la carpeta "bin". Se encuentra en el directorio de instalación.

Recomendamos encarecidamente usar JJazzLab con las fuentes/archivos de Sonido JJazzLab SoundFont (mejor calidad).

Si utilizas la distribución Arch o Manjaro Linux hay un paquete disponible para instalar JJazzLab: https://aur.archlinux.org/packages/jjazzlab-x-bin/ (Muchas gracias jypma!)

Instrucciones para MacOS

Descarga y descomprime el paquete para ejecutar JJazzLab.

Si aparece una alerta de seguridad

Usando Finder, selecciona el paquete JJazzLab, usando ctrl-click menu, Abrir, podrÔs elegir ejecutar la aplicación sin tener en cuenta el alerta de seguridad.

Recomendamos encarecidamente usar JJazzLab con las fuentes/archivos de Sonido JJazzLab SoundFont (mejor calidad).

Hay un error conocido en MacOS: a veces, luego de que la PC hiberna el audio puede tener un retardo de 2 o 3 segundos. Esto se debe a un problema de JDK, JJazzLab no puede hacer nada

Mix console

Use the mix console to:

  • Change the instruments

  • Adjust channel settings: volume, reverb, chorus, panoramic, transposition, velocity offset

  • Mute or solo channels

  • Load/save .mix file

  • And more: change Midi channel, use special Midi commands, etc.

JJazzLab uses the mix console information to send the relevant Midi messages to the . This is done each time you make a change in the mix console, or when you start the playback.

Midi has only 16 Midi channels. That's why usually a song can't have more than 2 rhythms.

MIx console menu bar

Menu File

  • Load/Save Default Rhythm Mix

    Change the current mix from a file. Consult for more information about .mix files.

  • Import Mix...

    Note that this will import settings only for the instruments which are common between the current mix and the imported mix.

Menu Edit

  • Add/Remove user channel

    The user channel is used to automatically set the instrument that you want to play for a given song or rhythm.

    Example: you're a keyboardist and JJazzLab is connected to your synthesizer. You made Stevie Wonder's "Isn't she lovely" song and you play a clavinet sound on it. Add the User Channel with a Clavinet sound, increase the chorus effect, then save the song. This way, the next time you load the song you'll automatically get your clavinet sound recalled on your synthesizer.

  • Reset channels

    Restore the original settings from the related rhythm.

Menu Midi

  • Enable/Disable all Midi parameters

    Use Disable all Midi parameters if you control the mix yourself directly on the output synth.

  • Send GM/GM2/XG/GM mode ON message

    This lets you send special Midi initialization messages to turn your output synth in the desired mode.

Change instrument

Click on the instrument name in the channel. Note that this is also where instrument transposition can be adjusted.

Channel settings

Use the channel settings to:

  • Add a Midi velocity offset to all notes played on this channel

    Note that this is slightly different from adjusting the volume.

  • Disable sending specific Midi messages

    Probably because you control the parameter yourself directly on the .

  • Use drums-rerouting for channels drums

    If you use a basic GM output synth, it can play drums only on channel 10. If drums/percussion are used on other channels in your mix, you need to activate drums rerouting on these channels. Note that JJazzLab may activate this option for you if it detects, based on the current information, potential issues.

Midi channel

Each Midi channel can be changed manually.

Multi-rhythm songs

When a song uses 2 or more rhythms, a popup is displayed in the upper left corner of the mix console to select the rhythm you want to display.

Note that some commands such as menu Edit/Reset channels will not be applied to the hidden rhythm(s).

Mouse shortcuts

Tutoriales en video

Por el momento todos los tutoriales son en inglƩs. Cuando podamos los haremos en espaƱol. De todas formas son fƔciles de entender y si quieres puedes contribuir haciendo el tuyo y ayudarnos!

Para novatos :)

Tutorial de 15 minutos

Como hacer tus estilos extendidos de Yamaha (avanzado)

Song editors

Use the to:

  • Add chord symbols, eg "Cm6", "Ab7"

  • Add sections, eg "A", "B", "verse", "chorus", ...

  • Move and edit chords to adjust rhythm accents, interpretation or harmony

Use the to:

  • Define the order of sections, eg "AABA", "verse verse chorus verse", ...

  • Select rhythm(s) to be used

  • Adjust the rhythm parameters to introduce dynamics, eg variation, intensity, fill, muted instrument,

Use the to adjust the mix of each rhythm instrument:

  • Select the instrument to be used on your sound device

  • Adjust volume, panoramic, reverb, chorus

  • Mute, solo, transpose

Rhythm files

Rhythms are made available by . Some rhythms can be based on rhythm files.

For example the provides rhythms built from Yamaha style files such as poprock.sty or TripHop.S510.prs.

Rhythm files location

JJazzLab expects rhythm files to be in the User directory for rhythm Files. The location of this directory can be changed in the Options/Rhythms.

You can use up to 2 levels of sub-directories to organize the rhythms. Sub-directories whose name starts with an underscore '_' are not scanned.

Rhythm files scanning

Your rhythm files are scanned at startup only upon a fresh install, and the rhythm list is saved into a cache file.

This cache file is then used to get the rhythm list upon next startups, which is much faster than the initial scanning -especially if you have many rhythm files.

If you add or remove rhythm files in the user directory for rhythm files (or a subdirectory) you need to manually force a re-scan in order to update the cache file. This can be done in Option/Rhythms (see image above).

Adding new rhythm files

In order to avoid having too many files cluttering the User directory for rhythm files, the recommended way is:

  1. Test the rhythm files In the rhythm selection dialog, use the Add Rhythms button to load additional rhythm files for the current session only. These files can be anywhere on your hard drive.

    Standard (.sty, .prs, .sst or .bcs) should appear in the YamJJazz standard styles, and (.yjz) should appear in the YamJJazz extended styles.

  2. Copy the validated rhythm files Once you have selected the ā€œbestā€ rhythm files, copy them somewhere in the User Directory for Rhythm Files (see above).

  3. Force a Rescan from Options/Rhythms

Quality of Yamaha style files found on the web vary a lot. Furthermore some styles are sometimes ā€œbrokenā€ (invalid file format). If there is an error the corresponding rhythm won’t show up in the rhythm selection dialog.

Song and mix files

When you save a song called mySong, JJazzLab actually saves 2 different files:

  • mySong.sng: contains everything except the mix information

  • mySong.mix: contains only the mix information, i.e. the configuration of the instruments used.

Why using 2 different files ?

Because the mix information is specific to your . Integrating the mix data in the .sng file would make .sng files not portable between users, since users have different output synths.

When you open mySong.sng, JJazzLab also opens mySong.mix in the same directory. If mySong.mix does not exist then JJazzLab creates the mix using the .

Default rhythm mix

Each JJazzLab rhythm has a builtin default mix. This builtin default mix can only use GM instruments for maximum portability.

You can override the rhythm's builtin mix by saving a default rhythm mix file. Unlike the builtin mix, this rhythm mix can use any instruments.

By default this file is stored in the user rhythm directory set in Options/Rhythms. But the directory can be changed in Options/General.

Mix file lookup order

Combining the 2 paragraphs above, below is how JJazzLab looks for mix information when you load myDir/mySong.sng and this songs uses rhythm 16BeatRock :

  1. use myDir/mySong.mix if present

  2. use defaultRhythmMixDir/16BeatRock.mix if present

  3. use 16BeatRock builtin default mix (GM instruments only)

Steps 2. and 3. are also used when you add a new rhythm in a song.

Importing songs

Band In A Box song files

JJazzLab can import .SG* or .MG* song files.

Only the following Band-In-A-Box data are used to generate the corresponding JJazzLab song :

  • song structure: chorus start, chorus end, number of chorus, tag after, tag start, tag end, 2 bar ending

  • chord symbols: name, position (including optional push settings), rest/hold/shot settings

  • song settings: allow push/rest in first/middle/last chorus.

The song import feature is not 100% reliable, but most of the files should be OK.

By default imported songs will be in 4/4. If you know that the imported song is in 3/4, then when import is done just select the initial time signature and use righ-click menu Set time signature to fix the time signature.

musicXML files

JJazzLab can import musicXML (.xml) or compressed musicXML (.mxl).

The import is limited to the time signatures and chord symbols.

Impro-Visor leadsheet files

JJazzLab can import Impro-Visor (.ls) leadsheet files.

The import is limited to the time signatures and chord symbols.

Yamaha styles

The YamJJazz engine is able to read all Yamaha style files (.sty, .prs, .bcs, .sst, at SFF1 or SFF2 format). You can find thousands of style files on the web, most of them for free. Visit the resources page for useful links.

Yamaha styles usually have 4 variations Main A, Main B, Main C, Main D, plus some Intros and Endings. Each variation can use tracks of the following types:

  • Rhythm (e.g. drums)

  • Sub-rhythm (e.g. percussion)

  • Bass

  • Chord1 (e.g. guitar)

  • Chord2 (e.g. keyboard)

  • Pad (e.g. strings)

  • Phrase1 (e.g. Brass)

  • Phrase2

Yamaha "Mega Voicesā€, ā€œSuper Articulation Voicesā€, ...

Yamaha style files are optimized for Yamaha arranger keyboards. The latest models (Tyros, Genos…) has many voices with special features (e.g "Mega Voices"), especially for guitars which are optimized for style rendering.

Other keyboards or SoundFonts (including the JJazzLab SoundFont) can’t reproduce these special voices correctly. That’s why some recent Yamaha style files (SFF2 format) may not sound right with JJazzLab. If this happens locate the faulty channels using the Solo button in the MixConsole, and lower their volume or mute them.

Limitations

JJazzLab is designed to host any kind of rhythm generation engines, and they must work with any kind of output synth, not only the Yamaha keyboards. Therefore some specific Yamaha style file features are not supported:

  • SysEx Midi messages: ignored.

  • Controller messages: ignored.

  • Per-variation sounds: ignored, YamJJazz uses the style’s default sounds for all variations.

  • Yamaha Mega Voices : non musical notes or sound effects (notes above C6) are ignored.

  • Pitch bend Midi messages : ignored.

  • OTS and MDB sections: ignored.

Selection

Mouse

Action

channel volume slider, knobs

double-click

Input value with keyboard

channel volume slider

shift + mouse-drag

change volume of all channels

output synth
this page
output synth
output synth
Chord LeadSheet Editor
Song Structure Editor
Mix Console
rhythm engines
YamJJazz rhythm engine
Yamaha styles
extended Yamaha styles
output synth
default rhythm mix

Adapted rhythms

If you create a section with a different time signature, JJazzLab will create the corresponding song part with an adapted rhythm. This is simply the rhythm from the previous song part adapted to a new time signature.

You’ll notice that the adapted rhythm does not need additional channels in the mix console: it uses the Midi channels of its source rhythm (fastbossa.s629.prs in the example above).

If you don’t want the adapted rhythm, juste replace it using the rhythm selection dialog.

You can't remove a source rhythm if its adapted rhythm is still present in the song. See example below.

Example: any operation (change rhythm, remove song part, change time signature of the parent section) which makes the source rhythm fastbossa.s629.prs disappear from the song will generate an error.

In the above case, if you want to replace fastbossa.s629.prs by another rhythm, you need first to remove the second song part which uses the adapted rhythm.

Extended Yamaha styles

The YamJJazz rhythm engine can read a new file format (.yjz) which extends the capabilities of a standard Yamaha style file (.sty, .prs, .sst, etc.). Objective is to enable the design of rhythms with a wider dynamic range, rhythms which sound less repetitive.

An extended style (.yjz) supports :

  • Unlimited number of variations Instead of Main A/B/C/D, you can have Main A-1, Main A-2, Main B-1, Main B-2, Main B-3, Main C-1, Main C-2, …

  • Unlimited number of source phrases for each variation With a standard Yamaha style the same source phrase is always used for a given variation. Alternate source phrases lets the rhythm designer define different-but-similar phrases for e.g Main A-1, which will be used randomly by the YamJJazz engine in order to sound less repetitive.

A .yjz file is just the extension part of a standard Yamaha style file, the base style. So when you read MyRhythm.yjz, YamJJazz needs to find MyRhythm.sty (or MyRhythm.prs) in the same directory.

Extended style creation wizard

This wizard, available in the Tools menu, is used to create a ready-to-be-customized extended style file (.yjz) from a standard Yamaha style file (.sty, .prs, ...). See the video below for how to use it.

Once created you'll need to manually alter the musical phrases of the .yjz Midi file using a Midi editor or a DAW like Cubase, Ableton Live, etc. Otherwise the new extended style will sound exactly like the base style.

Video tutorial

.yjz file format

If you don’t plan to create your own .yjz file you can skip this paragraph.

We recommend to use the Extended style creation wizard to prepare a .yjz file ready to be customized (see above).

The extension file (.yjz) must be associated to a base Yamaha style file (.sty, .prs, .sst, etc.) with the same name in the same directory.

Overview

YamJJazz first reads the base style file to get the following Yamaha style information:

  • CASM data: channels parameters for each available variation (used Midi channels, source chords, lower/upper note limits, chord/melody channels, etc.)

  • SINT data: instruments parameters (bank select/program change, volume, …)

  • Musical data: the Midi source phrases for each channel of each available variation

Then YamJJazz reads the .yjz extension file to get Midi source phrases used to refine the available base variations and to add alternate source phrases.

If the base style uses variation Main A (example), then it’s possible to define variations Main A-1, Main A-2, Main A-3, etc. in the extension file. The number is called the complexity level. As soon as you define a Main A-x variation in the extension file, it replaces the original Main A variation from the base file.

If the base file defines variation Main D (example) but the extension file does not define Main D-x, then the original Main D will be used with the name Main D-1.

If the base style does not have variation Intro B (example), then it’s not possible to define Intro B-x in the extension file.

Midi format

.yjz files use Midi format 1, they contain several tracks. Note that .sty or .prs files use Midi format 0, they contain a single track.

Each track of the extension file must start with a Midi trackname meta event with the following syntax:

trackname=<base variation>-<complexity level>-<id string>-<phrase length in beats>

Trackname examples:

  • Main A-1-drums-8

  • Main A-1-bass-8

  • Main A-1-guitar-8

  • Main A-1-guitar_root-8

  • Main A-2-drums-8

  • Main A-2-bass-8

  • Main A-2-guitar-8

  • Main A-2-guitar_root-8

  • Ending B-1-piano-4

  • Ending B-1-bass-4

For <id string> you can use whatever string you like, but it's a good practice to mention at least the target instrument. If you use the Extended style creation wizard, id string is generated for you and will be something like [Bass, C7M, ch11] : the instrument name, the source chord and source Midi channel.

All tracks for a given variation must have the same length in beats. But different variations can have different lengths.

Depending on the CASM data, there might be more than one source phrase for a given instrument (the guitar and guitar_root phrases in the example above). For example one channel can be used for major chords, the other one for minor chords.

A track should only contain Midi note on/off messages for its source chord and source Midi channel, as defined in the CASM data of the base style. If you used the Extended style creation wizard, you have the source chord and Midi channel indicated in the <id string>, as explained above.

Alternate source phrases

To add alternate source phrases for a given variation, just append source phrases on each track of this variation. Each appended source phrase must have the same length than the original phrase.

Example The source phrase length of track Main A-1-bass-8 is 8 beats (2 bars in 4/4). You can append 2 similar 8-beat source phrases on that track, so the track length becomes 24 beats. YamJJazz will consider the 2 appended phrases as alternate source phrases of the first source phrase, to be used randomly when rendering the Main A-1 bass part.

Note that 2 alternate source phrases must be also added for all the other Main A-1 tracks: Main A-1-drums-8, Main A-1-guitar-8 and Main A-1-guitar_root-8.

If you have for example 3 source phrases for Main A-1, JJazzLab will randomly pick a source phrase every 2 bars. The selection is actually not 100% random: the first source phrase has more chances to be selected than the second one, and the second one has more chances to be selected than the third one, etc. In other words the last source phrase has the least chances to get selected.

Song structure

Use the song structure editor to:

  • Define the order of sections, eg "AABA", "verse verse chorus verse", ...

  • Select the rhythm(s) to be used

  • Adjust the rhythm parameters to introduce dynamics, eg variation, intensity, fill, muted instrument, ...

Song parts

A song part is linked to a parent section of the chord lead sheet.

A song part has a name, a rhythm and a value for each of the rhythm parameters.

To add a new song part:

  • drag a section from the chord lead sheet into the song structure editor, or

  • right-click menu Insert, or

  • copy an existing song part: drag it while pressing the ctrl key, use copy & paste, or right-click menu Duplicate

By default the name of the song part is the name of the parent section. If the song part is renamed, the parent section is shown below the name.

If some contiguous song parts share the same name, then the name is displayed only on the first song part and a line is shown on the contiguous song parts. Clicking this line will select all the related song parts.

Song parts can be reordered by dragging them using the mouse.

Editing

You can modify the song part name, rhythm, and rhythm parameter values.

Edition is done directly from in the song structure editor using the mouse, or from the song part editor (see snapshot at the top of this page). Edited values will impact all the selected song parts or rhythm parameters.

Press R or click the rhythm name to open the rhythm selection dialog.

When changing the rhythm, JJazzLab tries to adapt the values of the previous rhythm parameters to the new rhythm parameters.

Midi can only accommodate 16 channels, and many rhythms use 7 or 8 instruments. That's why it's difficult in practical to have a song with more than 2 rhythms.

Mouse shortcuts

Selection

Mouse

Action

song part, rhythm param.

click

select

song part

double click

edit song part name

song part name

click

edit

rhythm

click

select a rhythm

editor, song part, rhythm param.

right-click

open popup menu

rhythm parameter

double-click

edit value

rhythm parameter

mouse wheel

change value

rhythm parameters

shift+mouse wheel

make values identical then change value

editor

ctrl mouse wheel

change X zoom factor

Keyboard shortcuts

Many actions are also available via the context menu (right-click on Windows/Linux, ctrl-click on Mac), and when available the associated shortcut is displayed.

Selection

Key

Action

song part, rhythm param.

enter

edit song part name

song part, rhythm param.

R

select rhythm

song part, rhythm param.

I

insert song part

song part, rhythm param.

ctrl-I

append song part

song part, rhythm param.

D

duplicate song part(s)

song part

delete

delete song part(s)

rhythm parameter

ctrl-up/down

next/previous value

rhythm parameter

Z

reset param. value

song part

ctrl-C/X/V

copy/cut/paste

editor

ctrl-Z/Y

undo/redo

editor

ctrl-F

zoom to fit width

Improve documentation

Any user can change the online doc

This site is hosted on the GitBook platform, which lets users update the documentation, like in a Wiki. Making changes is super easy because it's done directly in the internet browser, nothing to install.

If you want to make some changes just send me an email (here) I'll reply with a link to grant you write access rights to the JJazzLab GitBook.

If you're a GitHub user you can also use the Edit on GitHub button in the upper right of each page, or make a pull-request directly on the JJazzLab-X-UserGuide repository.

Translate the online doc

You can also help by fixing or adding new translations. Currently there is 2 languages, English and Japanese. If you language does not exist yet, contact me (here) so that I add a "GitBook variant" for that language.

Top contributors

H. Sakuda. : who created the Japanese doc pages

Translate JJazzLab

THANKS to the top translation contributors!

  • Chinese: Yafei

  • German: Hans Hahn, Torsten-Peh, helmutguitar, Ole Jenning, Samuel Buch

  • French: Daniel Patin, Hans Hahn

(top contributors are listed only for complete language packs)

It's easy

JJazzLab uses the crowdin.com platform, which makes it super easy to translate phrases, directly from your browser.

Who can do it?

Everyone, provided that you're a native speaker of the target language and you're familiar with music software terms.

How to start?

  • https://crwd.in/jjazzlab and register (it's free)

  • Choose a target language

  • Select a translation file (phrases are grouped per feature or UI component)

  • Pick an English phrase and translate it

Use ctrl-O (or upper-left menu Open) to open a different file. Done!

Crowdin provides many other translation facilities, like automatic translation proposals, possibility to request more info, a validation process, etc.

Recommendations & tips

  • The shorter the better Don't forget that your phrases will be part of the JJazzLab user interface.

  • Be consistent across translations If "leadsheet" is "xyz" in your language, try to reuse "xyz" whenever possible. Use the Glossary if a term is often reused.

  • Translate the Glossary first It's the last translation file at the bottom. It contains the most used terms found in JJazzLab, and helps maintain consistency across translations.

  • Proofreader role A proofreader validates maintains consistency and validate translation phrases. If you feel ready for this role, feel free to contact me.

  • Language missing? If you want to add a language not listed in Crowdin, feel free to contact me.

  • Want to try JJazzLab with the latest translation files? See this page.

Testing translations

If you can't wait for the next official JJazzLab release, you may want to try JJazzLab with the latest translation files, to see how it looks.

First you'll need to build JJazzLab-X from the source code, according to these instructions, but use the l10n_master branch instead of the master branch, as explained below:

Retrieve the JJazzLab-X code source project from GitHub

  1. Menu Team/Git/Clone

  2. Enter repository address https://github.com/jjazzboss/JJazzLab-X.git

  3. Leave user and password blank

  4. Press Next and select only the branch l10n_master (l10n means "localization")

  5. let Netbeans open the JJazzLab-X project from the cloned files

The l10n_master branch is a localization branch where Crowdin automatically pushes new translation files. Note that this synchronization is done every hour, so you may not see the latest changes. Also, if there are several translation candidates for one source phrase, only the validated one is pushed. If no translation is validated yet, Crowdin uses the first candidate.

Rhythm engines overview

The rhythms are made available by rhythm engines.

Thanks to its open-source and pluggable architecture, JJazzLab can host many different rhythm engines. If you’re a developer you can build your own quite easily!

A rhythm engine has one or more rhythm providers which propose a list of supported rhythms and the supported rhythm parameters. You can see the list of all available rhythm providers in the rhythm selection dialog.

JJazzLab currently includes one rhythm engine, YamJJazz, which is based on Yamaha styles. Its rhythm parameters are Variation, Intensity and Fill (other parameters such as Mute or Tempo Factor are generic and work with any rhythm).

Future rhythm engines

Here some examples of what could be developed using the JJazzLab-X infrastructure.

  • An AI-based jazz oriented engine with only one versatile rhythm which adapts to different contexts, like a real band (slow or fast tempo, walking bass or not, etc.).

  • A drum engine similar to the Logic Pro X virtual drummer

  • An engine able to adapt the backing track to a given melody

  • A ā€œmeta-engineā€ which lets you combine individual tracks from various rhythms (e.g. combine a hip-hop bass line with latin drums)

  • An engine able to read style files from Band-In-A-Box or other arranger keyboards such as Korg or Ketron

  • etc.

YamJJazz rhythm engine

JJazzLab embeds the YamJJazz rhythm generation engine. This engine reads and introduces a new format which adds more variations to existing Yamaha style files.

You can see below the 2 YamJJazz rhythm providers available in the rhythm selection dialog.

Yamaha styles
extended Yamaha style