| 1 | <!DOCTYPE book PUBLIC "-//OASIS//DTD DocBook V4.0//EN"> |
|---|
| 2 | |
|---|
| 3 | <book id="Hydrogen-manual" lang="en"> |
|---|
| 4 | |
|---|
| 5 | <bookinfo> |
|---|
| 6 | <title>Hydrogen Manual</title> |
|---|
| 7 | <authorgroup> |
|---|
| 8 | <author> |
|---|
| 9 | <firstname>Antonio</firstname> |
|---|
| 10 | <surname>Piraino</surname> |
|---|
| 11 | </author> |
|---|
| 12 | <author> |
|---|
| 13 | <firstname>Alessandro</firstname> |
|---|
| 14 | <surname>Cominu</surname> |
|---|
| 15 | </author> |
|---|
| 16 | </authorgroup> |
|---|
| 17 | |
|---|
| 18 | <date>22/may/2005</date> |
|---|
| 19 | |
|---|
| 20 | <abstract> |
|---|
| 21 | <para> |
|---|
| 22 | Hydrogen is a software synthesizer which can be used alone, emulating a drum machine based on patterns, or via an external MIDI keyboard/sequencer software. Hydrogen compiles on Linux/x86 and Mac OS X, although the latter is still experimental, so ask in the developers mailing list for further details. |
|---|
| 23 | </para> |
|---|
| 24 | </abstract> |
|---|
| 25 | </bookinfo> |
|---|
| 26 | |
|---|
| 27 | <!-- |
|---|
| 28 | ################### |
|---|
| 29 | # PRIMO CAPITOLO # |
|---|
| 30 | ################### |
|---|
| 31 | --> |
|---|
| 32 | |
|---|
| 33 | <chapter id="introduction"> |
|---|
| 34 | <title>Introduction</title> |
|---|
| 35 | |
|---|
| 36 | <sect1 id="download"> |
|---|
| 37 | <title>Download</title> |
|---|
| 38 | <para> |
|---|
| 39 | The latest stable version of hydrogen is available as a tarball at |
|---|
| 40 | <ulink url="http://www.hydrogen-music.org/?p=download">http://www.hydrogen-music.org</ulink>. |
|---|
| 41 | </para> |
|---|
| 42 | <para> |
|---|
| 43 | It is possible to download the latest source files directly from our subversion server with: |
|---|
| 44 | |
|---|
| 45 | <screen><prompt>bash$</prompt> <command>svn co http://svn.assembla.com/svn/hydrogen/trunk</command></screen> |
|---|
| 46 | |
|---|
| 47 | A certain release can be fetched with: |
|---|
| 48 | <screen><prompt>bash$</prompt> <command>svn co http://svn.assembla.com/svn/hydrogen/tags/0.9.3</command></screen> |
|---|
| 49 | </para> |
|---|
| 50 | |
|---|
| 51 | <para> |
|---|
| 52 | Compiling Hydrogen depends on the following libraries: |
|---|
| 53 | <itemizedlist mark='opencircle'> |
|---|
| 54 | <listitem> |
|---|
| 55 | <para>qt (>= 4.0) at <ulink url='http://www.trolltech.com'>http://www.trolltech.com</ulink></para> |
|---|
| 56 | </listitem> |
|---|
| 57 | <listitem> |
|---|
| 58 | <para>libsndfile at <ulink url='http://www.mega-nerd.com/libsndfile/'>http://www.mega-nerd.com/libsndfile/</ulink></para> |
|---|
| 59 | </listitem> |
|---|
| 60 | |
|---|
| 61 | <listitem> |
|---|
| 62 | <para>ALSA (>= 1.x) at <ulink url='http://www.alsa-project.com'>http://www.alsa-project.com</ulink> (only if you wish to use ALSA as audio driver)</para> |
|---|
| 63 | </listitem> |
|---|
| 64 | <listitem> |
|---|
| 65 | <para>Jack Audio Connection Kit (>= 0.80) at <ulink url='http://jackit.sourceforge.net'>http://jackit.sourceforge.net</ulink> (only if you wish to use Jack as audio driver)</para> |
|---|
| 66 | </listitem> |
|---|
| 67 | <listitem> |
|---|
| 68 | <para>PortAudio at <ulink url='http://www.portaudio.com'>http://www.portaudio.com</ulink> (only if you wish to use PortAudio as audio driver)</para> |
|---|
| 69 | </listitem> |
|---|
| 70 | <listitem> |
|---|
| 71 | <para>Flac at <ulink url='http://flac.sf.net'>http://flac.sf.net</ulink> (only if you wish to use flac samples)</para> |
|---|
| 72 | </listitem> |
|---|
| 73 | <listitem> |
|---|
| 74 | <para>ladspa at <ulink url='http://ladspa.org'>http://ladspa.org</ulink> (only if you wish to use ladspa effects)</para> |
|---|
| 75 | </listitem> |
|---|
| 76 | <listitem> |
|---|
| 77 | <para>liblrdf at <ulink url='http://liblrdf.sf.net'>http://liblrdf.sf.net</ulink> (only if you wish to use lrdf to categorise effects)</para> |
|---|
| 78 | </listitem> |
|---|
| 79 | <listitem> |
|---|
| 80 | <para>lash at <ulink url='http://lash.nongnu.org'>http://lash.nongnu.org</ulink> (only if you wish to use lash)</para> |
|---|
| 81 | </listitem> |
|---|
| 82 | </itemizedlist> |
|---|
| 83 | Please install them with your distribution's package manager. If you're running a debian-based system, |
|---|
| 84 | you can install the libraries with: |
|---|
| 85 | <screen><prompt>bash$</prompt><command> apt-get install libqt4-dev g++ libasound2-dev libjack-dev liblrdf0-dev libflac++-dev libtar-dev libsndfile1-dev |
|---|
| 86 | \ liblash-dev libportaudio-dev libportmidi-dev </command></screen> |
|---|
| 87 | </para> |
|---|
| 88 | </sect1> |
|---|
| 89 | |
|---|
| 90 | <sect1 id="compilazione"> |
|---|
| 91 | <title>Build</title> |
|---|
| 92 | <para> |
|---|
| 93 | Decompress the tarball or go to the directory where the subversion copy was checked out: |
|---|
| 94 | <screen> |
|---|
| 95 | <prompt>$</prompt> <command>cd hydrogen-*</command> |
|---|
| 96 | <prompt>$</prompt> <command>scons</command> |
|---|
| 97 | <prompt>$</prompt> <command>su -c "scons install"</command> |
|---|
| 98 | </screen> |
|---|
| 99 | </para> |
|---|
| 100 | |
|---|
| 101 | <para> |
|---|
| 102 | Before compiling, check for additional options with: |
|---|
| 103 | <screen> |
|---|
| 104 | <prompt>$</prompt><command>scons --help</command> |
|---|
| 105 | </screen> |
|---|
| 106 | |
|---|
| 107 | If you want to use features which are not enabled by default (for instance PortAudio), you can enable them with: |
|---|
| 108 | <screen> |
|---|
| 109 | <prompt>$</prompt><command>scons portaudio=1</command> |
|---|
| 110 | </screen> |
|---|
| 111 | |
|---|
| 112 | Namely, if you get some error while running Hydrogen and you want to report it remember to configure hydrogen with: |
|---|
| 113 | <screen> |
|---|
| 114 | <prompt>$</prompt><command>scons debug=1</command> |
|---|
| 115 | </screen> |
|---|
| 116 | |
|---|
| 117 | To clean up compiled code: |
|---|
| 118 | <screen> |
|---|
| 119 | <prompt>$</prompt><command>scons -c</command> |
|---|
| 120 | </screen> |
|---|
| 121 | </para> |
|---|
| 122 | </sect1> |
|---|
| 123 | |
|---|
| 124 | <!-- prokoudine ? |
|---|
| 125 | <sect1 id='basics'> |
|---|
| 126 | <title>[TODO] BASICS</title> |
|---|
| 127 | <para> |
|---|
| 128 | explain and develop basics about the technology behind software of this kind |
|---|
| 129 | </para> |
|---|
| 130 | </sect1> |
|---|
| 131 | --> |
|---|
| 132 | |
|---|
| 133 | <!-- |
|---|
| 134 | |
|---|
| 135 | mauser: In my opionon those driver informations are unnecessary here, moved to audio tab |
|---|
| 136 | |
|---|
| 137 | |
|---|
| 138 | <sect1 id="configurazioneAudioDriver"> |
|---|
| 139 | <title>Audio driver configuration</title> |
|---|
| 140 | <para> |
|---|
| 141 | It's very important to choose the proper audio driver for our system, since |
|---|
| 142 | the choice may influence quite much general performances. The choice is between |
|---|
| 143 | Oss audio driver, ALSA, PortAudio, CoreAudio and Jack audio driver. |
|---|
| 144 | </para> |
|---|
| 145 | |
|---|
| 146 | <sect2 id="jackDriver"> |
|---|
| 147 | <title>Jack audio driver</title> |
|---|
| 148 | <para> |
|---|
| 149 | The Jack driver is a professional audio server which permits very low lag and exchanges with other |
|---|
| 150 | audio software. <emphasis>We strongly recommend using this driver to have the best out of Hydrogen</emphasis>. |
|---|
| 151 | JACK server will start automatically if not already running. |
|---|
| 152 | </para> |
|---|
| 153 | </sect2> |
|---|
| 154 | |
|---|
| 155 | <sect2 id="alsaDriver"> |
|---|
| 156 | <title>ALSA audio driver</title> |
|---|
| 157 | <para> |
|---|
| 158 | the widely adopted Linux standard audio drivers |
|---|
| 159 | </para> |
|---|
| 160 | </sect2> |
|---|
| 161 | |
|---|
| 162 | <sect2 id="ossDriver"> |
|---|
| 163 | <title>OSS audio driver</title> |
|---|
| 164 | <para> |
|---|
| 165 | The Oss audio driver uses /dev/dsp and it's based on the OSS interface which is |
|---|
| 166 | supported by the vast majority of sound cards available for linux; this said, |
|---|
| 167 | the use of this audio driver blocks /dev/dsp until Hydrogen is closed i.e. unusable |
|---|
| 168 | by any other software. Use it as last resource. |
|---|
| 169 | </para> |
|---|
| 170 | </sect2> |
|---|
| 171 | |
|---|
| 172 | <sect2 id="portaudioDriver"> |
|---|
| 173 | <title>PortAudio audio driver</title> |
|---|
| 174 | <para> |
|---|
| 175 | an open-source multiplatform audio driver |
|---|
| 176 | </para> |
|---|
| 177 | </sect2> |
|---|
| 178 | |
|---|
| 179 | <sect2 id="coreaudioDriver"> |
|---|
| 180 | <title>CoreAudio audio driver</title> |
|---|
| 181 | <para> |
|---|
| 182 | a driver for Mac OS X (experimental) |
|---|
| 183 | </para> |
|---|
| 184 | </sect2> |
|---|
| 185 | </sect1> |
|---|
| 186 | --> |
|---|
| 187 | |
|---|
| 188 | |
|---|
| 189 | <sect1 id="AudioDriverPreferences"> |
|---|
| 190 | <title>Audio preferences</title> |
|---|
| 191 | <para> |
|---|
| 192 | First of all you should make shure that the audio engine is configured properly. |
|---|
| 193 | The preferences dialog can be accessed via the tools menu (tools -> preferences). |
|---|
| 194 | </para> |
|---|
| 195 | |
|---|
| 196 | |
|---|
| 197 | |
|---|
| 198 | <sect2 id="audioTab"> |
|---|
| 199 | <title>The Audio System tab</title> |
|---|
| 200 | |
|---|
| 201 | <para>From the "Audio System" tab (Fig. 1) it is possible to modify the audio driver being used (OSS, Jack, ALSA, PortAudio) with its buffer and sampling rate (unless using JACK, in this case the audio driver configuration should happen before starting the JACK server). |
|---|
| 202 | </para> |
|---|
| 203 | <para> |
|---|
| 204 | We can set some features of Hydrogen like "Enable track outputs" useful if you want to add effects to a single instrument with jack-rack. "Connect to Default Output Pair" connects the output to the default ports: uncheck this if you want to connect JACK output to other ports without disconnecting them first |
|---|
| 205 | </para> |
|---|
| 206 | <para> |
|---|
| 207 | Keep also an eye on the value of "Polyphony": depending on your CPU you may want to change the max simultaneous notes in order to prevent hydrogen from overunning the audio driver. |
|---|
| 208 | </para> |
|---|
| 209 | |
|---|
| 210 | |
|---|
| 211 | |
|---|
| 212 | <mediaobject> |
|---|
| 213 | <imageobject> |
|---|
| 214 | <imagedata fileref="img/PreferencesAudioSystem.png" format="png"> |
|---|
| 215 | </imageobject> |
|---|
| 216 | <caption> |
|---|
| 217 | <para> |
|---|
| 218 | <emphasis role="bold">Fig. 1</emphasis> The Audio System tab |
|---|
| 219 | </para> |
|---|
| 220 | </caption> |
|---|
| 221 | </mediaobject> |
|---|
| 222 | |
|---|
| 223 | |
|---|
| 224 | <para> |
|---|
| 225 | The following drivers are available: |
|---|
| 226 | </para> |
|---|
| 227 | |
|---|
| 228 | <itemizedList> |
|---|
| 229 | |
|---|
| 230 | <listitem> |
|---|
| 231 | <para> |
|---|
| 232 | <emphasis role='bold'>jackd</emphasis>: The Jack driver is a professional audio server which permits very low lag and exchanges with other |
|---|
| 233 | audio software. <emphasis>We strongly recommend using this driver to have the best out of Hydrogen</emphasis>. |
|---|
| 234 | JACK server will start automatically if not already running. |
|---|
| 235 | </para> |
|---|
| 236 | </listitem> |
|---|
| 237 | |
|---|
| 238 | <listitem> |
|---|
| 239 | <para> |
|---|
| 240 | <emphasis role='bold'>ALSA</emphasis>: |
|---|
| 241 | the widely adopted Linux standard audio drivers |
|---|
| 242 | </para> |
|---|
| 243 | </listitem> |
|---|
| 244 | |
|---|
| 245 | <listitem> |
|---|
| 246 | <para> |
|---|
| 247 | <emphasis role='bold'>OSS</emphasis>: |
|---|
| 248 | The Oss audio driver uses /dev/dsp and it's based on the OSS interface which is |
|---|
| 249 | supported by the vast majority of sound cards available for linux; this said, |
|---|
| 250 | the use of this audio driver blocks /dev/dsp until Hydrogen is closed i.e. unusable |
|---|
| 251 | by any other software. Use it as last resource. |
|---|
| 252 | </para> |
|---|
| 253 | </listitem> |
|---|
| 254 | |
|---|
| 255 | <listitem> |
|---|
| 256 | <para> |
|---|
| 257 | <emphasis role='bold'>PortAudio</emphasis>: |
|---|
| 258 | an open-source multiplatform audio driver |
|---|
| 259 | </para> |
|---|
| 260 | </listitem> |
|---|
| 261 | |
|---|
| 262 | <listitem> |
|---|
| 263 | <para> |
|---|
| 264 | <emphasis role='bold'>CoreAudio</emphasis>: |
|---|
| 265 | a driver for Mac OS X (experimental) |
|---|
| 266 | </para> |
|---|
| 267 | </listitem> |
|---|
| 268 | </itemizedList> |
|---|
| 269 | </sect2> |
|---|
| 270 | |
|---|
| 271 | <sect2 id="midiTab"> |
|---|
| 272 | <title>The Midi System tab</title> |
|---|
| 273 | <para> |
|---|
| 274 | The "Midi System" tab (Fig. 2) concerns the MIDI input. You can choose the MIDI driver and input, setup channels, binding actions to MIDI events. |
|---|
| 275 | </para> |
|---|
| 276 | |
|---|
| 277 | <mediaobject> |
|---|
| 278 | <imageobject> |
|---|
| 279 | <imagedata fileref="img/PreferencesMidiSystem.png" format="png"> |
|---|
| 280 | </imageobject> |
|---|
| 281 | <caption> |
|---|
| 282 | <para> |
|---|
| 283 | <emphasis role="bold">Fig. 2</emphasis> The MIDI System tab |
|---|
| 284 | </para> |
|---|
| 285 | </caption> |
|---|
| 286 | </mediaobject> |
|---|
| 287 | </sect2> |
|---|
| 288 | |
|---|
| 289 | <sect2 id="appearanceTab"> |
|---|
| 290 | <title>The Appearance tab</title> |
|---|
| 291 | <para> |
|---|
| 292 | The "Appearance" tab (Fig. 3) let's you to modify Hydrogen and QT graphical properties. |
|---|
| 293 | </para> |
|---|
| 294 | |
|---|
| 295 | <mediaobject> |
|---|
| 296 | <imageobject> |
|---|
| 297 | <imagedata fileref="img/PreferencesAppearance.png" format="png"> |
|---|
| 298 | </imageobject> |
|---|
| 299 | <caption> |
|---|
| 300 | <para> |
|---|
| 301 | <emphasis role="bold">Fig. 3</emphasis> The appearance tab |
|---|
| 302 | </para> |
|---|
| 303 | </caption> |
|---|
| 304 | </mediaobject> |
|---|
| 305 | </sect2> |
|---|
| 306 | |
|---|
| 307 | |
|---|
| 308 | <sect2 id="audioengineTab"> |
|---|
| 309 | <title>The Audio Engine tab</title> |
|---|
| 310 | <para> |
|---|
| 311 | The audio engine info is a window with various stats about Hydrogen and the audio driver. In case JACK is used, buffer and sampling rate should be set before starting Hydrogen (JACK automatically starts when an application tries to connect). |
|---|
| 312 | </para> |
|---|
| 313 | |
|---|
| 314 | <mediaobject> |
|---|
| 315 | <imageobject> |
|---|
| 316 | <imagedata fileref="img/AudioEngineInfoDialog.png" format="png"> |
|---|
| 317 | </imageobject> |
|---|
| 318 | <caption> |
|---|
| 319 | <para> |
|---|
| 320 | <emphasis role="bold">Fig. 4</emphasis> The Audio engine Info window |
|---|
| 321 | </para> |
|---|
| 322 | </caption> |
|---|
| 323 | </mediaobject> |
|---|
| 324 | </sect2> |
|---|
| 325 | </sect1> |
|---|
| 326 | </chapter> |
|---|
| 327 | |
|---|
| 328 | <!-- |
|---|
| 329 | #################### |
|---|
| 330 | # SECONDO CAPITOLO # |
|---|
| 331 | #################### |
|---|
| 332 | --> |
|---|
| 333 | |
|---|
| 334 | <chapter id="usingHydrogen"> |
|---|
| 335 | <title>Using Hydrogen</title> |
|---|
| 336 | |
|---|
| 337 | <sect1 id="usedFiles"> |
|---|
| 338 | <title>Used Filetypes</title> |
|---|
| 339 | <para>Before working with Hydrogen, please familiarize with these filetypes:</para> |
|---|
| 340 | <itemizedList> |
|---|
| 341 | <listitem> |
|---|
| 342 | <para><emphasis role='bold'>*.h2pattern</emphasis>: XML file describing a single pattern. Patterns are group of beats and are managed in the pattern editor.</para> |
|---|
| 343 | </listitem> |
|---|
| 344 | <listitem> |
|---|
| 345 | <para><emphasis role='bold'>*.h2song</emphasis>: XML file describing the whole song (or sequence). Songs are group of patterns with their properties and are manager using the song editor</para> |
|---|
| 346 | </listitem> |
|---|
| 347 | <listitem> |
|---|
| 348 | <para><emphasis role='bold'>*.h2playlist</emphasis>: XML file describing a playlist.A Playlist is a (ordered) group of songs.</para> |
|---|
| 349 | </listitem> |
|---|
| 350 | <listitem> |
|---|
| 351 | <para><emphasis role='bold'>*.h2drumkit</emphasis>: a compressed and archived folder containing all sound samples composing a drumkit and a description XML file. Drumkits are basically group of sound samples.</para> |
|---|
| 352 | </listitem> |
|---|
| 353 | </itemizedList> |
|---|
| 354 | </sect1> |
|---|
| 355 | |
|---|
| 356 | <sect1 id="mainMenu"> |
|---|
| 357 | <title>Main menu</title> |
|---|
| 358 | <para><emphasis role='bold'>Projects</emphasis>: this menu offers file related functions.</para> |
|---|
| 359 | <itemizedList> |
|---|
| 360 | |
|---|
| 361 | <listitem><para><emphasis role='italic'>New</emphasis> - Create a new song</para></listitem> |
|---|
| 362 | <listitem><para><emphasis role='italic'>Show Info</emphasis> - Set general properties of the song such as name, author, license and generic notes</para></listitem> |
|---|
| 363 | <listitem><para><emphasis role='italic'>Open</emphasis> - Open a song</para></listitem> |
|---|
| 364 | <listitem><para><emphasis role='italic'>Open Demo</emphasis> - Open a demo song (demo songs are stored in <emphasis role='italic'>$INSTALLPATH/share/hydrogen/data/demo_songs</emphasis>)</para></listitem> |
|---|
| 365 | <listitem><para><emphasis role='italic'>Open recent</emphasis> - Open a menu showing last used songs</para></listitem> |
|---|
| 366 | <listitem><para><emphasis role='italic'>Save</emphasis> - Save changes to current song</para></listitem> |
|---|
| 367 | <listitem><para><emphasis role='italic'>Save as</emphasis> - Save current song specifying a name (default path: <emphasis role='italic'>$HOME/.hydrogen/data/songs)</emphasis></para></listitem> |
|---|
| 368 | <listitem><para><emphasis role='italic'>Open pattern</emphasis> - Open a saved pattern belonging to the current drumkit</para></listitem> |
|---|
| 369 | <listitem><para><emphasis role='italic'>Export pattern as</emphasis> - Saves a pattern. It will be stored in <emphasis role='italic'>$HOME/.hydrogen/data/patterns/drumkit_name</emphasis></para></listitem> |
|---|
| 370 | <listitem><para><emphasis role='italic'>Export MIDI file</emphasis> - Export current song in MIDI format</para></listitem> |
|---|
| 371 | <listitem><para><emphasis role='italic'>Export song</emphasis> - Export current song in WAV format</para></listitem> |
|---|
| 372 | <listitem><para><emphasis role='italic'>Quit</emphasis> - Quit Hydrogen</para></listitem> |
|---|
| 373 | </itemizedList> |
|---|
| 374 | |
|---|
| 375 | |
|---|
| 376 | |
|---|
| 377 | <para><emphasis role='bold'>Instruments</emphasis>: this menu offers instruments and drumkit (sound libraries) functions.</para> |
|---|
| 378 | <itemizedList> |
|---|
| 379 | <listitem><para><emphasis role='italic'>Add instrument</emphasis> - Add a new instrument to your current drumkit</para></listitem> |
|---|
| 380 | <listitem><para><emphasis role='italic'>Clear all</emphasis> - Delete all instruments from the current drumkit</para></listitem> |
|---|
| 381 | <listitem><para><emphasis role='italic'>Save library</emphasis> - Saves all instruments settings (and their sound samples) in <emphasis role='italic'>$HOME/.hydrogen/data/library_name</emphasis></para></listitem> |
|---|
| 382 | <listitem><para><emphasis role='italic'>Export library</emphasis> - Compress all instruments samples and settings in a drumkit in <emphasis role='italic'>$HOME/.hydrogen/data/library_name</emphasis></para></listitem> |
|---|
| 383 | <listitem><para><emphasis role='italic'>Import library</emphasis> - Imports another drumkit from the local filesystem of download it from a remote location through an XML feed. The XML file that should be provided is <emphasis role='bold'>NOT</emphasis> RSS compliant (see <ulink url="http://www.hydrogen-music.org/feeds/drumkit_list.php" >Hydrogen website</ulink> for an example). To load another drumkit in your current working session of Hydrogen, read <ulink url="#rack">here</ulink>.</para></listitem> |
|---|
| 384 | </itemizedList> |
|---|
| 385 | |
|---|
| 386 | |
|---|
| 387 | <para><emphasis role='bold'>Tools</emphasis>: opens the mixer, the playlist editor, the instrument rack and the general preferences window.</para> |
|---|
| 388 | <itemizedList> |
|---|
| 389 | <listitem><para><emphasis role='italic'>Playlist editor</emphasis> - A tool to manage playlists.</para></listitem> |
|---|
| 390 | <listitem><para><emphasis role='italic'>Mixer</emphasis> - Open the mixer window.</para></listitem> |
|---|
| 391 | <listitem><para><emphasis role='italic'>Instrument rack</emphasis> - Open the instrument rack panel.</para></listitem> |
|---|
| 392 | <listitem><para><emphasis role='italic'>Preferences</emphasis> - Open the main preferences window. Read <ulink url="#prefs">here</ulink> on how to configure Hydrogen.</para></listitem> |
|---|
| 393 | </itemizedList> |
|---|
| 394 | |
|---|
| 395 | |
|---|
| 396 | <para><emphasis role='bold'>Debug</emphasis>: tools mainly for debugging and monitoring Hydrogen (only available when compiled with debug support).</para> |
|---|
| 397 | <itemizedList> |
|---|
| 398 | <listitem><para><emphasis role='italic'>Show audio engine info - </emphasis>Open a monitor with various <ulink url="#engine">stats</ulink></para></listitem> |
|---|
| 399 | <listitem><para><emphasis role='italic'>debug action - </emphasis> Insert debug commands.</para></listitem> |
|---|
| 400 | <listitem><para><emphasis role='italic'>Print Objects - </emphasis>Print on stdout current objects map.</para></listitem> |
|---|
| 401 | </itemizedList> |
|---|
| 402 | |
|---|
| 403 | |
|---|
| 404 | <para><emphasis role='bold'>Info</emphasis></para> |
|---|
| 405 | <itemizedList> |
|---|
| 406 | <listitem><para><emphasis role='italic'>User manual - </emphasis>Open a window with this manual :)</para></listitem> |
|---|
| 407 | <listitem><para><emphasis role='italic'>About - </emphasis>The usual window with licence information, acknowledgements, etc.</para></listitem> |
|---|
| 408 | </itemizedList> |
|---|
| 409 | |
|---|
| 410 | |
|---|
| 411 | |
|---|
| 412 | |
|---|
| 413 | |
|---|
| 414 | |
|---|
| 415 | |
|---|
| 416 | <sect1 id="main"> |
|---|
| 417 | <title>The main toolbar</title> |
|---|
| 418 | <para>Before analyzing the two main frames of Hydrogen, let's take a quick look at the main toolbar and its components:</para> |
|---|
| 419 | |
|---|
| 420 | <itemizedList> |
|---|
| 421 | <listitem><para>Pilot the song using the start, stop, pause, etc. buttons</listitem> |
|---|
| 422 | <listitem><para>Choose between "pattern" or "song" mode: in "pattern" mode only the currently selected pattern will play, while in "song" mode all patterns inserted will be played.</listitem> |
|---|
| 423 | <listitem><para>An advanced tap tempo function: choose note length and how many notes to wait before recalculating BPM, then click the comma key repeatedly until the 'R' letter will appear and the BPM will be updated.</listitem> |
|---|
| 424 | <listitem><para>Manually set BPM</listitem> |
|---|
| 425 | <listitem><para>Manage JACK transport</listitem> |
|---|
| 426 | <listitem><para>Open the mixer and the instrument rack panels</listitem> |
|---|
| 427 | </itemizedList> |
|---|
| 428 | |
|---|
| 429 | |
|---|
| 430 | <mediaobject> |
|---|
| 431 | <imageobject> |
|---|
| 432 | |
|---|
| 433 | <imagedata fileref="img/MainToolbar.png" format="png"> |
|---|
| 434 | |
|---|
| 435 | </imageobject> |
|---|
| 436 | <caption> |
|---|
| 437 | <para><emphasis role="bold">Fig. 5 </emphasis> The main toolbar</para> |
|---|
| 438 | </caption> |
|---|
| 439 | </mediaobject> |
|---|
| 440 | |
|---|
| 441 | |
|---|
| 442 | <itemizedlist mark="opencircle"> |
|---|
| 443 | <listitem><para><inlinemediaobject><imageobject> |
|---|
| 444 | <imagedata fileref="img/background_Control.png" format="png"> |
|---|
| 445 | </imageobject></inlinemediaobject> |
|---|
| 446 | </para><para>Main controls to start <emphasis role="bold">[Hotkey = Spacebar]</emphasis>, stop, fast forward, rewind, loop a song or a pattern.</para> |
|---|
| 447 | </listitem> |
|---|
| 448 | |
|---|
| 449 | <listitem><para><inlinemediaobject><imageobject> |
|---|
| 450 | <imagedata fileref="img/background_Mode.png" format="png"> |
|---|
| 451 | </imageobject></inlinemediaobject></para><para>Set Pattern/Song Mode.</para></listitem> |
|---|
| 452 | |
|---|
| 453 | <listitem><para><inlinemediaobject><imageobject> |
|---|
| 454 | <imagedata fileref="img/background_BPM.png" format="png"> |
|---|
| 455 | </imageobject></inlinemediaobject></para><para>Set speed of playing (range: 30-400 bpm) <emphasis role="bold">[Hotkey = mouse wheel]</emphasis> and button to enable/disable metronome</para></listitem> |
|---|
| 456 | |
|---|
| 457 | <listitem><para><inlinemediaobject><imageobject> |
|---|
| 458 | <imagedata fileref="img/cpuload.png" format="png"> |
|---|
| 459 | </imageobject></inlinemediaobject></para><para>Shows CPU load.</para></listitem> |
|---|
| 460 | |
|---|
| 461 | <listitem><para><inlinemediaobject><imageobject> |
|---|
| 462 | <imagedata fileref="img/midi_in.png" format="png"> |
|---|
| 463 | </imageobject></inlinemediaobject></para><para>Shows MIDI events.</para></listitem> |
|---|
| 464 | |
|---|
| 465 | <listitem><para><inlinemediaobject><imageobject> |
|---|
| 466 | <imagedata fileref="img/jack_transport.png" format="png"> |
|---|
| 467 | </imageobject></inlinemediaobject></para><para>Click to enable Jack transport: Hydrogen will work as 'slave' with another 'master' program (e.g. Ardour). This applet is only available if Jack Audio Driver is selected.</para></listitem> |
|---|
| 468 | </itemizedlist> |
|---|
| 469 | |
|---|
| 470 | <para>Other useful keybindings (not customizable for the moment):</para> |
|---|
| 471 | |
|---|
| 472 | <itemizedlist mark='opencircle'> |
|---|
| 473 | <listitem> |
|---|
| 474 | <para> |
|---|
| 475 | <emphasis role="bold">[CTRL + O]</emphasis> = Open File |
|---|
| 476 | </para> |
|---|
| 477 | </listitem> |
|---|
| 478 | <listitem> |
|---|
| 479 | <para> |
|---|
| 480 | <emphasis role="bold">[CTRL + S]</emphasis> = Save File |
|---|
| 481 | </para> |
|---|
| 482 | </listitem> |
|---|
| 483 | <listitem> |
|---|
| 484 | <para> |
|---|
| 485 | <emphasis role="bold">[Backspace]</emphasis> = Restart song or pattern from the beginning |
|---|
| 486 | </para> |
|---|
| 487 | </listitem> |
|---|
| 488 | </itemizedlist> |
|---|
| 489 | |
|---|
| 490 | </sect1> |
|---|
| 491 | |
|---|
| 492 | <sect1 id="songEditor"> |
|---|
| 493 | <title>Song Editor</title> |
|---|
| 494 | |
|---|
| 495 | <para> |
|---|
| 496 | The "Song Editor" (Fig. 6) gives an overview of the whole timeline of the song (e.g. intro, verse, bridge, chorus and so on); each blue coloured square on this panel is a complete bar as shown in the underlying "Pattern Editor" panel. Here we have complete freedom to add, remove or move patterns in any order we prefer. We can also copy and paste patterns: use left mouse button to highlight an area and drag it around. Dragging with CTRL key pressed copies the patterns. |
|---|
| 497 | </para> |
|---|
| 498 | |
|---|
| 499 | <para> |
|---|
| 500 | The Song Editor comes with 7 buttons: |
|---|
| 501 | </para> |
|---|
| 502 | <para> |
|---|
| 503 | <inlinemediaobject> |
|---|
| 504 | <imageobject> |
|---|
| 505 | <imagedata fileref="img/bg_topPanel.png" format="png"> |
|---|
| 506 | </imageobject> |
|---|
| 507 | </inlinemediaobject> |
|---|
| 508 | </para> |
|---|
| 509 | |
|---|
| 510 | <itemizedlist mark='opencircle'> |
|---|
| 511 | |
|---|
| 512 | <listitem> |
|---|
| 513 | <para><inlinemediaobject><imageobject> |
|---|
| 514 | <imagedata fileref="img/btn_clear_off.png" format="png"> |
|---|
| 515 | </imageobject></inlinemediaobject> Completely delete all patterns (asks for confirmation!). |
|---|
| 516 | </para> |
|---|
| 517 | </listitem> |
|---|
| 518 | |
|---|
| 519 | <listitem> |
|---|
| 520 | <para><inlinemediaobject><imageobject> |
|---|
| 521 | <imagedata fileref="img/btn_new_on.png" format="png"> |
|---|
| 522 | </imageobject></inlinemediaobject> Create a new pattern (and asks for a name). |
|---|
| 523 | </para> |
|---|
| 524 | </listitem> |
|---|
| 525 | |
|---|
| 526 | <listitem> |
|---|
| 527 | <para><inlinemediaobject><imageobject> |
|---|
| 528 | <imagedata fileref="img/btn_updown.png" format="png"> |
|---|
| 529 | </imageobject></inlinemediaobject> Move currently selected pattern up or down. |
|---|
| 530 | </para> |
|---|
| 531 | </listitem> |
|---|
| 532 | |
|---|
| 533 | |
|---|
| 534 | |
|---|
| 535 | <listitem> |
|---|
| 536 | <para><inlinemediaobject><imageobject> |
|---|
| 537 | <imagedata fileref="img/btn_select.png" format="png"> |
|---|
| 538 | </imageobject></inlinemediaobject> Enable selecting patterns for copy & paste (Select Mode). |
|---|
| 539 | </para> |
|---|
| 540 | </listitem> |
|---|
| 541 | |
|---|
| 542 | <listitem> |
|---|
| 543 | <para><inlinemediaobject><imageobject> |
|---|
| 544 | <imagedata fileref="img/btn_draw.png" format="png"> |
|---|
| 545 | </imageobject></inlinemediaobject> Enable Draw Mode. |
|---|
| 546 | </para> |
|---|
| 547 | </listitem> |
|---|
| 548 | |
|---|
| 549 | <listitem> |
|---|
| 550 | <para><inlinemediaobject><imageobject> |
|---|
| 551 | <imagedata fileref="img/btn_pattern_mode.png" format="png"> |
|---|
| 552 | </imageobject></inlinemediaobject> Switch from "Single pattern mode" to "Stacked pattern mode" and back.. |
|---|
| 553 | </para> |
|---|
| 554 | </listitem> |
|---|
| 555 | </itemizedlist> |
|---|
| 556 | |
|---|
| 557 | <para> |
|---|
| 558 | Under these buttons there is a list of patterns created and when they will played (each square == 1 bar). Click |
|---|
| 559 | on an squarebox to add or cancel the pattern. Clicking on right mouse button over the name of a pattern will bring up a menu to change name of the pattern or to allow copying/deleting it. Patterns with very same name are not allowed. |
|---|
| 560 | </para> |
|---|
| 561 | |
|---|
| 562 | <mediaobject> |
|---|
| 563 | <imageobject> |
|---|
| 564 | <imagedata fileref="img/SongEditor.png" format="png"> |
|---|
| 565 | </imageobject> |
|---|
| 566 | <caption> |
|---|
| 567 | <para> |
|---|
| 568 | <emphasis role="bold">Fig. 6</emphasis> The Song Editor |
|---|
| 569 | </para> |
|---|
| 570 | </caption> |
|---|
| 571 | </mediaobject> |
|---|
| 572 | |
|---|
| 573 | </sect1> |
|---|
| 574 | |
|---|
| 575 | <sect1 id="patternEditor"> |
|---|
| 576 | <title>Pattern Editor</title> |
|---|
| 577 | <para> |
|---|
| 578 | The "Pattern Editor" frame (Fig. 7) lets us create or modify the pattern (bar) which is being played, or add/remove notes and tune intensity as well. On the higher-left side you find a pair of LCD screens: the first one lets you choose the size of a pattern while the second represents the current grid resolution (4 through 64). |
|---|
| 579 | |
|---|
| 580 | Selecting an instrument which has at least one note in the pattern will show a few vertical bars (one per note) on the lowest part of this frame. Those frame shows the so called "note properties". This are special properties which can be set for every |
|---|
| 581 | single note. Hydrogen knows of 3 Properties: Velocity, Pan and Lead/Lag. Lead and Lag allows a slight note lead or lag in respect of the actual beat. The range is ca. 5 ticks which equals around ca. 10 ms at a tempo of 120bpm. |
|---|
| 582 | </para> |
|---|
| 583 | |
|---|
| 584 | <para> |
|---|
| 585 | The button |
|---|
| 586 | <inlinemediaobject> |
|---|
| 587 | <imageobject> |
|---|
| 588 | <imagedata fileref="img/btn_hear_on.png" format="png"> |
|---|
| 589 | </imageobject> |
|---|
| 590 | </inlinemediaobject> |
|---|
| 591 | |
|---|
| 592 | (hear new notes) will play the sample as it's been added to the pattern. Finally you can move an instrument up and down in the sequence with the buttons |
|---|
| 593 | |
|---|
| 594 | <inlinemediaobject> |
|---|
| 595 | <imageobject> |
|---|
| 596 | <imagedata fileref="img/btn_updown.png" format="png"> |
|---|
| 597 | </imageobject> |
|---|
| 598 | </inlinemediaobject> |
|---|
| 599 | |
|---|
| 600 | . A useful <quote>Quantize</quote> feature is available activating |
|---|
| 601 | |
|---|
| 602 | <inlinemediaobject> |
|---|
| 603 | <imageobject> |
|---|
| 604 | <imagedata fileref="img/btn_quant_off.png" format="png"> |
|---|
| 605 | </imageobject> |
|---|
| 606 | </inlinemediaobject> |
|---|
| 607 | |
|---|
| 608 | . This way the beats inserted will automatically respect the grid resolution currently applied. |
|---|
| 609 | </para> |
|---|
| 610 | |
|---|
| 611 | <mediaobject> |
|---|
| 612 | <imageobject> |
|---|
| 613 | <imagedata fileref="img/PatternEditor.png" format="png"> |
|---|
| 614 | </imageobject> |
|---|
| 615 | <caption> |
|---|
| 616 | <para> |
|---|
| 617 | <emphasis role="bold">Fig. 7</emphasis> The Pattern Editor |
|---|
| 618 | </para> |
|---|
| 619 | </caption> |
|---|
| 620 | |
|---|
| 621 | </mediaobject> |
|---|
| 622 | |
|---|
| 623 | <para> |
|---|
| 624 | Rememeber this constraint concerning the grid: if you are working with a resolution of 16 you can't go back to 8 and remove a 16th note; on the other hand if you are working with a resolution of 8 and you try to insert a note in the middle of two bars (looking for a 16 bars precision), notes will be placed in the previous or in the following 8th bar. |
|---|
| 625 | This contraint can be removed if you disable the whole grid resolution (choose "off" from the grid resolution LCD control). Now you'll be able to place notes wherever you prefer. |
|---|
| 626 | </para> |
|---|
| 627 | |
|---|
| 628 | <para> |
|---|
| 629 | Each instrument has its own set of features accessible right-clicking with your mouse on it; <quote><emphasis role="bold">Fill/Clear notes</emphasis></quote> fills or deletes every note of that instrument in the current pattern (remember that filling a pattern is always relative to the grid resolution set) and finally <quote><emphasis role="bold">Randomize velocity</emphasis></quote> automatically apply a pseudo-random velocity to each note of that instrument in the pattern. The more velocity you set on the instrument, the more hydrogen will hit <quote>hard</quote> on that instrument when played. |
|---|
| 630 | </para> |
|---|
| 631 | |
|---|
| 632 | <para> |
|---|
| 633 | The small green and red squares beside the instrument name are the <quote><emphasis role="bold">mute</emphasis></quote> and <quote><emphasis role="bold">solo</emphasis></quote> buttons. |
|---|
| 634 | </para> |
|---|
| 635 | |
|---|
| 636 | <mediaobject> |
|---|
| 637 | <imageobject> |
|---|
| 638 | <imagedata fileref="img/PatternEditorInstr.png" format="png"> |
|---|
| 639 | </imageobject> |
|---|
| 640 | </mediaobject> |
|---|
| 641 | |
|---|
| 642 | <para>Also, you can set new beats clicking on |
|---|
| 643 | |
|---|
| 644 | <inlinemediaobject> |
|---|
| 645 | <imageobject> |
|---|
| 646 | <imagedata fileref="img/btn_record_over.png" format="png"> |
|---|
| 647 | </imageobject> |
|---|
| 648 | </inlinemediaobject> |
|---|
| 649 | |
|---|
| 650 | which enables direct input by MIDI events or by keyboard according to the following map key=instrument:</para> |
|---|
| 651 | |
|---|
| 652 | <para><emphasis>Note that the name of the instrument depends on the drumkit loaded. This list refers to the GMKit loaded by default. The position of the instrument, however, is the same.</emphasis></para> |
|---|
| 653 | |
|---|
| 654 | <itemizedlist> |
|---|
| 655 | <listitem><para>Z = Kick</para></listitem> |
|---|
| 656 | <listitem><para>X = Snare Jazz</para></listitem> |
|---|
| 657 | <listitem><para>C = Snare Rock</para></listitem> |
|---|
| 658 | <listitem><para>V = Tom Low</para></listitem> |
|---|
| 659 | <listitem><para>B = Tom Mid</para></listitem> |
|---|
| 660 | <listitem><para>N = Tom Hi</para></listitem> |
|---|
| 661 | <listitem><para>M = Cowbell</para></listitem> |
|---|
| 662 | <listitem><para>Q = Ride Jazz</para></listitem> |
|---|
| 663 | <listitem><para>W = Ride Rock</para></listitem> |
|---|
| 664 | <listitem><para>E = Instrument No. 17 (currently not assigned)</para></listitem> |
|---|
| 665 | <listitem><para>R = Instrument No. 18 (currently not assigned)</para></listitem> |
|---|
| 666 | <listitem><para>T = Instrument No. 20 (currently not assigned)</para></listitem> |
|---|
| 667 | <listitem><para>Y = Instrument No. 22 (currently not assigned)</para></listitem> |
|---|
| 668 | <listitem><para>U = Instrument No. 24 (currently not assigned)</para></listitem> |
|---|
| 669 | <listitem><para>S = Stick</para></listitem> |
|---|
| 670 | <listitem><para>D = Hand Clap</para></listitem> |
|---|
| 671 | <listitem><para>G = Closed HH</para></listitem> |
|---|
| 672 | <listitem><para>H = Pedal HH</para></listitem> |
|---|
| 673 | <listitem><para>J = Open HH</para></listitem> |
|---|
| 674 | <listitem><para>2 = Crash</para></listitem> |
|---|
| 675 | <listitem><para>3 = Crash Jazz</para></listitem> |
|---|
| 676 | <listitem><para>5 = Instrument No. 19 (currently not assigned)</para></listitem> |
|---|
| 677 | <listitem><para>6 = Instrument No. 21 (currently not assigned)</para></listitem> |
|---|
| 678 | <listitem><para>7 = Instrument No. 23 (currently not assigned)</para></listitem> |
|---|
| 679 | </itemizedlist> |
|---|
| 680 | |
|---|
| 681 | |
|---|
| 682 | <para>Here's a quick reference of the above bindings for your convenience. See <link linkend='creazioneSong'>Chapter 3</link> for a basic walkthrough of how the pattern editor works.</para> |
|---|
| 683 | |
|---|
| 684 | <mediaobject> |
|---|
| 685 | <imageobject> |
|---|
| 686 | <imagedata fileref="img/tastiera.png" format="png"> |
|---|
| 687 | </imageobject> |
|---|
| 688 | </mediaobject> |
|---|
| 689 | |
|---|
| 690 | </sect1> |
|---|
| 691 | |
|---|
| 692 | <sect1 id="mixer"> |
|---|
| 693 | <title>Mixer</title> |
|---|
| 694 | |
|---|
| 695 | <mediaobject> |
|---|
| 696 | <imageobject> |
|---|
| 697 | <imagedata fileref="img/Mixer.png" format="png"> |
|---|
| 698 | </imageobject> |
|---|
| 699 | <caption> |
|---|
| 700 | <para> |
|---|
| 701 | <emphasis role="bold">Fig. 8</emphasis> The Mixer |
|---|
| 702 | </para> |
|---|
| 703 | </caption> |
|---|
| 704 | </mediaobject> |
|---|
| 705 | |
|---|
| 706 | <para>The Mixer frame (Fig. 8) is useful for tuning a global or single volume of the current drumkit. It shows the current peak (click on |
|---|
| 707 | |
|---|
| 708 | <inlinemediaobject> |
|---|
| 709 | <imageobject> |
|---|
| 710 | <imagedata fileref="img/showPeaks_on.png" format="png"> |
|---|
| 711 | </imageobject> |
|---|
| 712 | </inlinemediaobject> |
|---|
| 713 | |
|---|
| 714 | to disable, useful on old CPUs) and let you set the maximum peak allowed (tune with the fader knob of the instrument), lets you modify attributes like pan, play solo |
|---|
| 715 | |
|---|
| 716 | <inlinemediaobject> |
|---|
| 717 | <imageobject> |
|---|
| 718 | <imagedata fileref="img/btn_solo_on.png" format="png"> |
|---|
| 719 | </imageobject> |
|---|
| 720 | </inlinemediaobject> |
|---|
| 721 | |
|---|
| 722 | , mute |
|---|
| 723 | |
|---|
| 724 | <inlinemediaobject> |
|---|
| 725 | <imageobject> |
|---|
| 726 | <imagedata fileref="img/btn_mute_on.png" format="png"> |
|---|
| 727 | </imageobject> |
|---|
| 728 | </inlinemediaobject> |
|---|
| 729 | |
|---|
| 730 | or test play only that instrument |
|---|
| 731 | |
|---|
| 732 | <inlinemediaobject> |
|---|
| 733 | <imageobject> |
|---|
| 734 | <imagedata fileref="img/btn_play_on_mixer.png" format="png"> |
|---|
| 735 | </imageobject> |
|---|
| 736 | </inlinemediaobject> |
|---|
| 737 | |
|---|
| 738 | ; selecting in the Pattern Editor an instrument causes a blue LED to light on (near the play button). Near the global volume knob, you can set 3 global effect such a swing (shifts a few notes back or forward not randomly), timing (modify timings of the notes) and humanize effect (random velocity editing). |
|---|
| 739 | </para> |
|---|
| 740 | |
|---|
| 741 | <para> |
|---|
| 742 | In addition to all this you can set up to 4 special LADSPA effects for each instrument switching the |
|---|
| 743 | |
|---|
| 744 | <inlinemediaobject> |
|---|
| 745 | <imageobject> |
|---|
| 746 | <imagedata fileref="img/showFX_on.png" format="png"> |
|---|
| 747 | </imageobject> |
|---|
| 748 | </inlinemediaobject> |
|---|
| 749 | |
|---|
| 750 | button. See next section for a detailed overview. |
|---|
| 751 | |
|---|
| 752 | <mediaobject> |
|---|
| 753 | <imageobject> |
|---|
| 754 | <imagedata fileref="img/MixerFX.png" format="png"> |
|---|
| 755 | </imageobject> |
|---|
| 756 | </mediaobject> |
|---|
| 757 | |
|---|
| 758 | </para> |
|---|
| 759 | |
|---|
| 760 | </sect1> |
|---|
| 761 | |
|---|
| 762 | <sect1 id="drumkit"> |
|---|
| 763 | <title>The Drumkit Manager</title> |
|---|
| 764 | |
|---|
| 765 | <para> |
|---|
| 766 | To be written. |
|---|
| 767 | </para> |
|---|
| 768 | </sect1> |
|---|
| 769 | <sect1 id="instrumentediting"> |
|---|
| 770 | <title>Drumkits and Instrument Editing</title> |
|---|
| 771 | |
|---|
| 772 | <para>Creating a new drumkit with Hydrogen is done with the |
|---|
| 773 | Instrument Editor. Using the instrument editor you can load |
|---|
| 774 | samples, set envelope parameters, set the gain, and a few other |
|---|
| 775 | advanced features like mute groups, low-pass resonance filter, |
|---|
| 776 | and pitch randomization.</para> |
|---|
| 777 | |
|---|
| 778 | <para>Instead of creating your own drumkit, you can also use or |
|---|
| 779 | download existing drumkits using |
|---|
| 780 | the <link linkend="drumkit">Drumkit Manager</link>.</para> |
|---|
| 781 | |
|---|
| 782 | <!-- Need to add an explaination of what the instrument list |
|---|
| 783 | and instrument editor are. --> |
|---|
| 784 | |
|---|
| 785 | <sect2 id="instrumentediting.concepts"> |
|---|
| 786 | <title>Concepts</title> |
|---|
| 787 | |
|---|
| 788 | <para> |
|---|
| 789 | The synthesizer in Hydrogen is a sample-based synthesizer. A |
|---|
| 790 | sample is a piece of pre-recorded audio (usually between .1 |
|---|
| 791 | sec and 3 sec). To play a note, the sample is simply played |
|---|
| 792 | back at the right time. There's a few concepts and terms that |
|---|
| 793 | you should understand when you are putting together a drumkit. |
|---|
| 794 | (See the <link linkend="glossary">Glossary</link> for more |
|---|
| 795 | detailed explanations.) |
|---|
| 796 | </para> |
|---|
| 797 | |
|---|
| 798 | <variablelist> |
|---|
| 799 | <title>Sampling Synthesizer Terms</title> |
|---|
| 800 | <varlistentry> |
|---|
| 801 | <term>Sample</term><listitem><para>A short recording of a |
|---|
| 802 | sound, typically between .1 and 3.0 seconds |
|---|
| 803 | long.</para></listitem> |
|---|
| 804 | </varlistentry> |
|---|
| 805 | <varlistentry> |
|---|
| 806 | <term>Gain</term><listitem><para>Volume |
|---|
| 807 | adjustment.</para></listitem> |
|---|
| 808 | </varlistentry> |
|---|
| 809 | <varlistentry> |
|---|
| 810 | <term>Velocity</term><listitem><para>How hard you hit a |
|---|
| 811 | note.</para></listitem> |
|---|
| 812 | </varlistentry> |
|---|
| 813 | <varlistentry> |
|---|
| 814 | <term>ADSR Envelope Generator</term><listitem><para>An |
|---|
| 815 | Attack/Decay/Sustain/Release envelope generator. After you |
|---|
| 816 | trigger a note, Hydrogen |
|---|
| 817 | will <emphasis role="italics">attack</emphasis> the note by |
|---|
| 818 | increasing its volume from 0 to the full velocity of the |
|---|
| 819 | note. After reaching full velocity, it |
|---|
| 820 | will <emphasis role="italics">decay</emphasis> the note by |
|---|
| 821 | lowering the volume until it reaches |
|---|
| 822 | the <emphasis role="italics">sustain</emphasis> level. When |
|---|
| 823 | the note is <emphasis role="italics">released</emphasis>, |
|---|
| 824 | Hydrogen reduces the volume from the sustain level back down |
|---|
| 825 | to 0.</para></listitem> |
|---|
| 826 | </varlistentry> |
|---|
| 827 | <varlistentry> |
|---|
| 828 | <term>Attack</term><listitem><para>The amount |
|---|
| 829 | of <emphasis role="bold">time</emphasis> to go from 0 to |
|---|
| 830 | full velocity.</para></listitem> |
|---|
| 831 | </varlistentry> |
|---|
| 832 | <varlistentry> |
|---|
| 833 | <term>Decay</term><listitem><para>The amount |
|---|
| 834 | of <emphasis role="bold">time</emphasis> to go from full |
|---|
| 835 | velocity to the sustain volume.</para></listitem> |
|---|
| 836 | </varlistentry> |
|---|
| 837 | <varlistentry> |
|---|
| 838 | <term>Sustain</term><listitem><para>The <emphasis role="bold">level</emphasis> |
|---|
| 839 | (how loud) to hold the note between the sustain and the |
|---|
| 840 | release. It is a percentage of the velocity. It does not |
|---|
| 841 | depend on time.</para></listitem> |
|---|
| 842 | </varlistentry> |
|---|
| 843 | <varlistentry> |
|---|
| 844 | <term>Release</term><listitem><para>The amount |
|---|
| 845 | of <emphasis role="bold">time</emphasis> to go from the |
|---|
| 846 | sustain volume back down to 0.</para></listitem> |
|---|
| 847 | </varlistentry> |
|---|
| 848 | </variablelist> |
|---|
| 849 | |
|---|
| 850 | <para> |
|---|
| 851 | Typical samples that are used in Hydrogen are: the sound of a |
|---|
| 852 | single drum hit, the sound of a single cymbal hit, the sound |
|---|
| 853 | of a single cowbell hit. Whenever you put a note in the |
|---|
| 854 | pattern (or play a note using MIDI), Hydrogen will play |
|---|
| 855 | whatever sound you have loaded. So, to put together a drum |
|---|
| 856 | kit you need to gather short recordings of the bass drum, each |
|---|
| 857 | tom, each cymbal, the high hat open, the high hat closed, the |
|---|
| 858 | snare drum (snare on), the snare drum (snare off), rim shots, |
|---|
| 859 | etc. |
|---|
| 860 | </para> |
|---|
| 861 | |
|---|
| 862 | <para> |
|---|
| 863 | However, there are no rules about what a sample can be. It's |
|---|
| 864 | not uncommon to use Hydrogen to trigger non-drum sounds like: |
|---|
| 865 | audio clips of people talking, a clip from a song, sound |
|---|
| 866 | effects, audio clips from movies, and famous people speaking. |
|---|
| 867 | Be creative! |
|---|
| 868 | </para> |
|---|
| 869 | |
|---|
| 870 | </sect2> |
|---|
| 871 | <sect2 id="instrumentediting.newkit"> |
|---|
| 872 | <title>Creating a New Drumkit</title> |
|---|
| 873 | |
|---|
| 874 | <para>To start a brand new drum kit, select |
|---|
| 875 | <menuchoice> |
|---|
| 876 | <guimenu>Instruments</guimenu> |
|---|
| 877 | <guimenuitem>Clear All</guimenuitem> |
|---|
| 878 | </menuchoice>. |
|---|
| 879 | This will give you a bank of 32 blank instruments. To delete |
|---|
| 880 | instruments, right-click on on each instrument and select |
|---|
| 881 | <guimenuitem>Delete Instrument</guimenuitem>. To add |
|---|
| 882 | more instruments, select |
|---|
| 883 | <menuchoice> |
|---|
| 884 | <guimenu>Instruments</guimenu> |
|---|
| 885 | <guimenuitem>Add instrument</guimenuitem> |
|---|
| 886 | </menuchoice>. |
|---|
| 887 | </para> |
|---|
| 888 | |
|---|
| 889 | <para>Select an instrument to start editing it. This |
|---|
| 890 | is done by left-clicking on the name of the instrument in the |
|---|
| 891 | instrument list (at the left). You will notice that the name of |
|---|
| 892 | the instrument in the Instrument Editor matches the one that you |
|---|
| 893 | clicked.</para> |
|---|
| 894 | |
|---|
| 895 | <para>After you have your drum kit working the way you |
|---|
| 896 | want, select |
|---|
| 897 | <menuchoice> |
|---|
| 898 | <guimenuitem>Instruments</guimenuitem> |
|---|
| 899 | <guimenuitem>Save library</guimenuitem> |
|---|
| 900 | </menuchoice>. It will ask you for the name of the |
|---|
| 901 | kit to save. If you wish |
|---|
| 902 | to <emphasis>overwrite</emphasis> an existing kit, |
|---|
| 903 | you will need to type in the same name as the kit |
|---|
| 904 | that you want to replace.</para> |
|---|
| 905 | |
|---|
| 906 | <para>Drumkits are automatically stored in |
|---|
| 907 | the <filename class="directory">data</filename> |
|---|
| 908 | directory |
|---|
| 909 | (i.e. <filename class="directory">$HOME/data/drumkits</filename>).</para> |
|---|
| 910 | |
|---|
| 911 | <para>To export a drumkit (for sharing with others), |
|---|
| 912 | it must first be loaded into your Sound Library. |
|---|
| 913 | Then, select |
|---|
| 914 | <menuchoice> |
|---|
| 915 | <guimenuitem>Instruments</guimenuitem> |
|---|
| 916 | <guimenuitem>Export library</guimenuitem> |
|---|
| 917 | </menuchoice> |
|---|
| 918 | from the menu. Select the drum kit that you wish to |
|---|
| 919 | export, and give it a file name to save it to.</para> |
|---|
| 920 | |
|---|
| 921 | </sect2> |
|---|
| 922 | <sect2 id="instrumentediting.newinstrument"> |
|---|
| 923 | <title>Creating an Instrument</title> |
|---|
| 924 | |
|---|
| 925 | <para>For each instrument in a drum kit, you can load |
|---|
| 926 | several samples and set different synthesizer |
|---|
| 927 | parameters. This section will step you through how to |
|---|
| 928 | create a new instrument and load the samples.</para> |
|---|
| 929 | |
|---|
| 930 | <para>To begin creating an instrument, select |
|---|
| 931 | <menuchoice> |
|---|
| 932 | <guimenu>Instruments</guimenu> |
|---|
| 933 | <guimenuitem>Add instrument</guimenuitem> |
|---|
| 934 | </menuchoice>. This will give you a blank |
|---|
| 935 | instrument to start from.</para> |
|---|
| 936 | |
|---|
| 937 | <para>Now, you need two samples. Any .WAV or .FLAC file will |
|---|
| 938 | do. Hydrogen provides several in |
|---|
| 939 | the <filename class="directory">data/drumkits</filename> |
|---|
| 940 | directory.</para> |
|---|
| 941 | |
|---|
| 942 | <para>In the instrument editor, click |
|---|
| 943 | on <guibutton>Layers</guibutton>. You can layer several samples |
|---|
| 944 | into the instrument. Which one is played depends on the |
|---|
| 945 | velocity of the incoming note. Click <guibutton>Load |
|---|
| 946 | Layer</guibutton> and point the <guimenu>Audio File |
|---|
| 947 | Browser</guimenu> to your sample. Note that the <guimenu>Audio |
|---|
| 948 | File Browser</guimenu> will allow you to preview the sample |
|---|
| 949 | before you load it. It will also allow you to load more than |
|---|
| 950 | one sample at a time. But for now, only load one.</para> |
|---|
| 951 | |
|---|
| 952 | <para>After you load the sample, you'll see that there |
|---|
| 953 | is now a <guilabel>1</guilabel> at the top, and the |
|---|
| 954 | topmost rectangle has turned light blue. To load a |
|---|
| 955 | second sample, click the slot just below it, and then |
|---|
| 956 | click <guibutton>Load Layer</guibutton> to bring in |
|---|
| 957 | another sample.</para> |
|---|
| 958 | |
|---|
| 959 | <para>After bringing in both samples, you'll probably |
|---|
| 960 | notice that only the <emphasis>first</emphasis> sample |
|---|
| 961 | is being played whenever you trigger the instrument. |
|---|
| 962 | This is because you need to set |
|---|
| 963 | the <emphasis>velocity</emphasis> ranges for the |
|---|
| 964 | layers. Move your mouse to the sides of the light |
|---|
| 965 | blue rectangles and you see that you get a left-right |
|---|
| 966 | drag cursor. Now drag the sample to the left or right |
|---|
| 967 | (like a curtain). You will now see Layer 2 |
|---|
| 968 | appear.</para> |
|---|
| 969 | |
|---|
| 970 | <!-- TODO: Check to make sure this is right --> |
|---|
| 971 | <para>The velocity setting for the layer is 0-velocity |
|---|
| 972 | on the left, and full velocity on the right. Set up |
|---|
| 973 | Layer 1 to sound for soft notes, and Layer 2 to sound |
|---|
| 974 | for hard notes. (I.e. Layer 1 on the left and Layer 2 |
|---|
| 975 | on the right.)</para> |
|---|
| 976 | |
|---|
| 977 | <para>Now, in the pattern area, set up a simple |
|---|
| 978 | pattern that plays this instrument. Adjust the |
|---|
| 979 | velocity settings on each note so that you can get the |
|---|
| 980 | different samples to sound. Now set the pattern to |
|---|
| 981 | loop and notice how your different samples are getting |
|---|
| 982 | triggered. (To learn about editing a pattern, |
|---|
| 983 | see <xref linkend="patternEditor">)</para> |
|---|
| 984 | |
|---|
| 985 | </sect2> |
|---|
| 986 | </sect1> |
|---|
| 987 | |
|---|
| 988 | <sect1 id="ladspa"> |
|---|
| 989 | <title>LADSPA plugins</title> |
|---|
| 990 | <para>Hydrogen can also add effects to sounds using any LADSPA plugin library. You need to have installed the LADSPA sources (available from <ulink url="http://www.ladspa.org"><citetitle>http://www.ladspa.org</citetitle></ulink>) and while this will give a rough idea of how it works you should really have a taste of the real thing installing one or more of these libraries, it's as simple as a "make && make install":</para> |
|---|
| 991 | |
|---|
| 992 | <itemizedlist> |
|---|
| 993 | <listitem><para>SWH-Plugins available at <ulink url="http://plugin.org.uk"><citetitle>http://plugin.org.uk</citetitle></ulink>. Note that before compiling these plugins you need the FFTW tarball from <ulink url="http://www.fftw.org"><citetitle>http://www.fftw.org</citetitle></ulink>.</para></listitem> |
|---|
| 994 | |
|---|
| 995 | <listitem><para>CMT available at <ulink url="http://www.ladspa.org"><citetitle>http://www.ladspa.org</citetitle></ulink>.</para></listitem> |
|---|
| 996 | |
|---|
| 997 | <listitem><para>TAP available at <ulink url="http://tap-plugins.sf.net"><citetitle>http://tap-plugins.sf.net</citetitle></ulink>.</para></listitem> |
|---|
| 998 | |
|---|
| 999 | </itemizedlist> |
|---|
| 1000 | |
|---|
| 1001 | <para>Once you have installed a few plugins open a song you'd like add an effect to and select an instrument that has a few beats in the pattern. In the Mixer click on |
|---|
| 1002 | |
|---|
| 1003 | <inlinemediaobject> |
|---|
| 1004 | <imageobject> |
|---|
| 1005 | <imagedata fileref="img/showFX_on.png" format="png"> |
|---|
| 1006 | </imageobject> |
|---|
| 1007 | </inlinemediaobject> |
|---|
| 1008 | |
|---|
| 1009 | and select one of the four available effect line Click on the Edit button ( |
|---|
| 1010 | |
|---|
| 1011 | <inlinemediaobject> |
|---|
| 1012 | <imageobject> |
|---|
| 1013 | <imagedata fileref="img/edit_off.png" format="png"> |
|---|
| 1014 | </imageobject> |
|---|
| 1015 | </inlinemediaobject> |
|---|
| 1016 | |
|---|
| 1017 | ), than on <quote>Select the FX</quote>: this will bring up another window (Fig. 3) that lets you choose an effect amongst those installed, they are alphabetically sorted and categorized. Once you're done, adjust the level from the mixer and start playing. Each round knob in the FX part controls the level of its effect. If you want to quickly enable/disable the effect click the Bypass ( |
|---|
| 1018 | |
|---|
| 1019 | <inlinemediaobject> |
|---|
| 1020 | <imageobject> |
|---|
| 1021 | <imagedata fileref="img/bypass_over.png" format="png"> |
|---|
| 1022 | </imageobject> |
|---|
| 1023 | </inlinemediaobject>) |
|---|
| 1024 | |
|---|
| 1025 | |
|---|
| 1026 | button.</para> |
|---|
| 1027 | |
|---|
| 1028 | |
|---|
| 1029 | <mediaobject> |
|---|
| 1030 | <imageobject> |
|---|
| 1031 | <imagedata fileref="img/MixerFXSelect.png" format="png"> |
|---|
| 1032 | </imageobject> |
|---|
| 1033 | <caption> |
|---|
| 1034 | <para> |
|---|
| 1035 | <emphasis role="bold">Fig. 3</emphasis> Select an effect. |
|---|
| 1036 | </para> |
|---|
| 1037 | </caption> |
|---|
| 1038 | </mediaobject> |
|---|
| 1039 | |
|---|
| 1040 | </sect1> |
|---|
| 1041 | |
|---|
| 1042 | </chapter> |
|---|
| 1043 | |
|---|
| 1044 | <!-- |
|---|
| 1045 | ################## |
|---|
| 1046 | # CAPITOLO TERZO # |
|---|
| 1047 | ################# |
|---|
| 1048 | --> |
|---|
| 1049 | |
|---|
| 1050 | <chapter id="creazioneSong"> |
|---|
| 1051 | <title>A new song</title> |
|---|
| 1052 | <sect1 id="SongVSpattern"> |
|---|
| 1053 | <title>"Song" mode and "Pattern" mode</title> |
|---|
| 1054 | <para> |
|---|
| 1055 | This is just a quick-and-dirty walkthrough to Hydrogen. Refer to the tutorial for a more detailed overview. |
|---|
| 1056 | </para> |
|---|
| 1057 | |
|---|
| 1058 | <para> |
|---|
| 1059 | Hydrogen has 2 main modes: "Pattern" mode and "Song" mode (refer to <link linkend="main">this section</link> for the buttons to activate). When "Pattern" mode is activated the current pattern is continously repeated, so to help changing it until we don't like it, while "Song" mode repeats only the current pattern: this is useful when putting together the patterns, to create the whole structure for the song. |
|---|
| 1060 | </para> |
|---|
| 1061 | </sect1> |
|---|
| 1062 | |
|---|
| 1063 | <sect1 id="creazionePattern"> |
|---|
| 1064 | <title>A new pattern</title> |
|---|
| 1065 | <para> |
|---|
| 1066 | We'll start from an empty song with an empty pattern, as created by default: "pattern" mode should be selected now. It is also possible to change name of the pattern. Now let's click on the <quote>Play</quote> button and while the pattern is playing let's add notes in the grid of the Song Editor (Fig. 12) simply left_mouse_clicking on it: adjust grid resolution and BPM speed if needed. Rememeber some constraints of the grid: if you are working with a resolution of 16 you can't go back to 8 and remove a 16th note; same thing happens if you are working with a resolution of 8 and you try to insert a note in the middle of two bars (looking for a 16 bars precision): they will be placed on the previous or on the following 8th bar (unless you choose <quote>off</quote> from the Grid Resolution LCD, in this case you're free to place notes wherever you prefer). <emphasis role="bold">Be sure to select the correct pattern in the Song Editor before adding notes in the Pattern Editor!</emphasis> |
|---|
| 1067 | </para> |
|---|
| 1068 | |
|---|
| 1069 | <mediaobject> |
|---|
| 1070 | <imageobject> |
|---|
| 1071 | <imagedata fileref="img/PatternEditor.png" format="png"> |
|---|
| 1072 | </imageobject> |
|---|
| 1073 | <caption> |
|---|
| 1074 | <para> |
|---|
| 1075 | <emphasis role="bold">Fig. 12</emphasis> The Pattern Editor |
|---|
| 1076 | </para> |
|---|
| 1077 | </caption> |
|---|
| 1078 | </mediaobject> |
|---|
| 1079 | </sect1> |
|---|
| 1080 | |
|---|
| 1081 | <sect1 id="creazioneSequenza"> |
|---|
| 1082 | <title>A new sequence</title> |
|---|
| 1083 | <para> |
|---|
| 1084 | Once patterns are created (Fig. 13), we can copy/paste/delete them simply dragging with the mouse (activate the select mode for the Song Editor and keep pressed left mouse button to select those you want to move or copy). |
|---|
| 1085 | </para> |
|---|
| 1086 | |
|---|
| 1087 | <mediaobject> |
|---|
| 1088 | <imageobject> |
|---|
| 1089 | <imagedata fileref="img/SongEditor.png" format="png"> |
|---|
| 1090 | </imageobject> |
|---|
| 1091 | <caption> |
|---|
| 1092 | <para> |
|---|
| 1093 | <emphasis role="bold">Fig. 13</emphasis> Inserting notes in a pattern |
|---|
| 1094 | </para> |
|---|
| 1095 | </caption> |
|---|
| 1096 | </mediaobject> |
|---|
| 1097 | |
|---|
| 1098 | </sect1> |
|---|
| 1099 | |
|---|
| 1100 | <sect1 id="operazioniMixer"> |
|---|
| 1101 | <title>Adjust from the mixer</title> |
|---|
| 1102 | <para> |
|---|
| 1103 | Of course we can always use the mixer window, either when creating or playing patterns. |
|---|
| 1104 | </para> |
|---|
| 1105 | |
|---|
| 1106 | <para> |
|---|
| 1107 | The Mixer frame (Fig. 14) is made of 32 independent tracks, each of these is binded to an |
|---|
| 1108 | instrument, plus a "Master Output" line to adjust general output volume and a "FX" button to set effects. Every line features 3 buttons ( |
|---|
| 1109 | |
|---|
| 1110 | <inlinemediaobject> |
|---|
| 1111 | <imageobject> |
|---|
| 1112 | <imagedata fileref="img/btn_play_on_mixer.png" format="png"> |
|---|
| 1113 | </imageobject> |
|---|
| 1114 | </inlinemediaobject> |
|---|
| 1115 | |
|---|
| 1116 | <inlinemediaobject> |
|---|
| 1117 | <imageobject> |
|---|
| 1118 | <imagedata fileref="img/btn_solo_on.png" format="png"> |
|---|
| 1119 | </imageobject> |
|---|
| 1120 | </inlinemediaobject> |
|---|
| 1121 | |
|---|
| 1122 | <inlinemediaobject> |
|---|
| 1123 | <imageobject> |
|---|
| 1124 | <imagedata fileref="img/btn_mute_on.png" format="png"> |
|---|
| 1125 | </imageobject> |
|---|
| 1126 | </inlinemediaobject> |
|---|
| 1127 | |
|---|
| 1128 | ), pan adjust ( |
|---|
| 1129 | |
|---|
| 1130 | <inlinemediaobject> |
|---|
| 1131 | <imageobject> |
|---|
| 1132 | <imagedata fileref="img/MixerPan.png" format="png"> |
|---|
| 1133 | </imageobject> |
|---|
| 1134 | </inlinemediaobject> |
|---|
| 1135 | |
|---|
| 1136 | ), current maximum peak, volume fader and name of the track. Clicking on |
|---|
| 1137 | |
|---|
| 1138 | <inlinemediaobject> |
|---|
| 1139 | <imageobject> |
|---|
| 1140 | <imagedata fileref="img/btn_solo_on.png" format="png"> |
|---|
| 1141 | </imageobject> |
|---|
| 1142 | </inlinemediaobject> |
|---|
| 1143 | |
|---|
| 1144 | will play the selected instrument, cutting the others. The "Mute" |
|---|
| 1145 | button |
|---|
| 1146 | |
|---|
| 1147 | <inlinemediaobject> |
|---|
| 1148 | <imageobject> |
|---|
| 1149 | <imagedata fileref="img/btn_mute_on.png" format="png"> |
|---|
| 1150 | </imageobject> |
|---|
| 1151 | </inlinemediaobject> |
|---|
| 1152 | |
|---|
| 1153 | , simply mute <emphasis>that</emphasis> instrument. The maximun peak indicates the maximun volume reached |
|---|
| 1154 | from the instrument; the peak must be in a range of 0.0 and 1.0 (in Fig. 14 you can see a few volumes too loud), otherwise it will get distorted producing a weird sound (especially with OSS audio driver), in this case it's better to set volume down; keep an eye on each vu-meter. |
|---|
| 1155 | </para> |
|---|
| 1156 | |
|---|
| 1157 | <mediaobject> |
|---|
| 1158 | <imageobject> |
|---|
| 1159 | <imagedata fileref="img/Mixer.png" format="png"> |
|---|
| 1160 | </imageobject> |
|---|
| 1161 | <caption> |
|---|
| 1162 | <para> |
|---|
| 1163 | <emphasis role="bold">Fig. 14</emphasis> The mixer |
|---|
| 1164 | </para> |
|---|
| 1165 | </caption> |
|---|
| 1166 | </mediaobject> |
|---|
| 1167 | </sect1> |
|---|
| 1168 | </chapter> |
|---|
| 1169 | <glossary id="glossary"> |
|---|
| 1170 | <title>Glossary</title> |
|---|
| 1171 | |
|---|
| 1172 | <para>This is a glossary of general terms encountered when using Hydrogen, |
|---|
| 1173 | synthesizers, drums, or samplers. The definitions in the text are simplified, |
|---|
| 1174 | but the definitions here are more general and have more explanation. For |
|---|
| 1175 | example, the text of the manual would have you believe that an ADSR is the |
|---|
| 1176 | only kind of envelope generator, and could only ever control the volume. |
|---|
| 1177 | While it's simple for new users, it's not quite right.</para> |
|---|
| 1178 | |
|---|
| 1179 | <!-- ... --> |
|---|
| 1180 | |
|---|
| 1181 | <!-- A --> |
|---|
| 1182 | |
|---|
| 1183 | <glossentry id="def.adsr"> |
|---|
| 1184 | <glossterm>ADSR</glossterm> |
|---|
| 1185 | <glossdef> |
|---|
| 1186 | <para>A type of envelope generator that allows you to control the |
|---|
| 1187 | <link linkend="def.attack">Attack</link>, |
|---|
| 1188 | <link linkend="def.decay">Decay</link>, |
|---|
| 1189 | <link linkend="def.sustain">Sustain</link>, and |
|---|
| 1190 | <link linkend="def.release">Release</link> parameters. |
|---|
| 1191 | Generally, the |
|---|
| 1192 | parameters are proportional to |
|---|
| 1193 | the <link linkend="def.velocity">velocity</link>.</para> |
|---|
| 1194 | |
|---|
| 1195 | <para>In Hydrogen, the ADSR envelope generator only controls the volume |
|---|
| 1196 | (attenuation).</para> |
|---|
| 1197 | |
|---|
| 1198 | <glossseealso otherterm="def.envelopegenerator"> |
|---|
| 1199 | <glossseealso otherterm="def.attack"> |
|---|
| 1200 | <glossseealso otherterm="def.decay"> |
|---|
| 1201 | <glossseealso otherterm="def.sustain"> |
|---|
| 1202 | <glossseealso otherterm="def.release"> |
|---|
| 1203 | </glossdef> |
|---|
| 1204 | </glossentry> |
|---|
| 1205 | |
|---|
| 1206 | <glossentry id="def.attack"> |
|---|
| 1207 | <glossterm>Attack</glossterm> |
|---|
| 1208 | <glossdef> |
|---|
| 1209 | <para>This is the first phase of an ADSR envelope, and is the amount |
|---|
| 1210 | of <emphasis role="italics">time</emphasis> to turn the parameter up from |
|---|
| 1211 | 0 to full velocity after triggering the note.</para> |
|---|
| 1212 | |
|---|
| 1213 | <glossseealso otherterm="def.adsr"> |
|---|
| 1214 | </glossdef> |
|---|
| 1215 | </glossentry> |
|---|
| 1216 | |
|---|
| 1217 | <glossentry id="def.attenuation"> |
|---|
| 1218 | <glossterm>Attenuation</glossterm> |
|---|
| 1219 | <glossdef> |
|---|
| 1220 | <para>In filters and mixers, this the amount that a signal is reduced |
|---|
| 1221 | (volume).</para> |
|---|
| 1222 | |
|---|
| 1223 | <glossseealso otherterm="def.rolloff"> |
|---|
| 1224 | </glossdef> |
|---|
| 1225 | </glossentry> |
|---|
| 1226 | |
|---|
| 1227 | <!-- B --> |
|---|
| 1228 | |
|---|
| 1229 | <glossentry id="def.bandpassfilter"> |
|---|
| 1230 | <glossterm>Band-Pass Filter</glossterm> |
|---|
| 1231 | <glossdef> |
|---|
| 1232 | <para>A filter that preserves a cetertain band of frequencies, and |
|---|
| 1233 | attenuates (silences) all others. This is often done by combining a |
|---|
| 1234 | high-pass and a low-pass filter.</para> |
|---|
| 1235 | |
|---|
| 1236 | <glossseealso otherterm="def.filter"> |
|---|
| 1237 | <glossseealso otherterm="def.highpassfilter"> |
|---|
| 1238 | <glossseealso otherterm="def.lowpassfilter"> |
|---|
| 1239 | </glossdef> |
|---|
| 1240 | </glossentry> |
|---|
| 1241 | |
|---|
| 1242 | <!-- C --> |
|---|
| 1243 | |
|---|
| 1244 | <glossentry id="def.cutoff"> |
|---|
| 1245 | <glossterm>Cutoff Frequency</glossterm> |
|---|
| 1246 | <glossdef> |
|---|
| 1247 | <para>On high-pass and low-pass filters, this is the frequency that |
|---|
| 1248 | divides between those that pass, and those that are attenuated (silenced). |
|---|
| 1249 | In a high-pass resonance filter, or a low-pass resonance filter, the |
|---|
| 1250 | cutoff is also the frequency zone that gets boosted.</para> |
|---|
| 1251 | |
|---|
| 1252 | <para>For example, if you have a low-pass filter and you set the cutoff |
|---|
| 1253 | frequency high (i.e. 20kHz)... the filter will not affect the sound. All |
|---|
| 1254 | the audible frequencies will pass through undisturbed. As you lower the |
|---|
| 1255 | cutoff frequency to something like 40 Hz (the low string on a bass |
|---|
| 1256 | guitar), it sounds like someone is putting a blanket over the speaker. |
|---|
| 1257 | The higher frequencies are being attenuated above 30 Hz.</para> |
|---|
| 1258 | |
|---|
| 1259 | <glossseealso otherterm="def.filter"> |
|---|
| 1260 | <glossseealso otherterm="def.highpassfilter"> |
|---|
| 1261 | <glossseealso otherterm="def.lowpassfilter"> |
|---|
| 1262 | <glossseealso otherterm="def.resonancefilter"> |
|---|
| 1263 | </glossdef> |
|---|
| 1264 | </glossentry> |
|---|
| 1265 | |
|---|
| 1266 | <!-- D --> |
|---|
| 1267 | |
|---|
| 1268 | <glossentry id="def.decay"> |
|---|
| 1269 | <glossterm>Decay</glossterm> |
|---|
| 1270 | <glossdef> |
|---|
| 1271 | <para>After reaching full velocity from the attack, this is the amount |
|---|
| 1272 | of <emphasis role="italics">time</emphasis> to turn the parameter down |
|---|
| 1273 | from full velocity to the sustain level.</para> |
|---|
| 1274 | |
|---|
| 1275 | <glossseealso otherterm="def.adsr"> |
|---|
| 1276 | </glossdef> |
|---|
| 1277 | </glossentry> |
|---|
| 1278 | |
|---|
| 1279 | <!-- E --> |
|---|
| 1280 | |
|---|
| 1281 | <glossentry id="def.envelopegenerator"> |
|---|
| 1282 | <glossterm>Envelope Generator</glossterm> |
|---|
| 1283 | <glossdef> |
|---|
| 1284 | <para>A way to control (change) a parameter over time as a response to |
|---|
| 1285 | triggering, holding, and releasing a note.</para> |
|---|
| 1286 | |
|---|
| 1287 | <para>Did your eyes just glaze over? Let's try again:</para> |
|---|
| 1288 | |
|---|
| 1289 | <para>Imagine that you're playing a note on the keyboard and you have your |
|---|
| 1290 | other hand on a knob (volume, filter cutoff, etc.). As you play the note, |
|---|
| 1291 | you twist the knob (often up, then down... or down, then up). You do the |
|---|
| 1292 | same thing on each note. That's what an envelope generator does. See |
|---|
| 1293 | also <link linkend="def.adsr">ADSR</link></para> |
|---|
| 1294 | </glossdef> |
|---|
| 1295 | </glossentry> |
|---|
| 1296 | |
|---|
| 1297 | <!-- F --> |
|---|
| 1298 | |
|---|
| 1299 | <glossentry id="def.fader"> |
|---|
| 1300 | <glossterm>Fader</glossterm> |
|---|
| 1301 | <glossdef> |
|---|
| 1302 | <para>A slider control used to adjust the attenuation (volume) in a mixer. |
|---|
| 1303 | Faders always have an "audio" taper, which means that the attenuation |
|---|
| 1304 | amount changes on an exponential scale.</para> |
|---|
| 1305 | </glossdef> |
|---|
| 1306 | </glossentry> |
|---|
| 1307 | |
|---|
| 1308 | <glossentry id="def.filter"> |
|---|
| 1309 | <glossterm>Filter</glossterm> |
|---|
| 1310 | <glossdef> |
|---|
| 1311 | <para>A device that changes a sound by attenuating specific frequencies. |
|---|
| 1312 | A tone knob is an example of a simple, low-pass filter.</para> |
|---|
| 1313 | |
|---|
| 1314 | <glossseealso otherterm="def.bandpassfilter"> |
|---|
| 1315 | <glossseealso otherterm="def.highpassfilter"> |
|---|
| 1316 | <glossseealso otherterm="def.lowpassfilter"> |
|---|
| 1317 | <glossseealso otherterm="def.resonancefilter"> |
|---|
| 1318 | </glossdef> |
|---|
| 1319 | </glossentry> |
|---|
| 1320 | |
|---|
| 1321 | <!-- G --> |
|---|
| 1322 | |
|---|
| 1323 | <glossentry id="def.gain"> |
|---|
| 1324 | <glossterm>Gain</glossterm> |
|---|
| 1325 | <glossdef> |
|---|
| 1326 | <para>In an amplifier, this adjust how much (or how little) a signal is |
|---|
| 1327 | amplified (volume). A higher gain value is a louder signal.</para> |
|---|
| 1328 | </glossdef> |
|---|
| 1329 | </glossentry> |
|---|
| 1330 | |
|---|
| 1331 | <!-- H --> |
|---|
| 1332 | |
|---|
| 1333 | <glossentry id="def.highpassfilter"> |
|---|
| 1334 | <glossterm>High-Pass Filter</glossterm> |
|---|
| 1335 | <glossdef> |
|---|
| 1336 | <para>A filter that attenuates (silences) low frequencies, but allows high |
|---|
| 1337 | frequencies to pass through.</para> |
|---|
| 1338 | |
|---|
| 1339 | <glossseealso otherterm="def.filter"> |
|---|
| 1340 | <glossseealso otherterm="def.cutoff"> |
|---|
| 1341 | </glossdef> |
|---|
| 1342 | </glossentry> |
|---|
| 1343 | |
|---|
| 1344 | <!-- I --> |
|---|
| 1345 | |
|---|
| 1346 | <glossentry id="def.instrument"> |
|---|
| 1347 | <glossterm>Instrument</glossterm> |
|---|
| 1348 | <glossdef> |
|---|
| 1349 | <para>In Hydrogen, an instrument is a single noise-maker (like a bass drum |
|---|
| 1350 | kick, or a tom).</para> |
|---|
| 1351 | </glossdef> |
|---|
| 1352 | </glossentry> |
|---|
| 1353 | <!-- J --> |
|---|
| 1354 | |
|---|
| 1355 | <!-- K --> |
|---|
| 1356 | |
|---|
| 1357 | <!-- L --> |
|---|
| 1358 | |
|---|
| 1359 | <glossentry id="def.layer"> |
|---|
| 1360 | <glossterm>Layer</glossterm> |
|---|
| 1361 | <glossdef> |
|---|
| 1362 | <para>In an instrument you can load several different samples |
|---|
| 1363 | (each one called a <emphasis role="bold">layer</emphasis>), and |
|---|
| 1364 | have a different sample play depending on the velocity of the |
|---|
| 1365 | note. Only one sample at a time will play.</para> |
|---|
| 1366 | |
|---|
| 1367 | <para>Suppose you have a sample of a floor tom being struck |
|---|
| 1368 | softly. If you simply play the sample louder — it |
|---|
| 1369 | will <emphasis role="italics">not</emphasis> sound the same as a |
|---|
| 1370 | real tom that has been struck very hard. If you wish to mimic |
|---|
| 1371 | this in your instrument, you can load one sample for soft |
|---|
| 1372 | playing, and a different sample for loud playing.</para> |
|---|
| 1373 | |
|---|
| 1374 | <glossseealso otherterm="def.instrument"> |
|---|
| 1375 | </glossdef> |
|---|
| 1376 | </glossentry> |
|---|
| 1377 | |
|---|
| 1378 | <glossentry id="def.lowpassfilter"> |
|---|
| 1379 | <glossterm>Low-Pass Filter</glossterm> |
|---|
| 1380 | <glossdef> |
|---|
| 1381 | <para>A filter that attenuates (silences) high frequences, but allows low |
|---|
| 1382 | frequencies to pass through.</para> |
|---|
| 1383 | |
|---|
| 1384 | <glossseealso otherterm="def.filter"> |
|---|
| 1385 | <glossseealso otherterm="def.cutoff"> |
|---|
| 1386 | </glossdef> |
|---|
| 1387 | </glossentry> |
|---|
| 1388 | |
|---|
| 1389 | <!-- M --> |
|---|
| 1390 | |
|---|
| 1391 | <glossentry id="def.mute"> |
|---|
| 1392 | <glossterm>Mute</glossterm> |
|---|
| 1393 | <glossdef> |
|---|
| 1394 | <para>To make no noise. A setting on an instrument that prevents any |
|---|
| 1395 | audio output.</para> |
|---|
| 1396 | </glossdef> |
|---|
| 1397 | </glossentry> |
|---|
| 1398 | |
|---|
| 1399 | <glossentry id="def.mutegroup"> |
|---|
| 1400 | <glossterm>Mute Group</glossterm> |
|---|
| 1401 | <glossdef> |
|---|
| 1402 | <para>A group of instruments (samples) that should mute (stop playing) |
|---|
| 1403 | immediately after another instrument in the group is triggered.</para> |
|---|
| 1404 | |
|---|
| 1405 | <para>This is typically used in hi-hats, where there's a different |
|---|
| 1406 | instrument (sample) for when the hi-hat is open or closed. With a real |
|---|
| 1407 | hi-hat, the sound of the open hi-hat will stop as soon as you close it. |
|---|
| 1408 | However, if you use two samples — the open sound will continue even |
|---|
| 1409 | after you have triggered the closed sound. By placing both instruments in |
|---|
| 1410 | the same mute group (group #1, for example)... triggering closed sound |
|---|
| 1411 | will immediately stop the open sound (and vice versa).</para> |
|---|
| 1412 | </glossdef> |
|---|
| 1413 | </glossentry> |
|---|
| 1414 | |
|---|
| 1415 | <!-- N --> |
|---|
| 1416 | |
|---|
| 1417 | <!-- O --> |
|---|
| 1418 | |
|---|
| 1419 | <glossentry id="def.octave"> |
|---|
| 1420 | <glossterm>Octave</glossterm> |
|---|
| 1421 | <glossdef> |
|---|
| 1422 | <para>A span of frequencies where the top-most frequency is exactly twice |
|---|
| 1423 | the frequency of the bottom frequency.</para> |
|---|
| 1424 | |
|---|
| 1425 | <para>For example, the range 20 Hz to 40 Hz is an octave. So is 120 Hz to |
|---|
| 1426 | 240 Hz, and 575 Hz to 1150 Hz. While the frequency differences are very |
|---|
| 1427 | different (20 Hz, 120 Hz, and 575 Hz, respectively), to the human ear |
|---|
| 1428 | they <emphasis role="italics">sound</emphasis> like the same |
|---|
| 1429 | distance.</para> |
|---|
| 1430 | </glossdef> |
|---|
| 1431 | </glossentry> |
|---|
| 1432 | |
|---|
| 1433 | <!-- P --> |
|---|
| 1434 | |
|---|
| 1435 | <!-- Q --> |
|---|
| 1436 | |
|---|
| 1437 | <!-- R --> |
|---|
| 1438 | |
|---|
| 1439 | <glossentry id="def.release"> |
|---|
| 1440 | <glossterm>Release</glossterm> |
|---|
| 1441 | <glossdef> |
|---|
| 1442 | <para>After the note is released, this is the amount |
|---|
| 1443 | of <emphasis role="italics">time</emphasis> to reduce the parameter from |
|---|
| 1444 | the sustain level to 0.</para> |
|---|
| 1445 | |
|---|
| 1446 | <glossseealso otherterm="def.adsr"> |
|---|
| 1447 | </glossdef> |
|---|
| 1448 | </glossentry> |
|---|
| 1449 | |
|---|
| 1450 | <glossentry id="def.resonance"> |
|---|
| 1451 | <glossterm>Resonance</glossterm> |
|---|
| 1452 | <glossdef> |
|---|
| 1453 | <para>When referring to a resonance filter, this is the parameter that |
|---|
| 1454 | determines how much of a boost (gain) to give the frequencies at the |
|---|
| 1455 | cutoff.</para> |
|---|
| 1456 | |
|---|
| 1457 | <glossseealso otherterm="def.resonancefilter"> |
|---|
| 1458 | </glossdef> |
|---|
| 1459 | </glossentry> |
|---|
| 1460 | |
|---|
| 1461 | <glossentry id="def.resonancefilter"> |
|---|
| 1462 | <glossterm>Resonance Filter</glossterm> |
|---|
| 1463 | <glossdef> |
|---|
| 1464 | <para>A filter that gives a large boost to a very narrow range of |
|---|
| 1465 | frequencies. Typically it will be part of a high-pass or a low-pass |
|---|
| 1466 | filter, where the boosted frequencies are centered on the cut-off |
|---|
| 1467 | frequency.</para> |
|---|
| 1468 | |
|---|
| 1469 | <glossseealso otherterm="def.filter"> |
|---|
| 1470 | <glossseealso otherterm="def.cutoff"> |
|---|
| 1471 | <glossseealso otherterm="def.resonance"> |
|---|
| 1472 | </glossdef> |
|---|
| 1473 | </glossentry> |
|---|
| 1474 | |
|---|
| 1475 | <glossentry id="def.rolloff"> |
|---|
| 1476 | <glossterm>Roll-off</glossterm> |
|---|
| 1477 | <glossdef> |
|---|
| 1478 | <para>This is the amount that frequencies are attenuated (suppressed) as |
|---|
| 1479 | the frequency changes (typically measured in dB/octave).</para> |
|---|
| 1480 | |
|---|
| 1481 | <para>For example, in a low-pass filter the frequences below the cutoff |
|---|
| 1482 | frequency are not attenuated (they pass-through with the same volume). |
|---|
| 1483 | Same with the cutoff frequency. As you go above the cutoff frequency, the |
|---|
| 1484 | frequencies that are near the cutoff frequency are not attenuated very |
|---|
| 1485 | much at all. However, the frequencies that are much higher than the |
|---|
| 1486 | cutoff are attenuated (suppressed) a lot. This is usually approximated by |
|---|
| 1487 | a straight line (on a log scale) and measured in in dB of attenuation per |
|---|
| 1488 | octave of frequency.</para> |
|---|
| 1489 | |
|---|
| 1490 | <glossseealso otherterm="def.attenuation"> |
|---|
| 1491 | <glossseealso otherterm="def.filter"> |
|---|
| 1492 | </glossdef> |
|---|
| 1493 | </glossentry> |
|---|
| 1494 | |
|---|
| 1495 | <!-- S --> |
|---|
| 1496 | |
|---|
| 1497 | <glossentry id="def.sample"> |
|---|
| 1498 | <glossterm>Sample</glossterm> |
|---|
| 1499 | <glossdef> |
|---|
| 1500 | <para>A short recording of a sound, typically between .1 and 3.0 seconds |
|---|
| 1501 | long.</para> |
|---|
| 1502 | </glossdef> |
|---|
| 1503 | </glossentry> |
|---|
| 1504 | |
|---|
| 1505 | <glossentry id="def.sustain"> |
|---|
| 1506 | <glossterm>Sustain</glossterm> |
|---|
| 1507 | <glossdef> |
|---|
| 1508 | <para>The <emphasis role="italics">level</emphasis> to hold the parameter |
|---|
| 1509 | after finishing the decay time. This level will be maintained until the |
|---|
| 1510 | not is released.</para> |
|---|
| 1511 | <glossseealso otherterm="def.adsr"> |
|---|
| 1512 | </glossdef> |
|---|
| 1513 | </glossentry> |
|---|
| 1514 | |
|---|
| 1515 | <!-- T --> |
|---|
| 1516 | |
|---|
| 1517 | <!-- U --> |
|---|
| 1518 | |
|---|
| 1519 | <!-- V --> |
|---|
| 1520 | |
|---|
| 1521 | <glossentry id="def.velocity"> |
|---|
| 1522 | <glossterm>Velocity</glossterm> |
|---|
| 1523 | <glossdef> |
|---|
| 1524 | <para>How hard you hit a note.</para> |
|---|
| 1525 | |
|---|
| 1526 | <para>MIDI devices are required to send this information along with the |
|---|
| 1527 | note. Synthesizers use this information to adjust several parameters on |
|---|
| 1528 | the sample (typically the volume). In Hydrogen, it is only used to adjust |
|---|
| 1529 | how loud the sample is played back.</para> |
|---|
| 1530 | </glossdef> |
|---|
| 1531 | </glossentry> |
|---|
| 1532 | |
|---|
| 1533 | <!-- W --> |
|---|
| 1534 | |
|---|
| 1535 | <!-- X --> |
|---|
| 1536 | |
|---|
| 1537 | <!-- Y --> |
|---|
| 1538 | |
|---|
| 1539 | <!-- Z --> |
|---|
| 1540 | |
|---|
| 1541 | </glossary> |
|---|
| 1542 | </book> |
|---|
| 1543 | |
|---|