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

Revision 992, 82.2 KB (checked in by gabriel@…, 4 years ago)

Merge branch manual_xml_po into trunk.

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