Commit Graph

2013 Commits

Author SHA1 Message Date
Tobias Doerffel
9b0925432a SpectrumAnalyzer: skip processing if UI is not visible
There's currently no need for analyzing the sound data if
SpectrumAnalyzer's view is not visible. This saves some CPU time
if SpectrumAnalyzer's view is not shown.
(cherry picked from commit 70b80efec1)
2010-05-17 23:36:54 +02:00
Tobias Doerffel
48bbfad53d EffectControl: store visibility information of attached EffectView
For some effects it is helpful to know whether their attached EffectView
is visible or not. This mainly concerns effects that actually do not
touch the sound data but analyze it and display the results.
(cherry picked from commit 9c9bca7098)
2010-05-17 23:36:46 +02:00
Tobias Doerffel
463d73ea48 Merge branch 'calf-updates'
* calf-updates:
  Simplify Multiband Compressor code and fix several bugs.
  Remove zombie small plugin code.
  Remove small plugins together with all the supporting infrastructure.
  Add Doxygen documentation for plugin_registry class.
  More refactoring.
  General refactoring. Start implementing external GUI.
  + LV2: add external UI header (not used for anything yet)
(cherry picked from commit ceacb484a1)
2010-04-03 13:10:54 +02:00
Tobias Doerffel
7c16094811 Fixed spelling errors
Fixed some spelling errors found by Lintian while checking the Debian
package of LMMS. Thanks to Patrick Winnertz for pointing out this issue.
(cherry picked from commit 9fd3dacb67)
2010-01-25 23:27:43 +01:00
Tobias Doerffel
1ad1c99e35 Merge branch 'calf-updates'
* calf-updates:
  CALF: resync source files due to forgotten commits
  + JACK host: implemented Save/Save as...; Open not implemented yet - who could possibly want THAT?
  + EQ: Fix adding EQ plugin using menu in calfjackhost
  Some changes in style, smaller h/v-scale added
  + LADSPA: make plugin IDs unique across Calf plugins, add an install-time check
  + EQ-5: refactoring to eliminate code duplication, side effect: stereo meters
  + EQ-n: shorter names for calfjackhost and others
  + Equalizers: convert lists of per-band parameters using macros (ugly, but effective)
  + EQ-8, EQ-12: reduce copypasta by using a class template
  + Compatibility: workaround for GStreamer crash bug in Ubuntu 9.10 (thanks to Stefan Kost for diagnosing the problem and suggesting the workaround)
  + Compressor simplification, added optional audio ports
(cherry picked from commit c8a444d026)
2010-01-04 00:46:49 +01:00
Tobias Doerffel
be2b6ec9b0 Merge branch 'calf-updates'
* calf-updates:
  + Deesser: use correct threshold
  + Equalizer: remove unused variables
  + Gain reduction module: clearer authorship information
  + Framework: placeholder for waveshaper class (need it to merge further changes from Markus)
(cherry picked from commit 774bd74c77)
2010-01-04 00:46:44 +01:00
Tobias Doerffel
595d50fc20 Merge branch 'calf-updates'
* calf-updates:
  New widget: Tube with light and falloff
  New Deesser, some minor bugs in sc-comp
  Sidechain compressor bugs/settings, 3 equalizer
  Minor bugs, sidechain frequency display
  New FX: Sidechain compressor
  New button (big mama), VU-meters with falloff and hold, bug in delay (value)
  In the middle of nowhere
  Fully redesigned
  Sidebars, GUI layouts, black buttons again, input knob for compressor
  Added 6 new LED's and peak hold function for VU-meters
  meter_gain in gain_reduction module with falloff
(cherry picked from commit 083c2e1b0b)
2010-01-04 00:46:37 +01:00
Tobias Doerffel
3348a4378f Base64: realize decode() as template function
In Base64::decode() we mess around with pointers so it's more type-safe
to realize everything as a template function. This also silences compiler
warning about dereferencing type-punned pointer in Vibed plugin.
(cherry picked from commit 81cea79c38)
2009-12-26 01:09:56 +01:00
Tobias Doerffel
93eb03612d Made 0.4.6 release
Bumped version number to 0.4.6 in CMakeLists.txt and README.
v0.4.6
2009-12-25 00:47:13 +01:00
Tobias Doerffel
d0e769c052 Win32 build: copy new libFLAC-8.dll into package
External FLAC support recently has been added to mingw-x-libsndfile.
Therefore we now require libFLAC-8.dll in our package.
2009-12-25 00:43:15 +01:00
Tobias Doerffel
cc821a1a03 Win32 toolchain: various fixes + march=i686
In build_mingw32 script fixed path to Win32Toolchain.cmake. In this
file set march=i686 and mtune=generic.
(cherry picked from commit c2e0cde213)
2009-12-25 00:42:08 +01:00
Tobias Doerffel
6d890557a7 ConfigMgr: fix initialization of various paths if they do not exist
We should not only test whether a specific path (e.g. STK or LADSPA
path) is empty but also whether it does not exist so we can reset it
to a sensible default value (for example when upgrading LMMS on Win32
where the program's path will change).

Furthermore default to "C:\Program Files\VstPlugins" for the VST
directory on Win32 which is the default location for VST plugins.
2009-12-25 00:38:14 +01:00
Tobias Doerffel
092c288a33 VeSTige: set VeSTige logo as window icon for plugin GUI subwindow
Up to now the MainWindow's icon was used for VST plugin GUI subwindows.
Improve this a little bit by using the VeSTige logo now.
(cherry picked from commit 5e711875f5)
2009-12-22 00:51:51 +01:00
Tobias Doerffel
cf680c4175 Removed some old projects
Removed some old projects that did not represent LMMS and its abilities
anymore. We also need to replace most of the "Cool songs" and replace
them by more recent projects from LSP.
(cherry picked from commit ca2440d1c4)
2009-12-22 00:41:39 +01:00
Tobias Doerffel
e852c8b267 MainWindow: stop playing song when asking whether to save project
Users reported the last buffer played repeatedly while the dialog asking
whether to save project is shown. This behaviour even continued while
loading a project. An easy workaround for this is to stop playing song
(or whichever TrackContainer is active at the moment) in
MainWindow::mayChangeProject().

Closes bug #2904781.
(cherry picked from commit 04699ba412)
2009-12-17 21:19:21 +01:00
Tobias Doerffel
275eb7ac2b TrackContainer: fix Qt header includes
Always prefix Qt header includes with name of according module.
(cherry picked from commit bb57d53770)
2009-12-14 09:37:00 +01:00
Tobias Doerffel
d7ae99a5e8 TrackContentWidget: fixed background tile pixmap updating
The background tile pixmap used to draw the background of
TrackContentWidgets was only updated on size changes but not on
changes of zoom level in according editor. Fix this by updating
background pixmaps in trackContainerView::setPixelsPerTact().
2009-12-07 01:38:17 +01:00
Tobias Doerffel
f82a25c3a2 Mallets: build properly with Stk 4.4
As of Stk 4.4 all classes and types have been moved to the namespace "stk".
This breaks build of the Mallets plugin. This can be easily fixed by
using the namespace "stk". For compatibility reasons we have to declare
the namespace before, because it did not exist in previous versions.

Closes #2870878.
(cherry picked from commit bf0f0151d2)
2009-12-06 23:23:33 +01:00
Tobias Doerffel
206715d82b RemoteVstPlugin: allocate buffer for chunk on heap rather than stack
It's not a good idea to allocate the buffer for VST chunk data on the
stack as chunks might become quite big (several megabytes) and thus
could cause a stack overflow. Fix this by using new/delete.
(cherry picked from commit 5f241e6374)
2009-12-06 01:04:11 +01:00
Armin Kazmi
8e86863a86 AudioPulseAudio: fixed latency and underrun problems
Try to adjust latency of PulseAudio according to our settings of mixer
so it does not have such a bad latency anymore.

Furthermore force PulseAudio to play silence instead of rewinding
streams in case of underruns.
(cherry picked from commit 92047f5e9e)
2009-11-20 23:10:49 +01:00
Tobias Doerffel
5309e7a374 AudioPulseAudio: fixed improper shutdown + free allocated resources
There have been some problems with the threading logic in the
AudioPulseAudio backend resulting in an endless loop when quitting LMMS.

Furthermore allocated PulseAudio resources were not freed properly.
Thanks to Armin Kazmi <armin.kazmi@tu-dortmund.de> for pointing out
this issue.
(cherry picked from commit 168805745e)
2009-11-20 22:36:06 +01:00
Tobias Doerffel
6e6d6e89c1 Refresh localization files with strings from UI files
As we have quite a few Qt Designer based dialogs now, there's a whole
bunch of new strings to be translated for each language.
(cherry picked from commit 52fbd3694d)
2009-11-12 10:00:21 +01:00
Tobias Doerffel
62a8b77a13 Build system: pass UI files to lupdate
For whatever reason I did not add UI files to lupdate calls, so strings
in Qt Designer based dialogs could not be translated. Trivial fix.
(cherry picked from commit b3b038eaf6)
2009-11-12 09:57:39 +01:00
Tobias Doerffel
6174ccf0eb Updated German localization files
There have been some changes to strings in the program lately that
weren't translated to German yet.
2009-11-02 22:26:11 +01:00
Tobias Doerffel
1eb4c31607 SideBar: rewritten to use QToolBar instead of KMultiTabBar
Rewrote implementation of class SideBar to use QToolBar instead of
KMultiTabBar. We can style the SideBar now easily via CSS and do not
have to ship 3rd party KDE code with LMMS. Also the QToolBar based
SideBar integrates much better into the according widget style.

Furthermore renamed SideBar related classes and files to match new
coding style.
(cherry picked from commit 822a22ca37)
2009-10-31 13:38:17 +01:00
Nikos Chantziaras
4849c9a11b ZynAddSubFX: link fftw3f after ZASF core libs
Commit 3c18e436cd makes it impossible to
build LMMS with embedded ZynAddSubFX if "-Wl,--as-needed" is used in
LINKER_FLAGS during the link step of RemoteZynAddSubFx:

  Linking CXX executable RemoteZynAddSubFx
  libZynAddSubFxCore.so: undefined reference to `fftwf_plan_r2r_1d'
  libZynAddSubFxCore.so: undefined reference to `fftwf_execute'
  libZynAddSubFxCore.so: undefined reference to `fftwf_destroy_plan'

This happens because fftw3f, which is a system lib, is linked to before
the ZASF core libs when linking RemoteZynAddSubFx. With "--as-needed",
correct library order matters.
(cherry picked from commit 0f28295ac7)
2009-10-31 13:38:12 +01:00
fundamental
40331b0cdd Params: added pthread.h include to fix compile
Added #include <pthread.h> in PADnoteParameters.h to fix windows compile error
Patch by: Tobias Doerffel
(cherry picked from commit 14d2751bed1e6bb11805bb17e4a73e622c85a4ac)
(cherry picked from commit 415a966d25)
2009-10-29 23:36:06 +01:00
Tobias Doerffel
337e6f3389 VstPlugin: flush temporary data exchange file
VstPlugin creates a temporary file for exchanging data chunks of VST
plugins with the remote process. After calling QFile::write(...) data
has not neccessarily been written due to QFile's internal write buffer.
Therefore explicitely call QFile::flush() so all data is guaranteed
to be written.

Fixes problems with plugins which save small data chunks.
(cherry picked from commit 4b8ddcc14f)
2009-10-29 23:14:56 +01:00
Tobias Doerffel
7f75793995 ZynAddSubFX: flush temporary data exchange file
LMMS' ZynAddSubFX plugin creates a temporary file for exchanging XML
data with the remote process. After calling QFile::write(...) data
has not neccessarily been written due to QFile's internal write buffer.
Therefore explicitely call QFile::flush() so all data is guaranteed
to be written.

Closes #2877916.
(cherry picked from commit 17b388d482)
2009-10-29 23:14:50 +01:00
Tobias Doerffel
db89dfa181 Removed usage of ASCII C strings in several places
Still QString::toAscii() & friends were used in several places causing
problems such as failed access to files with non-ASCII characters in
name.

Closes #2884115.
(cherry picked from commit 1633cf2593)
2009-10-27 17:59:06 +01:00
Tobias Doerffel
89fc626533 ZynAddSubFX/FLTK: updated to SVN revision 6921
Updated FLTK to SVN revision 6921 of branch-1.3:

  - Managing all Widget flags in a single location now (STR #2161)
  - Fixed all color related call to Fl_Color type (STR #2208)
  - File chooser preview now recognizes utf8 encoded
    text files (STR #2218)
  - Empty functions in Fluid no longer create an
    implementation (STR #2259)
  - Fixed Fluid dependency on X11 (STR #2261)
  - Updated the bundled libpng to v1.2.40 (released Sep. 10, 2009)
  - Fixed Fl_Choice contrast with light-on-dark settings (STR #2219)
  - Fixed X server "lock", if a modal dialog window is opened
    while a menu is active (STR #1986)
  - Updated mirror sites in documentation (STR #2220)
  - Setting a default font for Xft (STR #2216)
  - Temporarily limited builds to 32-bit on OX S to stay
    compatible to Snow Leopard
  - Fixed Windows compile bug with "#define USE_COLORMAP 0"
    (STR #2241)
(cherry picked from commit c734023be2)
2009-10-27 10:25:58 +01:00
Tobias Doerffel
722c6b0dd1 Merge branch 'zynaddsubfx-master'
* zynaddsubfx-master: (28 commits)
  ZynAddSubFX: explicitely link RemoteZynAddSubFx.exe against Core library
  Revert "ZynAddSubFX/FLTK: updated to SVN revision 6909"
  Style: Restylized entire codebase
  SUBnote: integrated memcpy/memset
  ADnote: started to use memset/memcpy
  ADnote: Documented/added const usage
  OSS: Added failsafe based upon Jrmie Andri patch
  Unison improvements
  Bandwidth effect on Reverb
  Started to rewrite the Reverb's Bandwidth effect (based on a better idea)
  ZynAddSubFX/FLTK: updated to SVN revision 6909
  Merge branch 'master' into newXML
  ZynAddSubFX: rebuilt UI files with non-buggy Fluid
  ZynAddSubFX: rebuilt source files from UI files
  Merge branch 'master' of ssh://zynaddsubfx.git.sourceforge.net/gitroot/zynaddsubfx/zynaddsubfx
  Started to implement Bandwidth to the Reverb effect.
  Small enhancements and bugfixes to Unison
  Made unison vibratto LFO smoother
  Other improvements and bugfixes on Unison.
  Bugfixes
  ...
(cherry picked from commit fbacebca65)
2009-10-27 10:24:29 +01:00
Tobias Doerffel
39f87898c4 ZynAddSubFX: resynced with their Git repo
ZynAddSubFX has gained some new developer power so development has been
going on well for quite a while now in their Git repo. It's time for
the first big resync so future changes can be integrated easily.
(cherry picked from commit 3c18e436cd)
2009-10-27 10:24:24 +01:00
Tobias Doerffel
2e7414ef94 Regenerate QM files
After refreshing TS files in commit 8641023053
we need to regenerate final localization files (*.qm) to make changes
take effect.
(cherry picked from commit a3cac6ae79)
2009-10-24 17:44:21 +02:00
Tobias Doerffel
ff8205a7cc Refresh localization files with improved lupdate command
Due to changes introduced by commit 5685663233
we need to refresh localization files. This also fixes problems with
translations not working anymore due to class name changes.
(cherry picked from commit 8641023053)
2009-10-24 17:43:29 +02:00
Tobias Doerffel
1b0a327bc0 Suppress location information in *.ts files and drop obsolete strings
By passing two additional parameters to lupdate we can suppress useless
location information for messages in *.ts files. Furthermore drop
obsolete translated strings when updating a localization file for not
cluttering repository.
(cherry picked from commit 5685663233)
2009-10-24 17:41:42 +02:00
Paul Giblock
2b714fd686 Rename "All Files" to "All file types" release QM
Translations didn't work because I didn't "release" within Linguist.  I
wonder how to update the *.ts files with missing strings...
(cherry picked from commit 49c2f6bad1)
2009-10-24 17:41:05 +02:00
Paul Giblock
340be43acd Proper File import extensions and translations
Previously, the extensions were stored in the translations, this i18n
more difficult, additionally, there was a preprocessor statement that
would cause the translated phrase to change! Hence, no translations if
you didn't have ZIP file support.  The text is now split into seperate
translations and I added "All Files".
(cherry picked from commit beb92563f1)
2009-10-24 17:37:26 +02:00
Paul Giblock
e959af4ec2 Increase import filter for *.midi and *.riff
Fix song.cpp and translations so the somewhat common *.midi extension is
recognized.
(cherry picked from commit c504bc84d4)
2009-10-24 17:35:16 +02:00
Tobias Doerffel
55daaef0f3 Build system: another stupid compiler flag fix for OS X
All versions of OS X except Snow Leopard ship GCC 4.0 which does not
understand the "-finline-functions-called-once" flag. Therefore do not
use this flag when building for OS X.
(cherry picked from commit 01ae99d6aa)
2009-10-17 23:55:37 +02:00
Tobias Doerffel
b8bae65a17 Build system: remove ChangeLog from "dist" target
ChangeLog has been removed as of commit
c896488e13, therefore "dist" target fails.
Removing ChangeLog from list of files to be copied into tarball fixes
this issue.
(cherry picked from commit de8e13b44b)
2009-10-17 23:47:20 +02:00
Tobias Doerffel
ed23c82c23 Merge branch 'calf-updates'
* calf-updates:
  + DSP primitives: fix a rather stupid bug in clamping functions
  + Monosynth: fix type bug that made it impossible to compile with g++ 4.2
  + AutoHell: update AUTHORS file
  + GUI, Multiband Compressor, Toggle button: apply more fixes and additions by Markus Schmidt
  + Multiband Compressor: better metadata
  + Multiband Compressor: new module (first version, by Markus Schmidt, based on code by me and Thor) plus associated refactoring and graph colour scheme update
(cherry picked from commit 65f6bb7135)
2009-10-17 23:35:38 +02:00
Krzysztof Foltman
dd055b210b + Organ, Framework: use std::vector::front() instead of std::vector::data() (may possibly fix the MacOS X compilation problem reported by Daniel Klaffenbach and Tobias Doerffel)
(cherry picked from commit 628eb1543591f5137e6001abad439d01942ffd4a)
(cherry picked from commit 1294ff62ee)
2009-10-05 23:48:21 +02:00
Tobias Doerffel
a1c720d728 Revert "CALF: removed usage of non-standard std::vector::data()"
This reverts commit dd260245ec.

The commit fixed the compilation problem but according to upstream
causes new problems because of the huge data structures on the stack.

Upstream provided a better patch which will be applied next.
(cherry picked from commit 68bd237061)
2009-10-05 23:48:17 +02:00
Tobias Doerffel
bbe796b496 CALF: removed usage of non-standard std::vector::data()
The std::vector::data() method is a special feature of GCC and
therefore not portable. This causes a compile failure of CALF plugin
on OS X. Therefore I replaced the code with standard arrays
allocated on stack.

Upstream needs to be informed about this patch.

Thanks to Daniel Klaffenbach for pointing out this issue.
(cherry picked from commit dd260245ec)
2009-10-03 01:21:32 +02:00
Krzysztof Foltman
b9c4451d09 + Monosynth: code cleanup (move more things to .cpp file, ignore the negligible performance hit)
(cherry picked from commit 24f4661a73fe39e70db8e74b9a5c1279859b6fb3)
(cherry picked from commit 66a5ae5066)
2009-10-03 01:21:05 +02:00
Tobias Doerffel
2fa6c6ee29 CALF: moved some files to allow easy cherry-picking from CALF Git
Source directory structure of the CALF plugin shipped with LMMS was
not equal with original one which makes cherry-picking commits from
CALF Git impossible.
(cherry picked from commit b8d339e196)
2009-10-03 01:20:52 +02:00
Tobias Doerffel
dc050296ae Fix issue with knobs in 3xOsc and AudioFilePro.
The knobs were broken because the classnames of these instruments was
changed without properly changing the selectors in the style.css
(cherry picked from commit 2622edd140)

Conflicts:

	data/themes/cusis/style.css
2009-09-28 22:53:43 +02:00
Tobias Doerffel
132b7c7df4 RemoteVstPlugin: removed plugin dispatching in hostCallback
There's no need to call plugin dispatcher in hostCallback. It makes
plugins like Garritan Personal Orchestra 4 lock up. After removing
these calls the affected plugins work.
(cherry picked from commit 44e25a6ad5)
2009-09-28 22:52:48 +02:00
Tobias Doerffel
8f258e0f5e Moved ChangeLog file to ChangeLog.old
As it's not maintained anymore but should be kept for archival reasons
I moved ChangeLog to ChangeLog.old.
(cherry picked from commit c896488e13)
2009-09-28 22:52:43 +02:00