13
0
Commit Graph

27729 Commits

Author SHA1 Message Date
78fc6d6651
Prefix all env variable with "ARDOUR_"
In particular "CONCURRENCY" can be problematic. But in general
it's good practice to use a namespace prefix for app-specifics.
2019-07-26 16:44:29 +02:00
b759fb883e
Launch pavucontrol as PA's control app 2019-07-26 04:43:56 +02:00
7cf68eaf72
Fix time_t <> long int ambiguity (OSX gcc builds)
This fixes an issue with
* XMLNode::get_property(const char*, T&)
* XMLNode::set_property(const char*, const T&)
resulting in
 string_convert.h:77: error: 'long int' is not a class,
 struct, or union type
2019-07-26 01:58:18 +02:00
c81cbd8f30
Linux-bundle: use build-stack only
This fixes an issue with libpulse indirectly adding libasync
2019-07-25 22:37:13 +02:00
d7454714ab
Fix PA: unlock mainloop on abort 2019-07-25 21:24:36 +02:00
77fbe22e55
Package PA backend when available 2019-07-25 21:00:12 +02:00
384c97e12d
Puls der Zeit
Prototype a basic stereo-playback only pulseaudio backend.
2019-07-25 17:49:42 +02:00
d70b03ae61
Fix engine-dialog for backends without MIDI options 2019-07-25 17:49:42 +02:00
967c66790c Add device file for Behringer X-Touch One 2019-07-24 11:50:13 -05:00
771f2d2499
ALSA backend: fix play/capture device param detection 2019-07-24 16:40:40 +02:00
0fe3cba8b1
Fix ALSA available buffersize detection:
buffer-size = periods * period-size

Previously, buffersize was used for period-size.

This fixes an issue with a dedicated .asoundrc configuring a specific
period-size or buffer-size that has to be exact.
Ardour's device configuration failed in this case.

This has not been an issues since most hardware devices offer a wide
range: 8 < period-size < 262144 ; 16 < buffer-size < 524288.
Only a subset of which (32 .8192) is allowed by Ardour.
2019-07-24 16:40:32 +02:00
Nikolaus Gullotta
31ec8ce7d1 Location timestamp changes - can now sort by location creation date: gtk part 2019-07-22 15:47:17 -05:00
Nikolaus Gullotta
7d4f72174c Location timestamp changes - can now sort by location creation date: lib ardour part 2019-07-22 15:47:01 -05:00
b5a50821fc 'ARDOUR::LuaScripting::Sorter()' needs to be exportable (since it gets used outside of libardour) 2019-07-19 15:40:06 +01:00
3506600270
Refine Stem-Export selection options
Allow to exclude muted, or hidden tracks from stem-export
selection actions.
2019-07-19 02:14:09 +02:00
0d1d6d6975 remove -C,-E and -U command line options 2019-07-18 14:08:07 -06:00
b058356d1e reverse part of a previous change to session dialog
Back-button sensitive has a more complex semantic than the change
took into account
2019-07-18 13:39:56 -06:00
6f506962a7 Revert "fix use of session-creation via template, when just template name is given"
This reverts commit ce7add1481.
2019-07-18 13:38:43 -06:00
ce7add1481 fix use of session-creation via template, when just template name is given 2019-07-18 12:27:16 -06:00
4679439af9 some cleanups to the use of "require_new" in the SessionDialog
This removes some redundant code and makes the logic slightly
easier to read
2019-07-18 10:54:06 -06:00
47fcc85b19 remove debug output 2019-07-18 10:53:55 -06:00
b47df18d5c don't bother with session dialog if user has already provided the name
This recognizes that if a template is desired, it can be also be
set from the cmdline
2019-07-18 10:53:44 -06:00
5f8c9a4e60 if a user specifies just a session name (not path) and it does not exist, use the default session folder 2019-07-18 10:53:34 -06:00
473fd45ca2
Allow to use session-init/setup scripts from the commandline 2019-07-18 16:30:08 +02:00
aebdf5f00b
Fix --template commandline option
This fixed an issue with incorrect ".template" suffix on path itself,
and also correctly hides the dialog's template list.
2019-07-18 16:16:11 +02:00
d33423a8bd
Add session-util to create new session 2019-07-18 15:52:46 +02:00
59fe1e5bdd
Consolidate code: use libardour API to sort scripts 2019-07-18 15:52:32 +02:00
9748656a90
Sort Lua scripts case-insensitive and expose sort-struct 2019-07-18 15:52:29 +02:00
8d98dfe8fc
Remove debug output 2019-07-18 15:52:25 +02:00
214a92fcd5
Add Lua bindings to query&reset x-run count 2019-07-18 05:22:17 +02:00
728b53fa09
Expose mixer window screenshot method as Lua binding 2019-07-18 01:31:30 +02:00
c4cb9ef4d7
Tweak Mixer screenshot method, include VCA, master-bus 2019-07-18 00:05:32 +02:00
9cd1fd9e4a
Prepare screenshot of all mixer-strips
This will allow to create a PNG of all mixer-strips, even those currently
off-screen due to scrolling. It currently shows the main scroll-pane
page only (master-bus, VCAs are not included).

This method is not yet exposed.
2019-07-17 22:57:30 +02:00
90cf829f67
Use an explicit class-member for the mixer-strip container 2019-07-17 22:21:08 +02:00
2fc90b0bdd
Re-use existing latency display method 2019-07-17 17:31:11 +02:00
42fef35299
Update Latency GUI behavior
This allows to set the current nominal latency as custom latency.
Previously it was not possible to use the "initial_value" as custom
parameter.
2019-07-17 17:31:08 +02:00
2fd57d23fa
Track/Bus Inspector: remove unused latency "apply" button
Latency changes, and reset, are always directly applied.
LatencyGUI::finish is invoked by every change
2019-07-17 17:30:59 +02:00
7f12483336
NO-OP: whitespace 2019-07-17 17:30:53 +02:00
e68d441aa0
Fix patch-change bank update loop
Without an object, the Unwinder has no scope and the "ignore" variable
is never set.

In this case: When the patch-bank was changed externally this
lead to a duplicate recursive call to "refill_banks".
2019-07-17 17:30:50 +02:00
0e60060c62
Fix meter type/position context-menu issues 2019-07-17 17:30:47 +02:00
acf26b03a6
FFT analysis: use actual latency
Ardour allows to override a plugin's reported latency. So far this
was not taken into account when plotting the phase/freq response.
2019-07-17 17:30:43 +02:00
45f1220aa5
Fix deadlock when removing routes (initialization issues)
_setup_chain needs to point to the unused graph-chain, and not
_current_chain. Otherwise Graph::clear_other_chain() waits forever.
2019-07-15 00:55:51 +02:00
53c677e08f
Remember MIDI-track note-range -- #7773
Previously only manual changes of the note-range using the scroomer.
The NoteRangeChanged() was ignored for implicit changes (e.g. while
recording, step-entry) and automatic-fit that didn't involve a drag
event.
2019-07-14 18:49:30 +02:00
18958af3d8
Remove cruft: unused callback 2019-07-14 18:49:25 +02:00
169e15483a Implement a derived function for 'GainMeter::redraw_metrics()'
I'm not sure why exactly but at this line in 'GainMeter::set_controls ()' :-

    model_connections, invalidator (*this), boost::bind (&GainMeter::redraw_metrics, this), gui_context()

MSVC will not allow us to pass a base class function to boost::bind(). I tried explicitly specifying the base class and I also tried making the function public / making it virtual etc but the only thing which works is to implement a derived function.

It's somehow related to changing the signal from 'TypeChanged' to 'MeterTypeChanged' but I don't entirely understand why... :-(
2019-07-13 13:57:57 +01:00
dc131da53b
Hide "Add MIDI Port" in the GUI if there is already one 2019-07-11 22:58:27 +02:00
c6740b7cb0
Prevent adding a 2nd MIDI input/output port
Ardour's Tracks/Routes are not capable of handing more than one
MIDI port per per route properly. Most Plugin standards don't support
this either.

However, at this point in time IO::ensure_ports_locked() is not
limited by this restriction!

It is still possible to indirectly add a 2nd MIDI data-buffer
and output-port via plugin pin-management, or simply plugins with
two MIDI output ports when using flexible I/O.
2019-07-11 22:57:34 +02:00
b7369f421f
Re-work process-graph to use lock-free queues
This removes the trigger_mutex which was used for exclusive access
of the work-queue for concurrent processing.
2019-07-10 20:39:27 +02:00
929ecf622b
Add lock-free multiple producer multiple reader queue 2019-07-10 20:21:06 +02:00
57c3eaacf6
Fix process-thread naming 2019-07-10 20:20:44 +02:00