Paul Davis
f900711136
port changes to ARDOUR::Location and ARDOUR::Locations APIs from Tracks to Ardour.
...
Fixes deadlocks caused by mutex on Locations list, and clarifies the purposes and uses of the class-level and
object-level change-related signals.
2014-10-24 12:18:46 -04:00
Paul Davis
2f4a8cf693
avoid const cast warning
2014-10-24 12:18:46 -04:00
Paul Davis
65036cf3eb
add #include that had gone unnoticed before
2014-10-24 12:18:46 -04:00
Robin Gareus
b52304661f
fix screwup in prev commit-diff
2014-10-24 17:19:28 +02:00
Robin Gareus
5e7f935a27
add explicit construction (for MSVC) and some debug messages
2014-10-24 17:15:03 +02:00
Robin Gareus
25a6aa57a3
fix jack transport return value
2014-10-24 16:19:44 +02:00
Robin Gareus
e025cc008c
use x-macros to simplify weak-jack implementation
2014-10-24 15:18:38 +02:00
Robin Gareus
ad09be8c78
fix libjack names
2014-10-24 14:36:04 +02:00
Robin Gareus
1e357b5109
fix 64bit compile with old gcc
2014-10-23 20:42:02 +02:00
Paul Davis
2bc3ec6ab3
add new Gtk2mmext::EmScale class for measuring font-based sizing
2014-10-23 13:21:04 -04:00
Robin Gareus
9a60bb58b2
skip unavailable backends early on.
2014-10-23 16:53:14 +02:00
Robin Gareus
d991bb10ca
add 'available' interface to the AudioBackendInfo
...
If a backend can be loaded, it does not mean that it can be used;
e.g. weak-linked jack-backend if libjack is not available.
2014-10-23 16:53:14 +02:00
Robin Gareus
f3ff1b9669
weak/runtime jack linking: load libjack dynamically at runtime
2014-10-23 16:53:13 +02:00
Robin Gareus
730e09ce65
another round of compiler warning fixes
2014-10-23 05:31:40 +02:00
Robin Gareus
c6a3d6bc48
small round of compiler warning fixes
2014-10-23 03:43:04 +02:00
Robin Gareus
f7211ff8f7
fix jack/mingw compilation
2014-10-22 23:57:55 +02:00
Paul Davis
679356c5ee
fix delivery of MMC events under split process cycle conditions
2014-10-22 17:07:11 -04:00
Paul Davis
e32a8e8260
require a timestamp on MIDI::MachineControl::send()
2014-10-22 17:07:11 -04:00
Paul Davis
a289947b4f
fix timestamps for immediate MIDI events to deal with split process cycle conditions
2014-10-22 17:07:11 -04:00
Paul Davis
bd97450ef8
error/debug output when dropping MIDI event due to timing now shows MIDI bytes
2014-10-22 17:07:11 -04:00
Paul Davis
aafd1d77e9
remove unused code
2014-10-22 17:07:11 -04:00
Paul Davis
68458cde69
fix all 4 backends' failure to include the main "backend" thread when computing ::in_process_thread()
2014-10-22 17:07:11 -04:00
Paul Davis
aa0effb4cb
ignore negative value locates and MMC locate commands
2014-10-22 17:07:11 -04:00
Robin Gareus
3ddd797e46
remove obsolete jack includes in libardour
2014-10-22 16:56:12 +02:00
Robin Gareus
fbaae45eb1
stopgap solution for VST plugins that call audioMasterWantMidi during effOpen
...
audioMasterWantMidi needs plugin _info, but _info is currently only
available after instantiating the plugin in LXVSTPluginInfo::load().
vstfx_instantiate() -> effOpen -> [plugin] -> vst_callback(..,opcode=6,..) -> crash
2014-10-20 23:30:49 +02:00
Robin Gareus
825e2c823c
add support for VST plugins without any parameters
2014-10-20 23:30:48 +02:00
Robin Gareus
ffde2fb5f9
OS 10.10 compile fixes
...
* fix clang pickiness regarding boolean
* ignore ‘verify’ macro
* tested with Apple LLVM version 6.0 (clang-600.0.51) (based on LLVM 3.5svn)
2014-10-19 23:15:13 +02:00
Robin Gareus
ab445a0e28
windows: don’t popup message box when libjack is not found
2014-10-17 10:58:49 +02:00
Robin Gareus
d34bd9e6a0
fix midi automation sliders
...
Allow controls to work without a list. see also 34c1465 and b469cd2
2014-10-16 21:21:45 +02:00
Paul Davis
0477d11476
when cancelling an import, call DropReferences so that the Session forgets about the new sources.
...
Not doing this leaves the sources in the session list and then the session fails to open on next load
because the files are not there.
Arguably we should not announce the new files until they are complete, but this is a simpler fix for now.
2014-10-15 21:12:35 -04:00
Paul Davis
49b9d22217
remove debug output
2014-10-15 19:08:46 -04:00
Paul Davis
5d53335300
when flushing notifications/signals from an ARDOUR::Playlist, emit the RegionAdded/ContentsChanged signals first so that when LayersChanged is sent, the receivers know about all the new regions
2014-10-15 18:44:22 -04:00
Paul Davis
ab658d7ca1
add mutex/lock to all Evoral::SMF methods that use _smf/libsmf, to avoid inadvertent corruption via multithreaded access.
...
Serialization of Session::save_state() will already protect against most of this, but there is really no
good reason why Evoral::SMF's API should require single-threaded/explicit serialization.
2014-10-15 18:44:22 -04:00
Ben Loftis
7e764ea405
allow internal generators to make noise, even if we are not rolling, and using auto-input
2014-10-15 11:09:00 -05:00
Robin Gareus
8dc4187f1a
allow zero-latency sessions
...
e.g. sessions with disconnected master-out,
or Dummmy (both jack and ardour) with no latency.
2014-10-15 15:49:49 +02:00
Paul Davis
76edbdf5dc
make backend selection by product name more explicit
2014-10-14 16:58:11 -04:00
Paul Davis
d3a4a92bd5
Containers should not consider the size of invisible items when computing their own bounding boxes.
...
This fixes issues related to the rulers container believing it was taller than it actually is, and possibly other issues also
2014-10-13 22:40:08 -04:00
Paul Davis
b945fa69ba
remove default/testing tooltips from the canvas
2014-10-13 13:53:07 -04:00
Paul Davis
7263877f06
tweak implementation of Session::audible_frame() to be a little more defensible, and correct problems with record align/playhead position while disconnected from physical outputs
2014-10-12 23:09:35 -04:00
Robin Gareus
848db8fbd5
fix scanning of VST shell plugins
2014-10-11 22:19:23 +02:00
Robin Gareus
250ea066ef
revert 8ca546e - original version was correct (note added)
2014-10-11 15:00:52 +02:00
Robin Gareus
8525a0b258
add a Dummy Backend Loopback mode:
2014-10-11 14:47:35 +02:00
Robin Gareus
8ca546ec88
fix LTC generator latency compensation.
2014-10-11 11:15:08 +02:00
Paul Davis
fa9780ba67
subtle changes to accomplish two goals (1) playhead should stop where the user pressed stopped (2) captured regions should end where the playhead ends
2014-10-10 13:22:50 -04:00
Paul Davis
d1e303247b
ensure registration of all SessionEvent types
2014-10-10 13:22:50 -04:00
Paul Davis
446a8b69d9
make output of SessionEventManager::dump_events() a bit more readable
2014-10-10 13:22:50 -04:00
Robin Gareus
472900f4ff
cleanup unused nested regions:
...
This and two previous commits fixes #5979
2014-10-10 14:12:48 +02:00
Robin Gareus
5b25dbba03
Properly count nested regions
2014-10-10 14:11:43 +02:00
Robin Gareus
9df1d1ef2e
re-reference regions during uncombine - #5979
2014-10-10 14:05:49 +02:00
Robin Gareus
b4cf5e279b
fix dup free in waves/midi:
...
The PortMidi queue just holds a pointer to the midi events.
The same Midi events are free()d during WavesMidiBuffer::clear()
which is called at cycle start for every buffer and in the dtor
of the WavesMidiBuffer.
2014-10-09 09:48:54 +02:00