aboutsummaryrefslogtreecommitdiff
path: root/src/adlmidi_private.hpp
AgeCommit message (Collapse)Author
2017-11-01Added hooks and meta-info: title, copyright, track titles and markersWohlstand
2017-10-31Merge branch 'master' into seekabilityWohlstand
# Conflicts: # libADLMIDI-test.pro # src/adlmidi.cpp # src/adlmidi_private.hpp
2017-10-31Optimize and clean-up of adl_play() function and use persistent bufferWohlstand
2017-10-27Draft for event hooksWohlstand
That will give ability to implement same ADLMIDI player as originally, but keep library be fully independent from original console tool.
2017-10-26Continue works on loop points and some clean-upWohlstand
- Added more detailed error information while parsing MIDI file - Added abiltiy to retrieve loop points time positions - Added ability to change playing tempo by giving multiplier - Removed old commented code TODO: - implement meta-information store and a way to retreive it - implement hook-ability for every MIDI event - implement ability to mute/solo every channel
2017-10-25Parse & validate loop events in load time than in playing timeWohlstand
Loop events are converting into in-library own types are compact, easier and faster to process without having to re-parse markers or have any extra code in standard event handlers
2017-10-25Small re-factoring of new MIDI event classes for correctnessWohlstand
- MidiTrackPos renamed into MidiTrackRow - TempoMarker renamed into TempoChangePoint
2017-10-25Prevent possible going far far away after end of track memory blockWohlstand
This will prevent possible crash on attempt to parse wrong or damaged MIDI file
2017-10-25Clean-upWohlstand
- Move all private variables into MIDIplay class away from public ADL_MIDIPlayer structure - Comment out most of legacy code - Implement new-style ReadVarLenEx for error-checked var-len value reading process TODO: Stabilize this and implement missing fields and API calls (meta-data retreiving)
2017-10-24Added working seekability!Wohlstand
Testing and stabilizing is needed
2017-10-24Absolute time position now is known!Wohlstand
2017-10-24Fixed IMF playing!Wohlstand
2017-10-24Use MidiEvent enums where are raw event types are was usedWohlstand
2017-10-24More info about meta-eventsWohlstand
2017-10-23Merge branch 'seekability' of git@github.com:Wohlstand/libADLMIDI.git into ↵Wohlstand
seekability
2017-10-23Experimental time position calculation based on in-track tempo eventsWohlstand
2017-10-23Fixed build on older GCCWohlstand
2017-10-23Prepare to implement seekability - pre-parse all MIDI events before playWohlstand
All parsed events will be stored into special time marked containers and will be sorted by type to avoid possible issues caused by incorrect order of meta or note-on/off events, etc. Time markers are needed to easier detect seconds position to seek. TODO: Fix IMF playback
2017-10-21Fixed MSVC2015 buildWohlstand
2017-10-20Fixed MinGW Windowd build via CMakeWohlstand
(Issue #26)
2017-10-20Fixed CMake buildWohlstand
2017-10-18Avoid possible UTF8 vs ANSI trouble on WindowsWohlstand
2017-10-18Smooth finalizing, rewinding, and a bit more crash safetyWohlstand
* Smooth finalizing of song when loop is disabled (old ugly hack has been removed :wink:) * Added an ability to reset song position to begin (very helpful when song reaches the end) * Avoided possible crashes on attempt to fetch sample data without opening of MIDI file
2017-10-17Custom banks 4-operator voices playback fixWohlstand
2017-10-17EXPERIMENTAL: Support for custom banks!Wohlstand
TODO: Fix support for real 4-operator support for dynamical instruments which now are silent. 2-op and pseudo-4-op still work fine.
2017-10-01Prepare for implementation of real-time MIDI supportWohlstand
Make function for every real MIDI event which we are able to call independently from the common events stream. MIDI streamer will be moved into own module which will process MIDI files and pass events into realtime module. Then, make public API which will allow use realtime MIDI for making drivers and player plugins.
2017-06-19Fixed compatibility with MSVCWohlstand
2017-02-28Change long double into double because of no necessary for itWohlstand
2017-02-28Fixed wrong very long inter-note delays on 32-bit platformsWohlstand
2017-02-16Remove usage of std::shared_ptrWohlstand
because it is not supported on Android NDK, yet (even C++11 usagae is enabled!)
2017-01-16Split adlmidi.cpp now keeps API functions onlyWohlstand
other code has been moved into separated files