Commit graph

78 commits

Author SHA1 Message Date
Robin Gareus
10b76ae631 Various updates and fixes for Latency Compensation
* centralize signal_latency_at_***_position to processors
* update initial-delay/roll-delay when processor order changes
* consolidate signal-latency calculation: use the same method
  for processor-changes and session's post_playback_latency.
* include relative output-delay in roll-delay
* fix capture processor position & optimize stem-export latency

(roll-delay fixes pending Route:roll() update)
2017-09-19 02:11:22 +02:00
Paul Davis
30b087ab3d globally change all use of "frame" to refer to audio into "sample".
Generated by tools/f2s. Some hand-editing will be required in a few places to fix up comments related to timecode
and video in order to keep the legible
2017-09-18 12:39:17 -04:00
Paul Davis
79abf3dfa6 set + store signal chain latency for all processors; DiskWriter sets its capture_offset appropriately 2017-09-18 11:40:53 -04:00
Paul Davis
5ac7d733c2 more DEBUG::Destruction messages 2017-09-18 11:40:53 -04:00
Robin Gareus
b2f3523ab6 Remove old libardour API for plugin UIs 2017-07-01 23:42:28 +02:00
Tim Mayberry
9ce1d7c357 Use PBD::string_to<bool> in ARDOUR::Processor class 2017-04-19 09:36:58 +10:00
Tim Mayberry
b1cccf0d7d Use XMLNode::get/set_property API in ARDOUR::Processor where possible 2017-04-19 09:36:49 +10:00
Tim Mayberry
334ec95e43 Use ID::to_s() in libardour instead of ID::print() 2017-04-19 07:49:58 +10:00
Paul Davis
cf52d6e4b4 enough with umpteen "i18n.h" files. Consolidate on pbd/i18n.h 2016-07-14 14:45:23 -04:00
Paul Davis
17ace643e4 OMNIBUS COMMIT: prefer const XMLNode::property method (and provide a real one) 2016-05-04 23:09:45 -04:00
Robin Gareus
e3607a4c8b plug some memory leaks in libardour 2016-04-24 14:43:18 +02:00
Robin Gareus
30e45fc28f prepare Pin Management GUI
We need to store a pointer in the backend to allow to share the Proxy
between Mixer and Editor-Mixer.
2016-03-27 21:34:32 +02:00
Robin Gareus
22b07e0233 NOOP, remove trailing tabs/whitespace. 2015-10-05 16:17:49 +02:00
Robin Gareus
531e71b485 Prepare option to disable Plugins completely
old behavior to only bypassed plugins is being renamed.
2015-09-01 13:26:31 +02:00
Robin Gareus
a10e17411f fix --disable-plugins (bypass ‘em all) 2015-03-21 17:52:27 +01:00
Ben Loftis
5bf90524df fix import of v2 session redirects: active or inactive 2015-03-05 12:48:30 -06:00
Robin Gareus
58663db374 change ownership of processor window-proxy
fixes crashes:
* If the Editor-Mixer shows a channel with a plugin that
has been edited in the Mixer, double-clicking the plugin 
will try to bring up a 2nd instance of the plugin-UI.
* When closing Ardour both the Mixer and the Editor-Mixer try to delete the underlying plugin, resulting in a double free.
2014-11-29 10:06:25 +01:00
Robin Gareus
5cbd4ce759 fix crash @ session-restore of plugins windows
The question is: why is _owner not set [yet], when the
window is restored. This rather smells like a race condition.
2013-11-22 18:22:55 +01:00
Paul Davis
d9058499af add a back-pointer to the owner of a Processor
Use SessionObject* rather than Route so that per-region plugins will be possible in the future.
2013-10-14 11:12:50 -04:00
David Robillard
6fa6514cfd Remove over 500 unnecessary includes (including 54 of session.h).
It's slightly possible that this causes trivial build failures on different
configurations, but otherwise shouldn't cause any problems (i.e. no actual
changes other than include/naming/namespace stuff).  I deliberately avoided
removing libardour-config.h since this can mysteriously break things, though a
few of those do seem to be unnecessary.

This commit only targets includes of ardour/*.h.  There is also a very large
number of unnecessary includes of stuff in gtk2_ardour; tackling that should
also give a big improvement in build time when things are modified.


git-svn-id: svn://localhost/ardour2/branches/3.0@12420 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-05-24 06:09:29 +00:00
Paul Davis
d46acb86ea redesign how XML state, bitslots and names get propagated during copying a send/port insert/return
git-svn-id: svn://localhost/ardour2/branches/3.0@11669 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-03-13 20:14:55 +00:00
Carl Hetherington
d9a3c6b89f Rename windows VST stuff with a Windows prefix.
git-svn-id: svn://localhost/ardour2/branches/3.0@10738 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-11-21 17:42:29 +00:00
Paul Davis
4aeebb914e changes for OS X support: change waf config define to COREAUDIO_SUPPORT, remove PluginInsert call to IO::PortCountChanged, remove use of explicit Carbon linkage, fix up AudioUnit internals to actually work (Cocoa GUIs still currently broken)
git-svn-id: svn://localhost/ardour2/branches/3.0@10224 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-10-18 15:08:42 +00:00
Paul Davis
4085309cdb make Stateful::_id private and provide appropriate methods to set it, and use them throughout ardour
git-svn-id: svn://localhost/ardour2/branches/3.0@10222 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-10-18 13:18:47 +00:00
Paul Davis
0938a42440 fixes for 98% of all the warnings/errors reported by OS X gcc on tiger
git-svn-id: svn://localhost/ardour2/branches/3.0@10179 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-09-30 17:55:14 +00:00
Carl Hetherington
9d57b87999 Save / restore processor _user_latency (another part of #4186).
git-svn-id: svn://localhost/ardour2/branches/3.0@9880 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-07-15 00:03:18 +00:00
Paul Davis
1060243302 major, substantive reworking of how we store GUI information (visibility, height) for automation data. old design stored (insufficient) identifying information plus actual data in a GUI-only XML node; new scheme adds GUI data via extra_xml node to each AutomationControl object. reworked public/private methods for showing/hiding TimeAxisView objects; changed labelling of automation tracks to just show the name of the controlled parameter - more info can be viewed in the tooltip for the track headers. NOTE: Session file format ALTERED. No data loss but track visibility may be different than previous ardour3 versions
git-svn-id: svn://localhost/ardour2/branches/3.0@9703 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-06-11 15:35:34 +00:00
David Robillard
a473d630eb Fix broken whitespace. I'd apologize for the compile times if it was my fault :D
git-svn-id: svn://localhost/ardour2/branches/3.0@9654 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-06-01 16:50:12 +00:00
Carl Hetherington
b38b5fd59b Doxygen tweaks.
git-svn-id: svn://localhost/ardour2/branches/3.0@9581 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-05-25 10:15:54 +00:00
David Robillard
852232ad27 Tolerate LV2 plugins that call persist/file state functions early.
git-svn-id: svn://localhost/ardour2/branches/3.0@9343 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-04-13 01:44:46 +00:00
Carl Hetherington
ad1f38c0a2 Fix warning.
git-svn-id: svn://localhost/ardour2/branches/3.0@8734 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-02-07 01:12:55 +00:00
Carl Hetherington
801bd95613 Fix compiler warning.
git-svn-id: svn://localhost/ardour2/branches/3.0@8673 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-02-02 01:12:13 +00:00
Paul Davis
b78d036aa0 store void pointers to processor UIs in Processors, and reset ProcessorWindowProxy objects to use them, so that we can never create 2 windows (UIs) for the same processor
git-svn-id: svn://localhost/ardour2/branches/3.0@8638 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-02-01 02:41:31 +00:00
Carl Hetherington
19ee77a74c Prevent Processor classes messing with names when setting state from XML. Fixes JACK-send loading from state.
git-svn-id: svn://localhost/ardour2/branches/3.0@8503 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-01-11 02:47:38 +00:00
Carl Hetherington
1f0ac78bc4 Fix deadlock on closing a send IO dialogue.
git-svn-id: svn://localhost/ardour2/branches/3.0@8240 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-12-10 22:46:53 +00:00
Carl Hetherington
d2c23d8204 Fix save/reload of pan automation.
git-svn-id: svn://localhost/ardour2/branches/3.0@7798 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-09-18 20:01:36 +00:00
Paul Davis
be85889464 fix load+save of plugin parameter automation
git-svn-id: svn://localhost/ardour2/branches/3.0@7678 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-08-24 22:07:53 +00:00
Carl Hetherington
579fcb70e2 First go at saving window visibility and position state across saves.
git-svn-id: svn://localhost/ardour2/branches/3.0@7644 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-08-18 02:20:15 +00:00
Carl Hetherington
9a539fd347 Call activate() on plugins when setting state so that they are initialised correctly.
git-svn-id: svn://localhost/ardour2/branches/3.0@7562 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-08-07 23:31:33 +00:00
Carl Hetherington
b75977920e Remove stub class.
git-svn-id: svn://localhost/ardour2/branches/3.0@7407 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-07-13 01:26:30 +00:00
Carl Hetherington
f35dc8b35d Remove muting behaviour from the Amp processor. Fix some small
bugs with delivery muting.  The upshot being that muting now definitely
happens in a channel's deliveries, and not really in the channel strip
at all.  When the channel is muted, those deliveries described by
the MuteMaster settings are muted.  Should fix #3141.



git-svn-id: svn://localhost/ardour2/branches/3.0@7115 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-05-17 23:28:13 +00:00
Paul Davis
c0c617902e revisit setting up processors during route construction; remove several more XML-based constructors; don't put () parens around inactive plugin names (we have a checkbox); improve management of send, return and insert bitslot IDs; clean up Diskstream construction a bit more
git-svn-id: svn://localhost/ardour2/branches/3.0@6819 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-04-01 01:24:13 +00:00
Paul Davis
325671e20a how about that ... a monitor/main section .. GUI is still unfinished .. several small fixes to processor loading/listen mgmt and a few debug output lines rmeoved. knob images are provisional, and can be found in icons/knob.png and related files
git-svn-id: svn://localhost/ardour2/branches/3.0@6744 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-03-10 17:31:16 +00:00
David Robillard
650c6d5824 Fix various code quality issues found by cppcheck (e.g. uninitialized members, larger than necessary variable scope, memory leaks, etc).
git-svn-id: svn://localhost/ardour2/branches/3.0@6710 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-02-23 20:25:53 +00:00
Paul Davis
aae367b63c use new syntax for connecting to backend signals that enforces explicit connection scope, plus a few other related matters
git-svn-id: svn://localhost/ardour2/branches/3.0@6376 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-12-19 20:26:31 +00:00
Paul Davis
f6fdd8dcbf switch to using boost::signals2 instead of sigc++, at least for libardour. not finished yet, but compiles, loads sessions, records and can close a session without a crash
git-svn-id: svn://localhost/ardour2/branches/3.0@6372 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-12-17 18:24:23 +00:00
Paul Davis
57e1358fb2 add "custom" meter option which is the only option where the meter processor is visible in the UI; hide main outs always
git-svn-id: svn://localhost/ardour2/branches/3.0@6126 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-11-18 20:01:37 +00:00
David Robillard
bc56eb8bd7 Fix unused parameter warnings since GCC apparently doesn't feel like listening to -Wno-unused-parameter
git-svn-id: svn://localhost/ardour2/branches/3.0@5835 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-10-21 00:15:42 +00:00
Paul Davis
8713667ec1 rework Stateful::set_state() patch to avoid default version argument
git-svn-id: svn://localhost/ardour2/branches/3.0@5787 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-10-15 18:56:11 +00:00
Carl Hetherington
79f91c7a20 Part 1 of loading 2.X sessions; some things work, some things don't, hacks a-plenty.
LOADING 2.X SESSIONS WITH THIS COMMIT IN PLACE WILL (PROBABLY) CORRUPT THE .ardour FILE,
MAKING THE SESSION UNLOADABLE ON 2.X AND LOSING INFORMATION.

So don't do that unless you make a backup of the session file first.



git-svn-id: svn://localhost/ardour2/branches/3.0@5786 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-10-15 00:57:55 +00:00