Commit graph

15901 commits

Author SHA1 Message Date
Paul Davis
2084a39168 some tweaks to Bindings API to allow ::is_bound() to indicate the action path for an existing binding
Plus some minor comment additions and cleanups
2020-04-12 08:57:59 -06:00
Paul Davis
920a77f6af add debug trace to code that actually saves bindings to disk 2020-04-12 08:57:59 -06:00
Paul Davis
bfe65ea1e4 improve understanding by using an actions label, not its path, in the bindings collision dialog 2020-04-12 08:57:59 -06:00
Robin Gareus
43d52fe41a
Forward disk-reader ConfigurationChanged signal 2020-04-12 13:41:39 +02:00
Robin Gareus
4ab299c540
Reduce redundant signal emission 2020-04-12 13:36:47 +02:00
Robin Gareus
fc34626e50
Fix loop range changes while playing - #8001
Since ead883302f, it is no longer possible to use a null
pointer SessionEvent::track as flag to indicate overriding all
buffers.
2020-04-12 13:35:21 +02:00
Luciano Iam
9aef431818
WebSockets: move diskPath property to surfaces group object 2020-04-11 22:30:41 +02:00
Luciano Iam
ad363d12a2
WebSockets: fix path field in index.json 2020-04-11 22:30:41 +02:00
Luciano Iam
e82171ea19
WebSockets: improve surface manifest format and loader 2020-04-11 22:30:40 +02:00
Luciano Iam
420137ea9d
WebSockets: always return -1 from send_index_body() unless there is a write error 2020-04-11 22:30:40 +02:00
Luciano Iam
ed427e5704
WebSockets: add useful comment on lws_write() 2020-04-11 22:30:40 +02:00
Luciano Iam
c477a81a7c
WebSockets: use lws_strncpy() when available 2020-04-11 22:30:40 +02:00
Luciano Iam
731ea79028
WebSockets: fix timeout when sending HTTP body 2020-04-11 22:30:33 +02:00
Paul Davis
9e3efced72 remove debug output 2020-04-10 16:39:29 -06:00
Paul Davis
a2737feae6 fix mistaken geometrical-math for xfaded loops 2020-04-10 16:07:42 -06:00
Robin Gareus
58672bcaa2
Sync reset meter, report zero until the meter is actually reset 2020-04-10 23:50:06 +02:00
Paul Davis
24cce2e43d use cout not cerr for some temporary debugging messages 2020-04-10 15:30:26 -06:00
Paul Davis
92b59c1df9 more debug info for DiskReader::maybe_xfade_loop() 2020-04-10 14:18:24 -06:00
Paul Davis
8aae77b0eb somewhat change the condition used to identify when butler transport is done pre-export 2020-04-10 13:25:24 -06:00
Paul Davis
b953490bac fix typo/thinko in code that checks for result of waiting for butler transport work 2020-04-10 13:24:55 -06:00
Robin Gareus
247bd4d3d9
NO-OP: whitespace 2020-04-10 18:32:18 +02:00
Robin Gareus
ede0fd3ddf
Remove hardcoded 2^15 cairo-boundary, prefer window-area 2020-04-10 18:28:26 +02:00
Robin Gareus
2177462b73
NO-OP: consistent function and variable naming 2020-04-10 18:06:42 +02:00
Robin Gareus
bc4de874dc
NO-OP: whitespace 2020-04-10 18:06:42 +02:00
Robin Gareus
9bbedcb781
Remove unused function
Cairo::curve_to renders cubic Bézier splines, those are not
generally useful in a DAW context.

Canvas::Curve implements centripetal catmull-rom spline drawing
which can be used for fades and automation interpolation.
2020-04-10 18:06:42 +02:00
Robin Gareus
7bb8ca1e76
Interpolate poly-line with view-point #6481 2020-04-10 18:06:41 +02:00
Robin Gareus
6cc1e5e75d
NO-OP: whitespace 2020-04-10 18:06:39 +02:00
Paul Davis
1e996ca45f add port connect/add/remove callbacks to CoreAudio backend 2020-04-10 10:01:04 -06:00
Paul Davis
2a80832243 add port connect/add/remove callbacks to the ALSA backend
This fixes issues with new ports not (always) appearing in port matrices (and presumably
elsewhere too)
2020-04-10 09:53:44 -06:00
Robin Gareus
b943cec756
ALSA: allow to select different I/O devices
This adds a basic support to use multiple sound-cards, currently
limited to two devices: In/Out with shared settings.

Advanced setups still have to resort to using the ARDOUR_ALSA_EXT
environment variable
2020-04-10 05:01:33 +02:00
Robin Gareus
e8efd45c05
Fix ALSA slave-device half-duplex mode 2020-04-10 05:01:30 +02:00
Robin Gareus
78b29c55d3
Hotfix more export woes, prevent possible endless loop
This apparently happens on some Windows systems when exporting
a range starting at 00:00:00:00

I'm still hoping there's a better fix for these race-condition
issues, perhaps by kicking the TFSM...
2020-04-10 03:29:16 +02:00
Robin Gareus
c33c988adc
Revert "Another attempt at fixing multi-range export"
This reverts commit c5332ddd00.
Apparently this is not needed 4f3a95a1da is sufficient.
2020-04-10 02:24:08 +02:00
Robin Gareus
62e2ec49ce
ALSA: ignore systemic MIDI latencies during measurement 2020-04-10 01:43:11 +02:00
Paul Davis
5f1431aeda fix ArdourFader to use contrasting_text_color() for text, based on relevant bg color 2020-04-09 17:12:40 -06:00
Paul Davis
69b4c5108b ALSA backend: fix incorrect pointer cast (fixes #7998) 2020-04-09 15:40:23 -06:00
Paul Davis
230ef7596f websockets: shutdown UI event loop is server cannot start 2020-04-09 15:36:02 -06:00
Paul Davis
661609f2c0 change default port for websockets surface 2020-04-09 15:26:13 -06:00
Robin Gareus
18daf2c9b2
C++98 compatibility 2020-04-09 22:43:24 +02:00
Paul Davis
cd5eae3556 some potentially helpful but trivial comments 2020-04-09 14:01:47 -06:00
Robin Gareus
be023ef32d
Tweak websocket surface for use src-tree shared dir
When running from the src-tree, ardev_common.sh sets multiple
data-paths, to allow running ./ardev ./gtk2_ardour/ardev.
Pick the first one that contains a "web_surfaces" subfolder as
docroot.
2020-04-09 21:50:01 +02:00
Robin Gareus
61692ae1f8
Fix some Wunused-result 2020-04-09 21:26:12 +02:00
Luciano Iam
d694ee97c7
Update waf scripts 2020-04-09 20:56:46 +02:00
Luciano Iam
c946eb3132
Add classes for serving content over HTTP 2020-04-09 20:56:46 +02:00
Luciano Iam
40520a6dc6
Clean up and prepare for HTTP 2020-04-09 20:56:46 +02:00
Luciano Iam
3da0cf2a31
NO-OP update comments for header guard #endifs 2020-04-09 20:56:46 +02:00
Robin Gareus
c5332ddd00
Another attempt at fixing multi-range export
See also
  * 4f3a95a1da
  * cfd95340b1
  * 61e7f3176b
2020-04-09 20:25:25 +02:00
Robin Gareus
4f3a95a1da
Cont'd work on fixing export ranges
This picks up where cfd95340b1 left off.

The goal is to ensure that the butler has completed all
PostTransportStop related tasks and won't meddle with transport
after exporting has started.

Previously this could happen, because realtime_stop() queues
PostTransportStop and the butler is sommoned after every
export process cycle.

Since  61e7f3176b the butler keeps calling non_realtime_stop()
every time it is woken up, until TFSM comes around and unsets the
flag in the process callback.
2020-04-09 19:07:33 +02:00
Paul Davis
70f13a3ff3 use RCU to manage JACK backend's container of ports 2020-04-08 19:56:33 -06:00
Paul Davis
feff57d29a prefer initialization to assignment 2020-04-08 19:56:08 -06:00