Change #6685: Replace Win32 music driver with one not depending on MCI
commit5413992b12081dadcc7cbdd6bde290d4d3dcf297
authorNiels Martin Hansen <nielsm@indvikleren.dk>
Sat, 10 Mar 2018 21:23:10 +0000 (10 22:23 +0100)
committerkeldorkatarn <schmitta79@gmail.com>
Sat, 5 May 2018 08:28:02 +0000 (5 10:28 +0200)
treeaadfd13abe2ecbfd21cda482d84725e0d60ecdf4
parent6b8823fb06a5a8c241b881c61498cea8175d9308
Change #6685: Replace Win32 music driver with one not depending on MCI

MCI MIDI is poorly supported on newer versions of Windows and can cause large
delays at the beginning of tracks.

The new driver is based on a from-scratch reader for Standard MIDI Files. This
should be re-usable in other music drivers too, and can allow for finer control
of playback in general.

It also provides a better framework for reading MIDI data from other formats
than just SMF.

(cherry picked from commit b902e01e10b193749bd4367a6042ceb3cf3a7d54)

# Conflicts:
# src/music/win32_m.cpp
13 files changed:
projects/openttd_vs100.vcxproj
projects/openttd_vs100.vcxproj.filters
projects/openttd_vs140.vcxproj
projects/openttd_vs140.vcxproj.filters
projects/openttd_vs141.vcxproj
projects/openttd_vs141.vcxproj.filters
projects/openttd_vs80.vcproj
projects/openttd_vs90.vcproj
source.list
src/music/midi.h [new file with mode: 0644]
src/music/midifile.cpp [new file with mode: 0644]
src/music/midifile.hpp [new file with mode: 0644]
src/music/win32_m.cpp