\subsubsection{Dynamics}
\seclabel{dynamics}
\begin{haskelllisting}
> module Haskore.Basic.Dynamics where
\end{haskelllisting}
These definitions contradict to the rest of Haskore
where the normal Velocity is 1
and the default player makes crescendo relative to the starting velocity.
According the MIDI specification the velocity shall be a logarithmic scale,
thus it should be additive,
thus the normal velocity is 0.
\begin{haskelllisting}
> type Velocity = Rational
> type T = Rational
> normal, mp, p, pp, ppp, mf, f, ff, fff,
>
> mezzoPiano, piano, pianissimo, pianoPianissimo,
>
> mezzoForte, forte, fortissimo, forteFortissimo :: Velocity
> normal = 0
> mezzoPiano = 1
> piano = 3
> pianissimo = 5
> pianoPianissimo = 7
> mezzoForte = 1
> forte = 3
> fortissimo = 5
> forteFortissimo = 7
> mp = mezzoPiano
> p = piano
> pp = pianissimo
> ppp = pianoPianissimo
> mf = mezzoForte
> f = forte
> ff = fortissimo
> fff = forteFortissimo
\end{haskelllisting}
Cf. MIDI 1.0 Detailed Specification, Document Version 4.2, February 1996,
page 10