13
0
Commit Graph

172 Commits

Author SHA1 Message Date
b376f6bc45 auto-initialize weak-jack
(not needed with ardour - but keep code in sync with
https://github.com/x42/weakjack)
2014-11-13 21:31:09 +01:00
b9fc616538 prepare for JACK meta-data API 2014-11-13 21:30:13 +01:00
65fa38103d make new jack thread API functions optional 2014-11-13 21:29:34 +01:00
7b39e0893a add symbol debug information to weak-jack 2014-11-13 21:28:33 +01:00
3e702c5520 yet another build fix
on x86_64 weak_libjack.c needs -fPIC which needs cflags which need 'c' :)
2014-11-13 01:02:09 +01:00
a6ceff61dd proper solution for variable-args jack_client_open() 2014-10-25 17:28:13 +02:00
3d39689769 Some minor bits of casting to keep MSVC happy when building 'backends/jack/weak_libjack.c' 2014-10-24 18:45:51 +01:00
b52304661f fix screwup in prev commit-diff 2014-10-24 17:19:28 +02:00
5e7f935a27 add explicit construction (for MSVC) and some debug messages 2014-10-24 17:15:03 +02:00
25a6aa57a3 fix jack transport return value 2014-10-24 16:19:44 +02:00
e025cc008c use x-macros to simplify weak-jack implementation 2014-10-24 15:18:38 +02:00
ad09be8c78 fix libjack names 2014-10-24 14:36:04 +02:00
1e357b5109 fix 64bit compile with old gcc 2014-10-23 20:42:02 +02:00
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
f3ff1b9669 weak/runtime jack linking: load libjack dynamically at runtime 2014-10-23 16:53:13 +02:00
f7211ff8f7 fix jack/mingw compilation 2014-10-22 23:57:55 +02:00
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
8d59afb048 copy over current Waves version of their backend, along with minor changes in libs/ardour and libs/backend/jack to fit with API changes 2014-09-30 21:00:34 -04:00
8d0cba3384 Use PBD::find_files_matching_pattern instead of other variations 2014-06-25 12:40:10 -04:00
da912f7ed4 add AudioEngine API to configure individual MIDI devices 2014-06-13 11:47:51 +02:00
67c43d4b49 Don't use module versioning with jack backend in the mingw build 2014-06-07 14:31:32 +10:00
a907d3455e break out ALSA related functions into libardouralsautil 2014-06-04 19:16:37 +02:00
104adebea6 if the user chooses to stop the jack-backend, mark it as stopped. Don't display the "..was shutdown .. was not fast enough.." message. 2014-06-04 17:17:14 +02:00
daaa59b533 Revert "When writing '.jackdrc' make sure we enclose any device names in
quotation marks". This patch is incorrect. The string quoting must be done ONLY
when creating a string to be written to ~/.jackdrc or similar, not when
constructing an argument list.

This reverts commit 5626ea2b1f.
2014-06-03 20:08:26 -04:00
5626ea2b1f When writing '.jackdrc' make sure we enclose any device names in quotation marks
(in Windows, device names almost always contain whitespace)
2014-06-03 14:04:10 +01:00
458d4dc6de (Windows) Add support for finding the bundled version of Jack which comes with Mixbus
A few things need to be tested / completed:-
    1) The code is currently guarded by #ifdef COMPILER_MSVC. This is just precautionary. If it builds okay with MinGW ,the guard can be removed.
    2) Windows Playback and Capture devices almost always have different names. This needs to get accommodated in our Backend dialog (as in Mixbus)
    3) Windows Playback and Capture devices will almost always contain spaces. We need to accommodate this when writing to .jackdrc (surround them in quote marks)
2014-05-27 14:48:44 +01:00
5b4cb15dfc Remove an unnecessary #define 2014-05-27 13:24:51 +01:00
e2cecadd01 Use PLATFORM_WINDOWS (in preference to WIN32) for consistency with the other libraries 2014-05-27 09:51:39 +01:00
66559cd795 Add AudioBackend::info() method to retrieve AudioBackendInfo object
Goal is to be able to call AudioBackendInfo::already_configured() from the right place.
2014-05-01 09:14:25 -04:00
058986f77b finish unfinished work at basing all install paths on the program name 2014-04-28 21:11:08 -04:00
e6b56f3447 fix undefined value, support netjack2 2014-03-23 02:26:37 +01:00
9dbdac2a19 remove unused and unimplementable audio engine sample format code 2014-02-24 14:46:19 -05:00
658bb3ccd4 finished merge of cairocanvas with windows and windows+cc branches 2014-01-10 17:11:10 -05:00
3020b224fa Merge windows+cc branch into cairocanvas branch. Not finished, need to now merge windows branch to get changes from there 2014-01-10 16:07:57 -05:00
36c233fe6c Merge branch 'master' into cairocanvas 2014-01-07 21:37:48 -05:00
2163467d31 add M-Audio 2496 as a recognized card for the mudita24 control panel/app.
(Yes, this hard coding thing is awful)
2014-01-06 11:35:57 -05:00
1676789907 fix merge conflicts from master 2013-12-12 10:06:59 -05:00
Nils Philippsen
a86b66181a ignore "unofficial" states in jack_sync_callback() 2013-12-09 17:56:06 +01:00
59da788793 Merge branch 'master' into cairocanvas 2013-12-05 17:50:28 -05:00
2ba2a50dec Merge branch 'master' into windows 2013-12-04 11:50:36 -05:00
ce7bfb489c change "cpu" in cpu load backend functions 2013-12-04 11:48:31 -05:00
0258f2958b switch from using Sleep/usleep to Glib::usleep() 2013-12-03 10:24:05 -05:00
a420328354 Reinstate call to package config for JACK backend
Not sure how this got lost, merge perhaps.
2013-12-03 20:28:17 +10:00
0f6a65e405 Use Sleep instead of usleep on windows in JACK backend 2013-12-03 20:28:10 +10:00
f74521b0cd Remove command line string quoting when forming jack command line on windows
This used to be necessary when we started the JACK server but now that we
write a .jackdrc it only causes problems.

I have fixed this before in some branch, must have been lost in a merge.
2013-12-02 21:28:19 +10:00
a9fc076d2e Waf options are not valid during build stage so use environment variable 2013-12-02 21:26:28 +10:00
18a59dd7fa Include pbd/localtime_r.h in session_jack.cc for MinGW 2013-12-02 21:22:14 +10:00
3c98de9ce4 fix merge with master 2013-11-29 22:31:29 -05:00
15cee60021 merge and resolve conflict with master 2013-11-29 22:29:25 -05:00
1190f1d0e0 make JACK backend return the right set of values when asked for buffer sizes or sample rate of a device other than the one in use 2013-11-27 17:41:54 -05:00
680c64246e Merge branch 'master' into cairocanvas 2013-11-27 16:19:01 -05:00
d63e8ba0e8 Merge branch 'master' into windows 2013-11-27 16:18:22 -05:00
611d93830a add 0.5 second sleep after closing JACK connection so that next startup/connect is likely to work (allowing JACK time to shutdown). Ugh 2013-11-27 15:25:10 -05:00
56716a1f28 add error check to call to PortManager::reestablish_ports 2013-11-27 15:24:24 -05:00
dc4a984cd6 move AudioBackend::_start() into protected, and expand a bit on documenting ::start() vs ::_start() 2013-11-27 14:27:27 -05:00
08371ae2cf resolve merge with master (?) 2013-11-26 10:24:51 -05:00
0cca272431 try to fix various warnings from gcc when optimization flags are enabled 2013-11-04 21:32:41 -05:00
ea1ccb869a fix merge with master 2013-10-31 13:16:51 -04:00
7fec991077 fix thinko in declaration of ARDOUR::PortEngine::get_port_by_name() 2013-10-28 09:46:59 -04:00
a18db90264 Report an error to stderr if creation of jack command line fails.
Output a simple message to stderr if get_jack_command_line_string() still
fails for any reason.
2013-10-23 19:32:54 +01:00
70f0cfdb3b Don't ever pass -d for device name to dummy jackd driver 2013-10-23 19:32:54 +01:00
903d728b9c Fix setting playback & capture channel counts for jackd dummy backend.
Unlike all the other jack backends which allow setting the number of inputs and
outputs with -i & -o, the dummy backend uses -P & -C for this. Make the jackd
command line use these options when the dummy backend is requested with a
specified input or output channel count.
2013-10-23 19:29:57 +01:00
ac81ea642e Don't fail jackd command line creation for jack dummy backend.
The dummy jackd backend doesn't require a device to be specified, so much
of the error checking in get_jack_command_line_string() is irrelevant, if
not actively wrong, when the dummy backend is specified.

Only perform the checks if the chosen jack backend is not the dummy.
2013-10-23 19:27:09 +01:00
d135c4dc3a fix merge conflicts with master 2013-10-23 08:47:57 -04:00
664e715a00 merge from master 2013-10-22 15:29:44 -04:00
cfe42bc4ea fix issues with recording while synced to JACK (non-pure-virtual method added to AudioBackend) and remove pause() from AudioEngine/AudioBackend APIs 2013-10-21 16:24:24 -04:00
b855e5f322 Merge remote-tracking branch 'remotes/origin/exportvis' into windows+cc
Conflicts (hopefully resolved):
	gtk2_ardour/wscript
	libs/ardour/ardour/audioregion.h
	libs/ardour/ardour/debug.h
	libs/ardour/ardour/directory_names.h
	libs/ardour/ardour/filesystem_paths.h
	libs/ardour/ardour/session_event.h
	libs/gtkmm2ext/gtkmm2ext/utils.h
	libs/panners/1in2out/wscript
	libs/panners/2in2out/wscript
	libs/panners/vbap/wscript
	libs/pbd/pbd/debug.h
	libs/pbd/pbd/file_utils.h
	libs/pbd/pbd/pathexpand.h
	libs/pbd/pbd/ringbuffer.h
	libs/pbd/pbd/ringbufferNPT.h
	libs/pbd/pbd/search_path.h
	libs/pbd/pbd/stacktrace.h
	libs/pbd/pbd/uuid.h
	libs/pbd/pbd/uuid_boost.h
	libs/surfaces/control_protocol/control_protocol/basic_ui.h
	libs/surfaces/control_protocol/control_protocol/control_protocol.h
2013-10-18 10:03:22 +01:00
61c1956ef9 add -fvisibility=hidden to evoral, and make things work 2013-10-17 15:02:20 -04:00
e5888d3983 merge with master and fix 2 conflicts 2013-10-16 22:06:56 -04:00
fb313fb174 Merge branch 'master' into windows 2013-10-16 21:57:17 -04:00
75b933eadb Merge remote-tracking branch 'remotes/origin/master' into windows+cc 2013-10-16 15:55:59 +01:00
9a630003ff fix up issues with MIDI I/O option when using jack1 or jack2's most recent options for this 2013-10-15 15:22:25 -04:00
69a8fc43e2 Merge branch 'master' into windows 2013-10-15 11:17:12 -04:00
e466ce40ad Merge branch 'master' into windows+cc
Conflicts (hopefully resolved):
	gtk2_ardour/ardour_ui.cc
2013-10-14 19:31:22 +01:00
7444ac128e fix inability to export twice 2013-10-12 11:07:57 -04:00
589ef168c1 adapt JACK audiobackend to pay attention to new _start() API related to latency measurement 2013-10-12 10:03:15 -04:00
fa71d82dda Merge branch 'windows' into windows+cc 2013-10-11 18:23:53 +01:00
cf3d8d15f0 some slightly hackish changes to make it possible to use the new internal ALSA midi client (soon to become a driver, however) 2013-10-10 16:54:46 -04:00
c96108c2e1 add API to get current MIDI option from an audio/MIDI backend 2013-10-10 16:18:00 -04:00
1bd04f8bf3 add JACK backend support for MIDI option discovery 2013-10-10 12:59:11 -04:00
2a6a16f980 merge with master, fixing conflicts in 3 wscript files 2013-10-09 14:00:42 -04:00
927ebe3b5f reduce version requirement for JACK 2013-10-08 17:12:20 -04:00
af8a1c146d move JACK configuration test(s) down to where they belong (in libs/backend/jack) 2013-10-08 16:13:39 -04:00
c98abed37f restore jack timebase master and jack session callback functionality (moved into the JACK backend) 2013-10-08 14:02:03 -04:00
7e077bdeba -arestore jack timebase master and jack session callback functionality (moved into the JACK backend) 2013-10-08 14:01:43 -04:00
300b484cf6 Merge branch 'master' into windows+cc
Conflicts (hopefully resolved):
	gtk2_ardour/ardour_ui.cc
	gtk2_ardour/ardour_ui.h
	gtk2_ardour/ardour_ui_options.cc
2013-10-06 11:56:03 +01:00
f3a22fb880 Implement JACKAudioBackend::in_process_thread 2013-10-04 18:54:54 +10:00
53ad2d187f Move processing thread list from ARDOUR::Graph into AudioBackend implementation 2013-10-04 18:53:37 +10:00
df363a4fb3 Add AudioBackendThread class to support different thread type on windows 2013-10-04 18:51:47 +10:00
c736d88a5f don't ping JACK server 4 times to see if it is already up when ardour starts 2013-09-25 22:56:28 -04:00
19bb2b33a8 Merge remote-tracking branch 'remotes/origin/cairocanvas' into windows
Conflicts (hopefully resolved):
	gtk2_ardour/marker.cc
	gtk2_ardour/midi_region_view.h
	gtk2_ardour/region_gain_line.h
	gtk2_ardour/utils.cc
	gtk2_ardour/video_image_frame.cc
	gtk2_ardour/wscript
	libs/backends/jack/wscript
2013-09-21 09:17:25 +01:00
7b96fab60e move configure-time dependency on PortAudio out of libs/ardour and into libs/backends/jack
PortAudio is currently used to get a list of device names for use with JACK on Windows.
We should find a better way to do this that avoids this kind of dependency.
2013-09-19 16:24:51 -04:00
57d24608e7 show a different audio/MIDI option screen if JACK is already running. try to fix problem with using AudioBackend::<property-value>() functions before anything has been set. 2013-09-19 15:03:20 -04:00
fd23ebd088 Merge branch 'master' into cairocanvas 2013-09-17 21:23:30 -04:00
302b08c059 Merge branch 'master' into windows 2013-09-17 21:22:56 -04:00
f51537b71d substantive changes to allow the audio/MIDI setup dialog to change settings as intended
So far only tested with JACK backend, but expected to be more correct for other backends too
2013-09-17 21:09:13 -04:00
fb45fdc052 fix conflicts and merge with master 2013-09-16 22:11:06 -04:00
045ef69ac3 Merge branch 'master' into cairocanvas 2013-09-14 16:43:02 -04:00
a1a5c779c6 fix change in waf uselib name for libardour vs. master 2013-09-14 16:42:42 -04:00
bde50d5396 really fix build issues after removal of "using" directives 2013-09-14 16:34:08 -04:00