Robin Gareus
8a7d92f196
Fix MonotorProc's channel_solo_control
...
Previously only ::set_solo() worked. Directly using the
controllable did not update `solo_cnt` and other channels
were not muted.
2024-04-09 22:02:31 +02:00
Robin Gareus
cde26c5205
Set default time domain to Audiotime to sidestep various MusicTime issues
2024-04-09 18:36:43 +02:00
Robin Gareus
ecd22e9aa8
Remove call to deprecated userSpaceScaleFactor
...
userSpaceScaleFactor is a missing symbol on some recent versions of macOS.
2024-04-09 06:06:58 +02:00
Robin Gareus
826103f08c
Pitch bend is not unreasonable
2024-04-09 02:10:19 +02:00
Robin Gareus
2e991b0067
Fix thinko in bda7041643
2024-04-04 17:32:50 +02:00
Robin Gareus
3b0e421de4
Use proper _POSIX_C_SOURCE constant
2024-04-04 17:06:31 +02:00
Robin Gareus
bda7041643
Fix #9642 - fdopen(3) requires _POSIX_C_SOURCE
...
Without this, fdopen() returns some garbage FILE* which
causes a crash when used.
2024-04-04 17:06:28 +02:00
Paul Davis
6d29a0e99b
amend b96d556451 by using g_alloca() rather than non-standard variable-size array
2024-04-01 15:11:59 -06:00
Paul Davis
b96d556451
avoid heap allocation by std::vector in realtime context
2024-04-01 15:00:11 -06:00
Robin Gareus
e29ac27c59
Tweak binarual port names
2024-04-01 17:39:08 +02:00
Paul Davis
719debf292
if we're asked to use RF64_WAV, actually enabled libsndfile's downgrade capability
...
Note that this does not alter the filename, which we might also want to consider
2024-03-27 17:32:23 -06:00
Robin Gareus
e0db21d484
Save versioned backups in backup/ folder
...
This makes it harder for users to accidentally open session
files which are intended to be used only with older versions
of Ardour.
Note that backup/ is not included in ::find_all_sources_across_snapshots
so Session > Cleanup can remove files used in old backups.
2024-03-27 21:38:09 +01:00
Robin Gareus
26b6bece95
Fix a -Wunused-variable
2024-03-27 00:38:02 +01:00
Robin Gareus
93934dfb92
Really fix Windows build (amend prev. commit)
2024-03-26 21:08:42 +01:00
Robin Gareus
1c55cc6ee2
Fix Windows builds (amend 980eb595)
...
```
undefined reference to `luabridge::ClassInfo<std::shared_ptr<ARDOUR::PluginInsert> >::getClassKey
``
2024-03-26 19:28:10 +01:00
Florian Walpen
845171807f
Fix undefined symbol when built with VST3 disabled.
...
Commit cd5369c added some cleanup code to `libs/ardour/session.cc`,
which drags in the type info symbol of VST3PluginInfo. When built
with `--no-vst3`, the resulting binary dies at startup:
```
ld-elf.so.1: /usr/local/lib/ardour8/libardour.so.3: Undefined symbol
"_ZTIN6ARDOUR14VST3PluginInfoE"
```
Make that code compile conditional on VST3_SUPPORT.
Occurs on FreeBSD 14.0-RELEASE, clang 16.0.6, amd64.
2024-03-25 16:41:36 +01:00
Robin Gareus
980eb595cf
Add Lua API to query plugin properties
2024-03-24 23:09:53 +01:00
Robin Gareus
cfa45be99f
Add Lua API to set plugin properties
2024-03-24 23:09:53 +01:00
Paul Davis
adfba3d39d
allow runtime control over cairo save/restore around item rendering
...
This is to allow easier debugging of whether a given item's render method fails to leave a cairo
context in the same state it received it in
2024-03-22 13:39:03 -06:00
Paul Davis
6c38e0a4e3
explicitly initialize the needs_display_region member of a GDK quartz window
...
This may not be necessary but it is better to have it be explicit
2024-03-22 13:13:16 -06:00
Paul Davis
fe6a635c3a
provide a GDK function to enable/disable use of Cocoa-provided rect in drawRect
2024-03-22 13:13:16 -06:00
Paul Davis
7324070628
gdk/quartz: add some additional GDK_NOTE debugging
2024-03-22 13:13:16 -06:00
Robin Gareus
73fea85381
Vapor: set surround-send level range to +/-20 dB
2024-03-21 14:23:43 +01:00
Robin Gareus
4883867f2b
Update libaaf to v1.0-10-g13f0b0a
2024-03-19 20:59:04 +01:00
Robin Gareus
da4218c2db
YTK: remove unused code
...
This addresses a missing `readlink` due to missing
`_POSIX_C_SOURCE=200809` define when including unistd.h
2024-03-18 22:02:54 +01:00
Mads Kiilerich
a2bb1a3511
Fix more -Wincompatible-pointer-types
...
c10154ad23 showed the direction but was not correct and insufficient
for building with Fedora 40 and gcc 14.0.1 .
2024-03-18 21:24:46 +01:00
Robin Gareus
c10154ad23
Fix a -Wincompatible-pointer-types
2024-03-18 20:29:19 +01:00
Paul Davis
e64af8e4ed
add a test for an environment variable before switching canvas single-expose off
2024-03-18 11:28:16 -06:00
Paul Davis
4b563ae518
move CairoCanvas::render() implementation for ArdourCanvas::Canvas into source
...
Note that this implementation only redraws a single (cairo_rectangle_t-defined) rect, and cannot
provide sub-rects the way that a normal GDK/GTK expose-driven redraw can
2024-03-18 10:50:36 -06:00
Paul Davis
71e085d825
ensure that the canvas fully redraws after style/visibility events
2024-03-18 10:49:15 -06:00
Paul Davis
802d9fa487
correctly implement canvas expose redraw for both single- and multi-expose contexts
2024-03-18 10:47:31 -06:00
Paul Davis
9efd521ea6
(GDK) keep our own record of invalidated rectangles for GdkQuartzView
...
macOS has broken its exposure/redraw model at least twice by always providing the entire area
of an NSView for every call to drawRect, and cannot provide the list of rects. This change
expands the tracking done using the needs_display_region, and does so directly via the
objective C methods of an NSView (and its derived children like GdkQuartzView).
The result is that when we send an expose signal, GDK/GTK code can obtain an accurate
list of the invalidated rects if desired, and thus avoiding redrawing the entire contents
of a window
2024-03-18 10:40:42 -06:00
Robin Gareus
2224aca75c
Fix SNAFU in 20d813cd17 (surround mute point)
2024-03-13 23:00:59 +01:00
Robin Gareus
f1ecd8c124
Vapor: mute master (not monitor), the latter is used for audition, etc
2024-03-13 22:19:17 +01:00
Robin Gareus
9e9fd201b5
Prevent crashes when trying to add/remove IOPlug ports
...
IOPlugins pinout is not [yet] configurable. Trying to add ports
resuled in a segfault since the BufferSet was not resized
(nor the plugin reconfigured)
2024-03-13 03:56:01 +01:00
Robin Gareus
069bf034ab
Accumulate IO port-change signals return values
...
This was already done for IO::remove_port, but not yet for
::add_port
2024-03-13 03:54:52 +01:00
Robin Gareus
16fb29d576
Vaporgate: special case content creation
...
This allows to change behavior to match some other notable DAW
which can only send automation events at cycle boundaries.
2024-03-12 17:43:38 +01:00
Robin Gareus
682f4dafd3
Vapor: add additional options for ADM export
2024-03-12 00:32:35 +01:00
Robin Gareus
5d60c2668c
Add Lua bindings to set session range
2024-03-11 22:07:07 +01:00
Robin Gareus
c012ab19e0
Fix AAF compilation with clang (macOS)
2024-03-11 18:52:45 +01:00
Ben Loftis
310e7f2279
make a distinction between total channels with or without the embedded bed chans
2024-03-11 08:29:56 -05:00
agfline
bd937366fd
Update libaaf to v1.0-1-gdef35bf
2024-03-10 22:11:47 +01:00
Robin Gareus
5e2f027ee9
NO-OP: whitespace
2024-03-09 23:35:39 +01:00
Ben Loftis
258b22c9f1
remove signal emission from run() func
2024-03-08 11:48:16 -06:00
Ben Loftis
e907aad05c
ObjectCount signal should include the count
2024-03-08 11:31:44 -06:00
Ben Loftis
24b18c889b
allow SurroundReturn to publish the number of channels in use
2024-03-06 18:34:33 -06:00
Robin Gareus
42dc033636
Vapor: work-around stem export alignment
...
This is a somewhat fragile solution to ensure that
processor reset happens in the same cycle in which
the actual data arrives at the start of the cycle.
2024-03-07 01:28:22 +01:00
Robin Gareus
77e7470270
Vapor: handle export abort
2024-03-06 18:35:08 +01:00
Robin Gareus
922ad14217
Gap-less overwrite_existing_audio
...
AudioPlaylist::read first clears the buffer passed to it, in
order to sum all layered regions into the buffer.
This cleared data in the ringbuffer that is concurrently being
used for playback.
2024-03-06 02:33:39 +01:00
Robin Gareus
6df34a307d
Match surround panner automation line convention
...
move to the left -> automation line moves upwards
move to the front -> automation line moves upwards
2024-03-05 14:59:26 +01:00