-
-
Notifications
You must be signed in to change notification settings - Fork 1k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
LMMS Memory Manager #1088
LMMS Memory Manager #1088
Commits on Nov 18, 2014
-
Configuration menu - View commit details
-
Copy full SHA for 9c25be1 - Browse repository at this point
Copy the full SHA 9c25be1View commit details -
Configuration menu - View commit details
-
Copy full SHA for 75770b4 - Browse repository at this point
Copy the full SHA 75770b4View commit details -
Configuration menu - View commit details
-
Copy full SHA for 9972cb3 - Browse repository at this point
Copy the full SHA 9972cb3View commit details -
Configuration menu - View commit details
-
Copy full SHA for 5e43085 - Browse repository at this point
Copy the full SHA 5e43085View commit details -
Add dedicated manager for noteplayhandles
This caches and reuses nph's independently of the generic memory manager.
Configuration menu - View commit details
-
Copy full SHA for 42e67d2 - Browse repository at this point
Copy the full SHA 42e67d2View commit details -
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
Configuration menu - View commit details
-
Copy full SHA for 8fb8c68 - Browse repository at this point
Copy the full SHA 8fb8c68View commit details -
Configuration menu - View commit details
-
Copy full SHA for 3a9e9cc - Browse repository at this point
Copy the full SHA 3a9e9ccView commit details -
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
Configuration menu - View commit details
-
Copy full SHA for a821187 - Browse repository at this point
Copy the full SHA a821187View commit details -
Configuration menu - View commit details
-
Copy full SHA for 3d9a7fb - Browse repository at this point
Copy the full SHA 3d9a7fbView commit details -
Configuration menu - View commit details
-
Copy full SHA for f3ed39a - Browse repository at this point
Copy the full SHA f3ed39aView commit details -
Use memory management in LADSPA effects
Also optimize non-inplacebroken plugins by using the same buffer for input/output
Configuration menu - View commit details
-
Copy full SHA for daa5f6c - Browse repository at this point
Copy the full SHA daa5f6cView commit details -
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...
Configuration menu - View commit details
-
Copy full SHA for af60402 - Browse repository at this point
Copy the full SHA af60402View commit details -
Also, apply things learned while writing BufferManager to the similar NotePlayHandleManager
Configuration menu - View commit details
-
Copy full SHA for 311d33d - Browse repository at this point
Copy the full SHA 311d33dView commit details -
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.
Configuration menu - View commit details
-
Copy full SHA for 857de8d - Browse repository at this point
Copy the full SHA 857de8dView commit details -
Finish audioport rehaul, get vol/pan knobs working again, also some b…
…ugfixes We're now doing the vol/pan stuff in audioport, since this way we avoid the pointless repetition of doing it in the playhandles
Configuration menu - View commit details
-
Copy full SHA for 1deb80a - Browse repository at this point
Copy the full SHA 1deb80aView commit details -
Configuration menu - View commit details
-
Copy full SHA for 1864dcf - Browse repository at this point
Copy the full SHA 1864dcfView commit details -
Configuration menu - View commit details
-
Copy full SHA for 9a3d3cb - Browse repository at this point
Copy the full SHA 9a3d3cbView commit details -
Configuration menu - View commit details
-
Copy full SHA for 7bc97f5 - Browse repository at this point
Copy the full SHA 7bc97f5View commit details -
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.
Configuration menu - View commit details
-
Copy full SHA for 68b5a21 - Browse repository at this point
Copy the full SHA 68b5a21View commit details -
Configuration menu - View commit details
-
Copy full SHA for 9fe5516 - Browse repository at this point
Copy the full SHA 9fe5516View commit details -
Samplebuffer: reload all samples when samplerate changes. This is because of the way LMMS uses samples: we always resample all samples t$ LadspaEffect: some safeguards for the non-inplacebroken plugins which use the same buffer for input and output. Theoretically, if some p$ FxMixer: fix effect processing in multichannel-chains
Configuration menu - View commit details
-
Copy full SHA for dc4bfdc - Browse repository at this point
Copy the full SHA dc4bfdcView commit details -
Configuration menu - View commit details
-
Copy full SHA for f25da35 - Browse repository at this point
Copy the full SHA f25da35View commit details -
Configuration menu - View commit details
-
Copy full SHA for 50bfed7 - Browse repository at this point
Copy the full SHA 50bfed7View commit details -
Configuration menu - View commit details
-
Copy full SHA for 8a596b0 - Browse repository at this point
Copy the full SHA 8a596b0View commit details -
Configuration menu - View commit details
-
Copy full SHA for f207613 - Browse repository at this point
Copy the full SHA f207613View commit details -
Configuration menu - View commit details
-
Copy full SHA for b441bda - Browse repository at this point
Copy the full SHA b441bdaView commit details -
Add treshold knob to peak controller This causes the peak controller to react only when the measured peaks are above the set treshold Might be useful for finetuning your sidechains
Configuration menu - View commit details
-
Copy full SHA for ba05b75 - Browse repository at this point
Copy the full SHA ba05b75View commit details -
Configuration menu - View commit details
-
Copy full SHA for 815a70a - Browse repository at this point
Copy the full SHA 815a70aView commit details