13
0
Commit Graph

20119 Commits

Author SHA1 Message Date
4ba1ccc09b
NO-OP: use Tab to indent 2023-04-01 17:21:32 +02:00
a6401763a3
Fix interpolation when iterating over sequence (#9288)
When a control-point is exactly at tick (N * 8), iterating
over the List (Sequence<Time>::const_iterator::operator++)
skipped the point.

Sequence::time_between_interpolated_controller_outputs == 8.
2023-04-01 17:21:04 +02:00
9e0c1ff510 Revert "canvas: when an item is shown, potentially pick it as the current item"
This reverts commit 37cae2f971.

This changes causes issues with recursive calls to the enter/leave event handling
stacks in gtk2_adour. Semantically, the change makes perfect sense, but finding
a solution to the recursion is challenging.
2023-03-30 09:54:56 -06:00
151fceea54
Add missing include
This fixes "error: ‘isfinite’ was not declared in this scope"
2023-03-30 01:10:23 +02:00
32be8aa96a
Fix veclib_find_peaks interface
vDSP_maxv, vDSP_minv set the return value to -INFINITY
or INFINITY respectively before starting to process.

Ardour expect the value to be input values to be part of the set.

https://developer.apple.com/documentation/accelerate/1450621-vdsp_maxv?language=objc
https://developer.apple.com/documentation/accelerate/1450267-vdsp_minv?language=objc
2023-03-30 01:04:40 +02:00
ef7b7f4c89
Fix timecnt_t less-than-equal operator 2023-03-30 00:37:23 +02:00
8c2454238e
Remove explicit well-known ctrl enum string functions
This is better provided by Plugin::print_parameter, which
is called by PluginControl::get_user_string(). This removes
special cases for the mode enums.
2023-03-29 17:32:22 +02:00
c1d6456d58
FP8: fix duplicate makeup control 2023-03-29 16:39:32 +02:00
f2a07e711d Fix the incorrectly generated Korean translation 2023-03-28 02:42:33 +02:00
Xavi Ivars
3d360b9ea1 gtkmm2ext Catalan file 2023-03-28 01:39:54 +02:00
886d7b9069
FP8: update for Mixbus v9
* add expander/gate
* show/hide mixer-strip controls
* add plugin-presets for channelstrip (if any)
2023-03-28 00:32:02 +02:00
9ef6ee21de
FP8: show value as formatted by the plugin 2023-03-28 00:31:45 +02:00
fe6beee68e further steps towards correct (or more usable) MClk output 2023-03-26 22:30:30 -06:00
1dce50e787
Fix another CAS (amend 4ba4cd69ff) 2023-03-26 22:16:47 +02:00
e36938f305
Fix peak-meter atomics (amend 4ba4cd69ff) 2023-03-26 20:37:25 +02:00
305606ed24
Document export-graph signal flow 2023-03-25 18:24:06 +01:00
John Emmas
c771eccd0e 'Temporal::DomainSwapInformation' needs to be exportable 2023-03-25 12:29:17 +00:00
168c439ee8
Fix vfork wrapper for macOS 2023-03-25 07:46:47 +01:00
4b5333a721
Disambiguate export formats with different encoder settings
Disambiguate export formats with different encoder
qualities, sample-formats or settings (wav/bwav).

This allows to export multipe mp3 with different bitrates.
2023-03-25 06:43:46 +01:00
3715154a8e
Allow concurrent child processes
When multiple child processes are running, closing the
stdin of one child did not send EOF or cause POLLNVAL,
as long as a dup()'ed filedes still existed.

This fixes an issue when running an mp3 encoder while the
video monitor is visible, and will allow to concurrently
run multiple mp3 encoders or other child processes.

Previously this caused Ardour to hang indefinitely in CmdPipeWriter
```
 _proc->close_stdin();
 _proc->wait(); // << here
```
2023-03-25 06:43:46 +01:00
70df054d68 try to patch over some type confusion 2023-03-24 17:27:49 -06:00
8075b55919 Fix amiguity in atomic load
operator _Tp() const volatile _NOEXCEPT {return load();}
operator _Tp() const _NOEXCEPT  {return load();}
2023-03-25 00:07:56 +01:00
b18fe9f412 add method accidentally removed during rebase with spp-atomic 2023-03-24 16:35:18 -06:00
dad40f960d fixup various mistakes when rebasing boost->std shared_ptr changes 2023-03-24 14:19:16 -06:00
720102f98a modify API of MIDI Clock ticker to use ProcessedRange
This solves the faulty MClk output when we locate due to a loop end.
2023-03-24 14:19:16 -06:00
bcc1aeeb86 change MidiClockTicker to use Session& not Session* 2023-03-24 14:19:16 -06:00
33047987a7 add ProcessedRanges element to Session and update its contents appropriately 2023-03-24 14:19:16 -06:00
af37406ed8 new data type to describe sample ranges processed during Session::process 2023-03-24 14:19:16 -06:00
5dbbac0bc2 temporal: operator<< for Range and RangeList 2023-03-24 14:19:16 -06:00
393929a55b tempo twisting: various fixes and improvements to core logic 2023-03-24 14:19:16 -06:00
edca8209aa canvas: fix debug output after auto-fication 2023-03-24 14:19:16 -06:00
7040ad1b74 temporal: API changes and implementation to support new twist operation
this includes using two different omega members for tempo objects,
a change that likely will not persist beyond the merge back to master.
2023-03-24 14:19:16 -06:00
3036414e08 tempo: auto-fication of another loop 2023-03-24 14:19:16 -06:00
37cae2f971 canvas: when an item is shown, potentially pick it as the current item 2023-03-24 14:19:16 -06:00
b36a0493df tempomap: use muldiv_round() not int_div_round to avoid errors 2023-03-24 14:19:16 -06:00
45490bf43f more functional tempo mapping 2023-03-24 14:19:16 -06:00
d513653912 API development for time domain flipping 2023-03-24 14:19:15 -06:00
1cd1430975 skeleton code for global temporal domain change during tempo mapping 2023-03-24 14:19:15 -06:00
5c69aef56e add memory fences to try to avoid a conceptual memory ordering issue between capture & the butler 2023-03-24 14:19:15 -06:00
4137271188 int62_t: use explicit memory order for all loads and stores
Also, improve implementation of CAS loops for operator <X>=.

Ideally, we ought to test this on ARM, both before and after.
2023-03-24 14:19:15 -06:00
fe17b98079 use explicit memory order for rcu reader/write exclusion 2023-03-24 14:19:15 -06:00
d601e78e06 signed/type mismatch fix 2023-03-24 14:19:15 -06:00
9e4d7e3224 comments and reordering for atomic fencing on dsp filter 2023-03-24 14:19:15 -06:00
a486fba3e9 std::atomic - 2nd batch of changes to convert from glib to std::atomic 2023-03-24 14:19:15 -06:00
4ba4cd69ff switch from glib atomic to std::atomic (libs edition) 2023-03-24 14:19:15 -06:00
d7922738f0 add required glib-atomic-related header, after rcu change 2023-03-24 14:19:15 -06:00
945c19b8b4 libpbd: make RCU more C++-ish 2023-03-24 14:19:15 -06:00
b35518e212 switch from boost::{shared,weak}_ptr to std::{shared,weak}_ptr
This is mostly a simple lexical search+replace but the absence of operator< for
std::weak_ptr<T> leads to some complications, particularly with Evoral::Sequence
and ExportPortChannel.
2023-03-24 14:19:15 -06:00
90c5524e7b libbd: add required <cassert> include 2023-03-24 14:19:15 -06:00
39ed528e25 std-ize: convert all boost shared/weak ptr includes to <memory>
Also fix stdint.h -> cstdint and alphabetically order std includes
2023-03-24 14:19:15 -06:00