04bf9d1e95
fix newly-appearing crash-at-close caused by muddled thinking in pbd/pthread_utils
...
threads created with this code can now just return a value as they normally would, and the
infrastructure will ensure cleanup. there is no longer any reason to call pthread_exit_pbd()
and so that has been removed.
2013-08-15 11:44:47 -04:00
588cc3af74
check master sources when determining whether a region uses a source. should fix #5618
2013-08-15 11:43:37 -04:00
6bcdf4f0f1
fix merge issues with master
2013-08-14 13:10:59 -04:00
e711dfae12
remove misleading + incorrect documentation
2013-08-14 12:44:59 -04:00
2de09888b6
some const_cast<> additions for OS X where gcc believes that volatile int* means const int*
2013-08-14 12:40:49 -04:00
8d8770f4cc
remove JACK midi system stuff from jack_utils, because we're not going to use it (for a while, at least)
2013-08-14 12:40:10 -04:00
7b34b6a3f6
provide clock_gettime() implementation for lovely OSX, which doesn't have it
2013-08-14 12:39:34 -04:00
dfac01bdd4
don't bother with old MIDI port data in ardour.rc
...
result: we lose connections to global MIDI ports in older sessions. may fix this in the future
2013-08-13 22:06:31 -04:00
07c63fb2d7
save and restore all ardour-owned MIDI ports
...
still need to check on MCU port status
2013-08-13 21:59:05 -04:00
e87424f514
re-enable MIDI tracing for ARDOUR::MidiPort
2013-08-13 13:24:05 -04:00
a5a75d5e0d
fixes to get MTC (and probably MIDI clock) slaving working again
...
incoming MIDI data has to be parsed EVERY process cycle, not just when Slave::speed_and_position() is called.
The private MIDI::Parser owned by the MTC and MClck slaves was irrelevant, since the port has its own.
See comments in midi_port.h on the strangled inheritance heirarchy.
2013-08-13 12:53:28 -04:00
7a431f892e
Move curve test file handling in main() until after ARDOUR::init is called
...
This means it doesn't need to call PBD::ID::init directly, which it now
shouldn't be doing
2013-08-13 20:15:47 +10:00
611058bf58
Remove call to PBD::ID::init as it is now done via ARDOUR::init
2013-08-13 20:15:47 +10:00
63745512bc
Call setup_libpbd_enums in PBD::init for portability
2013-08-13 20:15:47 +10:00
1db894f886
Call Gio::init from PBD::init instead of ARDOUR::init
...
PBD needs Gio for PBD::copy_file and perhaps others
2013-08-13 20:15:47 +10:00
55c6d4f2be
Call PBD::init in ARDOUR::init and PBD::cleanup in ARDOUR::cleanup
2013-08-13 20:15:47 +10:00
29193c76cc
Add PBD::init and PBD::cleanup
...
A bit of refactoring to move initialization of libpbd into libpbd
rather than rely on "client" code(ui,libardour,tests etc) to do it
2013-08-13 20:15:47 +10:00
de4b24b162
Move initialization of libardour from ARDOUR_UI class into main()
2013-08-13 20:15:47 +10:00
9d340af10d
Prevent libardour from being initialized more than once
...
This is not thread safe of course, it is not intended to be.
This was implemented as at one stage ARDOUR::init was being called multiple
times in the testsuite which was causing a subtle bug that took some
time to track down.
2013-08-13 20:15:47 +10:00
d51eba1162
Change ARDOUR::init return type to bool type for success/failure
2013-08-13 20:15:47 +10:00
a5a3f713d5
assorted extra debug output for MTC
2013-08-12 05:40:11 -04:00
4c4376d5dd
fix thinko in 5dee49e19
2013-08-11 17:26:34 +02:00
116694a2cb
fix 5dee49e19
(32/64 bit unsigned int compatibility)
2013-08-11 17:19:04 +02:00
5dee49e194
make LV2 communication buffers independent from jack-midi buffer-size
...
fixes issues with plugin communication that are common with
jack1 use due to its very small midi-buffers.
2013-08-11 15:10:41 +02:00
50bbf3f656
fix output latency option in jack command line
2013-08-10 09:25:18 -04:00
9680c345c4
don't write a bogus jack cmdline ... leave the existing ~/.jackdrc file alone if an error creating the cmdline occurs
2013-08-09 18:35:07 -04:00
862315ec2a
actually write JACK command line out to ~/.jackdrc so that settings take effect
2013-08-09 18:11:04 -04:00
4b9289e17e
don't waste time with sending MTC or MMC after stop if we're disconnected from the engine.
...
Also, add note about threading oddities with send_mmc_locate() being called from ::non_realtime_stop() which gets
called from a *realtime* context.
2013-08-09 18:06:08 -04:00
cec2a3da36
allow ardour to exit after JACK disconnects us
2013-08-09 16:57:23 -04:00
f0fcda2044
Merge branch 'master' into audioengine
2013-08-09 16:29:23 -04:00
4dc1bbff35
revert font sizing on audio/midi setup dialog
2013-08-09 16:01:14 -04:00
8685d8eb47
remove use of jack_get_time() from ARDOUR::get_microseconds(), use clock_gettime() instead since this function is never used in reference to a backend clock
2013-08-09 15:40:46 -04:00
ca76496ef3
more purging of JACK as an explicit name from libardour
2013-08-09 13:56:23 -04:00
d0381b902c
remove more naming that refers to JACK
2013-08-09 13:39:33 -04:00
55e52bcbd5
remove another naming that refers to JACK
2013-08-09 13:38:09 -04:00
c4227ca706
fix typos
2013-08-09 19:35:27 +02:00
e5424826e5
updated monitor modes doc (new version from Chris with IDs)
2013-08-09 19:34:32 +02:00
8960ebcdf9
remove another naming that refers to JACK
2013-08-09 13:27:05 -04:00
521f8eb776
more sensible ALSA device names now in use
2013-08-09 13:26:40 -04:00
fc040a72e9
use original names for ARDOUR MIDI "persistent" ports (MMC, MTC, etc)
2013-08-09 13:03:57 -04:00
5abeb799cf
try new code from rui/qjackctl for names of ALSA PCM devices
2013-08-09 13:03:21 -04:00
a34d707175
split up session code that uses parts of the JACK API (timebase + session event handling) and connect it directly to the jack audiobackend
...
i've made the audiobackend call the session directly so that only one object (ARDOUR::Session) has a need for the JACK types
and only one .cc file (session_jack.cc) needs jack.h. having ARDOUR::AudioEngine act as an intermediary would be cleaner
conceptually but would end up causing two different ARDOUR objects to have jack types in their own API.
2013-08-09 12:15:37 -04:00
da74519911
fix display of latency
2013-08-09 11:23:15 -04:00
c9f6b0dab5
the JACK audio backend shared object depends on libasound (ALSA) on linux, so it requires explicit linkage
2013-08-09 11:04:04 -04:00
f44e0f33af
a few more visual tweaks and simplifications for audio/midi setup
2013-08-09 00:50:41 -04:00
743bb5066e
some rearrangements and details for the engine dialog
2013-08-08 23:31:35 -04:00
ab39a09b86
temporarily ignore AudioEngine::Halted when GUI asks to disconnect from JACK, to avoid warning dialog
2013-08-08 22:28:31 -04:00
fcb76c8c05
fix freewheeling
2013-08-08 22:12:52 -04:00
3070cd723b
fix crashes, clean up session code warmup and other details in audioengine
2013-08-08 19:32:56 -04:00
111d35c9c7
add methods to queue full MTC and SPP messages, now that they are synchronous
2013-08-08 19:31:10 -04:00