Commit Graph

39051 Commits

Author SHA1 Message Date
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 0c4eada414 make editor canvas use multi-expose redraws
This is not required for any functionality or performance fixes, but may be useful
and also helps tracking redraw issues with other related changes
2024-03-18 10:48:38 -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
agfline 52cce5adc6 AAF: fix import of embedded files shared across regions
https://github.com/agfline/LibAAF/issues/5#issuecomment-1994155327
2024-03-14 12:47:21 +01: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 0fff58f905
Remove outdated adm import scripts 2024-03-12 17:39:32 +01:00
Robin Gareus f2d938914d
Fix loading session by relative path
Previously (since bc91ea3c4) that would create a new session
even if -N was not specified.

This also uses Glib API to test for absolute path, rather
than a custom hack.
2024-03-12 04:29:33 +01:00
Robin Gareus 2f61071974
Update Lua Action scripts from local file when possible 2024-03-12 04:24:58 +01:00
Robin Gareus 682f4dafd3
Vapor: add additional options for ADM export 2024-03-12 00:32:35 +01:00
Robin Gareus 35017245d9
Fix typo 2024-03-12 00:31:32 +01:00
Robin Gareus 5d60c2668c
Add Lua bindings to set session range 2024-03-11 22:07:07 +01:00
Robin Gareus b783e3eab1
Vapor: add additional export constraint 2024-03-11 20:52:53 +01:00
Ben Loftis e467e0c014 in the case of nudging (1) CP, locate the phead so we can see its position 2024-03-11 14:45:07 -05:00
Robin Gareus 46a8b547fa
Half-baked automation-point nudge
There are currently combined constraints when moving multiple
points like ContiguousControlPoints::move enforces, but otherwise
it works fine.
2024-03-11 19:18:27 +01:00
Robin Gareus c012ab19e0 Fix AAF compilation with clang (macOS) 2024-03-11 18:52:45 +01:00
Ben Loftis f873f9f621 typos: "ADM/BWM" -> "ADM BWF" 2024-03-11 09:14:44 -05: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 d03cdf86e1
Update AAF import UI 2024-03-10 22:11:58 +01:00
agfline bd937366fd
Update libaaf to v1.0-1-gdef35bf 2024-03-10 22:11:47 +01:00
agfline 2b1349ffc2
Update libAAF import tool 2024-03-10 21:53:36 +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 7ad5278bfd fix typos: ADM BWF 2024-03-08 11:22:33 -06:00
Robin Gareus 43c08dd2f5
Do not automatically bind ADM import script 2024-03-08 16:15:13 +01:00
Robin Gareus 8a8a1b9fb9
Vapor: export file timecode must be < 24h 2024-03-07 17:24:12 +01:00
Robin Gareus 13383b11a7
Set correct Timecode widget name 2024-03-07 14:29:50 +01: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
Robin Gareus 3a6171428a
Do not include hidden plugin in plugin-list 2024-03-05 00:56:42 +01:00
Robin Gareus bf7d4f895e
Fix jump to next/prev bar
Previously this only located to the prev/next bar if the
playhead was not already on a bar boundary
2024-03-04 20:25:41 +01:00
Robin Gareus 517d82a6f2
Vapor: add script to perform live rendering tests 2024-03-04 17:00:00 +01:00
Robin Gareus 53b951f6a9
Vapor: Properly name sync&aling API 2024-03-04 16:53:33 +01:00
GianfrancoCostamagna 338cd09a4a
Work around itstools bug #9648
Forwarded from debian.
Having stderr output inside the returned command tricks the system
to fail in detecting the version.
Ignoring stderr output looks fine to make it build properly:

```
itstool --version
/usr/bin/itstool:239: SyntaxWarning: invalid escape sequence '\s'
  if re.sub('\s+', ' ', text).strip() != '':
/usr/bin/itstool:337: SyntaxWarning: invalid escape sequence '\s'
  message = re.sub('\s+', ' ', message).strip()
/usr/bin/itstool:475: SyntaxWarning: invalid escape sequence '\s'
  return re.sub('\s+', ' ', self.locnote).strip()
/usr/bin/itstool:477: SyntaxWarning: invalid escape sequence '\s'
  return '(itstool) link: ' + re.sub('\s+', ' ', self.locnoteref).strip()
/usr/bin/itstool:891: SyntaxWarning: invalid escape sequence '\<'
  regex = re.compile('(.*) \<(.*)\>, (.*)')
/usr/bin/itstool:926: SyntaxWarning: invalid escape sequence '\s'
  if re.sub('\s+', '', prevtext) == '':
/usr/bin/itstool:1452: SyntaxWarning: invalid escape sequence '\.'
  _locale_pattern = re.compile('([a-zA-Z0-9-]+)(_[A-Za-z0-9]+)?(@[A-Za-z0-9]+)?(\.[A-Za-z0-9]+)?')
itstool 2.0.6
```
2024-03-04 14:27:23 +01:00
Robin Gareus 37d130f6e1
Fix Aux-send gain automation latency compensation 2024-03-03 01:08:07 +01:00
Robin Gareus ed98ff97b2
Fix adding new route in front (#9651)
When adding a new route using "Front", its presentation info
order is set to 1, after the master-bus which has PI order 0.
(see Session::ensure_route_presentation_info_gap).

Mixer_UI::add_stripables, looks up the insert iterator:
"after the route with order 0", but since the master bus is
not in mixer's track-model, the insert-iterator is left "at end".

A later call to `sync_presentation_info_from_treeview` then updated
the new track's order key to be at the end.
2024-03-02 14:55:58 +01:00
bansaghi 256d3b1d52 add control names to General MIDI drums 2024-03-01 17:45:52 +01:00