aboutsummaryrefslogtreecommitdiff
path: root/core
AgeCommit message (Collapse)Author
2019-09-13CMake. It's happening.Gravatar Chris Xiong
Added a new build system based on CMake. Minor code cleanups. This probably breaks building with QMake on multiple platforms. And of course the new CMake support isn't tested thoroughly. But it's finally happening.
2019-09-10We refactorin', eh? Hell yeah.Gravatar Chris Xiong
(Almost) Completely rewritten qmpChannelsWindow, one of the oldest component, now with a dedicated data model. Removed dumb design (CMidiPlayer::getChstates). Now QMidiPlayer requires C++14 to build. More refactoring like this coming up soon.
2019-07-01Actually send initialization sequence to external devices.Gravatar Chris Xiong
Replace hardcoded initial CC values with values from device property API.
2019-06-18Device initialization file implementation (part 1).Gravatar Chris Xiong
Added UI for external device configuration. Instrument mapping portion of the device intialization file is now working. Fixed a few spots where return value of getChannelPreset() is ignored. Fixed layout of the preset selection dialog.
2019-06-16Inital implementation of the device properties API.Gravatar Chris Xiong
Added new interfaces to qmpMidiOutDevice. Implemented the new interfaces for qmpMidiOutFluid. Initial infra for device initialization file parsing. Move to the new interfaces for getting list of presets. Use DevIL instead of CxImage. External output devices are broken now but that is for another commit.
2019-05-26Major code refactor continued and (mostly) concluded.Gravatar Chris Xiong
Removed all references to ICallback in official plugins. New flag field in SEvent. Further type usage corrections.
2019-05-25Massive code refactor en cours!Gravatar Chris Xiong
Less complain from compilers: - use nullptr instead of NULL - use types for event fields - explicit type casting added Stop saving parameters of meta events in p1/p2 fields of SEvent. callback_t now uses std::function, deprecating ICallback. Not recommended for daily usage, or even testing: the code refactor is still a work in progress.
2019-04-22New development cycle!Gravatar Chris Xiong
Partially reintroduce High DPI handling. Pressing enter when a preset is focused now opens the preset selection dialog. Close all functionality windows before shutting down. Temporary fix for switching all channels of an external synth to mono mode unintentionally. And the most important one of them all: simple visualization! I'm ditching the 0.8.6 cycle because there was no clear goal for that release now (as the OPL3 emulation is now delayed indefinitely). In contrast, the 0.8.7 release has a pretty good-looking feature set mainly focused on improving support for external synthesizers: - Per-device initialization profile. - Instrument mapping files. - And a simple visualization ~~for showing off your external synthesizers~~. As always no ETA is set, nor will I promise the implementaion of all the features listed above.
2019-03-18Fixed initial preset selection in XG mode.Gravatar Chris Xiong
2019-03-13Set preset bank correctly in XG mode.Gravatar Chris Xiong
Removed High DPI handling code. Good luck to Windows users out there. Skulpture style: dials are no longer blurred if scaled.
2019-01-25Fixed a crash caused by improper preset probing.Gravatar Chris Xiong
Further ensure CC#8 is initialized correctly. Minor string table update.
2019-01-24Migrated to fluidsynth 2.x.Gravatar Chris Xiong
Moved to mxe for Windows build. Fixed default value for CC#8.
2018-06-18Precise playback (no more slowdown).Gravatar Chris Xiong
Also the visualization should now sync better.
2018-03-19Unified meta event reading code, fixing #6.Gravatar Chris Xiong
Fixed playlist dialog behaving oddly.
2017-10-18API changes and crash fixes.Gravatar Chris Xiong
Details in the changelog.
2017-06-22Minor bug fixes.Gravatar Chris Xiong
SMF reader finally takes chunk length into account. Do not prepend sysex header to F0h sysex. Let the readers do it. File readers code cleanups and refined error messages.
2017-06-21Fixed FTBFS on Windows.Gravatar Chris Xiong
Fixed the default output device option. Seeking now restores CC values correctly.
2017-06-21Fixed a bunch of bugs and crashes in the RtMidi output device.Gravatar Chris Xiong
2017-06-21Complete rewrite of the MIDI mapper.Gravatar Chris Xiong
Enforces single fluidsynth instance. Documentation update. Minor changes to make lite version work.
2017-06-16Code refactoring and fix to memory leaks.Gravatar Chris Xiong
2017-06-02Some changes from earlier this year. Read ChangeLog for details.Gravatar Chris Xiong
2017-02-13Fix pitch bend range handling.Gravatar Chris Xiong
Allow registering a string option as file path. Provide an easier way to set path values in options. Revert to old geometry storage mechanism and improved it. Hope this one will work on Windows. Make the time slider less ugly.
2017-02-12UI revolution cont'd. Powered by @BLumia.Gravatar Chris Xiong
Expose new APIs to plugin developer. Use svg icons.
2017-02-10Road to standardize: use two parameters for pitchbend.Gravatar Chris Xiong
Documentation. Minor bug fix.
2017-02-10Fix building on Windows.Gravatar Chris Xiong
Behavior changes: 1. DnD into the main window now causes the dropped file to play. 2. Switch back to w32usleep to increase bpm accuracy. 3. Scan for plugins in application folder (in Windows), not in the working directory.
2017-02-09Add extra midi formats support via the file reader API.Gravatar Chris Xiong
Fix note counting.
2017-02-08Add API version verification. This breaks compatibilityGravatar Chris Xiong
with old versions of plugins. Add RIFF MIDI support to the SMF reader. Documentation.
2017-02-08First steps for the file reader API.Gravatar Chris Xiong
API additions and changes. Fixed wrong button shown when started from file.
2017-02-01Make packaging qmidiplayer less painful.Gravatar Chris Xiong
Add mime info. Do not throw integers. Fix incorrect font paths in Arch Linux.
2017-01-15A little code refactoring.Gravatar Chris Xiong
2017-01-02Can show measure indicators now.Gravatar Chris Xiong
Added new options to specify custom fonts. Added a new handler API. Minor rework on handler calling.
2016-12-11Update the preset selection dialog to improve support for external MIDI devices.Gravatar Chris Xiong
2016-06-01Initial event modifier and event filter stub.Gravatar Chris Xiong
2016-05-20Scale GUI correctly on a high DPI device.Gravatar Chris Xiong
Fix building for Windows. RC-bugs still exist.
2016-05-18Finally finish the particle system integration.Gravatar Chris Xiong
Add std::wstring version APIs to avoid wrong encoding. Update documentation.
2016-05-15Initial stubs for the particle system.Gravatar Chris Xiong
Use layouts in the effects window.
2016-05-01Give the visualization a clearer look...Gravatar Chris Xiong
Now highlights playing notes. Avoid a crash in file reading.
2016-04-30Fixed a bug in RPN handling.Gravatar Chris Xiong
2016-04-27Handle pitch bend in visualization.Gravatar Chris Xiong
Handle mute and solo in the default visualization. Show file name in window title. A little plugin sdk documentaion... Remove stupid things.
2016-04-26The visualization plugin is usable now...Gravatar Chris Xiong
2016-04-25Plugin API now works correctly. Port old visualization code.Gravatar Chris Xiong
2016-04-24Problematic commit...Gravatar Chris Xiong
2016-04-23Add stubs for plugin support.Gravatar Chris Xiong
2016-04-22First stable version!0.7.2-5Gravatar Chris Xiong
Remove visualization stub. Complain explicitly if an invalid file is loaded. Remove fluidsynth warnings from stderr.
2016-04-20UI refinements and fix to two memory leaks.Gravatar Chris Xiong
Minor improvement in MIDI reading process.
2016-04-18Use std::vector for the event list. Add panic action.Gravatar Chris Xiong
Minor changes on the panic function.
2016-04-14History of the Moon.Gravatar Chris Xiong
2016-04-12Mysterious Mountain. (Partially fixed #2)Gravatar Chris Xiong
2016-04-11Flower Night.Gravatar Chris Xiong
2016-04-10The Last Judgement.Gravatar Chris Xiong