…tive Even though there's no known code path for this event to happen we should always make sure m_runningMidiNotes[x] does not become negative as this might mess up future key events.
As libogg, libsndfile & friends do not seem to have an UTF8-compatible implementation on Windows we have to pass the filename as local 8 bit encoding in order to make the file being read properly. Closes #2952858.
We must not use "recover.mmp" as regular filename after we recovered the sesion from it as this causes following save cycles to go into the recovery file. Instead load the recovery file via song::createNewProjectFromTemplate() so the used will be asked for a filename when saving the recovered project the first time. Closes #3294122.
… chars There has been a problem UTF-8 characters in the configuration file since 2006 (!), as the length of the data to be written was mis- calculated. We can omit the specification of the data length at all when just passing a QByteArray object to QFile::write(). Fixes setup dialog appearing each start if one of the configured paths in the setup dialog contains non-ASCII characters. Closes #3348920, #3017409, #2812054.
Instead of failing silently when parsing configuration file show a messagebox with helpful debugging information.
Once I added the SWH LADSPA plugins I just added a small selection of them in order to improve clarity. However lots of projects use SWH LADSPA plugins that are not shipped with LMMS and thus can't be played properly e.g. on Windows. Fix this by adding missing plugins (except the analog and FM oscillators).
Most of the projects represented LMMS and it's capabilities from a few years ago. Therefore removed most old projects and added fresh ones from the sharing platform. Also started to add licensing information about these files in each project directory.
Some people might not have sudo installed or configured. Added a note in the INSTALL file for this case. Closes #3299883.
As the interface for the "AccessibleName" property might not be available when Qt was built without accessibility support, use the "WindowTitle" property instead where appropriate. Closes #3300101.
We must not process the FX mixer if we notice that currently a pattern is frozen. Furthermore renamed some state-reading messages of the pattern class. Closes #3316495.
Added tooltips to show the actual value when moving the fader handle. This works mostly like the same feature we already have for the volume knobs. Depending on settings the value is shown in a range between 0% to 200% or -inf/-34dBV to 6.02 dBV. Again that's the same as for the volume knob. Value range could be adjusted easily if necessary. Closes #3305914. Signed-off-by: Tobias Doerffel <firstname.lastname@example.org>
Testing the last two characters of the filename against "so" is insufficient as this might cover e.g. ISO files as well. Therefore explicitely check for ".so". Thanks to Mikobuntu for the contribution. Closes #3289932.
It's a very bad idea to autosave while playing as this causes severe underrun problems. Therefore instead of autosaving, trigger a re-try timer for 10 seconds. Closes #3317776.
Now that we updated FLTK we also need to regenerate ZynAddSubFX' UI source code files using recent Fluid tool. Indentation seems to have been fixed. (cherry picked from commit 13d1e38)
…f note is played.
* Fix broken band issue in EQ plugins. * Persist extension 0.2
Instead of always loading the last auto-saved session (which might end up in an endless cycle if recover.mmp is faulty or causes a crash) ask the user whether to do so.
As smooth scrolling seems to cause problems for some users it now has to be enabled explicitely in the settings dialog. Closes #3194891.
Instead of passing an initialized pa_cvolume structure, pass NULL as recommended by the documentation for pa_stream_connect_playback(). This fixes the volume erroneously being set to 100% at startup. Thanks to Thomas Moschny for forwarding the bug report.
* Simplify exciter code. No functional change... I hope! * Work in progress on rotary speaker. May contain bugs. * Replace allpass vibrato in Calf Organ with a simulation of scanner vibrato. * Implement switchable vibrato type. * Initialise delta members in ramp classes.
The settings for the new attack and decay controls weren't saved and loaded at all while just the values of all other knobs were saved (instead automation data, controllers etc.).
Per default do not append the version to the installation directory anymore as this causes unneccessary problems when not properly uninstalling an older version. Instead files should be overwritten by recent ones from now on. Partially closes #3149779.