Commit Graph

4155 Commits

Author SHA1 Message Date
Vesa
9fe55161a8 Remove base64.h again (was re-added accidentally at merge resolution) 2014-11-18 13:58:40 +02:00
Tobias Doerffel
68b5a21d14 Initialize BufferManager from within Mixer
Avoid crashes caused by worker threads accessing the buffer manager
before it is initialized. Therefore initialize it from within the
Mixer constructor which has the side effect that it gets initialized
in console-only rendering mode as well.
2014-11-18 13:58:40 +02:00
Vesa
7bc97f5d5b Fixes 2014-11-18 13:58:39 +02:00
Vesa
9a3d3cb306 Fix windows compiling 2014-11-18 13:58:39 +02:00
Vesa
1864dcfaa1 Fix bugs 2014-11-18 13:58:39 +02:00
Vesa
1deb80acc3 Finish audioport rehaul, get vol/pan knobs working again, also some bugfixes
We're now doing the vol/pan stuff in audioport, since this way we avoid the pointless repetition of doing it in the playhandles
2014-11-18 13:58:39 +02:00
Vesa
857de8d2c8 Huge structural changes
Well, this commit got a bit out of hand, what with 26 files changed. Oh well.

Basically, we're using the buffermanager to dispense temporary buffers for playhandles and audioports to use.
This allows us to change the way playhandles work. Earlier, playhandles of the same track were waiting in line
to push their output to the audioport. This was of course inefficient, so now they just register themselves to the port,
then the port handles mixing the buffers.

Caveat: this is still a work in progress, the vol/pan knobs on instruments are temporarily non-functional - will be fixed in
the next commit, but I have to get some sleep now.
2014-11-18 13:58:39 +02:00
Vesa
311d33d648 Implement BufferManager
Also, apply things learned while writing BufferManager to the similar NotePlayHandleManager
2014-11-18 13:58:38 +02:00
Vesa
af60402078 Make it possible to use sample-exact controls in LADSPA plugins
I don't think we currently have any that would support this functionality, but in case someone has a LADSPA plugin that has audiorate control ports, this allows them to be used with the new sample-exact models
Again... not strictly related to memory management, but since I was in that part of the codebase already...
2014-11-18 13:58:38 +02:00
Vesa
daa5f6c26d Use memory management in LADSPA effects
Also optimize non-inplacebroken plugins by using the same buffer for input/output
2014-11-18 13:58:38 +02:00
Vesa
f3ed39a9fe Fix weird issue with remotevstplugin 2014-11-18 13:58:38 +02:00
Vesa
3d9a7fbf75 remove tr.whitespace 2014-11-18 13:58:37 +02:00
Vesa
a8211873b5 Fix arpeggio to work better with the new way to handle note offsets
Ok, not really related to memory management, but was something that needed doing and it's easier to test things when things work properly
2014-11-18 13:58:37 +02:00
Vesa
3a9e9cc075 Use ReadWriteLock for the pools container instead of Mutex 2014-11-18 13:58:37 +02:00
Vesa
8fb8c683f9 Changing and fixing some stuff
- QHash is better to use than QMap in MemoryManager: faster lookups, able to reserve memory in advance
- Also: reserve memory in advance for the QVector and QHash, so we don't get needles allocs for them
- No need to do cleanup for the nph manager, as it uses the generic manager for allocs, and that already gets cleaned up
2014-11-18 13:58:37 +02:00
Vesa
42e67d27a1 Add dedicated manager for noteplayhandles
This caches and reuses nph's independently of the generic memory manager.
2014-11-18 13:58:37 +02:00
Vesa
5e4308507b More fixes 2014-11-18 13:58:37 +02:00
Vesa
9972cb3d4d Fixes 2014-11-18 13:58:37 +02:00
Vesa
75770b4d2e Fix 64 bit, increase mm usage 2014-11-18 13:58:36 +02:00
Vesa
9c25be1bde LMMS Memory Manager 2014-11-18 13:58:36 +02:00
Vesa
6f963159df Merge branch 'stable-1.1'
Conflicts:
	data/locale/zh.ts
2014-11-18 10:52:40 +02:00
Vesa V
09771174f4 Merge pull request #1323 from diizy/stable-1.1
Move the denormals protection to the run() function of the thread
2014-11-18 10:49:21 +02:00
Vesa
d98c2392b2 Move the denormals protection to the run() function of the thread
The constructor was probably the wrong place to put it, run() is definitely executed in the new thread so that's where the setting should be applied I think?
2014-11-18 10:48:03 +02:00
Vesa V
b935cb0a81 Merge pull request #1322 from LYF610400210/stable-1.1
[Translation] zh.ts
2014-11-18 10:05:02 +02:00
LYF610400210
46b86e70ae [Translation] zh.ts 2014-11-18 15:39:43 +08:00
Vesa
e6938994cd Merge branch 'stable-1.1' 2014-11-18 09:22:25 +02:00
Vesa V
0037b9ade9 Merge pull request #1321 from diizy/stable-1.1
Add denormal protection to Fifowriter thread
2014-11-18 09:20:48 +02:00
Vesa
eb7343e25a Add denormal protection to Fifowriter thread 2014-11-18 09:19:56 +02:00
Tobias Doerffel
9f56ba966d Merge pull request #1296 from ma2moto/patch-2
Update ja.ts
2014-11-17 22:24:45 +01:00
Vesa V
e59ef2c48a Merge pull request #1319 from diizy/stable-1.1
More exp10 stuff
2014-11-17 18:56:23 +02:00
Vesa
78042ed4c5 More exp10 stuff 2014-11-17 18:55:09 +02:00
Vesa V
b37cbbb3cf Merge pull request #1318 from diizy/stable-1.1
Use exp10 instead of pow and create alias for win/mac for compat
2014-11-17 18:44:02 +02:00
Vesa
01997fe546 Use exp10 instead of pow and create alias for win/mac for compat 2014-11-17 18:43:03 +02:00
Vesa V
183c56a2b3 Merge pull request #1317 from diizy/stable-1.1
Fix drag-n-drop of logscale knobs
2014-11-17 16:17:41 +02:00
Vesa
e16b567e09 Fix drag-n-drop of logscale knobs 2014-11-17 16:15:41 +02:00
Vesa
dfb89c8c92 Merge branch 'stable-1.1'
Conflicts:
	data/locale/de.qm
	data/locale/de.ts
	src/gui/FxMixerView.cpp
2014-11-17 13:25:45 +02:00
Vesa V
7c901d4dfd Merge pull request #1316 from diizy/stable-1.1
Some waveshaper improvements
2014-11-17 13:17:52 +02:00
Vesa
d7931fdb0d Some waveshaper improvements 2014-11-17 13:17:55 +02:00
Vesa V
c42ae751fa Merge pull request #1315 from diizy/stable-1.1
Add class RmsHelper to help with RMS
2014-11-17 12:59:57 +02:00
Vesa
415652ad25 Delete better 2014-11-17 12:45:56 +02:00
Lukas W
26415cd53e Fix segfault in FxMixerView, fix a memory leak in EffectSelectDialog
Segfault occured when moving a channel
2014-11-17 11:03:13 +01:00
Vesa
5cd67537a2 Add class RmsHelper to help with RMS
This is then used by dynamics processor for processing dynamics
2014-11-17 11:51:45 +02:00
Lukas W
cb41f845a6 Remove obsolete slot
dynProcControls::changeControl method was removed in c51ff31b68
2014-11-16 23:14:20 +01:00
Lukas W
b8d3cd1705 Don't use exp10 2014-11-16 23:02:09 +01:00
Lukas W
495be6f828 Merge pull request #1310 from DanWin/stable-1.1
Updated German translation
2014-11-16 22:40:14 +01:00
Vesa
cd509b707b Merge branch 'stable-1.1'
Conflicts:
	src/core/main.cpp
2014-11-16 22:22:48 +02:00
Vesa V
208bfe356c Merge pull request #1312 from diizy/stable-1.1
Logscale: enabled toggling of knob scale in context menu
2014-11-16 22:20:34 +02:00
Vesa
0d129b0b93 Logscale: enabled toggling of knob scale in context menu 2014-11-16 22:19:16 +02:00
Vesa V
3c7e2acd8a Merge pull request #1311 from diizy/stable-1.1
Upgrades to plugins
2014-11-16 20:55:18 +02:00
Vesa
c51ff31b68 Dynamics processor improvements 2014-11-16 20:54:16 +02:00