summaryrefslogtreecommitdiff
path: root/apps/codecs/dumb/docs/modplug.txt
diff options
context:
space:
mode:
authorMichiel Van Der Kolk <not.valid@email.address>2005-03-17 20:50:03 +0000
committerMichiel Van Der Kolk <not.valid@email.address>2005-03-17 20:50:03 +0000
commit27be5bc72855a0fbbdae230bc144624c9eb85f5e (patch)
treeb553f1321df924c4b744ffcab48dce5f4f081f7d /apps/codecs/dumb/docs/modplug.txt
parent7e7662bb716917ca431204f0113d400c1014f2e8 (diff)
downloadrockbox-27be5bc72855a0fbbdae230bc144624c9eb85f5e.tar.gz
rockbox-27be5bc72855a0fbbdae230bc144624c9eb85f5e.zip
Initial check in dumb 0.9.2 - has a few usages of floating point that should
be rewritten to fixed point. seems to compile cleanly for iriver. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@6197 a1c6a512-1295-4272-9138-f99709370657
Diffstat (limited to 'apps/codecs/dumb/docs/modplug.txt')
-rw-r--r--apps/codecs/dumb/docs/modplug.txt137
1 files changed, 137 insertions, 0 deletions
diff --git a/apps/codecs/dumb/docs/modplug.txt b/apps/codecs/dumb/docs/modplug.txt
new file mode 100644
index 0000000000..a02ddd8bdd
--- /dev/null
+++ b/apps/codecs/dumb/docs/modplug.txt
@@ -0,0 +1,137 @@
1/* _______ ____ __ ___ ___
2 * \ _ \ \ / \ / \ \ / / ' ' '
3 * | | \ \ | | || | \/ | . .
4 * | | | | | | || ||\ /| |
5 * | | | | | | || || \/ | | ' ' '
6 * | | | | | | || || | | . .
7 * | |_/ / \ \__// || | |
8 * /_______/ynamic \____/niversal /__\ /____\usic /| . . ibliotheque
9 * / \
10 * / . \
11 * modplug.txt - Our official position regarding / / \ \
12 * compatibility with ModPlug | < / \_
13 * Tracker. | \/ /\ /
14 * \_ / > /
15 * | \ / /
16 * | ' /
17 * \__/
18 */
19
20
21********************
22*** Introduction ***
23********************
24
25ModPlug Tracker is a very popular tracker for Windows. Its popularity is due
26to the intuitive interface and its many advanced features. The author has
27done a good job with this piece of software, but sadly in doing so he has
28desecrated the IT file format.
29
30I am not against ModPlug Tracker being used to write music modules. As
31already stated, it has some very advanced and convenient features; I use it
32myself. However, I believe its users should be aware of the entire situation
33before using it for any serious work.
34
35 ModPlug Tracker - http://www.modplug.com/
36
37
38*************************
39*** Incompatibilities ***
40*************************
41
42There are a few situations in which ModPlug Tracker misinterprets the
43original module formats. I shall list the five I am most aware of, from least
44to most annoying:
45
465. Create a multisample instrument, for example a piano. Play a low note.
47 Then go up the scale, but in the pattern data, make sure the instrument
48 column is blank; put in only the notes. Play this with ModPlug Tracker,
49 and play it with Impulse Tracker. Impulse Tracker changes sample as you go
50 up the scale; ModPlug Tracker does not.
51
524. Arpeggio and Retrigger Note effects behave badly when combined with
53 Portamento, which can appear in the volume column. While Retrigger Note
54 isn't too bad, Arpeggio sounds completely wrong. Try it and see what
55 happens. Then repeat the experiment in Impulse Tracker.
56
573. The filter algorithm is incorrect, in more ways than one. When Jeffrey Lim
58 programmed the low-pass resonant filters into Impulse Tracker, he used a
59 standard filter algorithm with a slight modification to achieve greater
60 resonance. ModPlug Tracker does not incorporate this modification.
61 Furthermore, ModPlug Tracker uses integer arithmetic with nowhere near
62 enough precision; the wave output is really poor in some cases. I don't
63 doubt it damages the acoustic properties of the filters in subtle ways.
64
652. When looping, ModPlug Tracker resets all variables. The original trackers
66 do not do this.
67
681. Worst of all, ModPlug Tracker has no regard for playback volume, and
69 generally has a much lower output level than the original trackers.
70
71Cases 3, 2 and 1 lead people to write IT files that play badly in the
72original trackers. If some of these problems could be fixed, I'd be all for
73it - but these problems have been reported to the author and he had no
74motivation to fix them. ModPlug Tracker has been around long enough that
75fixing 3, 2 and 1 would be detrimental to too many people's music.
76
77
78******************
79*** Extensions ***
80******************
81
82Worse than the incompatibilities are the extensions ModPlug Tracker makes,
83mostly to the IT format. DUMB currently supports one of these extensions,
84namely stereo samples, but supporting the others is not high on my list of
85priorities.
86
87Other extensions ModPlug Tracker has provided mostly take the form of extra
88effects. For instance, S98 and S99 can be used to enable or disable reverb. I
89believe the latest versions of ModPlug Tracker offer alternative types of
90filter, such as high-pass and band-pass. As soon as an IT file uses any of
91these features, it will play incorrectly with Impulse Tracker.
92
93By far the most evil extension provided by ModPlug Tracker is the effect
94plug-ins. These enable IT files to use VST effects. I recently downloaded an
95IT file that uses some effects from a collection named "DirectX Media Audio
96Effects". When can we expect these effects to be ported to Linux?
97
98
99******************
100*** Conclusion ***
101******************
102
103ModPlug Tracker is trying to be two things at once. It wants to be an editor
104for the existing formats, but at the same time it wants to be proprietary,
105with all its own features and extensions. Unfortunately it is succeeding;
106there are many IT files out there that only play right in ModPlug Tracker. In
107my opinion, ModPlug Tracker should have come out with its own file format, in
108which all these extensions would have found a home.
109
110If you are going to use ModPlug Tracker's extensions, I recommend you
111ultimately convert your music to a streamed format such as Ogg Vorbis. (If
112you were thinking of using MP3, then don't - consider using Ogg Vorbis
113instead.) If you release IT files that use ModPlug Tracker's extensions,
114please state prominently that the files are designed to be played with
115ModPlug Tracker. Finally, don't ask me to support ModPlug Tracker's
116extensions; ModPlug Tracker's playback code is available for use in your
117games, so use that instead.
118
119 Ogg Vorbis - http://www.vorbis.com/
120
121Despite all the above problems, don't forget that ModPlug Tracker does have a
122lot of very useful features for editing files. These include a function for
123removing unused patterns, samples and instruments, drag-and-drop sample and
124instrument ripping, drop-down menus for selecting the effects by name without
125having to memorise the codes or refer to help, and lots of other nice things.
126I do recommend it as an editor, provided you make sure you are aware of the
127situation and do not use ModPlug Tracker's extensions or incompatibilities
128inadvertently.
129
130Oh, and by the way, save your final version with Impulse Tracker. Then the
131samples will be compressed for you!
132
133
134Ben Davis
135entheh@users.sf.net
136IRC EFnet #dumb
137See readme.txt for details on using IRC.