summaryrefslogtreecommitdiffstats
path: root/src/server/Buffer.cpp
AgeCommit message (Collapse)AuthorFilesLines
2018-01-21Clean up Buffer class and factor out allocationDavid Robillard1-18/+20
2018-01-21Use C++ style includes for standard language headersDavid Robillard1-3/+3
2018-01-16Add missing includesDavid Robillard1-0/+1
2017-12-25Use nullptrDavid Robillard1-5/+5
2017-03-20Always use sample accurate controlsDavid Robillard1-6/+1
This changes control port buffers to always be sequences of float, splitting cycles internally so nodes with control ports act as if they support sample accurate control input and output. This allows things like having networks of control ports manipulated by the user which are run into CV ports and having sample accurate changes end up in the CV ports even though the values were calculated by plugins with single float ports. Further work is probably necessary to thin and smooth changes that come from a user drag (perhaps there should be a mode for this?) to keep the amount of cycle splitting reasonable, and support for plugins with fixed block length.
2017-03-20Fix value buffer updateDavid Robillard1-5/+11
2017-03-20Fix value buffer size logicDavid Robillard1-3/+4
2017-03-20Fix split cycle audio outputDavid Robillard1-1/+1
2017-03-20Add CV dumping debug utilityDavid Robillard1-0/+16
2016-12-14Fix real-time safety of control bindingsDavid Robillard1-0/+24
2016-12-14Fix real-time issues with buffer allocationDavid Robillard1-6/+5
2016-12-13Fix some real-time safety issuesDavid Robillard1-1/+1
2016-10-14Fix sequence ports with valuesDavid Robillard1-6/+16
2016-10-02Add event outputs to Trigger and ControllerDavid Robillard1-2/+9
2016-09-11Remove last vestiges of multiple run contextsDavid Robillard1-5/+5
2016-09-11Fix buffer copying for various typesDavid Robillard1-5/+3
2016-01-17Fix CPU overload with some CV to control arcsDavid Robillard1-11/+11
2016-01-16Fix CV to control connectionsDavid Robillard1-9/+21
This needs a more sophisticated fix, since splitting cycles on every CV value change isn't feasible much/most of the timel
2015-10-26Fix uninitialized buffer pointerDavid Robillard1-0/+1
Fixes #1103. git-svn-id: http://svn.drobilla.net/lad/trunk/ingen@5793 a436a847-0d15-0410-975c-d299462d15a1
2015-10-25Fix audio=>control connectionsDavid Robillard1-5/+9
git-svn-id: http://svn.drobilla.net/lad/trunk/ingen@5784 a436a847-0d15-0410-975c-d299462d15a1
2015-10-24Zero-copy to/from driver ports where possibleDavid Robillard1-54/+92
git-svn-id: http://svn.drobilla.net/lad/trunk/ingen@5778 a436a847-0d15-0410-975c-d299462d15a1
2015-04-04Update copyright dates.David Robillard1-1/+1
git-svn-id: http://svn.drobilla.net/lad/trunk/ingen@5653 a436a847-0d15-0410-975c-d299462d15a1
2015-02-17Delete trailing whitespace.David Robillard1-1/+1
git-svn-id: http://svn.drobilla.net/lad/trunk/ingen@5582 a436a847-0d15-0410-975c-d299462d15a1
2014-08-31Use float sequences for sample-accurate control ports.David Robillard1-8/+106
git-svn-id: http://svn.drobilla.net/lad/trunk/ingen@5462 a436a847-0d15-0410-975c-d299462d15a1
2014-02-01Set correct size for sequence output buffers.David Robillard1-1/+1
git-svn-id: http://svn.drobilla.net/lad/trunk/ingen@5331 a436a847-0d15-0410-975c-d299462d15a1
2014-01-24Fix various whitespace and formatting issues.David Robillard1-2/+2
git-svn-id: http://svn.drobilla.net/lad/trunk/ingen@5325 a436a847-0d15-0410-975c-d299462d15a1
2013-01-11Use type safe enumerations.David Robillard1-4/+4
git-svn-id: http://svn.drobilla.net/lad/trunk/ingen@4918 a436a847-0d15-0410-975c-d299462d15a1
2012-08-20Replace several assertions with graceful error handling.David Robillard1-2/+0
git-svn-id: http://svn.drobilla.net/lad/trunk/ingen@4731 a436a847-0d15-0410-975c-d299462d15a1
2012-08-18Fix running as an LV2 plugin.David Robillard1-1/+5
git-svn-id: http://svn.drobilla.net/lad/trunk/ingen@4719 a436a847-0d15-0410-975c-d299462d15a1
2012-08-17Implement real logging system, LV2 log extension support, and purge ↵David Robillard1-9/+3
evil/ugly/untranslatable C++ stream printing. Remove coloured log stuff from Raul. git-svn-id: http://svn.drobilla.net/lad/trunk/ingen@4717 a436a847-0d15-0410-975c-d299462d15a1
2012-08-15Fix compilation without SSE support.David Robillard1-0/+2
git-svn-id: http://svn.drobilla.net/lad/trunk/ingen@4701 a436a847-0d15-0410-975c-d299462d15a1
2012-08-11Considerable DSP performance improvements (mixing overhead, and per-event ↵David Robillard1-12/+0
MIDI overhead with Note/Trigger nodes). git-svn-id: http://svn.drobilla.net/lad/trunk/ingen@4657 a436a847-0d15-0410-975c-d299462d15a1
2012-08-11Fix peak calculation.David Robillard1-4/+12
git-svn-id: http://svn.drobilla.net/lad/trunk/ingen@4654 a436a847-0d15-0410-975c-d299462d15a1
2012-08-11Vectorizable (by GCC with -ftree-vectorize) mixing and Buffer::set_block().David Robillard1-31/+61
Custom SSE accelerated peak detection when SSE is available at compile time. Less mixing overhead in general. git-svn-id: http://svn.drobilla.net/lad/trunk/ingen@4651 a436a847-0d15-0410-975c-d299462d15a1
2012-08-10Use the usual semantics for 'end' for Buffer::set_block, which in addition ↵David Robillard1-5/+4
to actually making sense, allows GCC to optimize the loop. git-svn-id: http://svn.drobilla.net/lad/trunk/ingen@4650 a436a847-0d15-0410-975c-d299462d15a1
2012-07-31Merge AudioBuffer into Buffer and avoid all the casting.David Robillard1-5/+63
git-svn-id: http://svn.drobilla.net/lad/trunk/ingen@4584 a436a847-0d15-0410-975c-d299462d15a1
2012-07-31Merge Ingen::Shared namespace into Ingen namespace and core libingen library.David Robillard1-3/+3
git-svn-id: http://svn.drobilla.net/lad/trunk/ingen@4579 a436a847-0d15-0410-975c-d299462d15a1
2012-07-17Implement worker extension correctly (for one voice only).David Robillard1-7/+10
Woring sequence port I/O for LV2 nodes. git-svn-id: http://svn.drobilla.net/lad/trunk/ingen@4543 a436a847-0d15-0410-975c-d299462d15a1
2012-05-23Trim unnecessary includes.David Robillard1-2/+2
git-svn-id: http://svn.drobilla.net/lad/trunk/ingen@4455 a436a847-0d15-0410-975c-d299462d15a1
2012-05-23Fix copying of audio buffers and polyphonic audio output.David Robillard1-1/+1
git-svn-id: http://svn.drobilla.net/lad/trunk/ingen@4445 a436a847-0d15-0410-975c-d299462d15a1
2012-05-14Fix compilation when posix_memalign is unavailable.David Robillard1-1/+1
git-svn-id: http://svn.drobilla.net/lad/trunk/ingen@4403 a436a847-0d15-0410-975c-d299462d15a1
2012-05-11Clean up and better document World interface.David Robillard1-1/+1
git-svn-id: http://svn.drobilla.net/lad/trunk/ingen@4344 a436a847-0d15-0410-975c-d299462d15a1
2012-05-10LV2URIMap => URIMap.David Robillard1-2/+2
Trim unnecessary includes. git-svn-id: http://svn.drobilla.net/lad/trunk/ingen@4337 a436a847-0d15-0410-975c-d299462d15a1
2012-04-28Fix MIDI input.David Robillard1-4/+6
git-svn-id: http://svn.drobilla.net/lad/trunk/ingen@4306 a436a847-0d15-0410-975c-d299462d15a1
2012-04-23Maybe fix boost compilation errors.David Robillard1-0/+7
git-svn-id: http://svn.drobilla.net/lad/trunk/ingen@4245 a436a847-0d15-0410-975c-d299462d15a1
2012-03-27Squeeze blank lines.David Robillard1-1/+0
git-svn-id: http://svn.drobilla.net/lad/trunk/ingen@4113 a436a847-0d15-0410-975c-d299462d15a1
2012-03-27Switch to AGPL3+.David Robillard1-16/+16
git-svn-id: http://svn.drobilla.net/lad/trunk/ingen@4111 a436a847-0d15-0410-975c-d299462d15a1
2012-03-19Partially functioning communication between Ingen LV2 plugin and UI.David Robillard1-0/+164
git-svn-id: http://svn.drobilla.net/lad/trunk/ingen@4078 a436a847-0d15-0410-975c-d299462d15a1