Commit graph

20745 commits

Author SHA1 Message Date
Paul Davis
bdd0fda188 remove debug output 2023-10-06 17:08:28 -06:00
Paul Davis
26eed327ad amend 405574184 with correct lock scope and do not hold state 2023-10-06 17:07:44 -06:00
Paul Davis
405574184a use a RegionWriteLock while modifying Playlist region list in ::region_bounds_changed 2023-10-06 16:17:12 -06:00
Robin Gareus
d95179f571
NO-OP: remove unused, unimplemented functions 2023-10-05 21:56:42 +02:00
Paul Davis
eba00287cd fix SNAFU with ordering of adding stripables and selecting them
when Session emits RouteAdded, each handler (editor, mixer, trigger pages etc) will
execute their callbacks in order. But Editor::add_routes() selects the routes too,
which triggers a PresentationInfo::Change signal. This is received by e.g. the Mixer
before it has even found out about the newly added stripables. This in turn
leads to severe confusion regarding the state of the selection in the mixer,
and potentially elsewhere.

So, just add a PresentationInfo::ChangeSuspender for the scope of the RouteAdde
signal emission
2023-10-05 12:57:16 -06:00
Paul Davis
cd1d83f366 reintroduce a fake XML "active" property for Tempo to allow 7.x to load 8.x sessions 2023-10-05 11:22:38 -06:00
John Emmas
14973bd894 Simplify the MSVC / superclock change which should now be compatible with all compilers 2023-10-05 14:01:32 +01:00
Paul Davis
62416ee276 remove unnecessary argument from Playlist::shift() 2023-10-04 18:50:42 -06:00
Robin Gareus
c3b881327c
Possible fix for MSVC build 2023-10-05 01:50:37 +02:00
Robin Gareus
49cb4a1f33
Revert "Fix superclock init on Windows"
This reverts commit febc345414.
2023-10-05 01:50:36 +02:00
Robin Gareus
febc345414
Fix superclock init on Windows
Static global symbols on windows (even identical symbols) are
not mapped to the same address when mixing .dll + .exe.

see also d3cd621f7a
2023-10-04 23:34:40 +02:00
Robin Gareus
0e3cf0454c
Yet another plugin parameter automation time-domain fix
see also fded5063d9
2023-10-04 21:45:06 +02:00
Robin Gareus
7f2637fa96
Fix find_next_event return value in case no music-time event is found 2023-10-04 21:45:03 +02:00
Paul Davis
0c3791117c remove much debug output associated with tempo map copy/pasta, et al. 2023-10-04 08:37:26 -06:00
Robin Gareus
9ace3c6d56
Remove debug messages (VST2 bypass feature) 2023-10-04 16:26:24 +02:00
Robin Gareus
c7745ffd43
Double check our assumptions when merging MIDI 2023-10-04 15:12:31 +02:00
Robin Gareus
923e6a554e
Fix MIDI combine (#9466)
Initially thew new region has a length of zero (0:0). When
merging Notes from a truncated region (no explicit note-off)
those notes are lost:
"Stuck note resolution - end time @ 0:0 is before note on: @ 0:0"

Truncate (or split) a region so that a note is cut short:
```
  Region [{<--Note-------->}]
```
becomes
```
  Region [{<--Note--]
                    ^ implicit note-off at region boundary
```

When combining this region with an empty Region after gap,
```
  Region [{<--Note--]  [    ]
```
the result should be
```
  Region [{<--Note->}       ]
```

For this reason, even without a gap between the regions,
the original note length must not be restored.
The result MUST NOT be the same as the original:
```
  Region [{<--Note-------->}]
```
2023-10-04 15:10:06 +02:00
Robin Gareus
94562a0238
Fix typo in Lua documentation 2023-10-04 14:34:41 +02:00
Robin Gareus
2b0bb54599
Update LuaState API (4/4)
Now that all calls use explicit parameters, we can remove
the default params, and make ::sandbox() private
2023-10-04 02:50:44 +02:00
Robin Gareus
6b3f25eb2a
Update Lua instances (2/4)
This is effectively a NO-OP.
2023-10-04 02:48:26 +02:00
Robin Gareus
7c10a54334
Prepare for explicit Lua Sandboxing (API update) 1/4 2023-10-04 02:46:58 +02:00
Krzysztof Gajdemski
7e7337aa61 Update Polish translation 2023-10-04 01:09:24 +02:00
Paul Davis
364c892c68 remove debug output 2023-10-03 11:13:57 -06:00
Ben Loftis
f53ff625d1 commit to BeatTime as the most likely desired session timebase 2023-10-02 14:48:44 -05:00
Alexandre Prokoudine
cda1f12845 Update Russian translation 2023-10-02 11:00:05 +02:00
Robin Gareus
dfd44c2ebf
Fix 3-point edit undo/redo #9464
Playlist::split can result in removal of a region
(adding two others instead). In this case the state
of the removed region (if modified) is not saved.
2023-10-02 03:13:31 +02:00
Robin Gareus
afa295d4af
Unset playlist's TimeDomain Parent when deleting Track
This fixes a heap-use-after-free, when deleting a Track
and then doing a 3-point edit which iterates over all
playlists.
2023-10-02 01:57:07 +02:00
Paul Davis
f6d60abda8 remove debug output 2023-10-01 13:26:53 -06:00
Ben Loftis
6c68817b26 add a user config var for preferred time domain (libardour part)
(as opposed to default_time_domain which is the per-session default)
2023-10-01 13:57:28 -05:00
Paul Davis
cd99fed7cd canvas: add PolyItem::clear() 2023-09-30 11:09:58 -06:00
Paul Davis
ff021b83d3 libardour: add Region::absolute_time_to_source_time() 2023-09-30 11:09:58 -06:00
Paul Davis
b89dd73324 NOOP: no need for virtual keyword here 2023-09-30 11:09:58 -06:00
Paul Davis
243f40e10d fix unset-looping-because-monitoring-input (#9458) 2023-09-28 16:52:35 -06:00
Robin Gareus
c4f6385d22
Fix playlist partitioning when mixing time domains 2023-09-27 22:15:25 +02:00
Ben Loftis
9651a2c2e2 region groups: more fixes for Duplicate operations 2023-09-27 11:06:40 -05:00
Ben Loftis
72761734e8 region groups: more fixes for drag-copy and range-paste operations 2023-09-27 11:06:40 -05:00
Robin Gareus
40a9ba746e
Freeze plugin cache version
This allows to copy existing VST2/3 cache files to
a new major version
2023-09-27 17:28:20 +02:00
John Emmas
ea8742b030 #include <sys/utime.h> when building with MSVC 2023-09-27 09:36:26 +01:00
Robin Gareus
947e6c7815
I/O Plugins: fix a heap-use-after-free
I/O plugin Controls are destroyed with ~IOPlug, however
Session::destroy()'s call to drop_references() still
triggers AutomationControl::session_going_away() on the
binding proxy.

This is even properly documented in session_object.h:

> A named object associated with a Session. Objects derived
> from this class are expected to be destroyed before the
> session calls drop_references().
2023-09-27 02:22:22 +02:00
Robin Gareus
e79ca8f9ba
Copy plugin cache with old config 2023-09-27 02:22:22 +02:00
Robin Gareus
6494214622
Add option to prefer file timestamps with recursive copy 2023-09-27 02:22:22 +02:00
Robin Gareus
7f453cab9e
Allow to query cache-dir by major version
Luckily "cachename" parameter was unused, so this API
can be changed.
2023-09-27 02:22:22 +02:00
Robin Gareus
245aac887b
Fix saving patch-change channel undo/redo commands 2023-09-26 05:32:57 +02:00
Paul Davis
0a6ac2678a canvas: if LineSet does the 0.5 pixel shift, make it the right direction 2023-09-25 20:01:21 -06:00
Paul Davis
5fa5c5d202 canvas: NOOP fix comment about docs on single pixel lines 2023-09-25 19:52:10 -06:00
Paul Davis
bc78694a1a canvas: fix bounding box of a LineSet (lower edge was not lower enough) 2023-09-25 19:51:33 -06:00
Robin Gareus
496957efdf
Fix layering when copy/pasting regions (1/2)
Playlist::add_region, Playlist::add_region_internal always
adds the region to the top of the playlist, ignoring the
region's layer.

Note that there is also difference between
Region::layer and Region::layering_index.
2023-09-25 22:36:27 +02:00
Robin Gareus
300de26b3e
Fix XML read error when creating new export profiles
Previously creating a new preset first attempted to load
it from disk, before creating it. This resulted in a
`XML error: failed to load external entity`.
2023-09-25 22:36:24 +02:00
JungHee Lee
f9da85639d
Update ko.po 2023-09-25 18:56:56 +02:00
Robin Gareus
5082dc62a4
Copy more old config files from v7 to v8 2023-09-25 17:21:10 +02:00