Commit graph

62 commits

Author SHA1 Message Date
Wohlstand
13623aeda8 ADL & OPN MIDI: Fixed some MSVC warnings 2020-10-04 08:03:44 +02:00
Wohlstand
c4f24b47f4 OPNMIDI: Try to remive the unistd header at PMDWin emulator
Seems it doesn't required here...
2020-10-04 08:03:44 +02:00
Wohlstand
6b2e4b9153 Use the "Auto" volume model by default at libADLMIDI
After a small set of tests, it's fine to use the "AUTO" volume model by default.
Every embedded bank and every WOPL file has a setting of a volume model that matches to the behavior of the original OPL2/3 driver of each volume model.
2020-10-04 08:03:44 +02:00
Wohlstand
03afaef324 Update default bank and some settings of libADLMIDI 2020-10-04 08:03:44 +02:00
Wohlstand
72c23d98a3 Update libOPNMIDI library to 1.5.0
## 1.5.0   2020-09-28
 * Drum note length expanding is now supported in real-time mode (Thanks to [Jean Pierre Cimalando](https://github.com/jpcima) for a work!)
 * Added support for OPNA chip with Neko Project II Kai YM2602 emulator usage (Thanks to [Jean Pierre Cimalando](https://github.com/jpcima) for a work!)
 * Added VGM file dumper which allows to output OPN2 commands into VGM file. (A new MIDI to VGM tool is now created with basing on libOPNMIDI)
 * Fixed an incorrect work of CC-121 (See https://github.com/Wohlstand/libADLMIDI/issues/227 for details)
 * Internality has been refactored and improved
2020-10-04 08:03:44 +02:00
Wohlstand
1d4a016c41 Update libADLMIDI up to 1.5.0
## 1.5.0   2020-09-28
 * Drum note length expanding is now supported in real-time mode (Thanks to [Jean Pierre Cimalando](https://github.com/jpcima) for a work!)
 * Channels manager has been improved (Thanks to [Jean Pierre Cimalando](https://github.com/jpcima) for a work!)
 * Nuked OPL3 1.8 emulator got some optimizations ported from 1.7 where they are was applied previously (Thanks to [Jean Pierre Cimalando](https://github.com/jpcima) for a work!)
 * Reworked rhythm-mode percussions system, WOPL banks with rhythm-mode percussions
 * Added Public Domain Opal OPL3 emulator made by Reality (a team who originally made the Reality Adlib Tracker) (Thanks to [Jean Pierre Cimalando](https://github.com/jpcima) for a work!)
 * Added LGPL licensed JavaOPL3 emulator made by Robson Cozendey in Java and later rewritten into C++ for GZDoom (Thanks to [Jean Pierre Cimalando](https://github.com/jpcima) for a work!)
 * Fully rewritten an embedded bank database format, embedded banks now supports a wider set (more than 127:127 instruments in one bank)
 * Improved accuracy of the DMX volume model, include the buggy AM interpretation
 * Improved accuracy of Apogee volume model, include the bug of AM instruments
 * Improved accuracy of the Win9X volume model
 * Removed C++ extras. C++-bounded instruments tester is useless since a real-time MIDI API can completely replace it
 * Added AIL volume model
 * Added Generic FM variant of Win9X volume model
 * Fixed an incorrect work of CC-121 (See https://github.com/Wohlstand/libADLMIDI/issues/227 for details)
 * Added HMI volume model (Thanks to [Alexey Khokholov](https://github.com/nukeykt) for help with research!)
 * Added frequency models, assigned to every volume model: AIL, HMI, DMX, Apogee, 9X, and the Generic formula
2020-10-04 08:03:44 +02:00
Wohlstand
9461e3cc62 Ignore *.user* files, generated by Qt Creator IDE 2020-10-04 08:03:44 +02:00
Cacodemon345
bff02053be Cleanup and add guards against malformed MIDS files 2020-09-14 15:38:26 +06:00
Cacodemon345
5bfa76c948 Add MIDS music format playback support 2020-09-14 00:58:12 +06:00
alexey.lysiuk
d821b0ef92 - fixed event processing in XMI reader
Event pointer was moved forward twice leaving arbitrary garbage data in the stream

https://forum.zdoom.org/viewtopic.php?t=69631
2020-08-22 13:01:56 +03:00
alexey.lysiuk
271b919048 - fixed ARM64 compilation errors reported by Xcode 12 beta 4
thirdparty/dumb/src/helpers/resampler.c:927:43: error: invalid operands to binary expression
thirdparty/dumb/src/helpers/resampler.c:1132:13: error: called object type 'const float *' is not a function or function pointer
2020-08-09 15:05:24 +03:00
alexey.lysiuk
0e789a9f1b - set macOS deployment target to match GZDoom and Raze 2020-08-09 14:57:26 +03:00
alexey.lysiuk
2d0ea86117 - fixed Win32 CI build by forcing internal ZLib
64-bit ZLib from PostgreSQL is in the search paths on continuous integration virtual machines
2020-07-03 11:14:41 +03:00
alexey.lysiuk
c1bf2f82a9 - fixed undefined CMAKE_INSTALL_... variables
https://forum.zdoom.org/viewtopic.php?t=68860&start=45#p1154952
2020-06-09 12:23:30 +03:00
alexey.lysiuk
9d7175259e - timidity++: better handling of soundfont terminal preset record 2020-06-08 14:55:15 +03:00
alexey.lysiuk
e8b2bd4318 - added header files to CMake generated projects 2020-06-08 11:31:07 +03:00
alexey.lysiuk
823d9f5d7f - removed hardcoded include and lib directories from install target
This resolves #7
2020-05-30 11:29:38 +03:00
Cacodemon345
425ac9048d
Fix compilation on NetBSD (#8) 2020-05-30 11:26:23 +03:00
alexey.lysiuk
fbb3a50e9a - fixed wrong point values in loop tags parser
https://forum.zdoom.org/viewtopic.php?t=67812
2020-03-13 13:26:29 +02:00
alexey.lysiuk
4719ad44d8 - added ABI version to soname
This fixes #4
2020-03-02 17:27:33 +01:00
alexey.lysiuk
b9d22fb358 - do not expose module_progdir variable
If the same global variable is used by executable that linked to ZMusic dynamic library, both definitions may clash
For example, Linux builds of GZDoom and Raze could crash on exit because of double free, std::string destructor was called twice on the same module_progdir variable
2020-02-23 12:25:52 +02:00
alexey.lysiuk
b071c53aa5 - fixed switching of subsong for already playing GME song
https://forum.zdoom.org/viewtopic.php?t=67564
2020-02-22 13:12:11 +02:00
Christoph Oelckers
9097591879 - fix for loop tag parser. 2020-02-15 09:59:54 +01:00
Christoph Oelckers
92563245ce - added more loop tag labels as used by EDuke32's sound engine. 2020-02-11 20:02:59 +01:00
alexey.lysiuk
bd138d248e - removed unused CMake option 2020-02-09 15:35:16 +02:00
alexey.lysiuk
79effe2353 - fixed print function with va_list argument 2020-02-09 15:18:56 +02:00
alexey.lysiuk
edd802e655 - added ability to build static libraries
Dynamic libraries are still built by default
2020-02-09 12:30:29 +02:00
Christoph Oelckers
55921d0d34 - the last bit of needed exports for GZDoom.
The ADL banks must be accessible to the menu for properly setting up this player.
2020-02-08 14:23:29 +01:00
Christoph Oelckers
ee291e37d0 - CD_Enable is also needed to implement ZDoom's CD player. 2020-02-08 13:55:30 +01:00
Christoph Oelckers
00bc98db2d - exported the CD utility functions used by ZDoom's CCMD interface.
Do not use unless handling some legacy CD Audio support!
2020-02-08 13:37:33 +01:00
Christoph Oelckers
2566f9007f - added a run-time loading interface to the public header. 2020-02-08 12:19:49 +01:00
Christoph Oelckers
8c18ac996d - added license overview. 2020-02-08 11:30:24 +01:00
Christoph Oelckers
5dca3403a1 - use C++11 features to delete unwanted methods. 2020-02-08 10:42:37 +01:00
Christoph Oelckers
645a8506e2 - fixed: StreamSong did not flag itself as stopped when non-looping playback ended. 2020-02-08 10:25:44 +01:00
Christoph Oelckers
7f63ad8707 - fixed uninitialized variables in decoders. 2020-02-08 10:25:08 +01:00
Christoph Oelckers
dc214dbdd6 - backported OPL init fix. 2020-02-08 10:07:52 +01:00
Christoph Oelckers
aa004f78a9 - removed garbage character. 2020-01-11 15:34:33 +01:00
Christoph Oelckers
5c8607c846 - removed the last use of the Alsa message function. 2020-01-11 15:17:00 +01:00
Christoph Oelckers
17d7942d02 - made the global interface c compatible. Added an empty C source so that incompatibilities immediately trigger compile errors.
- simplified the message printing interface to a single function.
2020-01-11 12:47:07 +01:00
Christoph Oelckers
463cd4e0c5 - updated the Alsa MIDI device.
Not tested yet.
2020-01-11 10:31:13 +01:00
alexey.lysiuk
b415394560 - update continuous integration workflow
Added tests for library installation, sample compilation and its launching
Added installation of ALSA development package
2020-01-07 13:17:42 +02:00
alexey.lysiuk
af79a0bec0 - extended list MIDI devices sample 2020-01-07 13:15:24 +02:00
alexey.lysiuk
e02e7fb1ca - enabled rpath explicitly on macOS 2020-01-07 13:14:56 +02:00
Christoph Oelckers
778d0c8faa - added a configuration record that can be used by the client to set up the needed data structures, allowing to deal with internal changes without having to recompile against a more recent version.
Also added the missing defaults for the Dumb config and renamed a few things.
2020-01-04 19:03:42 +01:00
Christoph Oelckers
fb0d3ac183 - embedded the default OPN bank directly in the binary so that it works, even if no custom bank is set. 2020-01-04 17:14:09 +01:00
alexey.lysiuk
c4fc5789b9 - added basic sample to test installation and module 2020-01-04 17:25:51 +02:00
alexey.lysiuk
9c2a3ef1c1 - added basic CMake module for ZMusic 2020-01-04 17:24:28 +02:00
alexey.lysiuk
8e66bb2df8 - zmusic.h is now usable with GCC/Clang and C++98 2020-01-04 17:23:48 +02:00
alexey.lysiuk
915335ae97 - added install target to CMake configuration 2020-01-04 17:23:19 +02:00
alexey.lysiuk
4a857ac66a - removed unused CMake module 2020-01-04 17:22:20 +02:00