13
0
Commit Graph

249 Commits

Author SHA1 Message Date
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
0da34e65e3 Merge branch 'master' into windows 2013-09-14 16:24:46 -04:00
25b9e266eb fix build issues after removal of "using" directives 2013-09-14 16:24:21 -04:00
60da662aff Merge branch 'master' into windows 2013-09-14 16:21:32 -04:00
f5191e6257 cerr output when JACK halt callback is executed 2013-09-14 16:18:17 -04:00
76a08ad9e9 fix return value from thread creation function when not connected to JACK 2013-09-14 16:17:49 -04:00
5cf1f7f3b2 Merge branch 'master' into windows 2013-09-13 12:35:10 -04:00
dce6b71e82 use visibility control on JACK audio backend, so that we can import this change into windows branch 2013-09-13 12:32:50 -04:00
4861eca974 Merge branch 'master' into windows 2013-09-13 11:55:56 -04:00
83a826095d update JACK backend to use new inheritance structure for AudioBackend 2013-09-13 11:21:43 -04:00
b085a79938 explanatory comment 2013-09-13 10:19:01 -04:00
c985a64d58 merge with master and fix Searchpath conflict 2013-09-12 11:40:56 -04:00
4df3666738 add AudioBackendNativeThread to serve the same role as jack_native_thread_t 2013-09-12 11:29:47 -04:00
9f2ab81df6 always add a timeout value of 200msec to jack, just like qjackctl does.
THIS IS A HACK. LONG TERM GOAL: understand why ardour gets zombified on the way up.
2013-09-11 21:00:21 -04:00
bea5434639 fix name of control app for Delta1010 2013-09-09 21:35:47 -04:00
2a89234027 move control app launching back into audio backend to allow ASIO/CoreAudio model to work; push initial state of AMS dialog to backend
Issues remain with the basic model of the AMS dialog - when is
newly chosen state pushed into the backend (which can then
modify the control app button sensitivity. This is a special
problem for this button because APIs like ASIO and CoreAudio
probably don't allow us to launch a control app for an arbitrary
device, but only one actually in use. In this sense it is
different from properties like available buffer size etc, where
we can typically query without actually using the device.
2013-09-09 21:23:12 -04:00
29c9d94dbe fix control app breakage 2013-09-09 18:06:44 -04:00
f06bab1fa3 add envy24 control app name 2013-09-09 17:10:33 -04:00
ecfeeda4b8 launching control app is now responsibility of ardour GUI, not audio backend; use ARDOUR_DEVICE_CONTROL_APP if set in the environment 2013-09-09 16:48:27 -04:00
f06187735d initial work on adding access to h/w control apps when ardour starts JACK 2013-09-09 15:17:43 -04:00
a228643e40 add can_change_{sample_rate,buffer_size}_while_running() methods to an AudioBackend
Allows the GUI and other stuff to know whether or not changing the SR/bufsize is possible while running, which is about to become useful
2013-09-09 15:17:43 -04:00
5ec69e2374 move inadvertently moved jack_slave.cc back to its rightful spot 2013-09-07 13:39:36 -04:00
f4cf283f26 move JACK audio backend to its own folder and adjust build system to reflect that (installed version may now work) 2013-09-07 11:03:57 -04:00