Commit Graph

2719 Commits

Author SHA1 Message Date
Tobias Doerffel
53b8fb235e lmms.rc.in: extended copyright notice
Extended copyright notice in lmms.rc.in which is used as resource file
when building win32/win64 executable.
(cherry picked from commit f791b08840)
2011-06-13 23:15:25 +02:00
Kristi
8f1657164a ExportProjectDialog: added option for exporting song as loop
This patch adds the option to remove the extra silence at the end,
so that the exported song can be seamlessly looped.

Signed-off-by: Tobias Doerffel <tobias.doerffel@gmail.com>
2011-06-13 23:15:06 +02:00
Tobias Doerffel
312872aed3 CALF: updated up to commit b22ca910642433a4507f33ec08bcbf8e6d02e3ff
* Fix broken band issue in EQ plugins.
  * Persist extension 0.2
(cherry picked from commit 2721fbae95)
2011-04-25 11:37:12 +02:00
François-Marie de Jouvencel
03db913e6b PianoRoll: optionally display notes from other tracks
I added a button to show/hide the notes from the other tracks in
piano roll, notes from other tracks appear in light transluscent white.
This is useful when making complex melodies in order to avoid dissonances
that are sometimes hard to detect otherwise.

Signed-off-by: Tobias Doerffel <tobias.doerffel@gmail.com>
2011-04-13 09:30:38 +02:00
Tobias Doerffel
c91a9f89ed Ask whether to recover session after unexpected exit
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.
(cherry picked from commit babf3edff8)
2011-04-06 18:45:51 +02:00
Tobias Doerffel
785a07b85e CAPS: updated to version 0.4.5
Updated CAPS plugins to version 0.4.5 - changes:

  * Narrower plugin added
  * fixed 'configure.py' to work with python3
  * fixed Sin, Roessler and Lorenz gain smoothing on activation

Signed-off-by: Tobias Doerffel <tobias.doerffel@gmail.com>
(cherry picked from commit d98acff3bb)
2011-04-05 14:35:18 +02:00
Tobias Doerffel
53646765c0 AudioPulseAudio: do not initialize volume
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.
(cherry picked from commit dd9ba4b2ad)
2011-01-26 22:52:01 +01:00
Tobias Doerffel
df94c7674c CALF: updated up to commit 3889df5d1448faf5078b0a2bdd4c220823b82bf9
* 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.
(cherry picked from commit 8d61675e3e)
2011-01-26 11:14:16 +01:00
Tobias Doerffel
18ce870a8d German localization: fixed typo
It has to be "diese Spur" instead of "dise Spur". Thanks to Capdan for
pointing this out.

Closes #3158102.
(cherry picked from commit 71155e5e07)
2011-01-24 16:53:14 +01:00
Tobias Doerffel
491967b6d2 LB302: fixed typo
It has to be "imitation" instead of "immitation". Thanks to Capdan for
pointing this out.

Closes #3158102.
(cherry picked from commit 15fabc6a17)
2011-01-24 16:52:59 +01:00
Tobias Doerffel
18bdfa1211 PeakControllerEffect: properly save and load all settings
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.).
(cherry picked from commit ec9658d205)
2011-01-24 16:08:25 +01:00
Tobias Doerffel
4eec6e1907 Win installer: do not append version to install directory anymore
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.
(cherry picked from commit 470fb87ae1)
2011-01-23 23:59:26 +01:00
Tobias Doerffel
c1fe40fd70 ControllerRackView: fixed widget size issues after closing
There were some issues with the ControllerRackView when closing it
with recent Qt versions. Issue seems to be fixed by not setting a
size constraint policy for the QMdiSubWindow.

Partially closes #3149779.
(cherry picked from commit f67e8e0af7)
2011-01-23 23:59:22 +01:00
Tobias Doerffel
6d4fd201fa ControllerView: fixed minor artifacts at widget drop shadow
We must not set the Qt::WA_OpaquePaintEvent attribute when painting
semi-transparent a drop shadow for the ControllerView.
(cherry picked from commit b8ad5bf025)
2011-01-23 23:59:18 +01:00
Tobias Doerffel
14f043598c Sf2Player: load default soundfont upon instantiation
When creating a new Sf2Player plugin instance, load the default
soundfont. Might decrease performance a little bit when loading projects
which make use of many other soundfonts but for the sake of improved
usability we should accept this.

Partially closes #3149779.
(cherry picked from commit 510f87bfcc)
2011-01-23 23:59:07 +01:00
Tobias Doerffel
5949f49e11 Add BB track when adding track to empty BB editor
When there's no BB track but a track is added to the BB editor,
automatically create a BB track so that the user doesn't get confused
by new empty track (not even showing clickable beats).

Partially closes #3149779.
(cherry picked from commit 4cad9517aa)
2011-01-23 23:58:17 +01:00
Tobias Doerffel
05590f1fb9 Lv2Browser: exclude from build for the time being
The Lv2Browser plugin causes a crash at startup, therefore do not
build it anymore as it even is not of much use at the moment.
2011-01-16 20:26:35 +01:00
Tobias Doerffel
15a0316899 CMT LADSPA plugins: get rid of -nostartfiles linker flag
Using the -nostartfiles linker flag makes the CMT LADSPA plugin
library not being linked against neccessary libraries on recent Linux
systems. Therefore remove it.
(cherry picked from commit 60970495b0)
2011-01-16 20:26:25 +01:00
Tobias Doerffel
7c8b9070e4 LadspaManager: print error string when failing to load LADSPA library
In order to ease debugging of problems with the LADSPA library loader
print QLibrary::errorString() if loading a library fails.
(cherry picked from commit 4851839327)
2011-01-16 20:26:22 +01:00
Tobias Doerffel
1f6039340b Mixer: free m_inputBuffer[i] at exit
In Mixer::~Mixer make sure to free resources allocated in the
m_inputBuffer[] array.
2011-01-08 01:28:43 +01:00
Tobias Doerffel
a4de8fa16a Fixed various minor semantic glitches
There were various minor semantic glitches reported by cppcheck and
Andrei Smirnov.
2011-01-08 00:16:03 +01:00
Tobias Doerffel
9da0c0a92d SongEditor: added smooth autoscroll
Instead of flipping to next page when the play position marker reaches
the right edge, scroll to next page smoothly using the QTimeLine class.

Closes #3144318.
(cherry picked from commit ea94e6aa32)
2011-01-05 15:20:36 +01:00
Tobias Doerffel
dc06302745 SongEditor: always bring up to front after loading a project
When just opening a song in order to listen to it, it's very annyoing to
manually bring up the song editor each time, therefore do it
automatically.
(cherry picked from commit 6be555d61a)
2011-01-05 15:20:26 +01:00
Tobias Doerffel
a6c6e18508 CALF: updated up to commit b9b6dc839c40cebbd632ca776817a11c2543265c
There were many changes in the CALF repository. Cherry picking all of
them individually would be lot's of work, that's why I just applied
a diff made up from the following commits:

 * Add ChangeLog entries of the remaining bugfix 0.0.18 releases.
 * First attempt to update ChangeLog with the changes from last 2 years.
 * Fluidsynth: set sample rate on a synth instance.
 * Monosynth: allow modulation matrix when configure is available.
 * Improve LADISH level 1 integration. Doxygenize host_session a little bit.
 * Avoid starting LASH just to display the help text.
 * Reuse instance IDs of removed plugins.
 * Don't crash on failure of the save operation.
 * Remove by pointer, not by position - better for rearranged lists.
 * Mark the reorder function as experimental. Print new plugin order to stdout.
 * Add channel number to internal MIDI API. Fix stack overflow in Calf Organ.
 * Ignore data type for now, to help diagnosing restore issue with Ardour.
2011-01-03 00:01:29 +01:00
Tobias Doerffel
4616a53eb2 ZynAddSubFX: fixed improved packaging of ZynAddSubFxCore library
When packaging the ZynAddSubFxCore library (Windows builds), there's no
need for including the DLL import library, so skip it. Furthermore make
sure to strip the ZynAddSubFxCore library which decreases its size from
8 MB to about 1 MB.
2011-01-02 23:44:12 +01:00
Tobias Doerffel
8d617c69c6 Build system: revised Qt4 detection for Win32/Win64 builds
I updated the MinGW cross compiling packages to come alogn with
Qt 4.7 and a revised build architecture. Qt's devel tools such as
qmake, moc & friends are now built natively and allow using them like
native Qt installations. This means there's less to hardcode in the
MinGWCrossCompile file.
(cherry picked from commit aed2d69ff8)
2011-01-02 01:31:24 +01:00
Tobias Doerffel
f25b7ef5e4 Build system: removed FindPkgConfig.cmake
Removed FindPkgConfig.cmake as it's part of all even less recent
CMake installations.
(cherry picked from commit a38c762730)
2011-01-02 01:29:44 +01:00
Tobias Doerffel
c296ca6ae3 AudioPortAudio: adapt to AudiBackend/AudioOutputContext API
Things have changed a bit for audio backend implementations in the
master branch. Therefore adapt AudioPortAudio to the new API.
2011-01-02 01:28:34 +01:00
Tobias Doerffel
16c2b767af Audio: Re-enabled PortAudio backend
The PortAudio backend lay down broken for quite a while. However as it
offers much better realtime capabilities on Windows compared to SDL, I
started to resurrect it, removed support for PortAudio < 1.9 and fixed
various bugs and crashes.
(cherry picked from commit 4641fcc6d3)
2011-01-02 01:20:28 +01:00
Tobias Doerffel
7b68713008 NotePlayHandle: send correct MidiNoteOff events if base note changed
When changing an InstrumentTrack's base note while NotePlayHandles are
active, they will send a wrong MidiNoteOff event due to the masterKey()
translation in InstrumentTrack::processOutEvent().

Therefore in NotePlayHandle remember the original base note value and
add the difference between original and current base note to the value
returned by NotePlayHandle::key(). Fixes hanging notes in MIDI-based
instruments such as ZynAddSubFX.

Furthermore some coding style improvements.

Closes #3146975.
(cherry picked from commit a9717c0cc3)
2010-12-31 13:32:51 +01:00
Tobias Doerffel
65c073ec63 Merge branch 'win64-vst'
* win64-vst:
  VST support layer: fixed non-working 64 bit VST plugins
  VST support layer: added 32 bit VST plugin support for Win64
  Win64Toolchain: added 32 bit compiler configuration
  ZynAddSubFX: use new RemotePlugin::init() method
  RemotePlugin: added support for running remote process multiple times
2010-12-26 11:22:39 +01:00
Tobias Doerffel
ab814c03a7 SpectrumAnalyzer: fixed multiple instantiations
When instantiating the SpectrumAnalyzer plugin more than once the
processed data somehow got invalid and caused all but the first
SpectrumAnalyzer instance not to work at all. This can be fixed easily
by clearing m_buffer in SpectrumAnalyzer's constructor.

Closes #3137877.
2010-12-24 00:30:27 +01:00
Tobias Doerffel
be92c67b94 VST support layer: fixed non-working 64 bit VST plugins
LMMS' native Win64 VST host capabilities were broken due to wrong data
types in some places. On 32 bit there's no difference between a pointer
and an int but on x64 there is, therefore fix data types where
approriate. Makes 64 bit VST DLLs work in LMMS/Win64.
2010-12-23 23:50:50 +01:00
Tobias Doerffel
619e86dd1a VST support layer: added 32 bit VST plugin support for Win64
Until now it was impossible to load classical 32 bit VST plugins with
the Win64 version of LMMS. This issue has been addressed by building a
32 bit version of the RemoteVstPlugin executable and launch it when
loading a 32 bit VST plugin. This also requires to ship 32 bit QtCore
and zlib DLLs with the Win64 package.
2010-12-23 22:22:01 +01:00
Tobias Doerffel
394f7ea433 Win64Toolchain: added 32 bit compiler configuration
It might be desirable to compile single modules with a 32 bit compiler.
Added according CMake variables so they can be used easily.
2010-12-23 22:22:01 +01:00
Tobias Doerffel
c974797954 ZynAddSubFX: use new RemotePlugin::init() method
The old method of passing remote process executable and flags to
constructor is not supported anymore. Use RemotePlugin::init() instead.
2010-12-23 22:22:01 +01:00
Tobias Doerffel
39cc1a8212 RemotePlugin: added support for running remote process multiple times
There might be situations where we want to try to run multiple different
remote processes. Therefore introduced RemotePlugin::init(...) which can
be called multiple times even if previous calls failed.
2010-12-23 22:22:01 +01:00
Tobias Doerffel
5143b6ad21 RemotePlugin: fixed compiler warning
Just a minor signed/unsigned int issue.
2010-12-23 22:21:14 +01:00
Tobias Doerffel
52543d4d8c ZynAddSubFX/FLTK: added missing source file
The Windows builds of FLTK require Fl_GDI_Printer.cxx. Add it here.
(cherry picked from commit e1e36e6831)
2010-12-23 22:18:58 +01:00
Tobias Doerffel
45a671c93a ZynAddSubFX: link against -lws2_32 on Win32
Once more explicit linking is required with recent MinGW toolchains.
(cherry picked from commit 1590dd0d39)
2010-12-06 10:43:51 +01:00
Tobias Doerffel
f0e7b3a83c Build system: explicitely link against WinMM library on Win32
When building for Win32 with recent MinGW64 runtime we have to link
against WinMM library explicitely.
(cherry picked from commit 49b6f25b2d)
2010-12-06 00:02:07 +01:00
Tobias Doerffel
859e819a02 MidiWinMM: fixed compiler warning
Pass 0 instead of NULL for 3rd and 4th argument of midiOutOpen().
(cherry picked from commit 8c4a8182ab)
2010-12-06 00:01:38 +01:00
Tobias Doerffel
7eea8c5e88 Build system: fixed relative linker paths warnings
Fixed the warnings about relative linker paths issued by CMake >= 2.8.
(cherry picked from commit 625e70d50a)
2010-12-06 00:01:32 +01:00
Tobias Doerffel
c562952800 Merge branch 'calf-updates'
* calf-updates:
  Reimplement modulation matrix (and tables in general) using configure variables. Slow and most likely incomplete, but a good start.
  Add extra checks to detect when param_count != param array size - 1.
  Fix another install-related crash, this time due to invalid params in fluidsynth. (cherry picked from commit 034e3a47cd40eb6bb7d221274fda2a5c1c79f42f)
  Fix the infamous crash on install. (cherry picked from commit f0568e2f8a4c7d0003cc5a15e300aa2ebb3f93cb)
  The range given in the comment wasn't really correct. (cherry picked from commit 292cdaa81dab7e7d948f597041cb86d70dc5ff92)
  Use symmetric dB range for EQ plugins.
  Fix a few bugs in compilation of limited versions (DSSI without GUI, no JACK host).
  Initialise the vintage delay properly... hopefully this time. (cherry picked from commit c96ff1d680148cc877fab3b641d666068eea06aa)
  Unbreak Monosynth by changing listview to use a 'key' attribute instead of 'param'.
2010-12-05 23:10:48 +01:00
Krzysztof Foltman
43e2886e79 Reimplement modulation matrix (and tables in general) using configure variables. Slow and most likely incomplete, but a good start. 2010-12-05 23:07:43 +01:00
Krzysztof Foltman
8053f5adcf Add extra checks to detect when param_count != param array size - 1.
(cherry picked from commit 6c8c91c4e03c3d0bc4b860db293549b45303ebc8)
2010-12-05 22:57:05 +01:00
Krzysztof Foltman
661da8e802 Fix another install-related crash, this time due to invalid params in fluidsynth.
(cherry picked from commit 034e3a47cd40eb6bb7d221274fda2a5c1c79f42f)
2010-12-05 22:56:48 +01:00
Krzysztof Foltman
313c268e20 Fix the infamous crash on install.
(cherry picked from commit f0568e2f8a4c7d0003cc5a15e300aa2ebb3f93cb)
2010-12-05 22:56:42 +01:00
Krzysztof Foltman
262edd6e8a The range given in the comment wasn't really correct.
(cherry picked from commit 292cdaa81dab7e7d948f597041cb86d70dc5ff92)
2010-12-05 22:56:19 +01:00
Krzysztof Foltman
a9a91053d9 Use symmetric dB range for EQ plugins.
(cherry picked from commit cb3e7e001da3e0f43b3da8eed3f9660698f87ca2)
2010-12-05 22:56:03 +01:00