13
0
Commit Graph

1855 Commits

Author SHA1 Message Date
8a17b0fb90 make generic MIDI control track remote control ID changes; fixup messes in the editor+mixer that caused excessive calls to SyncOrderKey stuff. generic MIDI still doesn't track editor/mixer order changes if we're not syncing both windows
git-svn-id: svn://localhost/ardour2/branches/3.0@6413 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-12-30 12:41:10 +00:00
59a61c4357 fix crash caused by closing down JACK but not telling JACK_MidiPorts about it
git-svn-id: svn://localhost/ardour2/branches/3.0@6412 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-12-30 02:58:57 +00:00
77cc0f7cc8 editors for control protocols (generalized); editor for Generic MIDI that allows choosing a MIDI binding map (or none); support banking in binding URLs, and other miscellany related to generic MIDI; save+restore JACK_MidiPort connection state (but cause a crash at shutdown time)
git-svn-id: svn://localhost/ardour2/branches/3.0@6411 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-12-29 21:31:14 +00:00
e10d0339cc add sysex support to MIDI binding maps, and a couple more functions
git-svn-id: svn://localhost/ardour2/branches/3.0@6410 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-12-28 23:55:33 +00:00
679ece14a3 add missing files
git-svn-id: svn://localhost/ardour2/branches/3.0@6409 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-12-28 20:52:13 +00:00
109acd1568 MIDI binding maps make their debut
git-svn-id: svn://localhost/ardour2/branches/3.0@6408 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-12-28 16:49:44 +00:00
Carl Hetherington
bd231ac9bf Remove unnecessary _fade_{in,out}_shape members from AudioRegion.
Copy fade in / out to new regions created by filters, which should fix 2972.


git-svn-id: svn://localhost/ardour2/branches/3.0@6406 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-12-28 02:54:04 +00:00
Carl Hetherington
8e65788ef0 Remove as well as destroying last capture regions. Closes #2971.
git-svn-id: svn://localhost/ardour2/branches/3.0@6405 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-12-28 02:23:20 +00:00
Sakari Bergen
8da27200d1 - Fix process callbakc handling during export
- Fix filename handling when exporting multiple files
- Some updates to audiographer


git-svn-id: svn://localhost/ardour2/branches/3.0@6402 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-12-27 22:09:40 +00:00
Sakari Bergen
dde0848a98 Re-integrate export-optimization branch.
Export now happens directly to file (unless normalizing is required), and can be easily optimized even further.
The Session process connection is still broken during export (as it was before this commit also).


git-svn-id: svn://localhost/ardour2/branches/3.0@6401 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-12-27 14:46:23 +00:00
35c72a53b4 change the way thread name is managed and accessed; store thread name for JACK thread(s); remove bits of debugging output
git-svn-id: svn://localhost/ardour2/branches/3.0@6399 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-12-26 16:15:11 +00:00
b6f4cdaea2 rationalize destruction pathway (some more); tidy-ify some ImageFrame code
git-svn-id: svn://localhost/ardour2/branches/3.0@6398 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-12-25 21:06:52 +00:00
f53cbaede8 clean up editor mixer strip when session is going away; slightly improved boost debugging
git-svn-id: svn://localhost/ardour2/branches/3.0@6397 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-12-24 04:04:01 +00:00
Carl Hetherington
defa1fad94 Give titles to Gtkmm2ext::Choice prompts, and do some minor cleanups to prompt text.
git-svn-id: svn://localhost/ardour2/branches/3.0@6394 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-12-23 01:26:33 +00:00
Carl Hetherington
be8a2e20dc Fix assertion failure on dropping a track out of rec-arm.
git-svn-id: svn://localhost/ardour2/branches/3.0@6393 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-12-23 00:51:26 +00:00
Carl Hetherington
682f2fc8ee Fix assertion failure on creating a new session.
git-svn-id: svn://localhost/ardour2/branches/3.0@6391 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-12-22 23:02:44 +00:00
c83389b8ec cleanup up cleanup at session destruction; clarify the meaning of 3 signals (DropReferences & Destroyed in libardour ; CatchDeletion in the GTK UI); clarify ownership of objects (session no longer pays attention to DropReferences for objects that it is considered to own, such as routes, sources, etc); fix up MIDI parsing and a couple of other places by correcting syntax for return of values from a boost::signals2::signal (possible danger elsewhere to be checked)
git-svn-id: svn://localhost/ardour2/branches/3.0@6389 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-12-22 20:21:43 +00:00
Carl Hetherington
c53115c650 Fix assertion failure on transmission of MIDI clock.
git-svn-id: svn://localhost/ardour2/branches/3.0@6387 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-12-22 01:13:44 +00:00
Carl Hetherington
06f094d4b6 Fix crash when going from >2 outputs (2D panner) to <= 2 outputs.
git-svn-id: svn://localhost/ardour2/branches/3.0@6380 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-12-22 01:09:50 +00:00
f450df300c fully implement and deploy explicit x-thread signal connection syntax (testing comes next)
git-svn-id: svn://localhost/ardour2/branches/3.0@6379 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-12-21 18:23:07 +00:00
738387f9a4 remove a couple of boost::signals2 trouble spots; fix some --strict compile time warnings
git-svn-id: svn://localhost/ardour2/branches/3.0@6378 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-12-20 16:50:41 +00:00
96cd6c993b substantial overhaul of MCU code - no more separate thread, just connect to signals on ports already listened to by the MidiUI thread in libardour (feedback is missing - needs a timeout connection); also reformat some big chunks of code to fit ardour coding style
git-svn-id: svn://localhost/ardour2/branches/3.0@6377 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-12-20 16:49:55 +00:00
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
67460c2af4 fix deadlock in protocol manager startup; fix some other ::set_session() SNAFUs; remove last boost::signals2::connection member from libardour
git-svn-id: svn://localhost/ardour2/branches/3.0@6375 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-12-17 23:36:52 +00:00
cbb272af44 added files
git-svn-id: svn://localhost/ardour2/branches/3.0@6374 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-12-17 19:04:07 +00:00
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
Carl Hetherington
da762129f1 Offer all of a bundle's ports for disconnection / removal when opening a menu over a bundle's name in the port matrix.
git-svn-id: svn://localhost/ardour2/branches/3.0@6365 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-12-14 16:44:20 +00:00
Carl Hetherington
383b24cc48 Fix crashes on increasing a bus' number of outputs.
git-svn-id: svn://localhost/ardour2/branches/3.0@6364 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-12-13 23:48:48 +00:00
Carl Hetherington
034db5fb1c Apply Select property of route groups at the Selection object level. Accordingly
simplify code related to selecting tracks.  Add a TrackViewList object rather than
"abusing" TrackSelection in lots of places.


git-svn-id: svn://localhost/ardour2/branches/3.0@6358 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-12-13 19:09:52 +00:00
8687895abb remove using namespace sigc everywhere to ensure clarity over which bind/mem_fun is being used; make Config::map_parameters take a boost::function rather than a sigc::slot ; continue debugging crash caused by regionviews not tracking their Region's lifetime
git-svn-id: svn://localhost/ardour2/branches/3.0@6357 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-12-12 15:02:15 +00:00
401c7091c8 switch to use boost::function for UI::call_slot operations, to avoid a serious thread safety issue with libsigc++
git-svn-id: svn://localhost/ardour2/branches/3.0@6355 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-12-11 23:30:48 +00:00
d7de23db0f added comment
git-svn-id: svn://localhost/ardour2/branches/3.0@6352 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-12-11 19:23:45 +00:00
70b75d656e add CTClosure for a closure that takes one argument at call time
git-svn-id: svn://localhost/ardour2/branches/3.0@6351 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-12-11 19:22:59 +00:00
9fa8a7e9c2 add comments and remove debug output
git-svn-id: svn://localhost/ardour2/branches/3.0@6350 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-12-11 18:21:08 +00:00
12172ff178 thread-safe but lifetime-unsafe closures for passing closures around instead of sigc::slot, which is thread-unsafe but lifetime-safe (lifetime safe means that the slot is guaranteed to be safe to use no matter what the lifetime of the object to which it refers is)
git-svn-id: svn://localhost/ardour2/branches/3.0@6349 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-12-11 18:08:30 +00:00
53bbac4eb6 fix compilation breakages from the last commit
git-svn-id: svn://localhost/ardour2/branches/3.0@6347 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-12-11 03:18:17 +00:00
2983f8de97 (MAY BREAK COMPILATION - unfinished work, being transferred between machines via svn) ... start to make MidiControllable bind to a URI, not an object
git-svn-id: svn://localhost/ardour2/branches/3.0@6346 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-12-11 02:00:22 +00:00
a3bcba2357 fulfill the promise of an in-library Keyboard object, and use platform specific modifiers throughout libgtkmm2ext. also fix up scrolling of pixfaders by making them grab keyboard magic focus when the mouse pointer is within them
git-svn-id: svn://localhost/ardour2/branches/3.0@6344 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-12-10 23:01:45 +00:00
6ab765e8fa add solo isolate indicator in editor route list
git-svn-id: svn://localhost/ardour2/branches/3.0@6343 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-12-10 20:51:35 +00:00
2f350c491e removed stupid comments
git-svn-id: svn://localhost/ardour2/branches/3.0@6342 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-12-10 20:50:41 +00:00
b1a7fd9366 avoid double delete of UI objects caused by default behaviour of Glib::Private
git-svn-id: svn://localhost/ardour2/branches/3.0@6341 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-12-10 20:50:12 +00:00
4341e67894 forward propagate solo-isolated status to everything fed by a route by something other than a send
git-svn-id: svn://localhost/ardour2/branches/3.0@6340 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-12-10 18:34:31 +00:00
e25862d787 fix recently-added crash when adding new tracks+busses
git-svn-id: svn://localhost/ardour2/branches/3.0@6339 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-12-10 18:33:54 +00:00
90d6916ca3 restore rec-enable, solo & mute functionality; remove all Global*Command cruft; reimplement momentary solo&mute; refactor session RT event stuff to be even cleaner and finally compatible with everything-is-a-UI idea ; make all UIs derive from a primitive type that pprovides only void call_slot (sigc::slot<void>) as a way to execute arbitrary code in the UI thread
git-svn-id: svn://localhost/ardour2/branches/3.0@6338 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-12-10 17:45:18 +00:00
61cade6d59 drastic, deep and wide changes to make RouteGroup use boost::shared_ptr<Route> and boost::shared_ptr<RouteList> to better fit into emerging framework for "RT operations" ; torben's changes to MTC slaving code (sorry for bundling)
git-svn-id: svn://localhost/ardour2/branches/3.0@6334 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-12-10 03:25:32 +00:00
b8b55ef003 OSC is now driven by an event loop; fix up lifetime mgmt of Glib::Source to workaround bug in Glib
git-svn-id: svn://localhost/ardour2/branches/3.0@6329 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-12-09 18:37:06 +00:00
c38e02285f major design changes: use glib event loop for MIDI thread/UI; rework design of BaseUI and AbstractUI; solo & mute are both temporarily broken; OSC control up next; may segfault during exit
git-svn-id: svn://localhost/ardour2/branches/3.0@6328 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-12-09 03:05:14 +00:00
8faf95b9bd better, cleaner, more generic version of real-time ping pong, still just for one case of rec-enable but more coming soon
git-svn-id: svn://localhost/ardour2/branches/3.0@6325 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-12-07 23:51:46 +00:00
9686f8097d first pass at end-to-end RT operation request (GUI->session->RT thread->GUI), just for rec-enable
git-svn-id: svn://localhost/ardour2/branches/3.0@6324 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-12-07 21:37:35 +00:00
8dab33c609 Route::set_meter_point() is now conceptually RT safe, although it still takes a write lock on the processor list. this allows it to be called when setting rec-enable status on a route. not thoroughly tested, and still incomplete - single route rec-enables should probably use this pathway, and there is still no cross-thread cleanup from an RT route op request
git-svn-id: svn://localhost/ardour2/branches/3.0@6320 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-12-07 14:18:06 +00:00
Sampo Savolainen
b9876aa1d0 Eliminate double reversible commit from time stretch, and make the stretch operation lengthen / shorten the region as per operation.
git-svn-id: svn://localhost/ardour2/branches/3.0@6318 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-12-06 21:00:43 +00:00
Taybin Rutkin
52b4b464f9 Merged revisions 6292,6294-6295,6311,6314 via svnmerge from
svn+ssh://ardoursvn@subversion.ardour.org/ardour2/branches/build_fixes

........
  r6292 | trutkin | 2009-12-05 08:31:25 -0500 (Sat, 05 Dec 2009) | 1 line
  
  remove scons build files
........
  r6294 | trutkin | 2009-12-05 09:11:17 -0500 (Sat, 05 Dec 2009) | 2 lines
  
  cairomm
  remove unnecessary vendor libraries as we now rely on the developer to install them
........
  r6295 | trutkin | 2009-12-05 09:12:54 -0500 (Sat, 05 Dec 2009) | 2 lines
  
  soundtouch
  remove unnecessary vendor libraries as we now rely on the developer to install them
........
  r6311 | trutkin | 2009-12-05 23:38:49 -0500 (Sat, 05 Dec 2009) | 2 lines

  glibmm2, gtkmm2, libgnomecanvasmm, sigc++2  
  remove unnecessary vendor libraries as we now rely on the developer to install them
........
  r6314 | trutkin | 2009-12-06 09:15:49 -0500 (Sun, 06 Dec 2009) | 4 lines
  
  remove scons referencing from Makefile
  
  - TODO: should move cscope stuff to waf and get rid of the Makefile
........


git-svn-id: svn://localhost/ardour2/branches/3.0@6315 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-12-06 14:21:46 +00:00
Taybin Rutkin
3fdcba1859 Merged revisions 6293,6296-6306,6308 via svnmerge from
svn+ssh://ardoursvn@subversion.ardour.org/ardour2/branches/build_fixes

........
  r6293 | trutkin | 2009-12-05 08:49:37 -0500 (Sat, 05 Dec 2009) | 2 lines
  
  fix if-statement in build script
........
  r6296 | trutkin | 2009-12-05 09:30:19 -0500 (Sat, 05 Dec 2009) | 5 lines
  
  rearrange GTKOSX and darwin dependencies
  
  - moved some GTKOSX include paths to generic darwin
  - made GTKOSX dependent on being on darwin anyways
........
  r6297 | trutkin | 2009-12-05 09:35:09 -0500 (Sat, 05 Dec 2009) | 2 lines
  
  move coreaudio and audiounit handling to darwin section
........
  r6298 | trutkin | 2009-12-05 09:53:40 -0500 (Sat, 05 Dec 2009) | 3 lines
  
  use True/False instead of 1/0
  fix another if-statement where it should be an elif-statement
........
  r6299 | trutkin | 2009-12-05 14:11:09 -0500 (Sat, 05 Dec 2009) | 10 lines
  
  fixes to get libardour building
  
  - can't cast away volatile, so copy _transport_frame before emitting it.
  - const_reverse_iterator::operator!=() isn't defined in this version of gcc.
  - removed annoying HERE WE ARE CAAudioFile.h #warning.
  - removed unnecessary include of sndfile.h in session.h.
  - we don't want to set -march=i686 on the mac, so indent this if-statement so
    it's only run on linux.
  - DEBUG_STR() fails in the NDEBUG case, so wrap its use in an #ifndef NDEBUG
........
  r6300 | trutkin | 2009-12-05 15:48:29 -0500 (Sat, 05 Dec 2009) | 2 lines
  
  remove old scons-style CXXFLAGS_FOO in favor of just CXXFLAGS
........
  r6301 | trutkin | 2009-12-05 16:01:10 -0500 (Sat, 05 Dec 2009) | 8 lines
  
  clean up configure flags
  
  - removed useless --aubio and --syslibs flags.  The syslibs value is ignored 
    as we don't bring our own libraries with us anymoreand we use aubio 
    automatically if it's available
  - added ways to turn off fpu_optimization and NLS
  - fixed compiling on the mac without fpu_optimization
........
  r6302 | trutkin | 2009-12-05 18:12:46 -0500 (Sat, 05 Dec 2009) | 5 lines
  
  go back to prior uselib method for COREAUDIO, AUDIOUNIT, and GTKOSX
  
  - fixed compile of CoreAudioSource
  - re-did inclusion of coremidi_midiport.cc to depend on COREAUDIO presence
........
  r6303 | trutkin | 2009-12-05 18:59:02 -0500 (Sat, 05 Dec 2009) | 5 lines
  
  fixed compiler warnings about classes with virtual member functions, but no virtual destructor.
  
  - Changed Metering to not use foo() = 0; to indicate it shouldn't be instantiated, but
    private: Metering(), which is more idiomatic.
........
  r6304 | trutkin | 2009-12-05 19:25:41 -0500 (Sat, 05 Dec 2009) | 2 lines
  
  TOP_MENUBAR isn't used when building ardour.menus.  Removed.
........
  r6305 | trutkin | 2009-12-05 19:46:11 -0500 (Sat, 05 Dec 2009) | 5 lines
  
  fix some AudioUnit compile errors
  
  - update AudioUnit to use ChanCount
  - fix some namespacing issues in audio_unit.h
........
  r6306 | trutkin | 2009-12-05 20:08:48 -0500 (Sat, 05 Dec 2009) | 2 lines
  
  make --extra-warn useful
........
  r6308 | trutkin | 2009-12-05 22:59:42 -0500 (Sat, 05 Dec 2009) | 10 lines
  
  fix compiling/linking with --coreaudio
  
  - rearrange ardour_ui.h header in editor.cc to avoid conflict
  - midi++ depends on OSX as well as COREAUDIO
  - fixed including frameworks
  - tweaked --extra-warn again.  it's kinda redundent with --strict
  - improved indentation in wscript
  - use #ifdef HAVE_COREMIDI, not #if HAVE_COREMIDI.  #if isn't interchangable
    with #ifdef and won't work if HAVE_COREMIDI is defined with no value.
........


git-svn-id: svn://localhost/ardour2/branches/3.0@6310 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-12-06 04:35:48 +00:00
28c6305fab fix for first of taybin's 2 problems - do not use uninitialized Port* in check on existing devices
git-svn-id: svn://localhost/ardour2/branches/3.0@6307 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-12-06 03:02:45 +00:00
Carl Hetherington
bdf5dead24 Make port inserts work.
git-svn-id: svn://localhost/ardour2/branches/3.0@6289 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-12-04 22:56:39 +00:00
7703f0a76a move generic parts of Keyboard into gtkmm2ext. imperfectly done, but makes modifiers available in libgtkmm2ext now
git-svn-id: svn://localhost/ardour2/branches/3.0@6288 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-12-04 22:51:32 +00:00
0fe48475db switch ActionManager to a namespace; move generic part into libgtkmm2ext
git-svn-id: svn://localhost/ardour2/branches/3.0@6285 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-12-04 20:52:04 +00:00
4a3d7877f6 cross-thread handling of SessionEvent allocation/deallocation, with widespread consequences
git-svn-id: svn://localhost/ardour2/branches/3.0@6283 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-12-04 19:24:09 +00:00
Carl Hetherington
478fd92039 Use a shared_ptr for SessionPlaylists so that it can be explicitly destroyed in ~Session to ease debugging.
git-svn-id: svn://localhost/ardour2/branches/3.0@6282 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-12-04 19:09:08 +00:00
Carl Hetherington
12c9728530 Make processor box send faders adjust their size correctly.
git-svn-id: svn://localhost/ardour2/branches/3.0@6280 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-12-04 17:45:11 +00:00
Carl Hetherington
d901932f07 Fix setup of port insert IO names.
git-svn-id: svn://localhost/ardour2/branches/3.0@6276 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-12-04 11:08:53 +00:00
9ad2875905 move Session::Event into SessionEvent class; add SessionEventManager (Session IS-A SessionEventManager); make session ops to toggle all track rec-enable be atomic with respect to process()
git-svn-id: svn://localhost/ardour2/branches/3.0@6273 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-12-04 02:15:12 +00:00
Carl Hetherington
1ef43ec89c GPL boilerplate.
git-svn-id: svn://localhost/ardour2/branches/3.0@6272 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-12-03 21:55:15 +00:00
Carl Hetherington
a351048ca8 Add missing files.
git-svn-id: svn://localhost/ardour2/branches/3.0@6271 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-12-03 21:53:08 +00:00
Carl Hetherington
ee9455af40 Move some (most) playlist-related code and data into a separate object
(SessionPlaylists).  Main point being to ensure that, when a Session
is destroyed (especially as a result of its constructor throwing an
exception) SessionPlaylists::track is disconnected from its signal
at the same time as the list of playlists is destroyed.  Otherwise
problems abound.


git-svn-id: svn://localhost/ardour2/branches/3.0@6270 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-12-03 21:52:10 +00:00
03c74e45a8 more tweaks to MTC slave code (still not functional), including removing race conditions when resetting slave state; make Session catch on its own saved preferences, which has not been happening; make switching sync sources avoid race conditions
git-svn-id: svn://localhost/ardour2/branches/3.0@6269 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-12-03 18:44:06 +00:00
9dddffcc8f more MTC stuff, including toggleable use of torben's PI controller
git-svn-id: svn://localhost/ardour2/branches/3.0@6265 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-12-02 21:26:26 +00:00
c17b4a30a5 possibly useful PI controller from torben by way of jack2
git-svn-id: svn://localhost/ardour2/branches/3.0@6264 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-12-02 20:20:53 +00:00
f97470f489 add appleutility wscript
git-svn-id: svn://localhost/ardour2/branches/3.0@6263 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-12-02 02:26:37 +00:00
e0fec86fae continue with MTC debugging
git-svn-id: svn://localhost/ardour2/branches/3.0@6259 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-12-01 21:42:45 +00:00
b6d418f3c2 make ALSA MIDI I/O work with timestamps; more MTC debug tracing
git-svn-id: svn://localhost/ardour2/branches/3.0@6258 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-12-01 21:28:31 +00:00
Carl Hetherington
66ee16d7c8 Prevent some segfaults when trying to send MTC when there is no port to send it to.
git-svn-id: svn://localhost/ardour2/branches/3.0@6257 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-12-01 19:08:59 +00:00
9e9cb3bf31 adjust to use timestamped MTC messages
git-svn-id: svn://localhost/ardour2/branches/3.0@6255 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-12-01 18:32:29 +00:00
b825b86862 generalize hans' midi_clock_timestamp to be a general timestamp for incoming MIDI data (from JACK); make JACK_MidiPort::read() abort, because it should never ever be called; make JACK_MidiPort::~JackMIDIPort() unregister ports when it is destroyed; pass along the timestamp to MTC qtr and full signals
git-svn-id: svn://localhost/ardour2/branches/3.0@6254 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-12-01 18:31:00 +00:00
2ee9fb4d33 get non-JACK MIDI I/O working again, with debug tracing, naturally
git-svn-id: svn://localhost/ardour2/branches/3.0@6252 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-12-01 17:11:11 +00:00
194ee5d9ba continue with MTC debugging
git-svn-id: svn://localhost/ardour2/branches/3.0@6251 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-12-01 16:16:22 +00:00
50131b3751 continue with MTC debugging
git-svn-id: svn://localhost/ardour2/branches/3.0@6250 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-12-01 15:46:25 +00:00
35d86425ba continue with MTC debugging
git-svn-id: svn://localhost/ardour2/branches/3.0@6248 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-12-01 15:30:02 +00:00
f233c4738c continue with MTC debugging
git-svn-id: svn://localhost/ardour2/branches/3.0@6247 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-12-01 15:16:11 +00:00
d2426538ad more changes to try to improve MTC handling even in slightly pathological cases
git-svn-id: svn://localhost/ardour2/branches/3.0@6245 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-12-01 13:24:08 +00:00
Carl Hetherington
4ee4be1550 Revert completely mystifying stupidity in a previous patch of mine, and (properly) fix crashes when drag-and-drop of plugins fails because of impossible configurations.
git-svn-id: svn://localhost/ardour2/branches/3.0@6237 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-12-01 02:36:31 +00:00
e374518ca9 continue with MTC debugging
git-svn-id: svn://localhost/ardour2/branches/3.0@6236 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-12-01 02:19:31 +00:00
1614402e50 continue with MTC debugging
git-svn-id: svn://localhost/ardour2/branches/3.0@6235 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-12-01 02:04:10 +00:00
929f9a101a continue with MTC debugging
git-svn-id: svn://localhost/ardour2/branches/3.0@6234 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-12-01 01:50:47 +00:00
2ad2792bcb rework MTC slave so that speed is computed in the MIDI I/O context, not process() context
git-svn-id: svn://localhost/ardour2/branches/3.0@6233 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-12-01 01:08:56 +00:00
Carl Hetherington
63f5e14e01 Fix double-delete crash.
git-svn-id: svn://localhost/ardour2/branches/3.0@6232 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-12-01 00:58:01 +00:00
Carl Hetherington
273c35e3a9 Fix potentially uninitialised variable.
git-svn-id: svn://localhost/ardour2/branches/3.0@6231 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-12-01 00:53:36 +00:00
Carl Hetherington
89c8f18f5e Modify assertion; as far as I can see, ensure_buffers makes no attempt to reduce the
number of available buffers, even if it is requested.  So in that case the old
assertion will fire erroneously.


git-svn-id: svn://localhost/ardour2/branches/3.0@6229 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-12-01 00:08:32 +00:00
Carl Hetherington
4f445eab11 Remove internal sends to an aux bus when it is removed.
git-svn-id: svn://localhost/ardour2/branches/3.0@6228 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-11-30 23:34:48 +00:00
Carl Hetherington
fddc11f556 Various optimisations to speed up rec-enable.
git-svn-id: svn://localhost/ardour2/branches/3.0@6227 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-11-30 23:16:28 +00:00
cbf900d71f show qtr MTC bytes before they are dispatched as a signal, even more
git-svn-id: svn://localhost/ardour2/branches/3.0@6225 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-11-30 19:11:04 +00:00
d1a75f494f show qtr MTC bytes before they are dispatched as a signal
git-svn-id: svn://localhost/ardour2/branches/3.0@6224 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-11-30 19:01:13 +00:00
c925d32474 more debugging tweaks
git-svn-id: svn://localhost/ardour2/branches/3.0@6223 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-11-30 18:49:02 +00:00
724f87a984 more debugging tweaks
git-svn-id: svn://localhost/ardour2/branches/3.0@6222 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-11-30 18:32:59 +00:00
13e96a8cc7 more debugging tweaks
git-svn-id: svn://localhost/ardour2/branches/3.0@6221 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-11-30 17:49:36 +00:00
b03af3dc58 less sensitive locate when master/slave delta is too big
git-svn-id: svn://localhost/ardour2/branches/3.0@6220 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-11-30 17:38:32 +00:00
ce0757b604 debug output fixes
git-svn-id: svn://localhost/ardour2/branches/3.0@6219 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-11-30 17:35:25 +00:00
2c4fa9e19b session has no frames_per_cycle() method
git-svn-id: svn://localhost/ardour2/branches/3.0@6218 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-11-30 17:09:50 +00:00
1ab5662166 try locating when master is way ahead or behind the slave (ardour)
git-svn-id: svn://localhost/ardour2/branches/3.0@6217 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-11-30 17:05:36 +00:00
0afbd9c335 cut-n-paste coding error
git-svn-id: svn://localhost/ardour2/branches/3.0@6216 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-11-30 16:53:10 +00:00
6a847f553c add slave,transport and event debugging traces
git-svn-id: svn://localhost/ardour2/branches/3.0@6215 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-11-30 16:12:13 +00:00
d404b9fc58 move some debug trace support code around to a more sane location
git-svn-id: svn://localhost/ardour2/branches/3.0@6214 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-11-30 13:38:38 +00:00
acdc88f279 attempt to remove confusion and errors caused by unclear semantics of _is_embedded for FileSources; member renamed _within_session, and is now ALWAYS determined by the _path of the FileSource, never by the creator
git-svn-id: svn://localhost/ardour2/branches/3.0@6213 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-11-30 13:16:38 +00:00
afd9fc30e5 new rc config param, try-link-for-embed, controls whether we try hard linking for embedding files into a session
git-svn-id: svn://localhost/ardour2/branches/3.0@6210 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-11-30 13:12:41 +00:00
b7341e0026 debug flag for MTC; make ardour/timecode.h simply include the "authoritative" one in libs/surfaces/control_protocol
git-svn-id: svn://localhost/ardour2/branches/3.0@6209 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-11-29 22:08:18 +00:00
34773ee5c0 provide operator<< for Timecode::Time
git-svn-id: svn://localhost/ardour2/branches/3.0@6208 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-11-29 22:06:51 +00:00
Carl Hetherington
515d19c745 Implement 2532: option to show tracks with regions under the playhead.
git-svn-id: svn://localhost/ardour2/branches/3.0@6207 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-11-29 12:47:59 +00:00
b88e7fdcca Move is_embedded calculation to a single place.
git-svn-id: svn://localhost/ardour2/branches/3.0@6206 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-11-28 22:36:06 +00:00
Carl Hetherington
1e424e1146 All plugin activate() method when required for copy & paste operations. Fixes segfaults on drag and drop of plugins between routes.
git-svn-id: svn://localhost/ardour2/branches/3.0@6203 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-11-28 02:39:16 +00:00
673a995e5c add ctrl-click behaviour to DndVBox, though not generalized to use primary/secondary keyboard mods etc. etc.
git-svn-id: svn://localhost/ardour2/branches/3.0@6202 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-11-28 02:19:13 +00:00
74558ddda7 don't be using engine->jack() unconditionally in Port methods
git-svn-id: svn://localhost/ardour2/branches/3.0@6196 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-11-28 00:53:54 +00:00
51693a3a58 tracing and small fixes to improve object destruction pathways
git-svn-id: svn://localhost/ardour2/branches/3.0@6195 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-11-28 00:49:04 +00:00
e9c1fe206d MMC related fixes
git-svn-id: svn://localhost/ardour2/branches/3.0@6192 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-11-28 00:39:03 +00:00
e5b6e06f83 get closer to carl's original boost shared_ptr debug idea by just tracking actual shared_ptr constructors+destructors
git-svn-id: svn://localhost/ardour2/branches/3.0@6190 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-11-27 17:30:39 +00:00
7c09916b05 switch Route::fed_by from shared_ptr to weak_ptr and thus begin to allow Route destructors to be called
git-svn-id: svn://localhost/ardour2/branches/3.0@6189 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-11-27 17:29:27 +00:00
Carl Hetherington
b3d86acf38 Fix various crashes on session close.
git-svn-id: svn://localhost/ardour2/branches/3.0@6186 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-11-26 13:26:30 +00:00
Carl Hetherington
8cfc9679af Fix typo to fix #2936.
git-svn-id: svn://localhost/ardour2/branches/3.0@6182 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-11-26 01:13:15 +00:00
Carl Hetherington
eb5ca30817 Rename internal sends when their send-to bus changes.
git-svn-id: svn://localhost/ardour2/branches/3.0@6181 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-11-26 00:14:27 +00:00
Carl Hetherington
47b8fa2169 Give Processor::run a new parameter to say whether or not the run method must leave
the passed-in buffers valid.  In the case where the main outs delivery is the last
processor in a route, this is not necessary (and wasteful).  If another processor
(e.g. a meter) follows the main outs, the passed-in (scratch) buffers must be valid
or the meter will get garbage data.

Fixes meters displaying phantom signals in some cases.


git-svn-id: svn://localhost/ardour2/branches/3.0@6180 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-11-25 23:29:52 +00:00
Carl Hetherington
fe59ade874 Seconds out, the people vs. the port matrix, round 7.
Some spacing adjustments.  Remove the hacky RouteBundle which caused more problems
than it solved.  Put notebook tabs close to the headings in the matrix.  Some other
minor tweaks.


git-svn-id: svn://localhost/ardour2/branches/3.0@6179 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-11-25 23:24:02 +00:00
926f53244d carl's wondrous DnD VBox patch - processor boxes are now vboxes and not listviews - which included a couple of minor marker/time axis view patches for opaqueness etc.
git-svn-id: svn://localhost/ardour2/branches/3.0@6174 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-11-25 14:37:20 +00:00
b0e41486f3 debug flag for session destruction and waf option for boost SP debug
git-svn-id: svn://localhost/ardour2/branches/3.0@6171 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-11-25 14:34:17 +00:00
2b42f32531 tweaks and tuneups of the boost debug stuff - still not done, need to track "scope" for grouping output properly
git-svn-id: svn://localhost/ardour2/branches/3.0@6163 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-11-24 00:09:15 +00:00
Carl Hetherington
ad7eb67a13 Make meter falloff rate default to a value that is one of the configuration options.
git-svn-id: svn://localhost/ardour2/branches/3.0@6161 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-11-23 22:49:16 +00:00
Carl Hetherington
94cdb91ec6 Prevent Send::set_state being called twice when constructing InternalSends, thereby eliminating a warning about send ID.
git-svn-id: svn://localhost/ardour2/branches/3.0@6160 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-11-23 20:44:42 +00:00
Carl Hetherington
2256c2e534 Fix incorrect call of Send constructor with Delivery::Role passed to state version parameter.
git-svn-id: svn://localhost/ardour2/branches/3.0@6158 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-11-23 18:09:33 +00:00
47c88ff7d1 support for MMC track mute register, in addition to existing track record status register
git-svn-id: svn://localhost/ardour2/branches/3.0@6156 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-11-23 17:34:11 +00:00
5cfeaf4102 boost shared pointer debugging, from an idea by carl hetherington
git-svn-id: svn://localhost/ardour2/branches/3.0@6155 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-11-23 17:33:39 +00:00
7fdfa981b5 get "solo safe" back in action again
git-svn-id: svn://localhost/ardour2/branches/3.0@6149 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-11-21 19:33:09 +00:00
3ef1fe2493 include stdint.h to allow uint32_t in custom cell renderer pixbuf multi
git-svn-id: svn://localhost/ardour2/branches/3.0@6148 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-11-21 19:29:38 +00:00
7ec2888c32 new multistate custom cell pixbuf renderer
git-svn-id: svn://localhost/ardour2/branches/3.0@6147 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-11-21 19:25:54 +00:00
9fa51e19b6 some provisional support for "real" solo-isolate behaviour, subject to more discussions with mr. oofus and others
git-svn-id: svn://localhost/ardour2/branches/3.0@6145 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-11-21 17:20:57 +00:00
78503905d7 make sure that delivery processors in a soloed route keep working when the route is soloed ; fiddle with sensitivity of mixer strip output button when displaying sends
git-svn-id: svn://localhost/ardour2/branches/3.0@6139 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-11-20 21:43:19 +00:00
8f7f171877 make strip-as-GUI-for-send work for metering too ; frame around session summary widget ; tooltip for editor group tabs ; route group dialog name entry is now activatable (return == click on ok)
git-svn-id: svn://localhost/ardour2/branches/3.0@6137 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-11-20 15:26:34 +00:00
648450781b reset aux send menu item as appropriate; make sure that Aux role for any delivery object is saved/restored correctly
git-svn-id: svn://localhost/ardour2/branches/3.0@6135 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-11-19 21:49:42 +00:00
23c79d8503 add new Graph debug bit ; make adding aux sends really work
git-svn-id: svn://localhost/ardour2/branches/3.0@6132 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-11-19 17:06:00 +00:00
281d6c1bbd maintain send names across session save/restore
git-svn-id: svn://localhost/ardour2/branches/3.0@6131 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-11-19 13:41:34 +00:00
bd064938c4 some plugin preset handling fixes from 2.X
git-svn-id: svn://localhost/ardour2/branches/3.0@6130 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-11-19 12:38:15 +00:00
b99b507be9 add track/bus now allows specifying aux or direct bus role; processor box menus sort of kindof allow New Aux -> Aux Bus
git-svn-id: svn://localhost/ardour2/branches/3.0@6128 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-11-19 04:25:46 +00:00
Carl Hetherington
2feede2e8c Cleanup previous commit.
git-svn-id: svn://localhost/ardour2/branches/3.0@6127 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-11-18 20:45:06 +00:00
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
dd4565801b Trim cruft.
git-svn-id: svn://localhost/ardour2/branches/3.0@6125 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-11-18 19:59:02 +00:00
Carl Hetherington
477bc772be Make BufferSet::is_silent work so that session silent_buffers are correctly silenced, preventing feedback from occurring with plugins that output non-zero values for zero inputs.
git-svn-id: svn://localhost/ardour2/branches/3.0@6124 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-11-18 17:58:38 +00:00
753c66a786 two more debug trace options
git-svn-id: svn://localhost/ardour2/branches/3.0@6123 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-11-18 17:23:34 +00:00
964e3ee825 lock processor list and reconfigure processors after moving meter or control outs around in the list
git-svn-id: svn://localhost/ardour2/branches/3.0@6121 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-11-18 15:04:59 +00:00
0f313672f5 use a simpler (and likely correct) round-to-nearest-bar implementation
git-svn-id: svn://localhost/ardour2/branches/3.0@6119 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-11-18 14:40:46 +00:00
ef92349187 bring back full mute control (pre/post/control/main) via mute button context click
git-svn-id: svn://localhost/ardour2/branches/3.0@6116 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-11-18 13:25:13 +00:00
a0dfdef24a enable ignore-sends-for-solo-propagation change
git-svn-id: svn://localhost/ardour2/branches/3.0@6114 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-11-17 23:11:42 +00:00
d37a00ae13 disabled changes to make solo propagation ignore sends
git-svn-id: svn://localhost/ardour2/branches/3.0@6113 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-11-17 22:29:43 +00:00
Carl Hetherington
d0cc6edadf Fix error in last commit.
git-svn-id: svn://localhost/ardour2/branches/3.0@6106 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-11-17 01:46:00 +00:00