Tobias Doerffel
1410f2bc92
added basic support for recording sound into sample tracks
...
git-svn-id: https://lmms.svn.sf.net/svnroot/lmms/trunk/lmms@1508 0778d3d1-df1d-0410-868b-ea421aaaa00d
2008-08-27 13:52:21 +00:00
Tobias Doerffel
1087aa77b5
cleanups and coding-style fixes
...
git-svn-id: https://lmms.svn.sf.net/svnroot/lmms/trunk/lmms@1450 0778d3d1-df1d-0410-868b-ea421aaaa00d
2008-08-20 11:28:11 +00:00
Tobias Doerffel
c238f579c2
added rudimentary WinMM MIDI support
...
git-svn-id: https://lmms.svn.sf.net/svnroot/lmms/trunk/lmms@1355 0778d3d1-df1d-0410-868b-ea421aaaa00d
2008-07-22 13:14:15 +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
6ed33b3241
cleanups
...
git-svn-id: https://lmms.svn.sf.net/svnroot/lmms/trunk/lmms@1281 0778d3d1-df1d-0410-868b-ea421aaaa00d
2008-07-05 23:25:58 +00:00
Tobias Doerffel
1464d03b74
again fixed worker-thread destruction
...
git-svn-id: https://lmms.svn.sf.net/svnroot/lmms/trunk/lmms@1250 0778d3d1-df1d-0410-868b-ea421aaaa00d
2008-06-30 21:47:47 +00:00
Tobias Doerffel
6fb0c2cd42
improved mixer-shutdown
...
git-svn-id: https://lmms.svn.sf.net/svnroot/lmms/trunk/lmms@1240 0778d3d1-df1d-0410-868b-ea421aaaa00d
2008-06-30 19:56:57 +00:00
Tobias Doerffel
6881cfa20d
initialize m_quit for worker-threads - fixes lockups at startup
...
git-svn-id: https://lmms.svn.sf.net/svnroot/lmms/trunk/lmms@1238 0778d3d1-df1d-0410-868b-ea421aaaa00d
2008-06-30 19:50:00 +00:00
Tobias Doerffel
5e77d6b547
properly terminate worker-threads at mixer-destruction
...
git-svn-id: https://lmms.svn.sf.net/svnroot/lmms/trunk/lmms@1230 0778d3d1-df1d-0410-868b-ea421aaaa00d
2008-06-30 16:52:10 +00:00
Tobias Doerffel
0638ec5e55
don't use fifoWriter when rendering as we do not have realtime issues here - fixes lockups on various systems when exporting project
...
git-svn-id: https://lmms.svn.sf.net/svnroot/lmms/trunk/lmms@1122 0778d3d1-df1d-0410-868b-ea421aaaa00d
2008-06-10 22:35:13 +00:00
Tobias Doerffel
c4043b20c7
try all audio-drivers at startup even if dummy-driver is selected
...
git-svn-id: https://lmms.svn.sf.net/svnroot/lmms/trunk/lmms@1055 0778d3d1-df1d-0410-868b-ea421aaaa00d
2008-06-02 20:48:56 +00:00
Tobias Doerffel
8618b1474f
added PulseAudio-support
...
git-svn-id: https://lmms.svn.sf.net/svnroot/lmms/trunk/lmms@1037 0778d3d1-df1d-0410-868b-ea421aaaa00d
2008-06-01 22:33:11 +00:00
Tobias Doerffel
542baec14b
use less complex worker-thread-synchronization
...
git-svn-id: https://lmms.svn.sf.net/svnroot/lmms/trunk/lmms@1033 0778d3d1-df1d-0410-868b-ea421aaaa00d
2008-05-30 22:09:12 +00:00
Tobias Doerffel
8be14b8518
use QAtomicInt instead of volatile bool + queue-global mutex for worker-thread jobqueues
...
git-svn-id: https://lmms.svn.sf.net/svnroot/lmms/trunk/lmms@1032 0778d3d1-df1d-0410-868b-ea421aaaa00d
2008-05-29 06:45:01 +00:00
Tobias Doerffel
fc1b985fe8
* LADSPA-effect-plugin: improved handling of effects which only work at limited samplerates
...
* audio-port: small optimizations
* mixer: removed obsolete idle-property of worker-threads
* FX-mixer: protect individual buffers of FX-channels from being processed by more than one thread
git-svn-id: https://lmms.svn.sf.net/svnroot/lmms/trunk/lmms@979 0778d3d1-df1d-0410-868b-ea421aaaa00d
2008-05-17 15:50:27 +00:00
Tobias Doerffel
7598cd7a8e
* sf2Player: retrieve resampling-interpolation from current mixer quality settings
...
* mixer: made m_writing-variable in fifoWriter volatile
* projectRenderer: change audio-device to file-device from within GUI-thread in order to make slots being connected to sampleRateChanged()-signal being called
immediately
* audioDevice: made HQ-mode for audio-devices optional
git-svn-id: https://lmms.svn.sf.net/svnroot/lmms/trunk/lmms@959 0778d3d1-df1d-0410-868b-ea421aaaa00d
2008-05-11 23:21:33 +00:00
Tobias Doerffel
e32eed940f
* introduced new project-export dialog
...
* new class for easily rendering a project into a file
* when changing quality-settings tell audio-devices about it so that they can adjust their output-samplerate
git-svn-id: https://lmms.svn.sf.net/svnroot/lmms/trunk/lmms@958 0778d3d1-df1d-0410-868b-ea421aaaa00d
2008-05-11 20:08:34 +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
39786d36d5
made clearAudioBuffer() static
...
git-svn-id: https://lmms.svn.sf.net/svnroot/lmms/trunk/lmms@911 0778d3d1-df1d-0410-868b-ea421aaaa00d
2008-04-12 15:09:49 +00:00
Tobias Doerffel
2fcd8150d9
changed internal MIDI-time-resolution from 64th to 192th resulting for example in better MIDI-import and allowing to use triplet-notes in LMMS
...
git-svn-id: https://lmms.svn.sf.net/svnroot/lmms/trunk/lmms@908 0778d3d1-df1d-0410-868b-ea421aaaa00d
2008-04-09 22:16:52 +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
Paul Giblock
0bb4bf5221
Performance improvements to controller-base
...
git-svn-id: https://lmms.svn.sf.net/svnroot/lmms/trunk/lmms@888 0778d3d1-df1d-0410-868b-ea421aaaa00d
2008-04-05 04:17:25 +00:00
Tobias Doerffel
f8369195a0
implemented parallelization of FX-channel-processing
...
git-svn-id: https://lmms.svn.sf.net/svnroot/lmms/trunk/lmms@887 0778d3d1-df1d-0410-868b-ea421aaaa00d
2008-04-04 16:55:47 +00:00
Paul Giblock
3541af29df
initial controllers code
...
git-svn-id: https://lmms.svn.sf.net/svnroot/lmms/trunk/lmms@883 0778d3d1-df1d-0410-868b-ea421aaaa00d
2008-04-04 06:39:00 +00:00
Tobias Doerffel
3e005439c4
great improvements on multithreading - one global job-queue protected by a simple mutex where threads pull their jobs from
...
git-svn-id: https://lmms.svn.sf.net/svnroot/lmms/trunk/lmms@878 0778d3d1-df1d-0410-868b-ea421aaaa00d
2008-04-03 22:49:51 +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
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
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
ab25b09935
fixed peak-calculation for negative signal-values
...
git-svn-id: https://lmms.svn.sf.net/svnroot/lmms/trunk/lmms@795 0778d3d1-df1d-0410-868b-ea421aaaa00d
2008-03-16 00:21:48 +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
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
889d1e8bb3
always process all note-play-handles of monophonic instruments by the same thread serially - fixes problems with monophonic instruments which rely on notes being processed in correct order
...
git-svn-id: https://lmms.svn.sf.net/svnroot/lmms/trunk/lmms@759 0778d3d1-df1d-0410-868b-ea421aaaa00d
2008-03-03 22:54:20 +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
5d5ad19021
finally splitted rest of LMMS, i.e. tracks, track-containers, track-content-objects, whole instrument-track/instrument-track-window and so on - still a bit unstable but I'm sure we'll manage to get this one very stable\!
...
git-svn-id: https://lmms.svn.sf.net/svnroot/lmms/branches/lmms-mv@691 0778d3d1-df1d-0410-868b-ea421aaaa00d
2008-02-16 02:04:58 +00:00
Danny McRae
792d1eca17
Updated references to renamed header files.
...
git-svn-id: https://lmms.svn.sf.net/svnroot/lmms/branches/lmms-mv@688 0778d3d1-df1d-0410-868b-ea421aaaa00d
2008-02-01 18:55:50 +00:00
Tobias Doerffel
a8d490d4cc
eliminated warnings when compiling with GCC 4.3
...
git-svn-id: https://lmms.svn.sf.net/svnroot/lmms/branches/lmms-mv@671 0778d3d1-df1d-0410-868b-ea421aaaa00d
2008-01-24 11:21:22 +00:00
Tobias Doerffel
b8df7b4b8d
fixed potential segfault and small GUI-improvement
...
git-svn-id: https://lmms.svn.sf.net/svnroot/lmms/trunk/lmms@567 0778d3d1-df1d-0410-868b-ea421aaaa00d
2007-09-25 00:07:34 +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
30bdca17c0
fixed some bugs
...
git-svn-id: https://lmms.svn.sf.net/svnroot/lmms/trunk/lmms@523 0778d3d1-df1d-0410-868b-ea421aaaa00d
2007-08-18 18:56:46 +00:00
Tobias Doerffel
6243edf1ec
introduced offset-property in playHandles-base-class, re-ordered mixing-procedure, improved handling of monophonic instruments
...
git-svn-id: https://lmms.svn.sf.net/svnroot/lmms/trunk/lmms@504 0778d3d1-df1d-0410-868b-ea421aaaa00d
2007-08-04 01:21:35 +00:00
Tobias Doerffel
6b89322a7c
fixed more segfaults
...
git-svn-id: https://lmms.svn.sf.net/svnroot/lmms/trunk/lmms@496 0778d3d1-df1d-0410-868b-ea421aaaa00d
2007-07-21 10:40:51 +00:00
Tobias Doerffel
b6b10ddc36
fixed several bugs responsible for clicks and pops
...
git-svn-id: https://lmms.svn.sf.net/svnroot/lmms/trunk/lmms@488 0778d3d1-df1d-0410-868b-ea421aaaa00d
2007-07-16 19:33:25 +00:00
Javier Serrano Polo
793c5ab7ff
mutex, detuning helpers, GUI updates, play handles, many many changes... (4)
...
git-svn-id: https://lmms.svn.sf.net/svnroot/lmms/trunk/lmms@482 0778d3d1-df1d-0410-868b-ea421aaaa00d
2007-05-07 19:51:55 +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
f7009c3afd
bugfixes and improvements
...
git-svn-id: https://lmms.svn.sf.net/svnroot/lmms/trunk/lmms@440 0778d3d1-df1d-0410-868b-ea421aaaa00d
2006-12-18 16:05:08 +00:00
Tobias Doerffel
b91c607651
support for more special instrument-properties (monophonic, own number of release-frames)
...
git-svn-id: https://lmms.svn.sf.net/svnroot/lmms/trunk/lmms@436 0778d3d1-df1d-0410-868b-ea421aaaa00d
2006-12-09 23:34:57 +00:00