Paul Davis
960a47330a
switch from JACK_Slave to Engine_Slave
2013-09-19 17:34:23 -04:00
nick_m
914ba475de
actually load new state after creating a session.
2013-09-18 02:02:31 +10:00
Paul Davis
fb45fdc052
fix conflicts and merge with master
2013-09-16 22:11:06 -04:00
Paul Davis
39ee88b3f9
more session construction order changes, and removal of n_physical_{inputs,outputs} members which were (a) not initialized early enough (b) not used anywhere except monitor bus connection.
...
Things almost make sense now.
2013-09-16 12:08:19 -04:00
Paul Davis
910755b51b
fix missing initialization of two Session members, which fixes a crash during quit-without-finished-session
2013-09-16 10:23:37 -04:00
Paul Davis
31157cb343
fix ordering in session construction so that new sessions and existing ones both work
2013-09-16 09:57:22 -04:00
Paul Davis
4861eca974
Merge branch 'master' into windows
2013-09-13 11:55:56 -04:00
Paul Davis
28d692b490
don't stop metering thread when session is removed; move engine-setup code into its own method. sorry, ardour build-from-source folk :)
2013-09-12 17:25:01 -04:00
Paul Davis
7c88670680
lots of changes to auto-start (and stop) the backend for latency measurements, and continuing work on the session construction/engine configuration flow
2013-09-12 16:28:51 -04:00
Paul Davis
6b3907d57f
change names, add comment, improve return type to avoid extra call to get EngineControl::State*
2013-09-12 12:26:59 -04:00
Paul Davis
bb826f4bee
incomplete merge of master into windows (requires upcoming changes to master to be complete)
2013-09-12 11:28:50 -04:00
Paul Davis
f85b362351
*maybe* fix issues with zombification during session loading
2013-09-11 16:33:40 -04:00
Paul Davis
7c719e441a
fix handling of new session
...
defer save state till after everything done in post_engine_init() is complete.
2013-09-11 09:59:56 -04:00
Paul Davis
209e4bdcae
many changes relating to session construction and audioengine interaction
...
every session member is now initialized using C++ constructor syntax
session construction reordered to clarify the split(s) between work
where the engine is not relevant and work where is it is. this
split is still not 100% obvious, but is enormously clearer than
previously.
if engine/backend are not running as session is created, and the SR
of the sample rate is known, attempt to force backend to that value.
2013-09-10 15:41:19 -04:00
Paul Davis
19d05fa436
start reordering of Session initialization
...
the goal is to allow a clear demarcation of where we need
the audioengine and have existing data parameters (e.g. sample rate)
for the session so that we can coerce the engine (if possible)
to match to session values.
also, to rationalize construction even more and use C++
constructor syntax as much as possible.
2013-09-09 22:40:54 -04:00
Paul Davis
56465fda10
move engine dialog from a widget to an actual dialog; emit Session::AudioEngineSetupRequired when loading a session if it is necessary
2013-09-09 15:17:42 -04:00
Tim Mayberry
8ddd12a60d
Rename SearchPath class Searchpath
...
Windows headers define SearchPath which means we have to undefine it
where necessary. This is a pain and can be tricksy, so I feel renaming
the class slightly is the easiest solution.
2013-09-06 14:31:11 +10:00
Paul Davis
1c49138e00
move MidiPortManager from AudioEngine to Session
...
This makes the responsibilities and ownership of non-Route related MIDI ports
more clear, and removes a few wierd bits of code. It also ensures that open/close/open
on the same session will retain connections for those MIDI ports
2013-09-05 13:22:34 -04:00
Paul Davis
ca76496ef3
more purging of JACK as an explicit name from libardour
2013-08-09 13:56:23 -04:00
Paul Davis
1ab61b8564
major redesign of MIDI port heirarchy and management (part 2)
2013-08-07 22:22:11 -04:00
Paul Davis
616f2a0370
fix conflicts after merge with master
2013-08-05 14:22:32 -04:00
Paul Davis
682ebad62b
full compilation and linking (coding not finished, will not run)
2013-08-01 14:43:12 -04:00
Paul Davis
6a436fd826
fix merge conflict from master
2013-07-31 20:11:15 -04:00
Robin Gareus
4dc74ae2ea
use zeroed scratch buffers for "silent" plugin runs
...
Plugins rewrite the buffer data in-place and some plugins
can produce output even when fed with silence.
Hence, during a PluginInsert::silence() run a plugin can
inject data into the "silent" buffers which causes side-effects.
Kudos to Chris 'oofus' Goddard for finding this issue.
2013-08-01 00:35:24 +02:00
Robin Gareus
00f26394a9
use dedicated buffers for route (and track)
...
"scratch buffers are by definition scratch and their contents are undefined at all times"
"silent buffers are by definition all-zero and should not be used for real data"
But track & route were using those for actual data; plugins (which may run
in the same thread and may get the same buffers) use them for scratch thereby
overwriting real data.
In particular get_silent_buffers() (used by LadspaPlugin::connect_and_run)
clears the buffer which can holds real data:
e.g. via Route::passthru_silence() -> plugin1 -> plugin2 (clears output of plugin1)
2013-07-30 16:55:33 +02:00
Paul Davis
20b1a7d9d8
most of libardour now actually compiles
2013-07-25 12:36:54 -04:00
Paul Davis
43f7813b24
Fix portability of Session::source_search_path
2013-07-15 08:05:37 -04:00
Robin Gareus
0571e5d6ae
Revert "show track-ID in mixer" and "...towards unique track numbers."
...
This reverts commits:
ca54ea2b462869bfd9254a493d073ca1e9ad4b8e.
9e87e058e26b87013e89ddf5d3b7358d50024d60.
2013-07-10 15:27:17 +02:00
Robin Gareus
24f2961cce
...towards unique track numbers.
2013-07-10 15:27:14 +02:00
jdekozak
ae74d66eb7
initialize ltc_enc_buf to 0 to fix crash in ltc_tx_cleanup at startup
2013-05-17 08:03:55 +02:00
Robin Gareus
90a4d01662
Revert "option to ignore feedback detection - /i know what i'm doing/ mode."
...
This reverts commit e17f75b351 .
2013-04-15 16:02:57 +02:00
Robin Gareus
e17f75b351
option to ignore feedback detection - /i know what i'm doing/ mode.
...
This currently only has effect if the loop connection is
made/unmade while the option was set/unset.
Toggling the option itself won't trigger a graph re-order
2013-04-15 15:50:08 +02:00
Paul Davis
cd6cbba299
rename Route::is_hidden() to Route::is_auditioner() and Route::Hidden to Route::Auditioner. this has been the meaning of these terms for years now and it would be better to make it explicit
2013-04-06 16:04:02 -04:00
Paul Davis
2da10afb64
fix #5424 : routes created from templates do not get names based on the user-supplied text from the add route dialog
2013-04-01 20:45:57 -04:00
Roy Vegard Ovesen
81a343ff7f
Make sure every imported file is copied to the session path
2013-03-31 03:59:10 +02:00
Paul Davis
b691d4bf04
fix up some confusion with filesources' _origin and _file_is_new members. if _origin is set, it means that the file is "external" to the session (aka "embedded") and for some purposes this is more significant than _file_is_new. rename SourceFactory::createReadable() to ::createExternal() to more clearly indicate its purpose; remove never-supplied "origin" argument from SourceFactor::createWritable(). Fixes problems caused by 864ce8f0
2013-03-30 14:02:26 -04:00
Paul Davis
91ff55bd89
make notice about mismatched session/ardour versions more prominent, since you can guarantee that people are going to do this after release
...
git-svn-id: svn://localhost/ardour2/branches/3.0@14138 d708f5d6-7413-0410-9779-e7cbd77b26cf
2013-03-04 21:57:29 +00:00
Paul Davis
63376189ad
tweak for const correctness on apple
...
git-svn-id: svn://localhost/ardour2/branches/3.0@13956 d708f5d6-7413-0410-9779-e7cbd77b26cf
2013-01-21 19:42:34 +00:00
Paul Davis
ccdcb135fa
remove some debug output
...
git-svn-id: svn://localhost/ardour2/branches/3.0@13846 d708f5d6-7413-0410-9779-e7cbd77b26cf
2013-01-15 15:12:40 +00:00
Paul Davis
09e519b715
better error msg about autoloop location
...
git-svn-id: svn://localhost/ardour2/branches/3.0@13842 d708f5d6-7413-0410-9779-e7cbd77b26cf
2013-01-15 14:15:01 +00:00
Colin Fletcher
6ed562f182
A few more typo fixes in libardour.
...
git-svn-id: svn://localhost/ardour2/branches/3.0@13813 d708f5d6-7413-0410-9779-e7cbd77b26cf
2013-01-09 15:05:04 +00:00
Paul Davis
c9c94ca1c2
merge robin gareus' libltc into ardour source tree for convenience
...
git-svn-id: svn://localhost/ardour2/branches/3.0@13665 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-12-14 16:18:47 +00:00
Paul Davis
341cbfbd19
reinstate the windows way for GUIIdle's but limit the scope of the connection to just the time when a long-running action is active (for now, just adding > 8 routes)
...
git-svn-id: svn://localhost/ardour2/branches/3.0@13654 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-12-13 13:44:11 +00:00
Paul Davis
37c7d0cbc1
because sometimes there are good reasons for not doing things the way a windows programmer would
...
git-svn-id: svn://localhost/ardour2/branches/3.0@13652 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-12-12 20:03:41 +00:00
Paul Davis
75f3005c67
sometimes, you just have to do what a windows programmer would do. add a global signal, ARDOUR::GUIIdle() which can be used in the middle of long-running backend operations to give the GUI a chance to update. use it while adding routes.
...
git-svn-id: svn://localhost/ardour2/branches/3.0@13650 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-12-12 18:59:47 +00:00
Paul Davis
e8f610f375
Session should disconnect from all signals during its destruction, early
...
git-svn-id: svn://localhost/ardour2/branches/3.0@13601 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-12-05 16:07:30 +00:00
Paul Davis
89d1a2fdf5
dramatically speed up the addition of large numbers of busses + tracks. consists of a backend part (ignore JACK graph/latency callbacks while we're adding tracks) and a GUI side (avoid O(N^N) behaviour while adding each new time axis view)
...
git-svn-id: svn://localhost/ardour2/branches/3.0@13595 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-12-04 14:32:28 +00:00
Paul Davis
f0247ebe6a
add more DEBUG::Solo output ; fix assignment of remote control ID's from XML ( #5079 )
...
git-svn-id: svn://localhost/ardour2/branches/3.0@13542 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-11-21 19:56:55 +00:00
Paul Davis
c7a36486af
remove unused Automatable::automation_interval and related code
...
git-svn-id: svn://localhost/ardour2/branches/3.0@13534 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-11-19 22:03:50 +00:00
Paul Davis
8b3d0f04c1
tweak config param for automation sampling interval, set to 500msec by default, and expose in prefs dialog
...
git-svn-id: svn://localhost/ardour2/branches/3.0@13533 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-11-19 21:31:44 +00:00