Commit Graph

345 Commits

Author SHA1 Message Date
Tobias Doerffel
2418ea32ee made song-length being cached and only updated upon changed length or position of TCOs
git-svn-id: https://lmms.svn.sf.net/svnroot/lmms/trunk/lmms@880 0778d3d1-df1d-0410-868b-ea421aaaa00d
2008-04-03 22:50:40 +00:00
Tobias Doerffel
8146dc3d30 - made effect::processAudioBuffer(...) process a sampleFrame- instead of
surroundSampleFrame-array
- divide out_sum by number of frames processed to have a
  period-size-independent value



git-svn-id: https://lmms.svn.sf.net/svnroot/lmms/trunk/lmms@876 0778d3d1-df1d-0410-868b-ea421aaaa00d
2008-04-03 20:29:11 +00:00
Tobias Doerffel
297b57274c renamed value( int ) to levelToValue( int ) as preparation for controller-framework
git-svn-id: https://lmms.svn.sf.net/svnroot/lmms/trunk/lmms@875 0778d3d1-df1d-0410-868b-ea421aaaa00d
2008-04-03 20:27:53 +00:00
Tobias Doerffel
753c5b86a3 - made mixer::buffertToPort accept a stereoVolumeVector as audio-buffers
have stereo-audio-buffers now
- made peakValueLeft() and peakValueRight() take a sampleFrame-pointer
- process in stereo internally



git-svn-id: https://lmms.svn.sf.net/svnroot/lmms/trunk/lmms@874 0778d3d1-df1d-0410-868b-ea421aaaa00d
2008-04-03 20:27:23 +00:00
Tobias Doerffel
f1a2d8bce7 replaced surroundArea with panning-knob
git-svn-id: https://lmms.svn.sf.net/svnroot/lmms/trunk/lmms@873 0778d3d1-df1d-0410-868b-ea421aaaa00d
2008-04-03 20:25:41 +00:00
Tobias Doerffel
98c2a2a3de use sampleFrame-array instead of surroundSampleFrame-array for processing
git-svn-id: https://lmms.svn.sf.net/svnroot/lmms/trunk/lmms@872 0778d3d1-df1d-0410-868b-ea421aaaa00d
2008-04-03 20:20:09 +00:00
Tobias Doerffel
6c27622a17 made mixToChannel() take a sampleFrame-pointer
git-svn-id: https://lmms.svn.sf.net/svnroot/lmms/trunk/lmms@871 0778d3d1-df1d-0410-868b-ea421aaaa00d
2008-04-03 20:19:00 +00:00
Tobias Doerffel
6c1cc640d8 added stereoVolumeVector and surroundVolumeVector-declarations
git-svn-id: https://lmms.svn.sf.net/svnroot/lmms/trunk/lmms@870 0778d3d1-df1d-0410-868b-ea421aaaa00d
2008-04-03 20:18:32 +00:00
Tobias Doerffel
b82105f296 implement pure-virtual processAudioBuffer()-method
git-svn-id: https://lmms.svn.sf.net/svnroot/lmms/trunk/lmms@869 0778d3d1-df1d-0410-868b-ea421aaaa00d
2008-04-03 20:18:04 +00:00
Tobias Doerffel
c3cd176695 new panningToVolumeVector()-inline-method
git-svn-id: https://lmms.svn.sf.net/svnroot/lmms/trunk/lmms@868 0778d3d1-df1d-0410-868b-ea421aaaa00d
2008-04-03 20:17:21 +00:00
Tobias Doerffel
1b9d8a0b8c made processAudioBuffer() take a sampleFrame-pointer
git-svn-id: https://lmms.svn.sf.net/svnroot/lmms/trunk/lmms@867 0778d3d1-df1d-0410-868b-ea421aaaa00d
2008-04-03 20:14:45 +00:00
Tobias Doerffel
814076f10e use sampleFrame-array instead of surroundSampleFrame-array internally
git-svn-id: https://lmms.svn.sf.net/svnroot/lmms/trunk/lmms@866 0778d3d1-df1d-0410-868b-ea421aaaa00d
2008-04-03 20:13:54 +00:00
Tobias Doerffel
18dd332d7d added castValue()-method
git-svn-id: https://lmms.svn.sf.net/svnroot/lmms/trunk/lmms@865 0778d3d1-df1d-0410-868b-ea421aaaa00d
2008-04-02 14:16:03 +00:00
Tobias Doerffel
c2dbbd7fe0 added dummyTrackContainer with dummyInstrumentTrack in order to have a default-model for cached inactive instrument-track-windows - fixes regular crashes
git-svn-id: https://lmms.svn.sf.net/svnroot/lmms/trunk/lmms@863 0778d3d1-df1d-0410-868b-ea421aaaa00d
2008-04-01 22:31:10 +00:00
Tobias Doerffel
9ba283ee94 - splitted track_container.h into track_container.h and track_container_view.h
- splitted bb_editor.h into bb_track_container.h and bb_editor.h
- moved view-component-implementations of trackContainer and bbTrackContainer to src/gui/
- added dummyInstrumentTrack-implementation



git-svn-id: https://lmms.svn.sf.net/svnroot/lmms/trunk/lmms@829 0778d3d1-df1d-0410-868b-ea421aaaa00d
2008-04-01 20:27:39 +00:00
Tobias Doerffel
2862b60de0 added missing includes when compiling headers itself
git-svn-id: https://lmms.svn.sf.net/svnroot/lmms/trunk/lmms@826 0778d3d1-df1d-0410-868b-ea421aaaa00d
2008-04-01 00:31:08 +00:00
Tobias Doerffel
ef5362909f made controls have a track to allow automation of LADSPA-controls, compare out_sum against getGate()+0.0001f as getGate() might be 0 while out_sum in many cases never will reach 0,0...0 again - fixes high CPU-usage even after stop playing
git-svn-id: https://lmms.svn.sf.net/svnroot/lmms/trunk/lmms@817 0778d3d1-df1d-0410-868b-ea421aaaa00d
2008-03-30 20:20:32 +00:00
Tobias Doerffel
5bfbd5d4f0 on model-change, ensure QPushButton's state is correct
git-svn-id: https://lmms.svn.sf.net/svnroot/lmms/trunk/lmms@815 0778d3d1-df1d-0410-868b-ea421aaaa00d
2008-03-30 20:18:58 +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
ab42375731 first shot at instrumentTrackWindow cache
git-svn-id: https://lmms.svn.sf.net/svnroot/lmms/trunk/lmms@803 0778d3d1-df1d-0410-868b-ea421aaaa00d
2008-03-22 08:32:06 +00:00
Paul Giblock
ca8d394905 Plugged memleaks in sf2player and lcdSpinbox, reapplied lmmsStyle, enhanced drawing of LCDs, added ignore property for SVN
git-svn-id: https://lmms.svn.sf.net/svnroot/lmms/trunk/lmms@800 0778d3d1-df1d-0410-868b-ea421aaaa00d
2008-03-17 06:14:06 +00:00
Tobias Doerffel
6c50693d70 removed obsolete and broken auto-limit-feature
git-svn-id: https://lmms.svn.sf.net/svnroot/lmms/trunk/lmms@798 0778d3d1-df1d-0410-868b-ea421aaaa00d
2008-03-16 14:13:12 +00:00
Tobias Doerffel
15ec9f08e0 fixed random crashes when removing effect-views, improved painting of effect-view
git-svn-id: https://lmms.svn.sf.net/svnroot/lmms/trunk/lmms@793 0778d3d1-df1d-0410-868b-ea421aaaa00d
2008-03-16 00:09:39 +00:00
Tobias Doerffel
13a65b88f2 implemented save- and load-functionality for FX-mixer
git-svn-id: https://lmms.svn.sf.net/svnroot/lmms/trunk/lmms@790 0778d3d1-df1d-0410-868b-ea421aaaa00d
2008-03-15 14:53:17 +00:00
Tobias Doerffel
b682b30146 added initial FX-mixer implementation - not perfect and very usable yet but the basics work so far
git-svn-id: https://lmms.svn.sf.net/svnroot/lmms/trunk/lmms@789 0778d3d1-df1d-0410-868b-ea421aaaa00d
2008-03-14 21:45:10 +00:00
Tobias Doerffel
461c235cfe added missing Q_OBJECT-macros for views which made localizations not work
git-svn-id: https://lmms.svn.sf.net/svnroot/lmms/trunk/lmms@784 0778d3d1-df1d-0410-868b-ea421aaaa00d
2008-03-09 00:21:43 +00:00
Tobias Doerffel
5f47f86625 added definition for upcoming FX-mixer
git-svn-id: https://lmms.svn.sf.net/svnroot/lmms/trunk/lmms@783 0778d3d1-df1d-0410-868b-ea421aaaa00d
2008-03-09 00:19:51 +00:00
Tobias Doerffel
3158e80b92 made MIDI-port-menu work again
git-svn-id: https://lmms.svn.sf.net/svnroot/lmms/trunk/lmms@781 0778d3d1-df1d-0410-868b-ea421aaaa00d
2008-03-08 20:22:35 +00:00
Tobias Doerffel
b9f467cd97 fixed crash when removing TCO via context-menu
git-svn-id: https://lmms.svn.sf.net/svnroot/lmms/trunk/lmms@780 0778d3d1-df1d-0410-868b-ea421aaaa00d
2008-03-08 20:20:06 +00:00
Tobias Doerffel
ee04ea3c74 fixed missing automationPattern-initialization (i.e. setFirstValue()-call) which made automation-editor not work properly if no events were drawn so far
git-svn-id: https://lmms.svn.sf.net/svnroot/lmms/trunk/lmms@777 0778d3d1-df1d-0410-868b-ea421aaaa00d
2008-03-08 09:22:05 +00:00
Tobias Doerffel
aa7d45f3ec made micro-draw-operations use 32-bit-ints instead of 16-bit-integers for performing better on 32-bit-platforms
git-svn-id: https://lmms.svn.sf.net/svnroot/lmms/trunk/lmms@776 0778d3d1-df1d-0410-868b-ea421aaaa00d
2008-03-08 09:18:02 +00:00
Tobias Doerffel
a3813eff2b also connect model-signals with view when using default-constructed model - fixes missing updates on things like button-groups when using automation
git-svn-id: https://lmms.svn.sf.net/svnroot/lmms/trunk/lmms@775 0778d3d1-df1d-0410-868b-ea421aaaa00d
2008-03-08 08:25:24 +00:00
Tobias Doerffel
1f7a9c491d misc coding-style-fixes
git-svn-id: https://lmms.svn.sf.net/svnroot/lmms/trunk/lmms@771 0778d3d1-df1d-0410-868b-ea421aaaa00d
2008-03-07 16:03:41 +00:00
Tobias Doerffel
b326a99f98 made sampleBuffer reentrant so that several threads can use sampleBuffer::play() simultanously - fixes crashes when using AudioFileProcessor or Patman in multithreaded mode
git-svn-id: https://lmms.svn.sf.net/svnroot/lmms/trunk/lmms@769 0778d3d1-df1d-0410-868b-ea421aaaa00d
2008-03-07 14:41:45 +00:00
Tobias Doerffel
0edae2d9e7 reduced dependencies from automatable_model_templates.h and fixed according compiler-warnings
git-svn-id: https://lmms.svn.sf.net/svnroot/lmms/trunk/lmms@767 0778d3d1-df1d-0410-868b-ea421aaaa00d
2008-03-04 11:30:19 +00:00
Tobias Doerffel
74bc575ad1 added mutex to protect reference-counter
git-svn-id: https://lmms.svn.sf.net/svnroot/lmms/trunk/lmms@766 0778d3d1-df1d-0410-868b-ea421aaaa00d
2008-03-04 11:28:58 +00:00
Tobias Doerffel
6f8b8c3a75 moved MIDI-event-code to piano-class
git-svn-id: https://lmms.svn.sf.net/svnroot/lmms/trunk/lmms@764 0778d3d1-df1d-0410-868b-ea421aaaa00d
2008-03-04 00:57:47 +00:00
Tobias Doerffel
c65b1100b6 always use main-window as parent and make sure to be moved relative to it, i.e. do not show outside of moved main-window
git-svn-id: https://lmms.svn.sf.net/svnroot/lmms/trunk/lmms@755 0778d3d1-df1d-0410-868b-ea421aaaa00d
2008-03-03 22:52:12 +00:00
Tobias Doerffel
2843a5d743 removed overwrite-check as in Qt4 QFileDialog does this on its own
git-svn-id: https://lmms.svn.sf.net/svnroot/lmms/trunk/lmms@754 0778d3d1-df1d-0410-868b-ea421aaaa00d
2008-03-03 22:51:50 +00:00
Tobias Doerffel
8586a7d30f do not lock mixer and call notePlayHandle::noteOff() in instrumentTrack::processInEvent() when processing monophonic instruments in playNote() - fixes lockups in LB302 in multithreaded mode
git-svn-id: https://lmms.svn.sf.net/svnroot/lmms/trunk/lmms@753 0778d3d1-df1d-0410-868b-ea421aaaa00d
2008-03-03 22:51:23 +00:00
Tobias Doerffel
a6859e765a fixed wrong integration of tempoSyncKnobModel
git-svn-id: https://lmms.svn.sf.net/svnroot/lmms/trunk/lmms@751 0778d3d1-df1d-0410-868b-ea421aaaa00d
2008-03-02 07:33:18 +00:00
Tobias Doerffel
1c5c20a8b2 fixed missing tempoSyncKnobModel for not crashing when instantiating LADSPA-plugins with time-knobs inside
git-svn-id: https://lmms.svn.sf.net/svnroot/lmms/trunk/lmms@748 0778d3d1-df1d-0410-868b-ea421aaaa00d
2008-03-01 23:43:39 +00:00
Tobias Doerffel
43a0971840 fixed importFilter::readByte() to return proper integer instead of signed char - makes import-filters finally work
git-svn-id: https://lmms.svn.sf.net/svnroot/lmms/trunk/lmms@742 0778d3d1-df1d-0410-868b-ea421aaaa00d
2008-02-29 22:49:06 +00:00
Paul Giblock
c896f0d8e8 touched-up combobox
git-svn-id: https://lmms.svn.sf.net/svnroot/lmms/trunk/lmms@737 0778d3d1-df1d-0410-868b-ea421aaaa00d
2008-02-29 19:08:50 +00:00
Paul Giblock
1c1870ce3a various graphical enhancements
git-svn-id: https://lmms.svn.sf.net/svnroot/lmms/trunk/lmms@736 0778d3d1-df1d-0410-868b-ea421aaaa00d
2008-02-29 09:15:15 +00:00
Tobias Doerffel
50da20f22e rendering from commandline is now done without creating main-window and all the other UI-stuff
git-svn-id: https://lmms.svn.sf.net/svnroot/lmms/branches/lmms-mv@727 0778d3d1-df1d-0410-868b-ea421aaaa00d
2008-02-27 17:53:39 +00:00
Tobias Doerffel
a7b14c6660 lock audioPort-buffers before writing them
git-svn-id: https://lmms.svn.sf.net/svnroot/lmms/branches/lmms-mv@725 0778d3d1-df1d-0410-868b-ea421aaaa00d
2008-02-27 17:49:35 +00:00
Tobias Doerffel
0acbf718af distribute whole job-queue instead of single jobs and re-assign unprocessed jobs to idle worker-threads - improves multi-threading behaviour a lot
git-svn-id: https://lmms.svn.sf.net/svnroot/lmms/branches/lmms-mv@723 0778d3d1-df1d-0410-868b-ea421aaaa00d
2008-02-27 14:57:07 +00:00
Tobias Doerffel
e0851b970e initial support for parallel rendering via worker-threads - far from being perfect (especially with small mixer-period-sizes) but seems to help even on a DualCore machine
git-svn-id: https://lmms.svn.sf.net/svnroot/lmms/branches/lmms-mv@720 0778d3d1-df1d-0410-868b-ea421aaaa00d
2008-02-27 00:45:30 +00:00
Tobias Doerffel
b5c9a36785 splitted tempoSyncKnob into tempoSyncKnobModel and tempoSyncKnob
git-svn-id: https://lmms.svn.sf.net/svnroot/lmms/branches/lmms-mv@719 0778d3d1-df1d-0410-868b-ea421aaaa00d
2008-02-25 23:28:55 +00:00