diff options
Diffstat (limited to 'apps/codecs/dumb/docs/modplug.txt')
-rw-r--r-- | apps/codecs/dumb/docs/modplug.txt | 137 |
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 | |||
25 | ModPlug Tracker is a very popular tracker for Windows. Its popularity is due | ||
26 | to the intuitive interface and its many advanced features. The author has | ||
27 | done a good job with this piece of software, but sadly in doing so he has | ||
28 | desecrated the IT file format. | ||
29 | |||
30 | I am not against ModPlug Tracker being used to write music modules. As | ||
31 | already stated, it has some very advanced and convenient features; I use it | ||
32 | myself. However, I believe its users should be aware of the entire situation | ||
33 | before using it for any serious work. | ||
34 | |||
35 | ModPlug Tracker - http://www.modplug.com/ | ||
36 | |||
37 | |||
38 | ************************* | ||
39 | *** Incompatibilities *** | ||
40 | ************************* | ||
41 | |||
42 | There are a few situations in which ModPlug Tracker misinterprets the | ||
43 | original module formats. I shall list the five I am most aware of, from least | ||
44 | to most annoying: | ||
45 | |||
46 | 5. 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 | |||
52 | 4. 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 | |||
57 | 3. 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 | |||
65 | 2. When looping, ModPlug Tracker resets all variables. The original trackers | ||
66 | do not do this. | ||
67 | |||
68 | 1. 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 | |||
71 | Cases 3, 2 and 1 lead people to write IT files that play badly in the | ||
72 | original trackers. If some of these problems could be fixed, I'd be all for | ||
73 | it - but these problems have been reported to the author and he had no | ||
74 | motivation to fix them. ModPlug Tracker has been around long enough that | ||
75 | fixing 3, 2 and 1 would be detrimental to too many people's music. | ||
76 | |||
77 | |||
78 | ****************** | ||
79 | *** Extensions *** | ||
80 | ****************** | ||
81 | |||
82 | Worse than the incompatibilities are the extensions ModPlug Tracker makes, | ||
83 | mostly to the IT format. DUMB currently supports one of these extensions, | ||
84 | namely stereo samples, but supporting the others is not high on my list of | ||
85 | priorities. | ||
86 | |||
87 | Other extensions ModPlug Tracker has provided mostly take the form of extra | ||
88 | effects. For instance, S98 and S99 can be used to enable or disable reverb. I | ||
89 | believe the latest versions of ModPlug Tracker offer alternative types of | ||
90 | filter, such as high-pass and band-pass. As soon as an IT file uses any of | ||
91 | these features, it will play incorrectly with Impulse Tracker. | ||
92 | |||
93 | By far the most evil extension provided by ModPlug Tracker is the effect | ||
94 | plug-ins. These enable IT files to use VST effects. I recently downloaded an | ||
95 | IT file that uses some effects from a collection named "DirectX Media Audio | ||
96 | Effects". When can we expect these effects to be ported to Linux? | ||
97 | |||
98 | |||
99 | ****************** | ||
100 | *** Conclusion *** | ||
101 | ****************** | ||
102 | |||
103 | ModPlug Tracker is trying to be two things at once. It wants to be an editor | ||
104 | for the existing formats, but at the same time it wants to be proprietary, | ||
105 | with all its own features and extensions. Unfortunately it is succeeding; | ||
106 | there are many IT files out there that only play right in ModPlug Tracker. In | ||
107 | my opinion, ModPlug Tracker should have come out with its own file format, in | ||
108 | which all these extensions would have found a home. | ||
109 | |||
110 | If you are going to use ModPlug Tracker's extensions, I recommend you | ||
111 | ultimately convert your music to a streamed format such as Ogg Vorbis. (If | ||
112 | you were thinking of using MP3, then don't - consider using Ogg Vorbis | ||
113 | instead.) If you release IT files that use ModPlug Tracker's extensions, | ||
114 | please state prominently that the files are designed to be played with | ||
115 | ModPlug Tracker. Finally, don't ask me to support ModPlug Tracker's | ||
116 | extensions; ModPlug Tracker's playback code is available for use in your | ||
117 | games, so use that instead. | ||
118 | |||
119 | Ogg Vorbis - http://www.vorbis.com/ | ||
120 | |||
121 | Despite all the above problems, don't forget that ModPlug Tracker does have a | ||
122 | lot of very useful features for editing files. These include a function for | ||
123 | removing unused patterns, samples and instruments, drag-and-drop sample and | ||
124 | instrument ripping, drop-down menus for selecting the effects by name without | ||
125 | having to memorise the codes or refer to help, and lots of other nice things. | ||
126 | I do recommend it as an editor, provided you make sure you are aware of the | ||
127 | situation and do not use ModPlug Tracker's extensions or incompatibilities | ||
128 | inadvertently. | ||
129 | |||
130 | Oh, and by the way, save your final version with Impulse Tracker. Then the | ||
131 | samples will be compressed for you! | ||
132 | |||
133 | |||
134 | Ben Davis | ||
135 | entheh@users.sf.net | ||
136 | IRC EFnet #dumb | ||
137 | See readme.txt for details on using IRC. | ||