root/trunk/data/doc/manual_en.docbook @ 983

Revision 983, 82.0 KB (checked in by gabriel@…, 4 years ago)

Add documentation on Tap Tempo and the BeatCounter?.

This section was written by Michael Wolkstein and adapted by me.

Line 
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>$</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>$</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://jackaudio.org/'>http://jackaudio.org</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>$</prompt> <command>apt-get install libqt4-dev g++ libasound2-dev \
86                libjack-dev liblrdf0-dev libflac++-dev libtar-dev libsndfile1-dev \
87                liblash-dev libportaudio-dev libportmidi-dev </command></screen>
88                </para>
89        </sect1>
90
91        <sect1 id="compilazione">
92                <title>Build</title>
93                <para>
94                            Decompress the tarball or go to the directory where the subversion copy was checked out:
95                    <screen>
96                        <prompt>$</prompt> <command>cd hydrogen-*</command>
97                        <prompt>$</prompt> <command>scons</command>
98                        <prompt>$</prompt> <command>su -c "scons install"</command>
99                    </screen>
100                </para>
101
102                <para>
103                    Before compiling, check for additional options with:
104                    <screen>
105                        <prompt>$</prompt> <command>scons --help</command>
106                    </screen>
107                   
108                    If you want to use features which are not enabled by default (for instance PortAudio), you can enable them with:
109                    <screen>
110                        <prompt>$</prompt> <command>scons portaudio=1</command>
111                    </screen>
112                   
113                    Namely, if you get some error while running Hydrogen and you want to report it remember to configure hydrogen with:
114                    <screen>
115                        <prompt>$</prompt> <command>scons debug=1</command>
116                    </screen>
117                   
118                    To clean up compiled code:
119                    <screen>
120                        <prompt>$</prompt> <command>scons -c</command>
121                    </screen>
122                </para>
123        </sect1>
124
125<!-- prokoudine ?
126        <sect1 id='basics'>
127                <title>[TODO] BASICS</title>
128                <para>
129                explain and develop basics about the technology behind software of this kind
130                </para>
131        </sect1>
132-->
133
134        <!--
135       
136        mauser: In my opionon those driver informations are unnecessary here, moved to audio tab
137       
138       
139        <sect1 id="configurazioneAudioDriver">
140                <title>Audio driver configuration</title>
141                <para>
142                        It's very important to choose the proper audio driver for our system, since
143                        the choice may influence quite much general performances. The choice is between
144                        Oss audio driver, ALSA, PortAudio, CoreAudio and Jack audio driver.
145                </para>
146               
147                <sect2 id="jackDriver">
148                        <title>Jack audio driver</title>
149                        <para>
150                        The Jack driver is a professional audio server which permits very low lag and exchanges with other
151                        audio software. <emphasis>We strongly recommend using this driver to have the best out of Hydrogen</emphasis>.
152                        JACK server will start automatically if not already running.
153                        </para>
154                </sect2>
155               
156                <sect2 id="alsaDriver">
157                        <title>ALSA audio driver</title>
158                        <para>
159                        the widely adopted Linux standard audio drivers
160                        </para>
161                </sect2>
162               
163                <sect2 id="ossDriver">
164                        <title>OSS audio driver</title>
165                        <para>
166                        The Oss audio driver uses /dev/dsp and it's based on the OSS interface which is
167                        supported by the vast majority of sound cards available for linux; this said,
168                        the use of this audio driver blocks /dev/dsp until Hydrogen is closed i.e. unusable
169                        by any other software. Use it as last resource.
170                        </para>
171                </sect2>
172               
173                <sect2 id="portaudioDriver">
174                        <title>PortAudio audio driver</title>
175                        <para>
176                         an open-source multiplatform audio driver
177                        </para>
178                </sect2>
179               
180                <sect2 id="coreaudioDriver">
181                        <title>CoreAudio audio driver</title>
182                        <para>
183                         a driver for Mac OS X (experimental)
184                        </para>
185                </sect2>
186        </sect1>
187        -->
188       
189       
190        <sect1 id="AudioDriverPreferences">
191                <title>Audio preferences</title>
192                <para>
193                    First of all you should make shure that the audio engine is configured properly.
194                    The preferences dialog can be accessed via the tools menu (tools -> preferences).
195                </para>
196               
197
198               
199                <sect2 id="audioTab">
200                        <title>The Audio System tab</title>
201                       
202                        <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).
203                        </para>
204                        <para>
205                        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
206                        </para>
207                        <para>
208                        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.
209                        </para>
210               
211               
212                       
213                        <mediaobject>
214                            <imageobject>
215                                    <imagedata fileref="img/PreferencesAudioSystem.png" format="png">
216                            </imageobject>
217                            <caption>
218                                <para>
219                                    <emphasis role="bold">Fig. 1</emphasis> The Audio System tab
220                                </para>
221                            </caption>
222                        </mediaobject>
223                       
224                       
225                        <para>
226                            The following drivers are available:
227                        </para>
228                       
229                        <itemizedList>
230
231                        <listitem>
232                            <para>
233                            <emphasis role='bold'>jackd</emphasis>: The Jack driver is a professional audio server which permits very low lag and exchanges with other
234                            audio software. <emphasis>We strongly recommend using this driver to have the best out of Hydrogen</emphasis>.
235                            JACK server will start automatically if not already running.
236                            </para>
237                        </listitem>
238               
239                        <listitem>
240                            <para>
241                            <emphasis role='bold'>ALSA</emphasis>:
242                            the widely adopted Linux standard audio drivers
243                            </para>
244                        </listitem>
245                       
246                        <listitem>
247                            <para>
248                            <emphasis role='bold'>OSS</emphasis>:
249                            The Oss audio driver uses /dev/dsp and it's based on the OSS interface which is
250                            supported by the vast majority of sound cards available for linux; this said,
251                            the use of this audio driver blocks /dev/dsp until Hydrogen is closed i.e. unusable
252                            by any other software. Use it as last resort.
253                            </para>
254                        </listitem>
255               
256                        <listitem>
257                            <para>
258                            <emphasis role='bold'>PortAudio</emphasis>:
259                            an open-source multiplatform audio driver
260                            </para>
261                        </listitem>
262
263                        <listitem>
264                            <para>
265                            <emphasis role='bold'>CoreAudio</emphasis>:
266                            a driver for Mac OS X (experimental)
267                            </para>
268                        </listitem>
269                    </itemizedList>
270                </sect2>
271               
272                <sect2 id="midiTab">
273                        <title>The Midi System tab</title>
274                        <para>
275                        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.
276                        </para>
277                       
278                        <mediaobject>
279                            <imageobject>
280                                    <imagedata fileref="img/PreferencesMidiSystem.png" format="png">
281                            </imageobject>
282                            <caption>
283                                <para>
284                                <emphasis role="bold">Fig. 2</emphasis> The MIDI System tab
285                                </para>
286                            </caption>
287                        </mediaobject>
288                </sect2>
289               
290                <sect2 id="appearanceTab">
291                    <title>The Appearance tab</title>
292                    <para>
293                    The "Appearance" tab (Fig. 3) let's you to modify Hydrogen and QT graphical properties.
294                    </para>
295                   
296                    <mediaobject>
297                        <imageobject>
298                                <imagedata fileref="img/PreferencesAppearance.png" format="png">
299                        </imageobject>
300                        <caption>
301                            <para>
302                            <emphasis role="bold">Fig. 3</emphasis> The appearance tab
303                            </para>
304                        </caption>
305                    </mediaobject>
306                </sect2>
307               
308               
309                <sect2 id="audioengineTab">
310                    <title>The Audio Engine tab</title>
311                    <para>
312                    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).
313                    </para>
314                   
315                    <mediaobject>
316                        <imageobject>
317                                <imagedata fileref="img/AudioEngineInfoDialog.png" format="png">
318                        </imageobject>
319                        <caption>
320                            <para>
321                            <emphasis role="bold">Fig. 4</emphasis> The Audio engine Info window
322                            </para>
323                        </caption>
324                    </mediaobject>
325                </sect2>
326        </sect1>
327</chapter>
328
329<!--
330####################
331# SECONDO CAPITOLO #
332####################
333-->
334
335<chapter id="usingHydrogen">
336        <title>Using Hydrogen</title>
337       
338        <sect1 id="usedFiles">
339            <title>Used Filetypes</title>
340            <para>Before working with Hydrogen, please familiarize with these filetypes:</para>
341            <itemizedList>
342                    <listitem>
343                        <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>
344                    </listitem>
345                    <listitem>
346                        <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>
347                    </listitem>
348                    <listitem>
349                        <para><emphasis role='bold'>*.h2playlist</emphasis>: XML file describing a playlist.A Playlist is a (ordered) group of songs.</para>
350                    </listitem>
351                    <listitem>
352                        <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>
353                    </listitem>
354            </itemizedList>
355        </sect1>
356       
357        <sect1 id="mainMenu">
358            <title>Main menu</title>
359            <para><emphasis role='bold'>Projects</emphasis>: this menu offers file related functions.</para>
360            <itemizedList>
361
362                            <listitem><para><emphasis role='italic'>New</emphasis> - Create a new song</para></listitem>
363                            <listitem><para><emphasis role='italic'>Show Info</emphasis> - Set general properties of the song such as name, author, license and generic notes</para></listitem>
364                            <listitem><para><emphasis role='italic'>Open</emphasis> - Open a song</para></listitem>
365                            <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>
366                            <listitem><para><emphasis role='italic'>Open recent</emphasis> - Open a menu showing last used songs</para></listitem>
367                            <listitem><para><emphasis role='italic'>Save</emphasis> - Save changes to current song</para></listitem>
368                            <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>
369                            <listitem><para><emphasis role='italic'>Open pattern</emphasis> - Open a saved pattern belonging to the current drumkit</para></listitem>
370                            <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>
371                            <listitem><para><emphasis role='italic'>Export MIDI file</emphasis> - Export current song in MIDI format</para></listitem>
372                            <listitem><para><emphasis role='italic'>Export song</emphasis> - Export current song in WAV format</para></listitem>
373                            <listitem><para><emphasis role='italic'>Quit</emphasis> - Quit Hydrogen</para></listitem>
374            </itemizedList>
375           
376           
377               
378        <para><emphasis role='bold'>Instruments</emphasis>: this menu offers instruments and drumkit (sound libraries) functions.</para>
379            <itemizedList>
380                        <listitem><para><emphasis role='italic'>Add instrument</emphasis> - Add a new instrument to your current drumkit</para></listitem>
381                        <listitem><para><emphasis role='italic'>Clear all</emphasis> - Delete all instruments from the current drumkit</para></listitem>
382                        <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>
383                        <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>
384                        <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>
385            </itemizedList>
386       
387       
388            <para><emphasis role='bold'>Tools</emphasis>: opens the mixer, the playlist editor, the instrument rack and the general preferences window.</para>
389            <itemizedList>
390                    <listitem><para><emphasis role='italic'>Playlist editor</emphasis> - A tool to manage playlists.</para></listitem>
391                    <listitem><para><emphasis role='italic'>Mixer</emphasis> - Open the mixer window.</para></listitem>
392                    <listitem><para><emphasis role='italic'>Instrument rack</emphasis> - Open the instrument rack panel.</para></listitem>
393                    <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>
394            </itemizedList>
395       
396       
397            <para><emphasis role='bold'>Debug</emphasis>: tools mainly for debugging and monitoring Hydrogen (only available when compiled with debug support).</para>
398            <itemizedList>
399                    <listitem><para><emphasis role='italic'>Show audio engine info - </emphasis>Open a monitor with various <ulink url="#engine">stats</ulink></para></listitem>
400                    <listitem><para><emphasis role='italic'>debug action - </emphasis> Insert debug commands.</para></listitem>
401                    <listitem><para><emphasis role='italic'>Print Objects - </emphasis>Print on stdout current objects map.</para></listitem>
402            </itemizedList>
403   
404   
405            <para><emphasis role='bold'>Info</emphasis></para>
406            <itemizedList>
407                    <listitem><para><emphasis role='italic'>User manual - </emphasis>Open a window with this manual :)</para></listitem>
408                    <listitem><para><emphasis role='italic'>About - </emphasis>The usual window with licence information, acknowledgements, etc.</para></listitem>
409            </itemizedList>
410
411       
412       
413       
414       
415       
416       
417        <sect1 id="main">
418                <title>The main toolbar</title>
419                <para>Before analyzing the two main frames of Hydrogen, let's take a quick look at the main toolbar and its components:</para>
420               
421                <itemizedList>
422                    <listitem><para>Pilot the song using the start, stop, pause, etc. buttons</listitem>
423                    <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>
424                    <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.  (see <xref linkend="taptempo">)</listitem>
425                    <listitem><para>Manually set BPM</listitem>
426                    <listitem><para>Manage JACK transport</listitem>
427                    <listitem><para>Open the mixer and the instrument rack panels</listitem>
428                </itemizedList>
429       
430       
431                <mediaobject>
432                        <imageobject>
433                               
434                                <imagedata fileref="img/MainToolbar.png" format="png">
435                               
436                        </imageobject>
437                        <caption>
438                            <para><emphasis role="bold">Fig. 5 </emphasis>  The main toolbar</para>
439                        </caption>
440                </mediaobject>
441       
442
443                <itemizedlist mark="opencircle">
444                        <listitem><para><inlinemediaobject><imageobject>
445                                <imagedata fileref="img/background_Control.png" format="png">
446                        </imageobject></inlinemediaobject>
447                                </para><para>Main controls to start <emphasis role="bold">[Hotkey = Spacebar]</emphasis>, stop, fast forward, rewind, loop a song or a pattern.</para>
448                        </listitem>
449                       
450                        <listitem><para><inlinemediaobject><imageobject>
451                                <imagedata fileref="img/background_Mode.png" format="png">
452                        </imageobject></inlinemediaobject></para><para>Set Pattern/Song Mode.</para></listitem>
453       
454                        <listitem><para><inlinemediaobject><imageobject>
455                                <imagedata fileref="img/background_BPM.png" format="png">
456                        </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>
457
458                        <listitem><para><inlinemediaobject><imageobject>
459                                <imagedata fileref="img/cpuload.png" format="png">
460                        </imageobject></inlinemediaobject></para><para>Shows CPU load.</para></listitem>
461
462                        <listitem><para><inlinemediaobject><imageobject>
463                                <imagedata fileref="img/midi_in.png" format="png">
464                        </imageobject></inlinemediaobject></para><para>Shows MIDI events.</para></listitem>
465
466                        <listitem><para><inlinemediaobject><imageobject>
467                                <imagedata fileref="img/jack_transport.png" format="png">
468                        </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>
469                </itemizedlist>
470
471        <para>Other useful keybindings (not customizable for the moment):</para>
472               
473        <itemizedlist mark='opencircle'>
474                <listitem>
475                        <para>
476                        <emphasis role="bold">[CTRL + O]</emphasis> = Open File
477                        </para>
478                </listitem>
479                <listitem>
480                        <para>
481                        <emphasis role="bold">[CTRL + S]</emphasis> = Save File
482                        </para>
483                </listitem>
484                <listitem>
485                        <para>
486                        <emphasis role="bold">[Backspace]</emphasis> = Restart song or pattern from the beginning
487                        </para>
488                </listitem>
489                </itemizedlist>
490                <sect2 id="taptempo">
491                        <title>Tap Tempo and BeatCounter</title>
492
493                        <para>It is possible to change tempo at any time using
494                        the tap-tempo and BeatCounter features of Hydrogen.  You
495                        can change these while playing or while the song is
496                        stopped.  To change the tempo, hit
497                        the <keycap>,</keycap> (comma) key in tempo for the
498                        number of beats in the measure.  After the correct
499                        number of beats are met, the tempo will change to the
500                        average tempo that you tapped in.  If you continue to
501                        tap, these new taps will become a part of a rolling
502                        average.  If you tap accidentally, or if you wait too
503                        long between taps, the tap tempo counter will start
504                        over.</para>
505
506                        <para>The Tap Tempo is a part of the BeatCounter, which
507                        is essentially a Tap Tempo on steroids.  By default the
508                        BeatCounter display is not visible.  To see the
509                        BeatCounter widget click the upright button
510                        (<guilabel>BC</guilabel>) between Song/Pattern mode
511                        selector and the BPM-widget.  Or, it can be shown by
512                        pressing the comma key (<keycap>,</keycap>).</para>
513
514                        <para>The tempo that you tap will be considered even
515                        beats of the beat type.  The beat type can be set to 1/8
516                        (for eight-note beats), 1/4 (for quarter-note beats),
517                        1/2 (for half-note beats), and 1/1 (for whole-note
518                        beats).  To change the beat type use the left arrow
519                        buttons.  To change the number of beats that are
520                        counted, use the right arrow button.  You can set from 2
521                        to 16 beats.  (I.e. if you set the beat to 6, you will
522                        have to tap 6 times before the new tempo is computed and
523                        set.)  When the display shows an <guilabel>R</guilabel>,
524                        it means that the BeatCounter is ready to start from 0.
525                        Every time you tap with the comma key, it will show the
526                        number of taps that you have entered (1, 2,
527                        3...).</para>
528
529                        <para>The button in the bottom right-hand controls the
530                        auto-start feature, and it toggles
531                        between <guilabel>S</guilabel>
532                        and <guilabel>P</guilabel>.  When it
533                        shows <guilabel>P</guilabel> for
534                        (<emphasis>Play</emphasis>), the song will set the new
535                        tempo and automatically start to play after you tap the
536                        right number of beats (if it's not already playing, of
537                        course).  This way, if you have the BeatCounter set up
538                        for 4/4, you can tap 1-2-3-4, and start playing on the
539                        next beat.  When it shows <guilabel>S</guilabel>
540                        (for <emphasis>Set BPM</emphasis>), the auto-start is
541                        disabled.</para>
542
543                        <para>For example: Suppose you have a live band,
544                        Hydrogen, and a softsynth that is controlled by
545                        Seq24)... and you want them all to start at the same
546                        time.  Set the beat type to 1/4 and the number of beats
547                        to 4.  Enable auto-start (button
548                        shows <guilabel>P</guilabel>).  Count off the band
549                        1-2-3-4 (while tapping the comma key) &mdash; and
550                        everyone starts on 1.</para>
551
552                        <para>Another example: Same situation, but the song
553                        doesn't require Hydrogen or synths until some point
554                        later.  During that time, a human (e.g. guitar player)
555                        will be setting the tempo.  On the measure before
556                        Hydrogen is supposed to play, tap the comma key 1-2-3-4
557                        with the beat... and you're in on the next beat (at the
558                        right tempo).</para>
559
560                        <para>If you are using the JACK Transport, the
561                        BeatCounter continues to work.  If another program is
562                        the JACK Transport Master, Hydrogen will respond to
563                        tempo change events from that application.  Note that in
564                        this situation, Hydrogen is supposed to be
565                        a <emphasis>slave</emphasis>, so some of the BeatCounter
566                        features will be disabled or will not work properly.  If
567                        Hydrogen is the JACK Transport Master, tempo changes
568                        from Hydrogen will be reflected in those programs (if
569                        they support it).</para>
570
571                        <para>Some of the settings to adjust the BeatCounter's
572                        latency compensation, and they are located on the
573                        <guilabel>General</guilabel> tab of the Preferences
574                        Dialog (
575
576                        <menuchoice>
577                                <guimenu>Tools</guimenu>
578                                <guimenuitem>Preferences</guimenuitem>
579                        </menuchoice>
580
581                        ). Here there are two spinboxes:</para>
582
583                        <itemizedlist>
584                                <listitem><para><emphasis role="bold"><guilabel>Beat
585                                counter drift compensation in
586                                1/10ms</guilabel></emphasis> &mdash; adjust to
587                                compensate for latency between the keyboard and
588                                the program.</para></listitem>
589
590                                <listitem><para><emphasis role="bold"><guilabel>Beat
591                                counter start offset in ms</guilabel></emphasis>
592                                &mdash; adjust the time between the
593                                BeatCounter's last input stroke and when the
594                                song starts playing (if auto-start is
595                                activated).</para></listitem>
596                        </itemizedlist>
597
598                        <para>Note that these can be set to positive (+) or
599                        negative (-) values.  In order to find useful values for
600                        these, you will need to take some time to play with it.
601                        Also, you may want different values depending on the
602                        speed of your hardware, audio devices, drivers, etc.
603                        Using the BeatCounter effectively requires
604                        practice.</para>
605
606                </sect2>
607
608        </sect1>
609       
610        <sect1 id="songEditor">
611                <title>Song Editor</title>
612
613                <para>
614                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.
615                </para>
616
617                <para>
618                The Song Editor comes with 7 buttons:
619                </para>
620                <para>
621                        <inlinemediaobject>
622                                <imageobject>
623                                        <imagedata fileref="img/bg_topPanel.png" format="png">
624                                </imageobject>
625                        </inlinemediaobject>
626                </para>
627
628<itemizedlist mark='opencircle'>
629
630                <listitem>
631                <para><inlinemediaobject><imageobject>
632                        <imagedata fileref="img/btn_clear_off.png" format="png">
633                </imageobject></inlinemediaobject> Completely delete all patterns (asks for confirmation!).
634                </para>
635                </listitem>
636
637                <listitem>
638                <para><inlinemediaobject><imageobject>
639                        <imagedata fileref="img/btn_new_on.png" format="png">
640                </imageobject></inlinemediaobject> Create a new pattern (and asks for a name).
641                </para>
642                </listitem>
643
644                <listitem>
645                <para><inlinemediaobject><imageobject>
646                        <imagedata fileref="img/btn_updown.png" format="png">
647                </imageobject></inlinemediaobject> Move currently selected pattern up or down.
648                </para>
649                </listitem>
650
651
652
653                <listitem>
654                <para><inlinemediaobject><imageobject>
655                        <imagedata fileref="img/btn_select.png" format="png">
656                </imageobject></inlinemediaobject> Enable selecting patterns for copy & paste (Select Mode).
657                </para>
658                </listitem>
659
660                <listitem>
661                <para><inlinemediaobject><imageobject>
662                        <imagedata fileref="img/btn_draw.png" format="png">
663                </imageobject></inlinemediaobject> Enable Draw Mode.
664                </para>
665                </listitem>
666               
667                <listitem>
668                <para><inlinemediaobject><imageobject>
669                        <imagedata fileref="img/btn_pattern_mode.png" format="png">
670                </imageobject></inlinemediaobject> Switch from "Single pattern mode" to "Stacked pattern mode" and back..
671                </para>
672                </listitem>
673</itemizedlist>
674 
675        <para>
676        Under these buttons there is a list of patterns created and when they will played (each square == 1 bar). Click
677        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.
678        </para>
679
680        <mediaobject>
681                <imageobject>
682                        <imagedata fileref="img/SongEditor.png" format="png">
683                </imageobject>
684                <caption>
685                        <para>
686                        <emphasis role="bold">Fig. 6</emphasis> The Song Editor
687                        </para>
688                </caption>
689        </mediaobject>
690
691        </sect1>
692
693        <sect1 id="patternEditor">
694                <title>Pattern Editor</title>
695                <para>
696                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).
697               
698                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
699                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.
700                </para>
701
702                <para>
703                The button
704                <inlinemediaobject>
705                        <imageobject>
706                                <imagedata fileref="img/btn_hear_on.png" format="png">
707                        </imageobject>
708                </inlinemediaobject>
709
710                (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
711               
712                <inlinemediaobject>
713                        <imageobject>
714                                <imagedata fileref="img/btn_updown.png" format="png">
715                        </imageobject>
716                </inlinemediaobject>
717
718. A useful <quote>Quantize</quote> feature is available activating
719       
720                <inlinemediaobject>
721                        <imageobject>
722                                <imagedata fileref="img/btn_quant_off.png" format="png">
723                        </imageobject>
724                </inlinemediaobject>
725       
726        . This way the beats inserted will automatically respect the grid resolution currently applied.
727                </para>
728
729                        <mediaobject>
730                                <imageobject>
731                                        <imagedata fileref="img/PatternEditor.png" format="png">
732                                </imageobject>
733                <caption>
734                        <para>
735                        <emphasis role="bold">Fig. 7</emphasis> The Pattern Editor
736                        </para>
737                </caption>
738                               
739                        </mediaobject>
740
741                <para>
742                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.
743This 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.
744                </para>
745               
746                <para>
747                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.
748                </para>
749           
750                <para>
751                    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.
752                </para>
753               
754                <mediaobject>
755                        <imageobject>
756                                <imagedata fileref="img/PatternEditorInstr.png" format="png">
757                        </imageobject>
758                </mediaobject>
759
760                <para>Also, you can set new beats clicking on
761               
762                <inlinemediaobject>
763                        <imageobject>
764                                <imagedata fileref="img/btn_record_over.png" format="png">
765                        </imageobject>
766                </inlinemediaobject>
767               
768                which enables direct input by MIDI events or by keyboard according to the following map key=instrument:</para>
769               
770                <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>
771               
772                <itemizedlist>
773                <listitem><para>Z = Kick</para></listitem>
774                <listitem><para>X = Snare Jazz</para></listitem>
775                <listitem><para>C = Snare Rock</para></listitem>
776                <listitem><para>V = Tom Low</para></listitem>
777                <listitem><para>B = Tom Mid</para></listitem>           
778                <listitem><para>N = Tom Hi</para></listitem>
779                <listitem><para>M = Cowbell</para></listitem>           
780                <listitem><para>Q = Ride Jazz</para></listitem>
781                <listitem><para>W = Ride Rock</para></listitem>         
782                <listitem><para>E = Instrument No. 17 (currently not assigned)</para></listitem>
783                <listitem><para>R = Instrument No. 18 (currently not assigned)</para></listitem>               
784                <listitem><para>T = Instrument No. 20 (currently not assigned)</para></listitem>
785                <listitem><para>Y = Instrument No. 22 (currently not assigned)</para></listitem>               
786                <listitem><para>U = Instrument No. 24 (currently not assigned)</para></listitem>
787                <listitem><para>S = Stick</para></listitem>             
788                <listitem><para>D = Hand Clap</para></listitem>
789                <listitem><para>G = Closed HH</para></listitem>         
790                <listitem><para>H = Pedal HH</para></listitem>
791                <listitem><para>J = Open HH</para></listitem>           
792                <listitem><para>2 = Crash</para></listitem>
793                <listitem><para>3 = Crash Jazz</para></listitem>               
794                <listitem><para>5 = Instrument No. 19 (currently not assigned)</para></listitem>
795                <listitem><para>6 = Instrument No. 21 (currently not assigned)</para></listitem>               
796                <listitem><para>7 = Instrument No. 23 (currently not assigned)</para></listitem>
797                </itemizedlist>
798
799       
800        <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>
801       
802        <mediaobject>
803                <imageobject>
804                        <imagedata fileref="img/tastiera.png" format="png">
805                </imageobject>
806        </mediaobject>
807       
808        </sect1>
809
810        <sect1 id="mixer">
811                <title>Mixer</title>
812               
813                <mediaobject>
814                        <imageobject>
815                                <imagedata fileref="img/Mixer.png" format="png">
816                        </imageobject>
817                <caption>
818                        <para>
819                        <emphasis role="bold">Fig. 8</emphasis> The Mixer
820                        </para>
821                </caption>
822                </mediaobject>
823
824<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
825
826        <inlinemediaobject>
827                <imageobject>
828                        <imagedata fileref="img/showPeaks_on.png" format="png">
829                </imageobject>
830        </inlinemediaobject>   
831
832         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
833       
834        <inlinemediaobject>
835                <imageobject>
836                        <imagedata fileref="img/btn_solo_on.png" format="png">
837                </imageobject>
838        </inlinemediaobject>
839       
840        , mute
841       
842        <inlinemediaobject>
843                <imageobject>
844                        <imagedata fileref="img/btn_mute_on.png" format="png">
845                </imageobject>
846        </inlinemediaobject>
847       
848        or test play only that instrument
849
850        <inlinemediaobject>
851                <imageobject>
852                        <imagedata fileref="img/btn_play_on_mixer.png" format="png">
853                </imageobject>
854        </inlinemediaobject>
855
856        ; 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).
857        </para>
858
859        <para>
860                In addition to all this you can set up to 4 special LADSPA effects for each instrument switching the
861               
862        <inlinemediaobject>
863                <imageobject>
864                        <imagedata fileref="img/showFX_on.png" format="png">
865                </imageobject>
866        </inlinemediaobject>
867       
868        button. See next section for a detailed overview.
869       
870                <mediaobject>
871                        <imageobject>
872                                <imagedata fileref="img/MixerFX.png" format="png">
873                        </imageobject>
874                </mediaobject> 
875       
876        </para>
877
878        </sect1>
879
880        <sect1 id="drumkit">
881          <title>Sound Library (Drumkit Manager)</title>
882
883          <para>The Sound Library saves you time in managing your drum kits,
884          favorite patterns, and favorite songs.  When making new songs and drum
885          kits, the Sound Library makes it easier for you to reuse and mix the
886          instruments and patterns from other kits and songs.</para>
887
888          <simplesect id="sect.systemdrumkits">
889            <title>System Drumkits</title>
890
891            <para>This lists the drumkits that were installed by your system
892            administrator.  It was determined by the compile-time prefix.  On
893            Unix-like operating systems, this is
894            usually <filename role="directory">/usr/share/hydrogen/data/drumkits</filename>,
895            or
896            possibly <filename role="directory">/usr/local/share/hydrogen/data/drumkits</filename>.
897            These kits are available to all users on the system, and users are
898            usually not able to add to them.</para>
899
900            <para>To load a drumkit from here, right-click the drumkit and
901            select <guimenuitem>Load</guimenuitem>.  This will replace your
902            current drumkit with the one that you selected.  To load a single
903            instrument from that kit, left-click the <guibutton>plus</guibutton>
904            to the left of the drumkit's name to show all the instruments.  With
905            your left mouse button, click and drag the instrument into your
906            current kit.  The instrument will be added to the drumkit that you
907            currently have loaded.</para>
908          </simplesect>
909
910          <simplesect id="sect.userdrumkits">
911            <title>User Drumkits</title>
912
913            <para>These are your own drum kits that you can manage yourself.
914            They are usually stored
915            in <filename role="directory">$HOME/.hydrogen/data/drumkits</filename>.
916            When you are creating a new drumkit, you can save it here by
917            selecting <menuchoice><guimenu>Instruments</guimenu><guimenuitem>Save
918            library</guimenuitem></menuchoice>.</para>
919
920
921            <para>Loading drumkits and instruments to use is the same as for the
922            System Drumkits (see <xref linkend="sect.systemdrumkits">).</para>
923
924          </simplesect>
925          <simplesect id="sect.sl.patterns">
926            <title>Patterns in the Sound Library</title>
927
928            <para>Before you save your favorite patterns to the sound library,
929            be sure to edit it's properties by right-clicking and
930            selecting <guimenuitem>Properties</guimenuitem>.  There, you can
931            give the pattern a title and a category.  You can use one of the
932            categories already provided, or create your own categories by simply
933            typing in a category name.  The category name is important, because
934            the patterns will be filed by category in the Sound Library.</para>
935
936            <para>You can save your favorite patterns in the sound library by
937            right clicking the title of the pattern in the song editor, and
938            selecting <guimenuitem>Save Pattern</guimenuitem>.  It will appear
939            in the Sound Library underneath <guilabel>Patterns</guilabel> and
940            the category that you assigned to the pattern.</para>
941
942          </simplesect>
943          <simplesect id="sect.sl.songs">
944            <title>Songs in the Sound Library</title>
945
946            <para>To save songs in the Sound Library, put them in your data
947            directory underneath the <filename role="directory">songs</filename>
948            folder
949            (usually <filename role="directory">$HOME/data/songs</filename>.  To
950            remove them, remove the file from that folder.</para>
951          </simplesect>
952
953        </sect1>
954        <sect1 id="instrumentediting">
955                <title>Drumkits and Instrument Editing</title>
956
957                <para>Creating a new drumkit with Hydrogen is done with the
958                Instrument Editor.  Using the instrument editor you can load
959                samples, set envelope parameters, set the gain, and a few other
960                advanced features like mute groups, low-pass resonance filter,
961                and pitch randomization.</para>
962
963                <para>Instead of creating your own drumkit, you can also use or
964                download existing drumkits using
965                the <link linkend="drumkit">Drumkit Manager</link>.</para>
966
967                <!-- Need to add an explaination of what the instrument list
968                     and instrument editor are. -->
969
970        <sect2 id="instrumentediting.concepts">
971                <title>Concepts</title>
972
973                <para>
974                  The synthesizer in Hydrogen is a sample-based synthesizer.  A
975                  sample is a piece of pre-recorded audio (usually between .1
976                  sec and 3 sec).  To play a note, the sample is simply played
977                  back at the right time.  There's a few concepts and terms that
978                  you should understand when you are putting together a drumkit.
979                  (See the <link linkend="glossary">Glossary</link> for more
980                  detailed explanations.)
981                </para>
982
983                <variablelist>
984                  <title>Sampling Synthesizer Terms</title>
985                  <varlistentry>
986                    <term>Sample</term><listitem><para>A short recording of a
987                    sound, typically between .1 and 3.0 seconds
988                    long.</para></listitem>
989                  </varlistentry>
990                  <varlistentry>
991                    <term>Gain</term><listitem><para>Volume
992                    adjustment.</para></listitem>
993                  </varlistentry>
994                  <varlistentry>
995                    <term>Velocity</term><listitem><para>How hard you hit a
996                    note.</para></listitem>
997                  </varlistentry>
998                  <varlistentry>
999                    <term>ADSR Envelope Generator</term><listitem><para>An
1000                    Attack/Decay/Sustain/Release envelope generator.  After you
1001                    trigger a note, Hydrogen
1002                    will <emphasis>attack</emphasis> the note by
1003                    increasing its volume from 0 to the full velocity of the
1004                    note.  After reaching full velocity, it
1005                    will <emphasis>decay</emphasis> the note by
1006                    lowering the volume until it reaches
1007                    the <emphasis>sustain</emphasis> level.  When
1008                    the note is <emphasis>released</emphasis>,
1009                    Hydrogen reduces the volume from the sustain level back down
1010                    to 0.</para></listitem>
1011                  </varlistentry>
1012                  <varlistentry>
1013                    <term>Attack</term><listitem><para>The amount
1014                    of <emphasis role="bold">time</emphasis> to go from 0 to
1015                    full velocity.</para></listitem>
1016                  </varlistentry>
1017                  <varlistentry>
1018                    <term>Decay</term><listitem><para>The amount
1019                    of <emphasis role="bold">time</emphasis> to go from full
1020                    velocity to the sustain volume.</para></listitem>
1021                  </varlistentry>
1022                  <varlistentry>
1023                    <term>Sustain</term><listitem><para>The <emphasis role="bold">level</emphasis>
1024                    (how loud) to hold the note between the sustain and the
1025                    release.  It is a percentage of the velocity.  It does not
1026                    depend on time.</para></listitem>
1027                  </varlistentry>
1028                  <varlistentry>
1029                    <term>Release</term><listitem><para>The amount
1030                    of <emphasis role="bold">time</emphasis> to go from the
1031                    sustain volume back down to 0.</para></listitem>
1032                  </varlistentry>
1033                </variablelist>
1034
1035                <para>
1036                  Typical samples that are used in Hydrogen are: the sound of a
1037                  single drum hit, the sound of a single cymbal hit, the sound
1038                  of a single cowbell hit.  Whenever you put a note in the
1039                  pattern (or play a note using MIDI), Hydrogen will play
1040                  whatever sound you have loaded.  So, to put together a drum
1041                  kit you need to gather short recordings of the bass drum, each
1042                  tom, each cymbal, the high hat open, the high hat closed, the
1043                  snare drum (snare on), the snare drum (snare off), rim shots,
1044                  etc.
1045                </para>
1046
1047                <para>
1048                  However, there are no rules about what a sample can be.  It's
1049                  not uncommon to use Hydrogen to trigger non-drum sounds like:
1050                  audio clips of people talking, a clip from a song, sound
1051                  effects, audio clips from movies, and famous people speaking.
1052                  Be creative!
1053                </para>
1054
1055        </sect2>
1056        <sect2 id="instrumentediting.newkit">
1057                <title>Creating a New Drumkit</title>
1058
1059                <para>To start a brand new drum kit, select
1060                  <menuchoice>
1061                    <guimenu>Instruments</guimenu>
1062                    <guimenuitem>Clear All</guimenuitem>
1063                  </menuchoice>.
1064                  This will give you a bank of 32 blank instruments.  To delete
1065                  instruments, right-click on on each instrument and select
1066                  <guimenuitem>Delete Instrument</guimenuitem>.  To add
1067                  more instruments, select
1068                  <menuchoice>
1069                    <guimenu>Instruments</guimenu>
1070                    <guimenuitem>Add instrument</guimenuitem>
1071                  </menuchoice>.
1072                </para>
1073
1074                <para>Select an instrument to start editing it.  This
1075                is done by left-clicking on the name of the instrument in the
1076                instrument list (at the left).  You will notice that the name of
1077                the instrument in the Instrument Editor matches the one that you
1078                clicked.</para>
1079
1080                <para>After you have your drum kit working the way you
1081                want, select
1082                  <menuchoice>
1083                    <guimenuitem>Instruments</guimenuitem>
1084                    <guimenuitem>Save library</guimenuitem>
1085                  </menuchoice>.  It will ask you for the name of the
1086                  kit to save.  If you wish
1087                  to <emphasis>overwrite</emphasis> an existing kit,
1088                  you will need to type in the same name as the kit
1089                  that you want to replace.</para>
1090
1091                <para>Drumkits are automatically stored in
1092                the <filename class="directory">data</filename>
1093                directory
1094                (i.e. <filename class="directory">$HOME/data/drumkits</filename>).</para>
1095
1096                <para>To export a drumkit (for sharing with others),
1097                it must first be loaded into your Sound Library.
1098                Then, select
1099                  <menuchoice>
1100                    <guimenuitem>Instruments</guimenuitem>
1101                    <guimenuitem>Export library</guimenuitem>
1102                  </menuchoice>
1103                from the menu.  Select the drum kit that you wish to
1104                export, and give it a file name to save it to.</para>
1105
1106        </sect2>
1107        <sect2 id="instrumentediting.newinstrument">
1108                <title>Creating an Instrument and Layers</title>
1109
1110                <para>For each instrument in a drum kit, you can load
1111                several samples and set different synthesizer
1112                parameters.  This section will step you through how to
1113                create a new instrument and load the samples.</para>
1114
1115                <para>To begin creating an instrument, select
1116                  <menuchoice>
1117                    <guimenu>Instruments</guimenu>
1118                    <guimenuitem>Add instrument</guimenuitem>
1119                  </menuchoice>.  This will give you a blank
1120                  instrument to start from.</para>
1121
1122                <para>Now, you need two samples.  Any .WAV or .FLAC file will
1123                do.  Hydrogen provides several in
1124                the <filename class="directory">data/drumkits</filename>
1125                directory.</para>
1126
1127                <para>In the instrument editor, click
1128                on <guibutton>Layers</guibutton>.  You can layer several samples
1129                into the instrument.  Which one is played depends on the
1130                velocity of the incoming note.  Click <guibutton>Load
1131                Layer</guibutton> and point the <guimenu>Audio File
1132                Browser</guimenu> to your sample.  Note that the <guimenu>Audio
1133                File Browser</guimenu> will allow you to preview the sample
1134                before you load it.  It will also allow you to load more than
1135                one sample at a time.  But for now, only load one.</para>
1136
1137                <para>After you load the sample, you'll see that there
1138                is now a <guilabel>1</guilabel> at the top, and the
1139                topmost rectangle has turned light blue.  To load a
1140                second sample, click the slot just below it, and then
1141                click <guibutton>Load Layer</guibutton> to bring in
1142                another sample.</para>
1143
1144                <para>After bringing in both samples, you'll probably
1145                notice that only the <emphasis>first</emphasis> sample
1146                is being played whenever you trigger the instrument.
1147                This is because you need to set
1148                the <emphasis>velocity</emphasis> ranges for the
1149                layers.  Move your mouse to the sides of the light
1150                blue rectangles and you see that you get a left-right
1151                drag cursor.  Now drag the sample to the left or right
1152                (like a curtain).  You will now see Layer 2
1153                appear.</para>
1154
1155                <para>The velocity setting for the layer is 0-velocity
1156                on the left, and full velocity on the right.  Set up
1157                Layer 1 to sound for soft notes, and Layer 2 to sound
1158                for hard notes.  (I.e. Layer 1 on the left and Layer 2
1159                on the right.)</para>
1160
1161                <para>Now, in the pattern area, set up a simple
1162                pattern that plays this instrument.  Adjust the
1163                velocity settings on each note so that you can get the
1164                different samples to sound.  Now set the pattern to
1165                loop and notice how your different samples are getting
1166                triggered.  (To learn about editing a pattern,
1167                see <xref linkend="patternEditor">)</para>
1168
1169                <para>For each layer, you can set
1170                the <guibutton>Gain</guibutton> and
1171                the <guibutton>Pitch</guibutton>.  The pitch also has
1172                a <guibutton>Fine</guibutton> adjustment.</para>
1173
1174                <para>Use the <guibutton>Gain</guibutton> adjustment
1175                to control how loud the sample will play.  This is
1176                necessary because it's extremely difficult to get a
1177                set of samples that all sound at about the same
1178                volume.  By adjusting here, the samples that were
1179                recorded too quietly can be turned up to match your
1180                loud samples (that had to be turned down).</para>
1181
1182                <warning>
1183                  <para>It is very easy to set
1184                  the <guibutton>Gain</guibutton> too high, causing
1185                  your sample to clip.  Remember to test the gain with
1186                  full-velocity notes.  If you clip your signal here,
1187                  it will only get worse as Hydrogen processes
1188                  it.</para>
1189                </warning>
1190
1191                <para>The pitch of the sample can be modified with the
1192                pitch controls.  The <guibutton>Pitch</guibutton> knob
1193                adjust the pitch in musical half-steps.  (So, -12 is
1194                down 1 octave).  The pitch on the right adjusts the
1195                pitch &plusmn;50 cents.  (One half-step is 100
1196                cents.)</para>
1197
1198                <note>
1199                  <para>The pitch is adjusted by playing the sample
1200                  back faster or slower.  This is called the Dopplar
1201                  Effect.  So, if you have a 1-second sample that you
1202                  turn down -12 (1 octave), you sample will only last
1203                  for .5-seconds.</para>
1204                </note>
1205        </sect2>
1206        <sect2 id="instrumentediting.parameters">
1207                <title>Instrument Parameters</title>
1208
1209                <para>In the instrument editor, click on
1210                the <guibutton>General</guibutton> button.  Here you
1211                can adjust several parameters that are for the whole
1212                instrument (not for each layer).  The parameters that
1213                you can adjust are:</para>
1214
1215                <itemizedlist>
1216                  <listitem>
1217                    <para><emphasis role='bold'>Envelope
1218                    parameters</emphasis>: <guibutton>Attack</guibutton>, <guibutton>Decay</guibutton>,
1219                    <guibutton>Sustain</guibutton>, <guibutton>Release</guibutton>.  (See
1220                    <xref linkend='def.envelopegenerator'>)</para>
1221                  </listitem>
1222                  <listitem>
1223                    <para><emphasis role='bold'><guibutton>Gain</guibutton></emphasis>:
1224                    The overall volume of the instrument.</para>
1225                  </listitem>
1226                  <listitem>
1227                    <para><emphasis role='bold'><guibutton>Mute
1228                    Group</guibutton></emphasis>: Which mute group
1229                    this instrument is a member of (see
1230                    <xref linkend='def.mutegroup'>).</para>
1231                  </listitem>
1232                  <listitem>
1233                    <para><emphasis role='bold'>Filter
1234                    Parameters</emphasis>: <guibutton>Byp</guibutton>ass, <guibutton>Cutoff</guibutton>,
1235                      <guibutton>Resonance</guibutton>.</para>
1236                  </listitem>
1237                  <listitem>
1238                    <para><emphasis role='bold'><guibutton>Random
1239                    Pitch</guibutton></emphasis></para>
1240                  </listitem>
1241                </itemizedlist>
1242
1243                <para>It's important that you
1244                understand <xref linkend='instrumentediting.concepts'>
1245                in order to continue on.</para>
1246
1247                <simplesect id="instrumentediting.envelopeparameters">
1248                  <title>Envelope Parameters</title>
1249
1250                  <para>When the instrument is triggered, its volume
1251                  is run through an ADSR Envelope.  The parameters
1252                  operate as follows:</para>
1253
1254                  <itemizedlist>
1255                    <listitem>
1256                      <para><emphasis role="bold">Attack</emphasis>
1257                      &mdash; the amount of <emphasis>time</emphasis>
1258                      that the volume of the sample goes from 0 to the
1259                      full velocity of the note.  If the value is 0,
1260                      the sample will play immediately at full
1261                      velocity.  If the value is 1.0, the sample
1262                      volume will use the maximum time available for
1263                      the attack paramater.
1264                        <footnote id="fn.adsrtimes">
1265                          <para>The attack, decay, and release parameters are
1266                          all set by the number of <emphasis>audio
1267                          samples</emphasis>.  This means that the time changes
1268                          depending on the sample rate of your sound card.  The
1269                          max time for each of them is 100,000 audio samples
1270                          (typ. 2.27 sec at 44.1 kHz).</para>
1271                        </footnote>
1272                      </para>
1273                    </listitem>
1274                    <listitem>
1275                      <para><emphasis role="bold">Decay</emphasis>
1276                      &mdash; the amount of <emphasis>time</emphasis>
1277                      for the volume of the sample to go from full
1278                      velocity down to the sustain volume.  If the
1279                      value is 0, the sample will immediately skip
1280                      from the attack volume to the sustain volume.
1281                      If the value is 1.0, the sample volume will use
1282                      the maximum time available for the decay
1283                      parameter.<footnoteref linkend="fn.adsrtimes"></para>
1284                    </listitem>
1285                    <listitem>
1286                      <para><emphasis role="bold">Sustain</emphasis>
1287                      &mdash; the <emphasis>volume</emphasis> to play
1288                      the note after the decay phase is over, and
1289                      until the note is released.  If set to 0, the
1290                      note will be silent.  If set to 1.0, the note
1291                      will play at full velocity.</para>
1292                    </listitem>
1293                    <listitem>
1294                      <para><emphasis role="bold">Release</emphasis> &mdash;
1295                      the <emphasis>time</emphasis> to fade out the note from
1296                      the sustain volume back down to 0 (silent).  If set to 0,
1297                      the note will fade out in the minimum amount of time
1298                      (about 5 ms).  If set to 1, it will fade out for
1299                      the maximum time
1300                      available.<footnoteref linkend="fn.adsrtimes"></para>
1301                    </listitem>
1302                  </itemizedlist>
1303
1304                  <para>If the sample is shorter than the times that
1305                  you specify, the sample will end, regardless of
1306                  which phase of the ADSR it is in.  If the note is
1307                  sustained, it does <emphasis>not</emphasis> draw out
1308                  the note while you are holding it.  It only holds
1309                  the gain (volume) parameter during that time.</para>
1310
1311                </simplesect>
1312
1313                <simplesect id="instrumentediting.gainandmutegroup">
1314                  <title>Gain and Mute Group</title>
1315
1316                  <para>The gain sets the overall volume for the
1317                  sample.  This gain is applied after the gain that
1318                  you set for the layer, and before the gain that is
1319                  set for the mixer.  If the Gain is 0, the instrument
1320                  will be silent.  If the gain is 1.0 the volume of
1321                  the samples will not be adjusted (i.e. 0 dB).  If
1322                  the gain is set higher, the samples will be
1323                  amplified.</para>
1324
1325                  <warning>
1326                    <para>It is very easy to set
1327                      the <guibutton>Gain</guibutton> too high, causing
1328                      your sample to clip.  Remember to test the gain with
1329                      full-velocity notes.  If you clip your signal here,
1330                      it will only get worse as Hydrogen processes
1331                      it.</para>
1332                  </warning>
1333
1334                  <para>Hydrogen provides more mute groups than you
1335                  know what to do with (over 256).  A mute group is a
1336                  grouping of instruments that are mutually exclusive
1337                  &mdash; only one instrument may be playing at any
1338                  time.  If one is playing and another instrument in
1339                  the group is triggered, it will immediately silence
1340                  (mute) and start playing the other instrument.  This
1341                  is useful, especially, for instruments like hi-hats
1342                  where the open sound and the closed sound are
1343                  different instruments.</para>
1344
1345                  <para>If the mute group is set
1346                  to <guilabel>Off</guilabel>, then the instrument is
1347                  not part of any mute grouping.  If the mute group is
1348                  set to any number, then that is the group that the
1349                  instrument is a part of.  To set other instruments
1350                  into the same grouping, set their mute group
1351                  parameter to the same number.  (For example, to
1352                  group all the high-hat instruments, you can set all
1353                  their mute group parameters to 1.  To have a snare
1354                  drum mute group, set their mute group parameters to
1355                  2.)</para>
1356
1357                </simplesect>
1358
1359                <simplesect id="instrumentediting.filterandrandompitch">
1360                  <title>Filter and Random Pitch</title>
1361
1362                  <para>The filter is a low-pass resonance filter.  If you don't
1363                  wish to use is, click the <guibutton>BYP</guibutton>ass button
1364                  so that it's red.  If it's not red, then the filter is active.
1365                  The cutoff parameter adjusts the cutoff frequency for the
1366                  filter.  The resonance parameter adjusts how much to resonate
1367                  the cutoff frequency.  If the resonance is set to 0, then the
1368                  filter is just a simple low-pass filter.</para>
1369
1370                  <note>
1371                    <para>The cutoff frequency of the filter varies with the
1372                    sample rate of your audio card.  The range of the knob (0 to
1373                    1.0) is optimized for a 48,000 kHz sample rate.</para>
1374                    <!-- NOTE:  I tried to reverse engineer the LPRF in the
1375                         sampler to calculate what the cutoff frequency is.
1376                         I think it's *something* kind of like this:
1377
1378                         f = cutoff * samplerate / 2
1379
1380                            - OR MAYBE -
1381
1382                         f = sqrt(cutoff) * samplerate / 2   (or / 4)
1383
1384                         http://en.wikipedia.org/wiki/Low-pass_filter                         
1385                         -gabriel
1386                         -->
1387                  </note>
1388
1389                  <para>The random pitch paramater allows you to randomly vary
1390                  the pitch of the sample every time it is triggered.  The value
1391                  is set between 0 and 1.0.  The pitch change is fairly small:
1392                  &plusmn;2 half-steps &times; value.  Using this sparingly can
1393                  help your sequences to sound more like a real drummer.</para>
1394               
1395                </simplesect>
1396        </sect2>
1397        <sect2 id="instrumentediting.tips">
1398                <title>Tips on Editing Instruments</title>
1399
1400                <para>With all of the different parameters available to tweak,
1401                it can be difficult to set up something that sounds nice when
1402                you're done.  Here's a few tips on setting up an
1403                instrument:</para>
1404
1405                <para><emphasis role="bold">Turn down the gain.</emphasis> Every
1406                time you have a gain knob (i.e. an amplifier), this is called
1407                a <emphasis>gain stage</emphasis>.  With every gain stage you
1408                have, it's easy to overdrive your signal &mdash; which means the
1409                signal gets distorted by clipping.  In addition, if you have two
1410                samples that, by themselves, peg your meters &mdash; what do you
1411                think happens when you combine them?  That's right, you
1412                overdrive the signal again.</para>
1413
1414                <para>If things sound bad and distorted, start by turning down
1415                the gain setting on the layer... especially if it's larger than
1416                1.0.  Then turn down the instrument gain.  Then any gain on a
1417                LADSPA effect.  Then the fader on the mixer.  Then the master
1418                output fader.</para>
1419
1420                <para><emphasis role="bold">Test samples at full
1421                velocity.</emphasis> Your sample will be played louder if the
1422                velocity is higher.  So, if you set everything to sound nice and
1423                full with velocity at 0.7, what will happen when you get a full
1424                velocity of 1.0?  (<emphasis>Hint: clipping.</emphasis>)</para>
1425
1426                <para><emphasis role="bold">Try to use samples that are -6 dB
1427                max.</emphasis> Visually, this means samples that peak at only
1428                1/2 of full scale.  Otherwise, turn your layer gain to about
1429                .5.</para>
1430
1431                <para><emphasis role="bold">Remove all DC offsets from the
1432                sample.</emphasis> In a sample editor, there is usually a line
1433                down the center of your sample's waveform.  This is the
1434                zero-line.  The beginning of your sample should be on this line.
1435                The end of your sample should also be on this line.  However, if
1436                your signal is a little above or a little below this line, you
1437                will hear a click at the beginning and the end of your sample
1438                whenever it is played.  If your sample editor doesn't provide
1439                any tools to fix a DC Offset problem, you can eliminate the
1440                noise by putting a slight fade-in/out at the ends of your
1441                sample.</para>
1442
1443                <para><emphasis role="bold">The ADSR will not be longer than
1444                your sample.</emphasis> If you have a short sample, it doesn't
1445                matter how long you set the attack and delay &mdash; the sample
1446                will stop playing at the end.</para>
1447
1448                <para><emphasis role="bold">Things change with the sample
1449                rate.</emphasis> If you have a really nice setup with all your
1450                parameters painstakenly
1451                tweaked... things <emphasis>will</emphasis> change if you change
1452                the sample rate of your audio card.  Many of Hydrogens internal
1453                settings and parameters are done based on how many samples go
1454                by, and not on how many seconds go by.  The sort of things that
1455                change are: anything time-base (like attack and release) and
1456                anything frequency based (like the cutoff frequency).</para>
1457
1458        </sect2>
1459        </sect1>
1460
1461        <sect1 id="ladspa">
1462                <title>LADSPA plugins</title>
1463                <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 plugin libraries, it's as simple as a <command>scons &amp;&amp; scons install</command>.  Here are a few places to download plugin libraries:</para>
1464
1465        <itemizedlist>
1466        <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>
1467       
1468        <listitem><para>CMT available at <ulink url="http://www.ladspa.org"><citetitle>http://www.ladspa.org</citetitle></ulink>.</para></listitem>
1469       
1470        <listitem><para>TAP available at <ulink url="http://tap-plugins.sf.net"><citetitle>http://tap-plugins.sf.net</citetitle></ulink>.</para></listitem>
1471       
1472        </itemizedlist>
1473
1474        <warning>
1475          <title>Plugins Kill</title>
1476          <para>A LADSPA plugin is compiled, executable code.  It is
1477          capable of hanging, crashing, freezing, screaching,
1478          overflowing buffers, and even phoning home.  If you start
1479          having issues with Hydrogen, disable your plugins and see if
1480          things improve.  Some plugins are not designed for real-time
1481          use, and some are just plain better than others.</para>
1482        </warning>
1483       
1484        <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
1485       
1486        <inlinemediaobject>
1487                <imageobject>
1488                        <imagedata fileref="img/showFX_on.png" format="png">
1489                </imageobject>
1490        </inlinemediaobject>
1491       
1492        and select one of the four available effect line Click on the Edit button (
1493       
1494        <inlinemediaobject>
1495                <imageobject>
1496                        <imagedata fileref="img/edit_off.png" format="png">
1497                </imageobject>
1498        </inlinemediaobject>
1499       
1500        ), 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.
1501       
1502        <inlinemediaobject>
1503                <imageobject>
1504                        <imagedata fileref="img/MixerFXKnob.png" format="png">
1505                </imageobject>
1506        </inlinemediaobject>
1507       
1508        If you want to quickly enable/disable the effect click the Bypass (
1509       
1510        <inlinemediaobject>
1511                        <imageobject>
1512                                <imagedata fileref="img/bypass_over.png" format="png">
1513                        </imageobject>
1514                </inlinemediaobject>)
1515               
1516               
1517                button.</para>
1518
1519
1520                <mediaobject>
1521                        <imageobject>
1522                                <imagedata fileref="img/MixerFXSelect.png" format="png">
1523                        </imageobject>
1524                <caption>
1525                        <para>
1526                        <emphasis role="bold">Fig. 3</emphasis> Select an effect.
1527                        </para>
1528                </caption>
1529                </mediaobject>
1530       
1531        </sect1>
1532
1533</chapter>
1534
1535<!--
1536##################
1537# CAPITOLO TERZO #
1538#################
1539-->
1540
1541<chapter id="creazioneSong">
1542        <title>A new song</title>
1543        <sect1 id="SongVSpattern">
1544                <title>"Song" mode and "Pattern" mode</title>
1545                <para>
1546                        This is just a quick-and-dirty walkthrough to Hydrogen. Refer to the tutorial for a more detailed overview.
1547                </para>
1548               
1549                <para>
1550                        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.
1551                </para>
1552        </sect1>
1553
1554        <sect1 id="creazionePattern">
1555                <title>A new pattern</title>
1556                <para>
1557                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>
1558                </para>
1559
1560                <mediaobject>
1561                        <imageobject>
1562                                <imagedata fileref="img/PatternEditor.png" format="png">
1563                        </imageobject>
1564                <caption>
1565                        <para>
1566                        <emphasis role="bold">Fig. 12</emphasis> The Pattern Editor
1567                        </para>
1568                </caption>
1569                </mediaobject>
1570        </sect1>
1571
1572        <sect1 id="creazioneSequenza">
1573                <title>A new sequence</title>
1574                <para>
1575                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).
1576                </para>
1577
1578                <mediaobject>
1579                        <imageobject>
1580                                <imagedata fileref="img/SongEditor.png" format="png">
1581                        </imageobject>
1582                <caption>
1583                        <para>
1584                        <emphasis role="bold">Fig. 13</emphasis> Inserting notes in a pattern
1585                        </para>
1586                </caption>
1587                                </mediaobject>
1588
1589        </sect1>
1590       
1591        <sect1 id="operazioniMixer">
1592                <title>Adjust from the mixer</title>
1593                <para>
1594                Of course we can always use the mixer window, either when creating or playing patterns.
1595                </para>
1596               
1597                <para>
1598                The Mixer frame (Fig. 14) is made of 32 independent tracks, each of these is binded to an
1599instrument, plus a "Master Output" line to adjust general output volume and a "FX" button to set effects. Every line features 3 buttons (
1600       
1601                <inlinemediaobject>
1602                        <imageobject>
1603                        <imagedata fileref="img/btn_play_on_mixer.png" format="png">
1604                        </imageobject>
1605                </inlinemediaobject>
1606               
1607                <inlinemediaobject>
1608                        <imageobject>
1609                        <imagedata fileref="img/btn_solo_on.png" format="png">
1610                        </imageobject>
1611                </inlinemediaobject>
1612               
1613                <inlinemediaobject>
1614                        <imageobject>
1615                        <imagedata fileref="img/btn_mute_on.png" format="png">
1616                        </imageobject>
1617                </inlinemediaobject>
1618               
1619                ), pan adjust (
1620               
1621                <inlinemediaobject>
1622                        <imageobject>
1623                        <imagedata fileref="img/MixerPan.png" format="png">
1624                        </imageobject>
1625                </inlinemediaobject>
1626               
1627                ), current maximum peak, volume fader and name of the track. Clicking on
1628               
1629                <inlinemediaobject>
1630                        <imageobject>
1631                        <imagedata fileref="img/btn_solo_on.png" format="png">
1632                        </imageobject>
1633                </inlinemediaobject>
1634               
1635                will play the selected instrument, cutting the others. The "Mute"
1636button
1637               
1638                <inlinemediaobject>
1639                        <imageobject>
1640                        <imagedata fileref="img/btn_mute_on.png" format="png">
1641                        </imageobject>
1642                </inlinemediaobject>
1643
1644                , simply mute <emphasis>that</emphasis> instrument. The maximun peak indicates the maximun volume reached
1645from 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.
1646                </para>
1647               
1648                <mediaobject>
1649                        <imageobject>
1650                                <imagedata fileref="img/Mixer.png" format="png">
1651                        </imageobject>
1652                <caption>
1653                        <para>
1654                        <emphasis role="bold">Fig. 14</emphasis> The mixer
1655                        </para>
1656                </caption>
1657                </mediaobject>
1658        </sect1>
1659</chapter>
1660<glossary id="glossary">
1661  <title>Glossary</title>
1662
1663  <para>This is a glossary of general terms encountered when using Hydrogen,
1664  synthesizers, drums, or samplers.  The definitions in the text are simplified,
1665  but the definitions here are more general and have more explanation.  For
1666  example, the text of the manual would have you believe that an ADSR is the
1667  only kind of envelope generator, and could only ever control the volume.
1668  While it's simple for new users, it's not quite right.</para>
1669
1670  <!--  ...  -->
1671
1672  <!--   A   -->
1673
1674  <glossentry id="def.adsr">
1675    <glossterm>ADSR</glossterm>
1676    <glossdef>
1677      <para>A type of envelope generator that allows you to control the
1678      <link linkend="def.attack">Attack</link>,
1679      <link linkend="def.decay">Decay</link>,
1680      <link linkend="def.sustain">Sustain</link>, and
1681      <link linkend="def.release">Release</link> parameters.
1682      Generally, the
1683      parameters are proportional to
1684      the <link linkend="def.velocity">velocity</link>.</para>
1685
1686      <para>In Hydrogen, the ADSR envelope generator only controls the volume
1687      (attenuation).</para>
1688
1689      <para>Read more about this in the Wikipedia
1690      Article <ulink url="http://en.wikipedia.org/wiki/ADSR_envelope">ADSR
1691      Envelope</ulink></para>
1692
1693      <glossseealso otherterm="def.envelopegenerator">
1694      <glossseealso otherterm="def.attack">
1695      <glossseealso otherterm="def.decay">
1696      <glossseealso otherterm="def.sustain">
1697      <glossseealso otherterm="def.release">
1698    </glossdef>
1699  </glossentry>
1700
1701  <glossentry id="def.attack">
1702    <glossterm>Attack</glossterm>
1703    <glossdef>
1704      <para>This is the first phase of an ADSR envelope, and is the amount
1705      of <emphasis>time</emphasis> to turn the parameter up from
1706      0 to full velocity after triggering the note.</para>
1707
1708      <glossseealso otherterm="def.adsr">
1709    </glossdef>
1710  </glossentry>
1711
1712  <glossentry id="def.attenuation">
1713    <glossterm>Attenuation</glossterm>
1714    <glossdef>
1715      <para>In filters and mixers, this the amount that a signal is reduced
1716      (volume).</para>
1717
1718      <glossseealso otherterm="def.rolloff">
1719    </glossdef>
1720  </glossentry>
1721
1722  <!--   B   -->
1723
1724  <glossentry id="def.bandpassfilter">
1725    <glossterm>Band-Pass Filter</glossterm>
1726    <glossdef>
1727      <para>A filter that preserves a cetertain band of frequencies, and
1728      attenuates (silences) all others.  This is often done by combining a
1729      high-pass and a low-pass filter.</para>
1730
1731      <glossseealso otherterm="def.filter">
1732      <glossseealso otherterm="def.highpassfilter">
1733      <glossseealso otherterm="def.lowpassfilter">
1734    </glossdef>
1735  </glossentry>
1736
1737  <!--   C   -->
1738
1739  <glossentry id="def.clipping">
1740    <glossterm>Clipping</glossterm>
1741    <glossdef>
1742      <para>A phenomenon that happens to a signal when the signal is
1743      too large for whatever is receiving it.  The peaks of the signal
1744      (which are normally smooth curves) get cut off straight at the
1745      max volume (clipped).  This distorts the sound and is usually
1746      undesirable.</para>
1747
1748      <para>An example of clipping is when you play music louder than
1749      your speaker can handle.  Parts of the music sound harsh and
1750      fuzzy.</para>
1751    </glossdef>
1752  </glossentry>
1753
1754  <glossentry id="def.cutoff">
1755    <glossterm>Cutoff Frequency</glossterm>
1756    <glossdef>
1757      <para>On high-pass and low-pass filters, this is the frequency that
1758      divides between those that pass, and those that are attenuated (silenced).
1759      In a high-pass resonance filter, or a low-pass resonance filter, the
1760      cutoff is also the frequency zone that gets boosted.</para>
1761
1762      <para>For example, if you have a low-pass filter and you set the cutoff
1763      frequency high (i.e. 20kHz)... the filter will not affect the sound.  All
1764      the audible frequencies will pass through undisturbed.  As you lower the
1765      cutoff frequency to something like 40 Hz (the low string on a bass
1766      guitar), it sounds like someone is putting a blanket over the speaker.
1767      The higher frequencies are being attenuated above 30 Hz.</para>
1768
1769      <glossseealso otherterm="def.filter">
1770      <glossseealso otherterm="def.highpassfilter">
1771      <glossseealso otherterm="def.lowpassfilter">
1772      <glossseealso otherterm="def.resonancefilter">
1773    </glossdef>
1774  </glossentry>
1775
1776  <!--   D   -->
1777
1778  <glossentry id="def.decay">
1779    <glossterm>Decay</glossterm>
1780    <glossdef>
1781      <para>After reaching full velocity from the attack, this is the amount
1782      of <emphasis>time</emphasis> to turn the parameter down
1783      from full velocity to the sustain level.</para>
1784
1785      <glossseealso otherterm="def.adsr">
1786    </glossdef>
1787  </glossentry>
1788
1789  <!--   E   -->
1790
1791  <glossentry id="def.envelopegenerator">
1792    <glossterm>Envelope Generator</glossterm>
1793    <glossdef>
1794      <para>A way to control (change) a parameter over time as a response to
1795      triggering, holding, and releasing a note.</para>
1796
1797      <para>Did your eyes just glaze over? Let's try again:</para>
1798
1799      <para>Imagine that you're playing a note on the keyboard and you have your
1800      other hand on a knob (volume, filter cutoff, etc.).  As you play the note,
1801      you twist the knob (often up, then down... or down, then up).  You do the
1802      same thing on each note.  That's what an envelope generator does.  See
1803      also <link linkend="def.adsr">ADSR</link></para>
1804    </glossdef>
1805  </glossentry>
1806
1807  <!--   F   -->
1808
1809  <glossentry id="def.fader">
1810    <glossterm>Fader</glossterm>
1811    <glossdef>
1812      <para>A slider control used to adjust the attenuation (volume) in a mixer.
1813      Faders always have an "audio" taper, which means that the attenuation
1814      amount changes on an exponential scale.</para>
1815    </glossdef>
1816  </glossentry>
1817
1818  <glossentry id="def.filter">
1819    <glossterm>Filter</glossterm>
1820    <glossdef>
1821      <para>A device that changes a sound by attenuating specific frequencies.
1822      A tone knob is an example of a simple, low-pass filter.</para>
1823
1824      <glossseealso otherterm="def.bandpassfilter">
1825      <glossseealso otherterm="def.highpassfilter">
1826      <glossseealso otherterm="def.lowpassfilter">
1827      <glossseealso otherterm="def.resonancefilter">
1828    </glossdef>
1829  </glossentry>
1830
1831  <!--   G   -->
1832
1833  <glossentry id="def.gain">
1834    <glossterm>Gain</glossterm>
1835    <glossdef>
1836      <para>In an amplifier, this adjust how much (or how little) a signal is
1837      amplified (volume).  A higher gain value is a louder signal.</para>
1838    </glossdef>
1839  </glossentry>
1840
1841  <!--   H   -->
1842
1843  <glossentry id="def.highpassfilter">
1844    <glossterm>High-Pass Filter</glossterm>
1845    <glossdef>
1846      <para>A filter that attenuates (silences) low frequencies, but allows high
1847      frequencies to pass through.</para>
1848
1849      <glossseealso otherterm="def.filter">
1850      <glossseealso otherterm="def.cutoff">
1851    </glossdef>
1852  </glossentry>
1853
1854  <!--   I   -->
1855
1856  <glossentry id="def.instrument">
1857    <glossterm>Instrument</glossterm>
1858    <glossdef>
1859      <para>In Hydrogen, an instrument is a single noise-maker (like a bass drum
1860      kick, or a tom).</para>
1861    </glossdef>
1862  </glossentry>
1863  <!--   J   -->
1864
1865  <!--   K   -->
1866
1867  <!--   L   -->
1868
1869  <glossentry id="def.layer">
1870    <glossterm>Layer</glossterm>
1871    <glossdef>
1872      <para>In an instrument you can load several different samples
1873      (each one called a <emphasis role="bold">layer</emphasis>), and
1874      have a different sample play depending on the velocity of the
1875      note.  Only one sample at a time will play.</para>
1876
1877      <para>Suppose you have a sample of a floor tom being struck
1878      softly.  If you simply play the sample louder &mdash; it
1879      will <emphasis>not</emphasis> sound the same as a
1880      real tom that has been struck very hard.  If you wish to mimic
1881      this in your instrument, you can load one sample for soft
1882      playing, and a different sample for loud playing.</para>
1883
1884      <glossseealso otherterm="def.instrument">
1885    </glossdef>
1886  </glossentry>
1887
1888  <glossentry id="def.lowpassfilter">
1889    <glossterm>Low-Pass Filter</glossterm>
1890    <glossdef>
1891      <para>A filter that attenuates (silences) high frequences, but allows low
1892      frequencies to pass through.</para>
1893
1894      <glossseealso otherterm="def.filter">
1895      <glossseealso otherterm="def.cutoff">
1896    </glossdef>
1897  </glossentry>
1898
1899  <!--   M   -->
1900
1901  <glossentry id="def.mute">
1902    <glossterm>Mute</glossterm>
1903    <glossdef>
1904      <para>To make no noise.  A setting on an instrument that prevents any
1905      audio output.</para>
1906    </glossdef>
1907  </glossentry>
1908
1909  <glossentry id="def.mutegroup">
1910    <glossterm>Mute Group</glossterm>
1911    <glossdef>
1912      <para>A group of instruments (samples) that should mute (stop playing)
1913      immediately after another instrument in the group is triggered.</para>
1914
1915      <para>This is typically used in hi-hats, where there's a different
1916      instrument (sample) for when the hi-hat is open or closed.  With a real
1917      hi-hat, the sound of the open hi-hat will stop as soon as you close it.
1918      However, if you use two samples &mdash; the open sound will continue even
1919      after you have triggered the closed sound.  By placing both instruments in
1920      the same mute group (group #1, for example)... triggering closed sound
1921      will immediately stop the open sound (and vice versa).</para>
1922    </glossdef>
1923  </glossentry>
1924
1925  <!--   N   -->
1926
1927  <!--   O   -->
1928
1929  <glossentry id="def.octave">
1930    <glossterm>Octave</glossterm>
1931    <glossdef>
1932      <para>A span of frequencies where the top-most frequency is exactly twice
1933      the frequency of the bottom frequency.</para>
1934
1935      <para>For example, the range 20 Hz to 40 Hz is an octave.  So is 120 Hz to
1936      240 Hz, and 575 Hz to 1150 Hz.  While the frequency differences are very
1937      different (20 Hz, 120 Hz, and 575 Hz, respectively), to the human ear
1938      they <emphasis>sound</emphasis> like the same
1939      distance.</para>
1940    </glossdef>
1941  </glossentry>
1942
1943  <!--   P   -->
1944
1945  <!--   Q   -->
1946
1947  <!--   R   -->
1948
1949  <glossentry id="def.release">
1950    <glossterm>Release</glossterm>
1951    <glossdef>
1952      <para>After the note is released, this is the amount
1953      of <emphasis>time</emphasis> to reduce the parameter from
1954      the sustain level to 0.</para>
1955
1956      <glossseealso otherterm="def.adsr">
1957    </glossdef>
1958  </glossentry>
1959
1960  <glossentry id="def.resonance">
1961    <glossterm>Resonance</glossterm>
1962    <glossdef>
1963      <para>When referring to a resonance filter, this is the parameter that
1964      determines how much of a boost (gain) to give the frequencies at the
1965      cutoff.</para>
1966
1967      <glossseealso otherterm="def.resonancefilter">
1968    </glossdef>
1969  </glossentry>
1970
1971  <glossentry id="def.resonancefilter">
1972    <glossterm>Resonance Filter</glossterm>
1973    <glossdef>
1974      <para>A filter that gives a large boost to a very narrow range of
1975      frequencies.  Typically it will be part of a high-pass or a low-pass
1976      filter, where the boosted frequencies are centered on the cut-off
1977      frequency.</para>
1978
1979      <glossseealso otherterm="def.filter">
1980      <glossseealso otherterm="def.cutoff">
1981      <glossseealso otherterm="def.resonance">
1982    </glossdef>
1983  </glossentry>
1984
1985  <glossentry id="def.rolloff">
1986    <glossterm>Roll-off</glossterm>
1987    <glossdef>
1988      <para>This is the amount that frequencies are attenuated (suppressed) as
1989      the frequency changes (typically measured in dB/octave).</para>
1990
1991      <para>For example, in a low-pass filter the frequences below the cutoff
1992      frequency are not attenuated (they pass-through with the same volume).
1993      Same with the cutoff frequency.  As you go above the cutoff frequency, the
1994      frequencies that are near the cutoff frequency are not attenuated very
1995      much at all.  However, the frequencies that are much higher than the
1996      cutoff are attenuated (suppressed) a lot.  This is usually approximated by
1997      a straight line (on a log scale) and measured in in dB of attenuation per
1998      octave of frequency.</para>
1999
2000      <glossseealso otherterm="def.attenuation">
2001      <glossseealso otherterm="def.filter">
2002    </glossdef>
2003  </glossentry>
2004
2005  <!--   S   -->
2006
2007  <glossentry id="def.sample">
2008    <glossterm>Sample</glossterm>
2009    <glossdef>
2010      <para>A short recording of a sound, typically between .1 and 3.0 seconds
2011      long.</para>
2012    </glossdef>
2013  </glossentry>
2014
2015  <glossentry id="def.sustain">
2016    <glossterm>Sustain</glossterm>
2017    <glossdef>
2018      <para>The <emphasis>level</emphasis> to hold the parameter
2019      after finishing the decay time.  This level will be maintained until the
2020      not is released.</para>
2021      <glossseealso otherterm="def.adsr">
2022    </glossdef>
2023  </glossentry>
2024
2025  <!--   T   -->
2026
2027  <!--   U   -->
2028
2029  <!--   V   -->
2030
2031  <glossentry id="def.velocity">
2032    <glossterm>Velocity</glossterm>
2033    <glossdef>
2034      <para>How hard you hit a note.</para>
2035
2036      <para>MIDI devices are required to send this information along with the
2037      note.  Synthesizers use this information to adjust several parameters on
2038      the sample (typically the volume).  In Hydrogen, it is only used to adjust
2039      how loud the sample is played back.</para>
2040    </glossdef>
2041  </glossentry>
2042
2043  <!--   W   -->
2044
2045  <!--   X   -->
2046
2047  <!--   Y   -->
2048
2049  <!--   Z   -->
2050
2051</glossary>
2052</book>
2053       
Note: See TracBrowser for help on using the browser.