diff options
Diffstat (limited to 'manual/plugins/metronome.tex')
-rw-r--r-- | manual/plugins/metronome.tex | 175 |
1 files changed, 174 insertions, 1 deletions
diff --git a/manual/plugins/metronome.tex b/manual/plugins/metronome.tex index e792498984..760507e9b9 100644 --- a/manual/plugins/metronome.tex +++ b/manual/plugins/metronome.tex | |||
@@ -1,6 +1,23 @@ | |||
1 | \subsection{Metronome} | 1 | \subsection{Metronome} |
2 | |||
2 | This plugin can be used as a metronome to keep time during music | 3 | This plugin can be used as a metronome to keep time during music |
3 | practice. Adjust the tempo through the interface or by tapping it out | 4 | practice. It supports two modes of operation, depending on it being |
5 | started from the plugin menu or as viewer for tempomap (\verb:.tempo:) | ||
6 | files. | ||
7 | |||
8 | The sound is a piercing square wave that can be heard well also | ||
9 | through loud music from a band. | ||
10 | In addition, the display also indicates the beats while playing | ||
11 | so that you can discreetly place the device | ||
12 | in your sight for checking the tempo instead of wearing | ||
13 | headphones at a concert. | ||
14 | |||
15 | \subsubsection{Simple Interactive Mode} | ||
16 | |||
17 | This is the mode of operation that is active when starting the | ||
18 | plugin directly from the menu. It offers a uniform metronome sound at | ||
19 | a constant tempo. | ||
20 | You can adjust the tempo through the interface or by tapping it out | ||
4 | on the appropriate button. | 21 | on the appropriate button. |
5 | 22 | ||
6 | \begin{btnmap} | 23 | \begin{btnmap} |
@@ -34,3 +51,159 @@ on the appropriate button. | |||
34 | \opt{HAVEREMOTEKEYMAP}{& } | 51 | \opt{HAVEREMOTEKEYMAP}{& } |
35 | & Sync tap \\} | 52 | & Sync tap \\} |
36 | \end{btnmap} | 53 | \end{btnmap} |
54 | |||
55 | |||
56 | \subsubsection{Programmed Track Mode} | ||
57 | |||
58 | When starting the plugin as a viewer for tempomap files | ||
59 | (ending in \verb:.tempo:), it starts in the track mode that offers | ||
60 | playback of a preprogrammed metronome track consisting out of | ||
61 | multiple parts, each with possibly different properties. | ||
62 | |||
63 | In contrast to the simple mode, there exists the notion of | ||
64 | meter and bars, along with emphasis on certain beats. | ||
65 | Parts can have these properties: | ||
66 | |||
67 | \begin{itemize} | ||
68 | \item finite or infinite duration in bars (navigation only jumps | ||
69 | to the beginning of infinite parts), | ||
70 | \item differing meters (4/4, 3/4, 6/8, etc., default 4/4), | ||
71 | \item differing tempo (always in quarter beats per minute, | ||
72 | default 120) with | ||
73 | \begin{itemize} | ||
74 | \item one tempo per bar or even one tempo per beat, or | ||
75 | \item smooth tempo changes with configurable acceleration, and | ||
76 | \end{itemize} | ||
77 | \item custom beat patterns (tick/tock/silence on each beat), | ||
78 | default being emphasis (tick) on first beat, normal sound | ||
79 | (tock) on others. | ||
80 | \end{itemize} | ||
81 | |||
82 | \paragraph{The button mapping} | ||
83 | is different to enable navigation in the programmed track. | ||
84 | \begin{btnmap} | ||
85 | \PluginExit | ||
86 | \opt{HAVEREMOTEKEYMAP}{& } | ||
87 | & Exit plugin \\ | ||
88 | |||
89 | \PluginCancel | ||
90 | \opt{HAVEREMOTEKEYMAP}{& \PluginRCCancel} | ||
91 | & Stop (stay at position) \\ | ||
92 | |||
93 | \PluginSelect | ||
94 | \opt{HAVEREMOTEKEYMAP}{& \PluginRCSelect} | ||
95 | & Start from / Stop at current position \\ | ||
96 | |||
97 | \PluginLeft{} / \PluginRight | ||
98 | \opt{HAVEREMOTEKEYMAP}{& \PluginRCLeft{} / \PluginRCRight} | ||
99 | & Seek in track \\ | ||
100 | |||
101 | \opt{scrollwheel}{\PluginScrollFwd{} / \PluginScrollBack} | ||
102 | \nopt{scrollwheel}{\PluginUp{} / \PluginDown} | ||
103 | \opt{HAVEREMOTEKEYMAP}{& \PluginRCUp{} / \PluginRCDown} | ||
104 | & Adjust volume \\ | ||
105 | |||
106 | \opt{IRIVER_H100_PAD,IRIVER_H300_PAD,SANSA_E200_PAD}{ | ||
107 | \ButtonRec | ||
108 | \opt{HAVEREMOTEKEYMAP}{& } | ||
109 | & Sync tap \\} | ||
110 | \end{btnmap} | ||
111 | |||
112 | \paragraph{Navigation} | ||
113 | The display indicates the part properties and position in track as such: | ||
114 | \begin{verbatim} | ||
115 | Metronome Track | ||
116 | --------------- | ||
117 | "Interlude" | ||
118 | 3/4@120 V-25 | ||
119 | P2/13: B1/5+2 | ||
120 | \end{verbatim} | ||
121 | In this example, the part label is ``Interlude'', the meter is 3/4 and | ||
122 | the tempo 120 quarter beats per minute (bpm). The volume setting is at -25 | ||
123 | and this is the second part of a track with 13 total. In that part, | ||
124 | the position is at the second beat of the first bar of five. | ||
125 | |||
126 | \paragraph{The syntax of programmed tracks} | ||
127 | in tempomap files follows the format defined by | ||
128 | \url{http://das.nasophon.de/klick/}. | ||
129 | Actually, the goal is to keep compatibility between klick and this | ||
130 | Rockbox metronome. | ||
131 | The parts of a track are specified one line each in this scheme | ||
132 | (pieces in [] optional): | ||
133 | \begin{verbatim} | ||
134 | [name:] bars [meter ]tempo[-tempo2[*accel|/accel] [pattern] [volume] | ||
135 | \end{verbatim} | ||
136 | The bar count and tempo always have to be specified, the rest is optional. | ||
137 | |||
138 | One example is | ||
139 | \begin{verbatim} | ||
140 | part I: 12 3/4 133 | ||
141 | \end{verbatim} | ||
142 | for a part named ``part I'' , 12 bars long, in 3/4 meter with | ||
143 | a tempo of 133 quarter beats per minute. | ||
144 | Tempo changes are indicated by specifying a tempo range and the | ||
145 | acceleration in one of these ways: | ||
146 | \begin{verbatim} | ||
147 | 0 4/4 90-150*0.25 | ||
148 | 0 4/4 150-90/4 | ||
149 | 16 4/4 100-200 | ||
150 | \end{verbatim} | ||
151 | The first one goes from 90 to 150 bpm in an endless part with 0.25 bpm | ||
152 | increase per bar. The second one goes down from 150 to 90 with | ||
153 | 4 bars per bpm change, which is the same acceleration as in the first line. | ||
154 | The last one is a part of 16 bars length that changes tempo from 100 to 200 | ||
155 | smoothly during its whole lifetime (6.25 bpm/bar). For details on how the | ||
156 | acceleration works, see | ||
157 | \url{http://thomas.orgis.org/science/metronome-tempomath/tempomath.html}. | ||
158 | |||
159 | It is also possible to provide a tempo for each individual beat in a part | ||
160 | by separating values with a comma (no spaces), | ||
161 | \begin{verbatim} | ||
162 | varibeat: 3 4/4 135,90,78,100,120,120,99,100,43,94,120,133 | ||
163 | \end{verbatim} | ||
164 | where the beat duration is first according to 135 bpm, then 90 bpm, | ||
165 | and so forth. You are required to provide a value for each beat | ||
166 | in all bars of the part. | ||
167 | |||
168 | You can provide a pattern that controls how the beats are played: | ||
169 | \begin{center} | ||
170 | \begin{tabular}{c|l} | ||
171 | Symbol & Meaning \\ | ||
172 | \hline | ||
173 | X & emphasized beat (Tick) \\ | ||
174 | x & normal beat (Tock) \\ | ||
175 | . & silent beat | ||
176 | \end{tabular} | ||
177 | \end{center} | ||
178 | |||
179 | Some examples: | ||
180 | \begin{verbatim} | ||
181 | default: 0 4/4 120 Xxxx | ||
182 | rockon2: 0 4/4 120 xXxX | ||
183 | solea: 0 12/4 180 xxXxxXxXxXxX | ||
184 | shuffle: 0 12/12 120 x.xX.xx.xX.. | ||
185 | funky: 0 16/16 120 x.x.X..X.Xx.X..X | ||
186 | \end{verbatim} | ||
187 | The 12/12 for the shuffle create 1/4 triplets. Just do a bit of math;-) | ||
188 | This is still a metronome, not a drum machine, but it can act like a basic | ||
189 | one, helping you to figure out a certain rhythm within the meter. | ||
190 | |||
191 | The UI is developed so that it fits into the display of a Sansa Clip+ and | ||
192 | that is the hardware device it is tested on. It seems to work reasonably | ||
193 | on some other models in the simulator. | ||
194 | |||
195 | At last, a more complete tempomap file: | ||
196 | \begin{verbatim} | ||
197 | # An example track exercising the programmable Rockbox metronome | ||
198 | # or also http://das.nasophon.de/klick/. | ||
199 | lead-in: 1 4/4 120 XXXX 0.5 # 4 emphasized but less loud ticks | ||
200 | intro: 4 4/4 120 # standard beat | ||
201 | tearing down: 4 120-90 # changing tempo from 120 to 90 | ||
202 | break: 2 1/4 90 # 2 1/4 bars at 90 | ||
203 | rolling: 2 6/8 90 # 2 6/8 at same tempo (quarters!) | ||
204 | rumbling: 4 3/4 90 X.x # 3/4, first (tick) and last (tock) | ||
205 | ramp-up: 8 2/4 90-150 # speeding up to 150 bpm again | ||
206 | flow: 4 150 # steady 4/4 at 150 bpm | ||
207 | death: 8 150-60 # going down to 60 | ||
208 | final: 1 1/1 60 # one last hit | ||
209 | \end{verbatim} | ||