fabiangreffrath / crispy-doom

Crispy Doom is a limit-removing enhanced-resolution Doom source port based on Chocolate Doom.
https://fabiangreffrath.github.io/crispy-homepage
GNU General Public License v2.0
796 stars 130 forks source link

Sometimes MIDI music plays incorrectly with MIDI hardware #716

Open skyrain128 opened 3 years ago

skyrain128 commented 3 years ago

Background

Version of Crispy Doom: 5.10.0

Operating System and version: Windows 10 x64

Game: (Doom/Heretic/Hexen/Strife/other) The Ultimate Doom

Any loaded WADs and mods (please include full command line): D1DEHFIX.DEH D1SPFX19.WAD pk_doom_sfx_20120224.wad vsmooth.wad

Bug description

Observed behavior: Sometimes MIDI music plays incorrectly. (ex: some instruments have higher pitches than normal) I'm using Roland JV-1010 and ESI MIDIMATE EX MIDI cable. I never experinced this bug with PrBoom+, In Crispy, sometimes music plays wrong. I experinced this bug in 5.9.2 months ago, and It wasn't fixed in latest version too.

Expected behavior: The MIDI music should plays correctly

Kappa971 commented 3 years ago

This oddity with MIDI playing strange/incorrect (and the inability to adjust the volume of the music in the game menu), also happens in other source ports which has a Crispy Doom-like MIDI playback method (like Eternity Engine, Woof, Russian Doom, etc...). The problem occurs with external MIDI modules, here we are talking about a hardware module, in my case even with a software module like Sound Canvas VA there are problems. The only source ports that don't suffer from this problem are Prboom+ (which uses Portmidi) and Gzdoom (ZMusic). Hope the developers of these source ports find a common solution to solve this problem. Anyway thank you for the work you do

NightFright2k19 commented 2 years ago

Have you tried using a VST host that features Capital Tone Fallback (CTF)? Falcosoft MIDIPlayer supports it. This feature is supposed to prevent wrong notes (or none at all) to be played, which can occur with some specific MIDI files.

rfomin commented 2 years ago

This issue is likely resolved with the current native Windows MIDI support.