home *** CD-ROM | disk | FTP | other *** search
/ Minami 17 / MINAMI17.iso / Extra / winamp274_full.exe / Plugins / in_midi.dll / TEXT / 114
Text File  |  2001-03-30  |  17KB  |  243 lines

  1.  * F * A * Q *
  2.  
  3. Q: I have a problem...
  4. A: Rule #1: don't panic. Use your IQ. Read this doc carefully. If the plug-in seems to work incorrectly, go to http://pp666.cjb.net/midi.htm and get the latest update. If DirectMusic devices cause the problem, update your DirectX drivers - http://www.microsoft.com/directx/
  5.  
  6. Q: Winamp crashes / freezes when I try to play MIDI.
  7. A: Well, blame your sound card drivers for that. There are a few possible solutions:
  8.   (1) disable sampling (output tab)
  9.   (2) make sure that Winamp process priority class is set to 'normal' (in Winamp preferences / options), then select 'MIDI mapper / MCI' device - this is (almost) exact clone of the old MIDI plug-in code.
  10.   (3) select 'MIDI mapper' device (or any other midiOut device) and try switching between streamed / immediate modes.
  11.   (4) try ALL available devices; Microsoft synth is very likely to work (it doesn't use your MIDI hardware).
  12.  Note: if (2) doesn't work, then either the MIDI file that causes it is really damaged or your sound card drivers are terribly messed up.
  13.  
  14. Q: Winamp seems to play MIDI, but I can't hear anything.
  15. A1: Click "reset midiOut volume" in device tab.
  16. A2: Make sure that MIDI isn't muted in Windows' volume control.
  17. A3: Try all available devices, especially MCI and Microsoft synth.
  18. A4: Try various volume control options (device tab).
  19.  
  20. Q: How do I make MIDI sound better on my SB16 ?
  21. A: Select Microsoft Synthesizer device.
  22.  
  23. Q: I have a problem with VIS...
  24. A: If you use MS synthesizer, enable 'play through Winamp's ouptut system'; otherwise enable 'sample data for VIS'.
  25.  
  26. Q: I get no error messages but VIS doesn't work and/or written WAVs contain silence; I use 'sample for VIS' option.
  27. A: Go to output / sampling / source and select where is your MIDI device connected (usually 'MIDI').
  28.  
  29. Q: How do I convert MIDI to WAV ?
  30. A: There are three ways:
  31.   (1) select Microsoft Synthesizer device, enable 'play through Winamp's ouptut system' and use some disk writer output plug-in (Nullsoft Disk Writer or my ACM WAV writer)
  32.    or
  33.   (2) enable sampling, enable 'use internal WAV writer' option and choose output directory for WAV files.
  34.    or
  35.   (3) enable sampling, enable 'send sampled data to output' and use the Disk Writer output plug-in
  36. I recommend setting mixing/sampling frequency to 44100 Hz while writing WAV.
  37. If you use sampling, output files contain exactly what you heard while writing; it's a good idea to disable all effects like reverb or chorus in your sound hardware in this case.
  38.  
  39. Q: I want to convert MIDI to WAV but my sound card doesn't allow me to record MIDI...
  40. A: See (1) above.
  41.  
  42. Q: What do all the volume control options do ?
  43. A: First option - 'none' - totally disables volume control. Second one - 'driver-specific' - sends volume change commands to MIDI drivers ( midiOutSetVolume(), IDirectMusicPerformance::SetVolume(), channel volume commands in immediate mode with alt. vol. setting enables ). It works with almost all devices, but it is known to do bad things on certain sound cards. Remaining options refer to Windows' mixer lines.
  44.  
  45. Q: I can't hear MIDI at all; even all other MIDI players I have produce silence since I installed Winamp.
  46. A: Click device tab / reset midiOut volume (takes immediate effect). Make sure that you DO NOT use 'driver-specific' volume setting mode.
  47.  
  48. Q: What are compressed MIDI files ?
  49. A: A compressed MIDI file is a ZIP, RAR, ARJ, or GZIP file containing one MIDI file. MIDI files compress very nicely so compressing them can be very useful and can save a lot of disk space. You can compress any of the supported MIDI formats. Use .MIZ file extension for all compressed MIDIs.  (Note, however, that most (if not all) other programs will be unable to play any of these compressed MIDIs.)
  50.  
  51. Q: Why can't the 'reverb' or 'chorus' options be enabled ?
  52. A: Because the currently selected port doesn't support it. At the moment only MS synth supports reverb; no port known to me supports chorus. You will be able to enable those effects on future hardware ports if they support it.
  53.  
  54. Q: Why does the plug-in refuse to load some HMP files ?
  55. A: There is some sort of 'compressed HMP' format. I've found those files in Whiplash / Fatal Racing. I have no idea how to decode them. I've managed to convert Fatal Racing HMPs to standard MIDI (don't ask how); if you really need them, email me.
  56.  
  57. Q: How do I create MIDI radio on my web page ?
  58. A: Upload some MIDI files (preferably compressed) to your web site, then create a playlist containing their URLs (not their local file paths on your computer) and upload it too; then put a link to the playlist on your web page.
  59.  
  60. Q: What is the optimal mixing frequency for MS synth ?
  61. A: Use 22k when you listen to MIDI with no extra stuff (custom DLS, reverb, etc.) enabled. All GM.DLS samples are 22k; 44k will be much slower and sound almost identical. Use 44k when you convert something to WAV for burning to an audio CD.
  62.  
  63. Q: What does looping do ?
  64. A: Looping enables you to listen continuously to one MIDI file without delays while restarting. Some files (HMI) contain loop start points; looping enables you to make them sound correct.
  65.  
  66. Q: How do I convert HMP/HMI/XMI/CMF/MUS to MID ?
  67. A: Open file info box (double-click on song title in Winamp window), then click on 'save...' button.
  68.  
  69. Q: I have 100 megs of MIDIs on my hdd and I want to compress them. Is there a program that will automatically compress all of my MIDIs ?
  70. A: Check http://pp666.cjb.net/misc.htm.
  71.  
  72. Q1: Where did Shogo / Blood 2 game music support go ?
  73. Q2: Can I play DirectMusic segment files (.sec, .sgt) ?
  74. Q3: Can I play Final Fantasy music with this plug-in ?
  75. A: There is a separate plug-in for this stuff. Check http://pp666.cjb.net/misc.htm ("DirectMusic plug-in v1.5").
  76.  
  77. Q: How do I minimize CPU usage while playing MIDIs in the background ?
  78. A: If you don't need VIS, disable sampling and output. It will disable all Winamp 2.x - specific sound data processing and cut down CPU usage a lot.
  79.  
  80. Q: Can I do DSP / EQ with MIDI ?
  81. A: Yes. You can easily configure MS synth to use DSP (enable 'play through Winamp's output system'). Other MIDI devices will require more work (recommended for advanced users only): configure your sound card to record _directly_ from your MIDI synth (not 'what you hear'), mute your MIDI device, then enable sampling and 'send sampled data to DSP / output'.
  82.  
  83. Q: What does 'hardware setup' do ?
  84. A: It enables you to configure hardware-specific MIDI extensions (XG, GM, etc) using system-exclusive (sysex) commands. This is intended only for MIDI hardware geeks; it does nothing on most common MIDI devices (soundblasters, etc). Refer to your hardware documentation for more info about sysex commands.
  85.  
  86. Q: What's the difference between streamed and immediate midiOut modes ?
  87. A: They are two different MIDI players, based on midiOut (streamed mode uses midiStream* functions, immediate mode uses midiOutShortMsg/midiOutLongMsg). If your MIDI drivers are 100% OK, both modes will work almost identically. Streamed mode requires less CPU time (about 0.25% of my Athlon 700) and doesn't skip so badly when you use other programs. Immediate mode enables you to use alternate volume setting method which works on every midiOut device.
  88.  
  89. Q: MS synth skips a lot.
  90. A: Enable 'play through Winamp's output system' in output tab. It helps a lot.
  91.  
  92. Q: I get "Unable to load MIDI file" error.
  93. A: The file that caused it is damaged, even if it does play in other players.
  94.  
  95. Q: The plug-in crashes Winamp at startup...
  96. A: How did you get here ? :) This bug seems gone but WTH... try removing read_file.dll, especially if you have a P3 CPU. Also try changing hack_no_dm to 1 in winamp.ini (this will totally disable DirectMusic support).
  97.  
  98. Q: What does the 'source' field in output/sampling do ?
  99. A: Selecting anything else than 'default' causes the plug-in to automatically select that data source when starting sampling.
  100.  
  101. Q: What's the difference between two output options - "play through Winamp's output system" and "experimental output mode" ?
  102. A: The first option is supposed to work with all sorts of DirectMusic software synths. The other one is more stable (faster, less skipping), but works only with SOME devices (tested with MS synth on DX 6/7/8 and Yamaha SoftSynth DM driver); use it at your own risk.
  103.  
  104. Q: What does 'reset midiOut volume' button do ?
  105. A: It resets volume for all midiOut devices found in your system. Use it when something sounds too quiet (or doesn't produce sound at all).
  106.  
  107. Q: What does 'show all DirectMusic devices' option do ?
  108. A: It shows all available DirectMusic output ports on the device list (and causes big mess because most of devices appear twice). Use it only for testing. Normally, the plug-in doesn't show DM devices that are available via midiOut and don't support DLS.
  109.  
  110. Q: How much space does the fractal animation take ?
  111. A: Very little. Less than this text file.
  112.  
  113. Q: How do I convert WAV/MP3 do MIDI ?
  114. A: You can't. There are some programs that can do it, but output files don't sound good. If you want to make some MIDIs, get a MIDI sequencer instead.
  115.  
  116. Q: Some DOOM MUS files sound different than those converted using WinTex (drums start to play a few seconds later). Why ?
  117. A: WinTex's converter sucks - it converts single-track MUS to multi-track MIDI (in order to optimize file size) and messes up track start time while doing this. Just run DOOM and compare...
  118.  
  119. Q: What do all these strange MIDI file processing options do ?
  120. A: Here's a (quick) explaination of some of them:
  121.  * "normalize volume" - scales MIDI channel volume values to fix those 'quiet' files; just a cheap hack, don't expect it to fix all files; it also removes LSB volume commands and some people won't like the way it sounds.
  122.  * "remove B9 00 XX / B9 20 XX" - removes instrument bank selection events from drums channel; they occur in some rare files and I have no idea what are they supposed to do (except for messing up drums on my SW60-XG); enabled by default
  123.  * "disable sysex commands" - removes hardware-specific commands from loaded files; fixes missing tracks in DirectMusic
  124.  * "fix missing DLS drum kits" - removes references to drum kits that can't be found in active DLS files; activate this if you can't hear drums in some songs under DirectMusic
  125.  * "fix missing DLS instruments" - automatically remaps istruments that can't be found in active DLS files; ultimate fix for problems with missing instruments under DirectMusic
  126.  
  127.  
  128. Known problems:
  129. - Do not use any output plug-ins that can't receive data in real-time (MP3/WMA writers, etc). WAV writer plug-in works fine.
  130. - Do not use any DSP / output plug-ins that change playback time (pitch/tempo control, crossfaders, etc), except for the case when you use WAV writer output plug-in.
  131. - XMIs with embedded compressed DLS (MLS) are not supported and will be played like normal XMIs; decompress them and compress with zip or rar instead.
  132. - sysex events in XMI are NOT supported, because of big mess in XMI format (attempting to read sysex would break a lot of old game files)
  133. - MIDI Mapper / MCI device uses buggy Microsoft's Media Control Interface. It is strongly recommended that you activate it only if nothing else works.
  134. - Old version of ZIP format (v1.x) is not supported.
  135. - XMI looping is not supported yet...
  136. - In midiStream mode loop count is decremented every time when end of song get buffered; if you use seeking, the song might not loop less times than specified in config.
  137.  
  138. Micro$oft's bugs found during development (Bill, please read):
  139. - IDirectMusicLoader doesn't get some of RMI files bundled with Win95 (happens with DX6.1; I didn't feel like checking this with DX7 and 8)
  140. - MS synth doesn't reset some controllers correctly between songs (DX678)
  141. - MS synth occasionally forgets channel volume values when I send PMSGs directly to the performance (DX8, older ones probably too); FYI other drivers work perfectly. Check DirectMusic immediate mode.
  142. - IDirectMusicLoader messes with files that contain sysex events (DX678) - I've seen some BS in the manual about it, but it isn't a real explaination.
  143. - winmm.dll multithread safety is totally screwed up (happens in all versions of Win9x/ME)
  144. - MCI hates high process priority class (all win9x)
  145. - IDirectMusicSegment::SetStartPoint() precision.....(no comments)
  146. - There are some MIDI files that use two drum kits simultaneously and constantly switch between them. One of my friends reported that it took several minutes to download one of these files to the performance. Geez.... (DX7, dunno about other versions).
  147. :p
  148.  
  149.  
  150. Changes since v2.0:
  151. - tons of tweaks / fixes
  152. - new midiOut driver
  153. - new about box :-)
  154. Changes since v2.1/v2.11:
  155. - option to disable midiOutReset() commands (fixes evil behaviors on OPL3 hardware)
  156. - new controller / instrument change logic in midiOut mode
  157. - option to send sampled data to output
  158. - new MS synth output code (faster, no more skipping)
  159. - removed buggy midiOut streamed mode and MCI support
  160. Changes since v2.2:
  161. - new device selection / configuration logic
  162. - MCI driver is back
  163. Changes since v2.3:
  164. - new game music file formats: GMD and MIDS
  165. - support for sysex MIDI messages
  166. - new looping options
  167. Changes since v2.31:
  168. - new volume control logic
  169. - improved handling of damaged MIDI files
  170. - option to play in mono
  171. - fixed bugs in MIDS support
  172. Changes since v2.32:
  173. - fixed bugs in panning code
  174. Changes since v2.33 (Winamp v2.71):
  175. - fixed memory leaks in MIDI loader
  176. - fixed $#! bugs in sysex code (FINALLY got Yamaha SW60-XG; hello to all M$-$ynth-haters)
  177. - download support works again
  178. Changes since v2.34:
  179. - misc fixes related to hardware-specific stuff
  180. - added 'normalize volume' option
  181. - configurable XG/GM reset on start / stop
  182. - configurable thread priority
  183. - option to disable sysex commands
  184. - new 'safe' MCI mode
  185. Changes since v2.35:
  186. - sysex commands are _finally_ working correctly
  187. - disabled looping for all DirectMusic devices due to heavy bugs in M$ code
  188. - new midiOut code (streamed mode)
  189. - new config dialog
  190. - MIDI hardware setup
  191. - no more read_file.dll startup crashes
  192. Changes since v2.4 (Winamp v2.72):
  193. - holy war against evil CRT library (smaller and faster dlls, reduced resource usage)
  194. - DirectMusic immediate mode (experimental)
  195. - reduced MS synth hack section (enable GM reset on stop...)
  196. - DirectMusic looping is back (works perfectly in immediate mode)
  197. - automatic mixer config to make midi2wav people happy
  198. - priority doesn't affect midistream to make winmm.dll happy
  199. - MIDI control panel for MO/DM immediate mode (tempo control, channel volumes, etc)
  200. - changed name to "Winamp2 MIDI plug-in" for all versions (will change to Winamp3 soon :) - there is no other MIDI plug-in now; high time to stop pretending that it is a DirectMusic-based player
  201. - 'always reinitialize port' option (on by default, disable to emulate old versions) - slower loading / less bugs
  202. - new volume control logic to make newbies happy and give geeks new toy to mess with; hello to all SB64 owners :-)
  203. - some fixes in midisteam
  204. Changes since v2.5 (Winamp v2.73 pre-release):
  205. - incomplete MIDI file recovery (standard MIDI only)
  206. - cleaned up game music format converters
  207. - tweaked sampling code
  208. - misc cleanups in midistream
  209. - fixed format 2 MIDI files; GMD support now works correctly
  210. Changes since v2.51
  211. - some new fixes in midistream - seems to shut up last crashes related to startup / end sysex messages
  212. - complete workaround for missing drum kits under DirectMusic
  213. - new midiStream seeking logic - if you don't like it, activate 'quick midiStream seeking' in misc tab
  214. - removed crappy MCI safe mode
  215. Changes since v2.52
  216. - more file processing options (some of them were permanently enabled in previous versions)
  217. - ultimate fix for all missing DLS instruments
  218. Changes since v2.53:
  219. - fixed $tupid a$$ M$VC5 me$$up with saving plug-in configuration
  220. - tweaked WA2 output code - waveOut works much better now
  221. - option to do immediate midiOutReset from config window - useful for shutting up Adlib after abnormal termination of some old DOS game
  222. - midiOut volume reset from device tab now affects only currently selected device
  223. - cleaned up file loading - some evil files might load noticeably faster
  224.  
  225.  
  226. Thanks to:
  227. snailrush
  228. Alwyn Balingit
  229. Valery V. Anisimovsky
  230. Victor Grinenko
  231. Chris Pouskidis
  232. Maan M. Hamze
  233. Winsane
  234. Boguslaw Krzysztoforski
  235. Piet Lambrechts
  236. wotsit.org
  237.  
  238. Special thanks to ZeroKnightRaiden ;-)
  239.  
  240.  
  241. No thanks to:
  242. Bill Gates
  243. Winamp.com plug-in reviewer :-p