Commit Graph

70 Commits

Author SHA1 Message Date
Tobias Doerffel
9fd3dacb67 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.
2010-01-25 23:24:42 +01:00
Tobias Doerffel
81cea79c38 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.
2009-12-26 01:06:52 +01:00
Tobias Doerffel
20589f19e4 Mixer: rewrote processing chain of rendered audio buffers
Until now, Mixer not only was responsible for rendering audio buffers
but also managed writing them to audio backend (through a FIFO) and
handled various quality related parameters.

All this functionality has been moved into the new AudioOutputContext
class. It glues together AudioBackend (formerly called AudioDevice),
global quality settings and the Mixer.

The AudioOutputContext class creates a FifoWriter which calls
Mixer::renderNextBuffer() and writes the output into the BufferFifo of
the AudioOutputContext it belongs to. The BufferFifo is read by the
according AudioBackend which belongs to the AudioOutputContext as well.

The AudioOutputContext also handles resampling in case the AudioBackend
wants the buffers in a different samplerate.

During this rewrite the Mixer class and the according source files have
been renamed from "mixer" to "Mixer". This results in small changes
all over LMMS' code base.
2009-11-29 01:46:23 +01:00
Tobias Doerffel
166701f9f3 sed: s/( void )/(), s/FALSE/false/, s/TRUE/true
Replaced remaining occurences of old constants and superfluous "void"
on empty argument list of functions.
2009-08-24 23:25:26 +02:00
Tobias Doerffel
8c9a9dd14c File and class renames part 1
Most files and most of the core classes and their methods have been
renamed to match new coding style conventions:

391 files changed, 25400 insertions(+), 25598 deletions(-)

Furthermore splitted some files where model and view classes were
declared or implemented together in the same file.

Should be tested thoroughly as I might have missed renaming some virtual
methods or SIGNAL/SLOT parameters.
2009-08-24 17:59:28 +02:00
Tobias Doerffel
0bb54199b0 Whole code base: various cleanups, removed SINGLE_SOURCE_COMPILE relicts
* cleaned up code and improved coding style
* removed old SINGLE_SOURCE_COMPILE macro relicts
* use QString::toUtf8() instead of QString::toAscii() wherever possible
2009-08-05 11:41:59 +02:00
Tobias Doerffel
f943df139e InstrumentView: added generic DnD support, renamed/splitted files
Added generic drag'n'drop support for all instrument views. All
resources supported by the according instrument now can be dropped
onto instrument view without any extra code in actual instrument.

Additionally renamed some files and classes related to InstrumentView
class to match new style.

Signed-off-by: Tobias Doerffel <tobias.doerffel@gmail.com>
2009-06-30 01:19:48 +02:00
skiessi
df34815be0 Getting rid of some more useless bytes. 2009-04-14 20:04:21 +03:00
Tobias Doerffel
59d20ec984 Vibed: cleanups in NineButtonSelector
Cleaned up, fixed some coding issues and added a TODO comment.
2009-03-16 18:23:35 +01:00
Tobias Doerffel
d3cc908f43 Vibed: fixed legacy code in NineButtonSelector
In Qt3 we had to take care of drawing background properly if there were
semitransparent child widgets. This code had been ported to the Qt4 version
but is obsolete and causes a crash when for example dragging a Vibed preset
onto an existing instrument track. This commit removes this code.
(closes #2688270)
2009-03-16 18:22:45 +01:00
Tobias Doerffel
87ee43a079 made STRINGIFY_PLUGIN_NAME from embed.h a generic macro STRINGIFY in lmms_basics.h
git-svn-id: https://lmms.svn.sf.net/svnroot/lmms/trunk/lmms@1784 0778d3d1-df1d-0410-868b-ea421aaaa00d
2008-10-19 21:48:57 +00:00
Tobias Doerffel
d118b13257 renamed types.h to lmms_basics.h
git-svn-id: https://lmms.svn.sf.net/svnroot/lmms/trunk/lmms@1748 0778d3d1-df1d-0410-868b-ea421aaaa00d
2008-10-06 18:45:20 +00:00
Tobias Doerffel
adf8aed93c removed obsolete instrument-parallelization support as this is handled much better by worker threads and adds unneccessary complexity
git-svn-id: https://lmms.svn.sf.net/svnroot/lmms/trunk/lmms@1718 0778d3d1-df1d-0410-868b-ea421aaaa00d
2008-09-30 11:14:32 +00:00
Tobias Doerffel
880c322cf6 * replaced instrument::notePlayHandleBased() with instrument::isMidiBased()
* renamed bendable() to isBendable()
* if the instrument is MIDI based and instrument-track's volume is below 100, adjust velocity of MIDI events and scaling factor when mixing sound



git-svn-id: https://lmms.svn.sf.net/svnroot/lmms/trunk/lmms@1715 0778d3d1-df1d-0410-868b-ea421aaaa00d
2008-09-29 19:29:04 +00:00
Paul Giblock
b17bbed325 Hide pitch-bend knob on vibed instrument.
git-svn-id: https://lmms.svn.sf.net/svnroot/lmms/trunk/lmms@1672 0778d3d1-df1d-0410-868b-ea421aaaa00d
2008-09-21 19:46:43 +00:00
Paul Giblock
74ac69ed1a Fix reference sharing in SF2 player
git-svn-id: https://lmms.svn.sf.net/svnroot/lmms/trunk/lmms@1653 0778d3d1-df1d-0410-868b-ea421aaaa00d
2008-09-21 00:19:48 +00:00
Tobias Doerffel
9b47d27f56 * improved concept for file types supported by certain plugins
* various small improvements for an even better ZynAddSubFX integration



git-svn-id: https://lmms.svn.sf.net/svnroot/lmms/trunk/lmms@1520 0778d3d1-df1d-0410-868b-ea421aaaa00d
2008-08-30 00:07:02 +00:00
Paul Giblock
f4ca1fd758 Fix English grammer, punctuation, and hard to read strings
git-svn-id: https://lmms.svn.sf.net/svnroot/lmms/trunk/lmms@1479 0778d3d1-df1d-0410-868b-ea421aaaa00d
2008-08-23 21:10:01 +00:00
Tobias Doerffel
257e60ab37 reduced header-dependencies
git-svn-id: https://lmms.svn.sf.net/svnroot/lmms/trunk/lmms@1406 0778d3d1-df1d-0410-868b-ea421aaaa00d
2008-07-28 21:39:08 +00:00
Tobias Doerffel
be0c5b9bc4 various fixes for allowing out-of-tree builds
git-svn-id: https://lmms.svn.sf.net/svnroot/lmms/trunk/lmms@1363 0778d3d1-df1d-0410-868b-ea421aaaa00d
2008-07-22 23:50:59 +00:00
Tobias Doerffel
e637495489 migrated build-system to CMAKE
git-svn-id: https://lmms.svn.sf.net/svnroot/lmms/trunk/lmms@1352 0778d3d1-df1d-0410-868b-ea421aaaa00d
2008-07-22 11:36:50 +00:00
Tobias Doerffel
a47a36c86e removed publicName-properties in various classes and plugin-descriptor and use model::displayName instead
git-svn-id: https://lmms.svn.sf.net/svnroot/lmms/trunk/lmms@1337 0778d3d1-df1d-0410-868b-ea421aaaa00d
2008-07-18 14:02:16 +00:00
Tobias Doerffel
21da0b432c * fixed wrong config.h-inclusion and deprecated macro-names from config.h/lmmsconfig.h at various places - makes Vibed plugin work again
* fixed plugin-instantiation for BitInvader and Vibed
* use int instead of Uint32 in graphModel
* various coding-style fixes



git-svn-id: https://lmms.svn.sf.net/svnroot/lmms/trunk/lmms@1169 0778d3d1-df1d-0410-868b-ea421aaaa00d
2008-06-24 22:18:43 +00:00
Tobias Doerffel
9bebe4325b * completely new automation-system with automation-tracks and automation-patterns as well as song-global automation
* made modelView take a QWidget-pointer argument
* trackContentObject-ctor now calls track::addTCO() directly
* optimize various loops to use iterators/const_iterators instead of a running index variable
* drag'n'drop doesn't fool around with pointers anymore - instead use unique journalling-IDs
* moved drag'n'drop handling code from knob to automatableModelView so that all controls can benefit from that



git-svn-id: https://lmms.svn.sf.net/svnroot/lmms/trunk/lmms@1164 0778d3d1-df1d-0410-868b-ea421aaaa00d
2008-06-23 22:36:33 +00:00
Tobias Doerffel
15134568f1 * removed volumeKnob-class and added volumeKnob-property to knob-class instead
* reduced header-dependencies and various cleanups
* removed obsolete settings



git-svn-id: https://lmms.svn.sf.net/svnroot/lmms/trunk/lmms@1158 0778d3d1-df1d-0410-868b-ea421aaaa00d
2008-06-20 22:44:49 +00:00
Paul Giblock
c53ec765dd Update rest of plugins for model.displayName
git-svn-id: https://lmms.svn.sf.net/svnroot/lmms/trunk/lmms@1080 0778d3d1-df1d-0410-868b-ea421aaaa00d
2008-06-06 08:13:43 +00:00
Paul Giblock
8654b47182 Update some plugins to use displayName
git-svn-id: https://lmms.svn.sf.net/svnroot/lmms/trunk/lmms@1079 0778d3d1-df1d-0410-868b-ea421aaaa00d
2008-06-06 07:42:21 +00:00
Tobias Doerffel
a3aa3f9a4d renamed muted() to isMuted() and other coding-style fixes
git-svn-id: https://lmms.svn.sf.net/svnroot/lmms/trunk/lmms@1067 0778d3d1-df1d-0410-868b-ea421aaaa00d
2008-06-03 16:03:59 +00:00
Tobias Doerffel
f8ce4a57b7 build win32-DLLs properly
git-svn-id: https://lmms.svn.sf.net/svnroot/lmms/trunk/lmms@1047 0778d3d1-df1d-0410-868b-ea421aaaa00d
2008-06-02 15:55:43 +00:00
Tobias Doerffel
d5701ac014 reworked automatableModel (not template-based anymore), removed levelObject, splitted comboBox/comboBoxModel-source-files, began to unify context-menu-creation for controls
git-svn-id: https://lmms.svn.sf.net/svnroot/lmms/trunk/lmms@1031 0778d3d1-df1d-0410-868b-ea421aaaa00d
2008-05-28 11:47:45 +00:00
Tobias Doerffel
a53256b97b shrinked file-sizes via optipng
git-svn-id: https://lmms.svn.sf.net/svnroot/lmms/trunk/lmms@1019 0778d3d1-df1d-0410-868b-ea421aaaa00d
2008-05-25 10:08:53 +00:00
Tobias Doerffel
aa08d06068 * plugins and core: use new pluginPixmapLoader
* lmmsStyle-class: load stylesheet here
* comboBox/comboBoxModel: use pixmapLoader-pointers rather than QPixmap-pointers
* in plugin-descriptor, hold a pointer to pixmapLoader instead of QPixmap itself
* embed-framework: introduced pixmapLoader and pluginPixmapLoader-classes for abstracting QPixmap-instantiation - models can hold pixmapLoaders without actually instantiating a QPixmap-object and views can access the pixmap
* main-window: removed settings-menu and moved setup-dialog to edit-menu
* config-manager: removed all the obsolete first-startup-wizard-code



git-svn-id: https://lmms.svn.sf.net/svnroot/lmms/trunk/lmms@999 0778d3d1-df1d-0410-868b-ea421aaaa00d
2008-05-20 23:41:45 +00:00
Tobias Doerffel
5cfb1b2f96 made quality-settings (internal processing samplerate, interpolation and so on) independent of audio-devices (final output) and added new qualitySettings-structure to mixer - might be still buggy and HQ-mode is currently not working, this is going to be fixed tomorrow, anyways important preparation for new project-export-dialog
git-svn-id: https://lmms.svn.sf.net/svnroot/lmms/trunk/lmms@957 0778d3d1-df1d-0410-868b-ea421aaaa00d
2008-05-05 23:14:48 +00:00
Tobias Doerffel
c8c5382b35 made rendering happen with one global working-buffer per thread - hopefully improves L1/L2-cache-efficiency
git-svn-id: https://lmms.svn.sf.net/svnroot/lmms/trunk/lmms@890 0778d3d1-df1d-0410-868b-ea421aaaa00d
2008-04-05 19:06:32 +00:00
Tobias Doerffel
108f3a9a68 corrected paths / includes
git-svn-id: https://lmms.svn.sf.net/svnroot/lmms/trunk/lmms@862 0778d3d1-df1d-0410-868b-ea421aaaa00d
2008-04-01 22:30:32 +00:00
Tobias Doerffel
c31dbd6a09 merged note's tone and octave-property into one key-property which makes us save calculations in a lot of places and also shrinks sizes of XML-files, renamed various note-related constants and enums to match current coding-style
git-svn-id: https://lmms.svn.sf.net/svnroot/lmms/trunk/lmms@806 0778d3d1-df1d-0410-868b-ea421aaaa00d
2008-03-22 13:24:43 +00:00
Paul Giblock
98fc05e189 steroEnhancer, Vibed, and separated Graph widget
git-svn-id: https://lmms.svn.sf.net/svnroot/lmms/branches/lmms-mv@700 0778d3d1-df1d-0410-868b-ea421aaaa00d
2008-02-22 08:33:52 +00:00
Paul Giblock
5313f32c56 steroEnhancer, Vibed, and separated Graph widget
git-svn-id: https://lmms.svn.sf.net/svnroot/lmms/branches/lmms-mv@699 0778d3d1-df1d-0410-868b-ea421aaaa00d
2008-02-22 08:09:34 +00:00
Tobias Doerffel
53cf8a675c miscellanous fixes
git-svn-id: https://lmms.svn.sf.net/svnroot/lmms/branches/lmms-mv@649 0778d3d1-df1d-0410-868b-ea421aaaa00d
2008-01-05 16:12:17 +00:00
Javier Serrano Polo
f01af6740e singerbot proxy, fixed recently opened files, style sheet support
git-svn-id: https://lmms.svn.sf.net/svnroot/lmms/trunk/lmms@574 0778d3d1-df1d-0410-868b-ea421aaaa00d
2007-11-03 14:41:58 +00:00
Tobias Doerffel
e24f094c62 dropped Qt3-support and improved Qt4-support
git-svn-id: https://lmms.svn.sf.net/svnroot/lmms/trunk/lmms@547 0778d3d1-df1d-0410-868b-ea421aaaa00d
2007-08-26 19:02:51 +00:00
Tobias Doerffel
4648b0e21f added "Recently opened files"-menu, fixed several bugs & crashes, removed obsolete plugins from build
git-svn-id: https://lmms.svn.sf.net/svnroot/lmms/trunk/lmms@529 0778d3d1-df1d-0410-868b-ea421aaaa00d
2007-08-19 23:31:01 +00:00
Tobias Doerffel
0b603628b5 reverted revision 504 as changes are not neccessary anymore as of fixes in revision 505
git-svn-id: https://lmms.svn.sf.net/svnroot/lmms/trunk/lmms@507 0778d3d1-df1d-0410-868b-ea421aaaa00d
2007-08-04 08:04:40 +00:00
Tobias Doerffel
d0370bb4e9 added additional check to avoid segfault
git-svn-id: https://lmms.svn.sf.net/svnroot/lmms/trunk/lmms@505 0778d3d1-df1d-0410-868b-ea421aaaa00d
2007-08-04 01:59:23 +00:00
Tobias Doerffel
1647da26fd renamed "mixer::framesPerAudioBuffer()" to "mixer::framesPerPeriod()" and type "fpab_t" to "fpp_t"
git-svn-id: https://lmms.svn.sf.net/svnroot/lmms/trunk/lmms@502 0778d3d1-df1d-0410-868b-ea421aaaa00d
2007-08-04 01:15:33 +00:00
Javier Serrano Polo
5afcc9414b mutex, detuning helpers, GUI updates, play handles, many many changes... (3)
git-svn-id: https://lmms.svn.sf.net/svnroot/lmms/trunk/lmms@481 0778d3d1-df1d-0410-868b-ea421aaaa00d
2007-05-07 19:39:16 +00:00
Javier Serrano Polo
416d208cc3 removed buffer allocator, automatable object dependencies, deadlocks
git-svn-id: https://lmms.svn.sf.net/svnroot/lmms/trunk/lmms@477 0778d3d1-df1d-0410-868b-ea421aaaa00d
2007-04-24 05:36:58 +00:00
Javier Serrano Polo
16a61bf8fe static engine, chunked audio buffer, pat fix, MIME type
git-svn-id: https://lmms.svn.sf.net/svnroot/lmms/trunk/lmms@472 0778d3d1-df1d-0410-868b-ea421aaaa00d
2007-04-19 06:52:29 +00:00
Tobias Doerffel
c0b1c47bd0 Qt4- and MinGW-compatibility
git-svn-id: https://lmms.svn.sf.net/svnroot/lmms/trunk/lmms@416 0778d3d1-df1d-0410-868b-ea421aaaa00d
2006-09-25 19:41:07 +00:00
Danny McRae
60abfb14d7 oversampled vibed to get hq-mode and regular mode to sound the same
git-svn-id: https://lmms.svn.sf.net/svnroot/lmms/trunk/lmms@415 0778d3d1-df1d-0410-868b-ea421aaaa00d
2006-09-25 16:18:59 +00:00