summaryrefslogtreecommitdiff
path: root/libs/ardour/audioengine.cc
AgeCommit message (Collapse)Author
2009-07-13merge pre- and post-fader processor boxes; start removing Placement (not ↵Paul Davis
finished) ; add -DWAF_BUILD and use per-directory foobar-config.h to correctly pick up configure-time settings like HAVE_OGG ; check for libgiomm (part of upgrade to newer gtk stack); 32 bit marker reload fix from 2.X; audiounit IO config cache fix from 2.X; multi-add route template fix from 2.X; plugin GUI delete fix from 2.X; solo button labels are A or P for listen mode git-svn-id: svn://localhost/ardour2/branches/3.0@5344 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-06-16first pass (ok, third really) at internal send+return - audio routing inside ↵Paul Davis
ardour without JACK. lots still to do, but at least the obvious works git-svn-id: svn://localhost/ardour2/branches/3.0@5202 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-06-11fix up missing ID in route state; no error message when making a port ↵Paul Davis
connection that already exists git-svn-id: svn://localhost/ardour2/branches/3.0@5168 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-06-09the big Route structure refactor. !!!! THIS WILL ***NOT LOAD*** PRIOR 3.0 ↵Paul Davis
or 2.X SESSIONS !!!! BREAKAGE IS EXPECTED !!!! IF YOU HAVE AND NEED A WORKING 3.0 DO **NOT** UPDATE. !!!! otherwise, update and enjoy the steadily emerging joys of this major reworking of ardour internals git-svn-id: svn://localhost/ardour2/branches/3.0@5137 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-05-16a gadzillion changes all over the place. nothing is finished, but all is ↵Paul Davis
better than it was. more to come on all almost everything touched by this commit, this is purely a sync-to-repository. compiles and runs, but now incompatible with all previous 3.0 session files (probably) git-svn-id: svn://localhost/ardour2/branches/3.0@5084 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-05-16Move some sync-related options to being session variables.Carl Hetherington
git-svn-id: svn://localhost/ardour2/branches/3.0@5083 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-05-13more work on the new all-Processor-all-The-Time redesign of Route - LOTS OF ↵Paul Davis
BREAKAGE STILL EXPECTED ; change all(?) methods that pass a start/end frame in to use sframes_t not nframes_t git-svn-id: svn://localhost/ardour2/branches/3.0@5074 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-05-07The great audio processing overhaul.David Robillard
The vast majority of Route signal processing is now simply in the list of processors. There are definitely regressions here, but there's also a lot of things fixed. It's far too much work to let diverge anymore regardless, so here it is. The basic model is: A route has a fixed set of input channels (matching its JACK input ports and diskstream). The first processor takes this as input. The next processor is configured using the first processor's output as input, and is allowed to choose whatever output it wants given that input... and so on, and so on. Finally, the last processor's requested output is used to set up the panner and create whatever Jack ports are needed to output the data. All 'special' internal processors (meter, fader, amp, insert, send) are currently transparent: they read any input, and return the same set of channels back (unmodified, except for amp). User visible changes: * LV2 Instrument support (tracks with both MIDI and audio channels) * MIDI in/out plugin support * Generic plugin replication (for MIDI plugins, MIDI/audio plugins) * Movable meter point Known Bugs: * Things seem to get weird on loaded sessions * Output delivery is sketchy * 2.0 session loading was probably already broken... but it's definitely broken now :) Please test this and file bugs if you have any time... git-svn-id: svn://localhost/ardour2/branches/3.0@5055 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-05-04Preliminary MIDI plugin support.David Robillard
git-svn-id: svn://localhost/ardour2/branches/3.0@5036 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-04-23remove offset from process callback tree. some breakage may have occured. ↵Paul Davis
yes, really. git-svn-id: svn://localhost/ardour2/branches/3.0@4999 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-04-15first half of the mega-by-hand-commit-by-commit merge from 2.XPaul Davis
git-svn-id: svn://localhost/ardour2/branches/3.0@4980 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-02-27vestige-based VST support, back-ported from 2.0-ongoingPaul Davis
git-svn-id: svn://localhost/ardour2/branches/3.0@4703 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-02-25Waf building of libardour (yay!).David Robillard
git-svn-id: svn://localhost/ardour2/branches/3.0@4661 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-02-25*** NEW CODING POLICY ***David Robillard
All #include statements that include a header that is a part of a library bundled with ardour MUST use quotes, not angle brackets. Do this: #include "ardour/types.h" NOT this: #include <ardour/types.h> Rationale: This is best practice in general, to ensure we include the local version and not the system version. That quotes mean "local" (in some sense) and angle brackets mean "system" (in some sense) is a ubiquitous convention and IIRC right in the C spec somewhere. More pragmatically, this is required by (my) waf (stuff) for dependencies to work correctly. That is: !!! FAILURE TO DO THIS CAN RESULT IN BROKEN BUILDS !!! Failure to comply is punishable by death by torture. :) P.S. It's not that dramatic in all cases, but this (in combination with some GCC flags specific to the include type) is the best way I have found to be absolutely 100% positive the local ones are being used (and we definitely want to be absolutely 100% positive on that one). git-svn-id: svn://localhost/ardour2/branches/3.0@4655 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-02-11Remove internal ports.Carl Hetherington
git-svn-id: svn://localhost/ardour2/branches/3.0@4525 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-02-10Remove some debug code.Carl Hetherington
git-svn-id: svn://localhost/ardour2/branches/3.0@4513 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-01-30first pass at internal sends. this is a very tentative work in progress, and ↵Paul Davis
it is possible that major changes may follow in the near future. it is certainly not complete, but the fundamental changes to Port/Buffer operation merit a commit at this point git-svn-id: svn://localhost/ardour2/branches/3.0@4464 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-01-23Add global port matrix dialogs.Carl Hetherington
git-svn-id: svn://localhost/ardour2/branches/3.0@4434 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-01-21Fix some confusion about relative / non-relative port names. Add some ↵Carl Hetherington
asserts to keep track of what is happening. git-svn-id: svn://localhost/ardour2/branches/3.0@4424 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-01-21Rework Port class hierarchy a bit. Hopefully now simpler, and shouldCarl Hetherington
support connection of JACK ports with internal ones. git-svn-id: svn://localhost/ardour2/branches/3.0@4417 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-01-14Make Bundles work a bit better. A few include optimisations.Carl Hetherington
git-svn-id: svn://localhost/ardour2/branches/3.0@4408 d708f5d6-7413-0410-9779-e7cbd77b26cf
2008-12-30Wrap some Jack_MidiPort stuff in #ifdefs to solve dylib errors on OS XSakari Bergen
git-svn-id: svn://localhost/ardour2/branches/3.0@4361 d708f5d6-7413-0410-9779-e7cbd77b26cf
2008-12-12most of the 2.X->3.0 commit (up to rev 4299) except for ↵Paul Davis
gtk2_ardour/editor_canvas.cc; builds and runs and does a few specific things but expect it to be buggy for a while yet git-svn-id: svn://localhost/ardour2/branches/3.0@4313 d708f5d6-7413-0410-9779-e7cbd77b26cf
2008-12-08merge 3870-3890 from 2.0-ongoing into 3.X (compiles, runs, no other promisesPaul Davis
git-svn-id: svn://localhost/ardour2/branches/3.0@4303 d708f5d6-7413-0410-9779-e7cbd77b26cf
2008-10-08torben's port buffer reworking; torben's panner automation loading patch ↵Paul Davis
(allows loading of 2.X sessions) git-svn-id: svn://localhost/ardour2/branches/3.0@3890 d708f5d6-7413-0410-9779-e7cbd77b26cf
2008-09-30remove pointless JACK error message; don't add every track as an automatic ↵Paul Davis
bundle, just busses git-svn-id: svn://localhost/ardour2/branches/3.0@3841 d708f5d6-7413-0410-9779-e7cbd77b26cf
2008-09-29Can't call the wrong function when there's only one of them: remove ↵David Robillard
ARDOUR::Parameter and just use Evoral::Parameter (move Ardour specific functionality to EventTypeMap where it belongs). Less than pretty in places but easily seddable just in case... git-svn-id: svn://localhost/ardour2/branches/3.0@3838 d708f5d6-7413-0410-9779-e7cbd77b26cf
2008-09-29still call Port::cycle_start() for output ports; remove otification calls ↵Paul Davis
from Playlist::add_region() (torben) git-svn-id: svn://localhost/ardour2/branches/3.0@3828 d708f5d6-7413-0410-9779-e7cbd77b26cf
2008-09-28changes from torben for processor/plugin count determination and other ↵Paul Davis
fixes; rework cycle_start() mess, first pass git-svn-id: svn://localhost/ardour2/branches/3.0@3821 d708f5d6-7413-0410-9779-e7cbd77b26cf
2008-09-21- Call channel pressure channel pressure, not aftertouch (that's key specific).David Robillard
- Add context menu items to add a bender or pressure automation track to a MIDI track. - Now just need to figure out creation of program change events and you can create everything MIDI ardour understands from the GUI... git-svn-id: svn://localhost/ardour2/branches/3.0@3782 d708f5d6-7413-0410-9779-e7cbd77b26cf
2008-09-19Fix parameter range stuff and automation time axis height (somewhat...).David Robillard
Create a new AutomationLine when an AutomationRegionView without a line is clicked. git-svn-id: svn://localhost/ardour2/branches/3.0@3757 d708f5d6-7413-0410-9779-e7cbd77b26cf
2008-09-10merge 2.0-ongoing into 3.0 @ 3581 - 3710Paul Davis
git-svn-id: svn://localhost/ardour2/branches/3.0@3712 d708f5d6-7413-0410-9779-e7cbd77b26cf
2008-09-10merge from 2.0-ongoing @ 3581Paul Davis
git-svn-id: svn://localhost/ardour2/branches/3.0@3711 d708f5d6-7413-0410-9779-e7cbd77b26cf
2008-06-03still do cycle_start() & cycle_end() calls when freewheelingPaul Davis
git-svn-id: svn://localhost/ardour2/branches/3.0@3440 d708f5d6-7413-0410-9779-e7cbd77b26cf
2008-06-02rollback to 3428, before the mysterious removal of libs/* at 3431/3432Paul Davis
git-svn-id: svn://localhost/ardour2/branches/3.0@3435 d708f5d6-7413-0410-9779-e7cbd77b26cf
2008-06-02remove empty sigc++2 directoryDoug McLain
git-svn-id: svn://localhost/ardour2/branches/3.0@3432 d708f5d6-7413-0410-9779-e7cbd77b26cf
2008-05-03Comment out excessive terminal output.David Robillard
Write all events (not just notes) to SMF file from MidiModel (just use iterator instead of hand-hacked MidiModel::write_to). Various MIDI bug fixes. git-svn-id: svn://localhost/ardour2/branches/3.0@3312 d708f5d6-7413-0410-9779-e7cbd77b26cf
2008-04-11merge 3.0 from 2.0-ongoing@3243Paul Davis
git-svn-id: svn://localhost/ardour2/branches/3.0@3248 d708f5d6-7413-0410-9779-e7cbd77b26cf
2008-04-04* bugfix: Connecting/disconnecting MIDI ports did not work: ↵Hans Baier
http://tracker.ardour.org/view.php?id=2141 git-svn-id: svn://localhost/ardour2/branches/3.0@3216 d708f5d6-7413-0410-9779-e7cbd77b26cf
2008-04-03* implemented editing velocities (http://tracker.ardour.org/view.php?id=2148)Hans Baier
* added MIDI panic button (http://tracker.ardour.org/view.php?id=2118) * bugfix: moving notes above midi 127 or below 0 does not wrap around anymore * bugfix: deadlock on editing notes after playback (http://tracker.ardour.org/view.php?id=2140) due to unbalanced lock acquire/release * bugfix: First note off lost in playback (http://tracker.ardour.org/view.php?id=2132) * bugfix: Last note off lost in saving MIDI files (http://tracker.ardour.org/view.php?id=2132) * bandaid fix for http://tracker.ardour.org/view.php?id=1985 (Cannot reopen session because jack ports are not unregistered on session close) * bandaid fix: replaced conf.CheckPKGExists ('\"slv2 >= 0.6.0\"') by conf.CheckPKGExists ('slv2') in SConstruct, because the former would fail, even if SLV 0.6.0 was installed * added/enabled debugging output for debugging MIDI model (might be removed later) git-svn-id: svn://localhost/ardour2/branches/3.0@3211 d708f5d6-7413-0410-9779-e7cbd77b26cf
2008-03-18refactor JACK MIDI port to allow writing from a non-process() thread, and ↵Paul Davis
move ARDOUR::MidiEvent into MIDI namespace along with midi_events.h header git-svn-id: svn://localhost/ardour2/branches/3.0@3155 d708f5d6-7413-0410-9779-e7cbd77b26cf
2008-03-17merge with 2.0-ongoing @ rev 3147Paul Davis
git-svn-id: svn://localhost/ardour2/branches/3.0@3152 d708f5d6-7413-0410-9779-e7cbd77b26cf
2008-02-16Merge with 2.0-ongoing R3071.David Robillard
git-svn-id: svn://localhost/ardour2/branches/3.0@3074 d708f5d6-7413-0410-9779-e7cbd77b26cf
2008-02-02Merge with 2.0-ongoing R2988David Robillard
git-svn-id: svn://localhost/ardour2/branches/3.0@2991 d708f5d6-7413-0410-9779-e7cbd77b26cf
2008-01-19Merge with 2.0-ongoing R2943.David Robillard
git-svn-id: svn://localhost/ardour2/branches/3.0@2944 d708f5d6-7413-0410-9779-e7cbd77b26cf
2008-01-13Fix MIDI playback.David Robillard
git-svn-id: svn://localhost/ardour2/trunk@2905 d708f5d6-7413-0410-9779-e7cbd77b26cf
2008-01-10Merge libs/ardour and gtk2_ardour with 2.0-ongoing R2837.David Robillard
git-svn-id: svn://localhost/ardour2/trunk@2883 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-11-12merged with trunk revs 2605-2627Paul Davis
git-svn-id: svn://localhost/ardour2/trunk@2628 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-10-31new port design, probably about 90% done (i.e it mostly works and this ↵Paul Davis
commit is to stop anyone else from stomping on my changes :) git-svn-id: svn://localhost/ardour2/trunk@2579 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-10-19Various work on bundles. We now have a Bundle Manager dialogue, and ↵Carl Hetherington
hopefully things are a bit cleaner internally. This commit changes the session file format with respect to bundles (or Connections as they used to be called). git-svn-id: svn://localhost/ardour2/trunk@2561 d708f5d6-7413-0410-9779-e7cbd77b26cf