13
0
Commit Graph

184 Commits

Author SHA1 Message Date
03b4633e47 port names are NOT translatable
git-svn-id: svn://localhost/ardour2/branches/3.0@14024 d708f5d6-7413-0410-9779-e7cbd77b26cf
2013-01-28 21:34:17 +00:00
2d9ed69fe2 change input/output button context menus for mixer strip to be non-additive: when selecting a new IO bundle, disconnect from any existing connections before connecting to the new one (fixes #5087)
git-svn-id: svn://localhost/ardour2/branches/3.0@13308 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-10-18 16:15:11 +00:00
3cd8138a41 convert from Glib:: to Glib::Threads for all thread-related API
git-svn-id: svn://localhost/ardour2/branches/3.0@13084 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-07-25 17:48:55 +00:00
b621b28fce make it possible to (and actually do) name insert and send ports as "return" and "send" rather than "in" and "out" (#5012)
git-svn-id: svn://localhost/ardour2/branches/3.0@13052 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-07-17 13:59:46 +00:00
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
1e0fd01815 drop boost::signals2 and replace with carl's solution which continues to rely on boost::function and boost::bind but alters two important semantics of signals2: (1) when a Connection object is disconnected, the slot ("functor") associated with the connection is destroyed immediately, unlike signals2 where this is deferred to a subsequent connect/emit call on the signal (2) if one functor called by the signal disconnects another Connection, the functor represented by the Connection will NOT be called during the current signal emission (signals2 copies the slot list at the start of emission and calls everything in the slot list). this change fixes some very nasty crashes apparently caused by boost::signals2 assuming that the memory referenced by a functor remains valid after a disconnect (google will show other developers who had issues with this).
git-svn-id: svn://localhost/ardour2/branches/3.0@12265 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-05-14 17:18:48 +00:00
377f407a2f remove debugging output
git-svn-id: svn://localhost/ardour2/branches/3.0@11718 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-03-17 12:26:42 +00:00
1b830d5942 continue the saga of Rewrite The XML Node So That It Can Be Used To Set Another Object's State by descending into an IO node to fix the names of its ports as used in connection info. allows copies of sends etc. to retain the same connections as the original (with new names, obviously)
git-svn-id: svn://localhost/ardour2/branches/3.0@11717 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-03-16 22:36:06 +00:00
e3b2111109 add Port::PostDisconnect signal to allow objects other than the one being directly disconnected to act when disconnection happens. This turns out to be much easier than using the JACK port connect/disconnect callback
git-svn-id: svn://localhost/ardour2/branches/3.0@11355 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-01-26 19:00:27 +00:00
508c5eb5bd make monitor section an optional feature than can be added/removed as needed. this is a big commit, and breakage is possible. it has been moderately tested. this commit also locks the remote control ID of the master bus to 318 and the monitor section (if any) to 319. the numbers are based on MIDI Machine Control limits
git-svn-id: svn://localhost/ardour2/branches/3.0@11256 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-01-18 01:30:44 +00:00
Carl Hetherington
0dbc0429a8 Comments.
git-svn-id: svn://localhost/ardour2/branches/3.0@11070 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-12-26 12:50:24 +00:00
Carl Hetherington
5344f5ca0f Don't try to process_input() if an IO has no ports; fixes
#4546.


git-svn-id: svn://localhost/ardour2/branches/3.0@10965 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-12-10 14:03:37 +00:00
Carl Hetherington
5700d10890 Check that adding a port to an IO is ok with the processors
in its route, and raise an error if not (part of #4535).


git-svn-id: svn://localhost/ardour2/branches/3.0@10938 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-12-07 17:50:56 +00:00
Carl Hetherington
0c9c47086c Slightly unpleasant fix for creation of tracks from
templates; it would be nice if we could set things up using
the Route's logic for setting names of its children, rather
than repeating the same logic in XML-land (#4303).


git-svn-id: svn://localhost/ardour2/branches/3.0@10655 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-11-16 23:03:59 +00:00
Carl Hetherington
7bdcc127e3 Use shared_ptr for Port in the AudioEngine; improves thread-safety of the audio engine's port list as a writer cannot destroy a port in one thread while the port list is being iterated in another.
git-svn-id: svn://localhost/ardour2/branches/3.0@10327 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-10-28 17:04:09 +00:00
Carl Hetherington
0a87941c70 Minor cleanups to IO.
git-svn-id: svn://localhost/ardour2/branches/3.0@10322 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-10-27 23:36:42 +00:00
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
df78f284ee fix up colons in track names before they are used for JACK port names; catch most (not all) attempted renames and ask the user about colons
git-svn-id: svn://localhost/ardour2/branches/3.0@9928 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-07-26 02:07:59 +00:00
ff234c0544 "forward" port IO::ensure_* changes from 2.X for correctness and consistency
git-svn-id: svn://localhost/ardour2/branches/3.0@9918 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-07-25 16:11:00 +00:00
862972eaaa use std::vector::assign() in BufferSet::attach_buffers() rather than an explicit loop; minor formatting touchups
git-svn-id: svn://localhost/ardour2/branches/3.0@9912 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-07-22 15:44:13 +00:00
Carl Hetherington
75d315e452 Save and restore Latent's _user_latency for IOs (fixes #4186).
git-svn-id: svn://localhost/ardour2/branches/3.0@9879 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-07-14 23:29:42 +00:00
Carl Hetherington
16db8b5972 Add a couple of missing attach_buffers() calls after _ports has been changed. I think this fixes #3856.
git-svn-id: svn://localhost/ardour2/branches/3.0@9858 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-07-13 01:00:53 +00:00
a3583c89b2 ctrl-alt-click now toggles input active status of other MIDI tracks using (any of) the same input(s) as the clicked track
git-svn-id: svn://localhost/ardour2/branches/3.0@9789 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-07-03 15:01:21 +00:00
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
ca84e02b48 fix (?) capture alignment by making sure we use non-public latency information for playback latency, thus avoiding counting plugin latency twice
git-svn-id: svn://localhost/ardour2/branches/3.0@9168 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-03-18 20:21:51 +00:00
c4c4034085 fix all manner of things relating to io connections, setting capture alignment, and so on. still needs more tests of actual precise placement of newly recorded material
git-svn-id: svn://localhost/ardour2/branches/3.0@9155 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-03-15 19:32:21 +00:00
c7dd29e167 properly use and publish private/public port latency values for JACK latency API
git-svn-id: svn://localhost/ardour2/branches/3.0@9130 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-03-12 20:25:09 +00:00
d155f32039 sorta-kinda working latency compensation, latency reporting and capture alignment ... working except that we report the wrong information to JACK and i've noticed a couple of odd circumstances where turning on a latent plugin caused punch recording to fail
git-svn-id: svn://localhost/ardour2/branches/3.0@9121 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-03-11 02:55:52 +00:00
34b9883537 lots of stuff related to capture alignment. things appear to be working now, but require the right alignment setting, which doesn't persist correctly at present
git-svn-id: svn://localhost/ardour2/branches/3.0@9107 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-03-08 20:12:40 +00:00
665f3bea5a fix all manner of wrongness with port buffer offsets
git-svn-id: svn://localhost/ardour2/branches/3.0@9098 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-03-07 19:06:42 +00:00
Carl Hetherington
dd7caa0165 Optimise BufferSet::attach_buffers code to avoid memory allocation in the RT thread and speed things up a bit.
git-svn-id: svn://localhost/ardour2/branches/3.0@8490 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-01-10 16:23:54 +00:00
Carl Hetherington
0dd2fb557c Update mixer strip input/output button labels from the general JACK port connection / disconnection callback so that all changes are noticed. Fixes #3638.
git-svn-id: svn://localhost/ardour2/branches/3.0@8368 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-12-29 17:52:32 +00:00
Carl Hetherington
19ae4ed640 Comment a few things and add missing process lock when adding a route from a template.
git-svn-id: svn://localhost/ardour2/branches/3.0@8242 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-12-11 00:23:51 +00:00
Carl Hetherington
73192bc1a7 Remove all use of nframes_t.
git-svn-id: svn://localhost/ardour2/branches/3.0@8166 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-12-03 22:26:29 +00:00
979a61eb3f remove (or attempt to remove) requirement for holding process lock when changing connections
git-svn-id: svn://localhost/ardour2/branches/3.0@8110 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-11-27 17:42:09 +00:00
27cf00a598 make IO::disconnect (port,port) symmetric with IO::connect (port,port) by requiring caller to hold process lock
git-svn-id: svn://localhost/ardour2/branches/3.0@8106 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-11-27 16:42:44 +00:00
Carl Hetherington
54cbc45a5a Prevent removal of route inputs when the plugins cannot be configured with the new number. Rework locking so that the process lock is held from the point that a route input is removed until after the processors are reconfigured; fixes #3548.
git-svn-id: svn://localhost/ardour2/branches/3.0@8089 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-11-25 23:46:24 +00:00
Carl Hetherington
49ce9ba634 Remove unused code.
git-svn-id: svn://localhost/ardour2/branches/3.0@8083 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-11-25 00:03:14 +00:00
ede4ecbb00 megaopus patch #2 for today: remove nframes64_t and sframes_t from source
git-svn-id: svn://localhost/ardour2/branches/3.0@7792 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-09-17 18:20:37 +00:00
Carl Hetherington
bac638935e Fix comment.
git-svn-id: svn://localhost/ardour2/branches/3.0@7746 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-09-06 21:00:31 +00:00
Carl Hetherington
b9dca83832 Auto-connect outputs that appear as a result of e.g. instruments being added to MIDI tracks. Fixes #3368.
git-svn-id: svn://localhost/ardour2/branches/3.0@7720 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-08-30 22:34:21 +00:00
Carl Hetherington
92e4126617 Allow port matrix to show both audio and midi ports at the same time, and use that facility for route IO selectors.
git-svn-id: svn://localhost/ardour2/branches/3.0@7344 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-07-01 01:14:14 +00:00
Carl Hetherington
5f67a72c34 Basic tweaks to make the bundles and the port matrix accept that MIDI tracks may have audio IO, and vice versa. Allows connection of instrument tracks using the global port matrix.
git-svn-id: svn://localhost/ardour2/branches/3.0@7335 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-06-30 02:59:13 +00:00
Carl Hetherington
45b5b19da2 Re-throw exception slightly better.
git-svn-id: svn://localhost/ardour2/branches/3.0@7084 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-05-09 00:46:54 +00:00
78b8eaf565 save global state when quitting BEFORE we stop the engine, so that global MIDI ports are still connected and thus will re-establish their connections on session reload
git-svn-id: svn://localhost/ardour2/branches/3.0@7082 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-05-08 16:47:57 +00:00
576cdb08b5 perhaps, just possibly, a working solo model. needs to be fixed so that connections to other JACK clients count as "physical" connections, so don't use this with ardour connected to other JACK apps just yet. Oh, this also invalidates existing a3 sessions again
git-svn-id: svn://localhost/ardour2/branches/3.0@7033 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-05-01 15:09:19 +00:00
2cb5595b11 fix solo/listen issues when reloadign a session, caused by that last commit
git-svn-id: svn://localhost/ardour2/branches/3.0@6937 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-04-19 17:48:11 +00:00
9644362c92 remove some OS X cruft in io.cc
git-svn-id: svn://localhost/ardour2/branches/3.0@6856 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-04-03 16:11:56 +00:00
7151d28ae3 fix build process to avoid mismatching size/layout of AudioEngine object; use a slightly more efficient way to access the engine's process_lock from within io.cc
git-svn-id: svn://localhost/ardour2/branches/3.0@6855 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-04-03 15:53:19 +00:00
f297e9fa51 lincoln's patch to get loading 2.X sessions to work better
git-svn-id: svn://localhost/ardour2/branches/3.0@6804 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-03-28 19:07:23 +00:00