13
0
Commit Graph

20151 Commits

Author SHA1 Message Date
6cc116e6de Revert "add ProcessedRanges element to Session and update its contents appropriately"
This reverts commit 33047987a7.
2023-04-18 13:48:59 -06:00
909a2ad639 Revert "modify API of MIDI Clock ticker to use ProcessedRange"
This reverts commit 720102f98a.
2023-04-18 13:48:59 -06:00
328b4f2d1a Revert "further steps towards correct (or more usable) MClk output"
This reverts commit fe6beee68e.
2023-04-18 13:48:59 -06:00
d66f3e7c9d temporal: factor out twist iteration, add debug output 2023-04-16 10:33:37 -06:00
f29557348e remove debug output 2023-04-13 17:47:32 -06:00
b362d2b6ba temporal: don't abort() for illegal omega value, just leave it as it was 2023-04-13 10:57:12 -06:00
dbc3008163
Add Lua Bindings for const shared_ptr lists (295dbd8e1e) 2023-04-12 20:47:35 +02:00
c3102ab8a5
Add preference to set PPQN of exported MIDI files
This also changes the default from 19200 to 1920
2023-04-12 13:12:41 +02:00
def884e26c remove debug output 2023-04-10 09:18:44 -06:00
f17a516cef temporal: fix comment explaining when/how TempoMap::set() can be used 2023-04-10 09:18:44 -06:00
a1e9dfb672 canvas lineset: C++11-ification 2023-04-10 09:18:44 -06:00
4f87506e5c do not sort lineset every time a coord is added; use RAII to create scope and sort at end 2023-04-09 14:36:03 -06:00
dde366d6ef
Fix Wreturn-std-move 2023-04-09 00:52:29 +02:00
4b1d5d9b63
Resolve boost/std unique_ptr issue 2023-04-08 13:31:50 +02:00
a27a88f9f2 import_pt: Update session range to largest audio extents imported
Tested before and after on a small audio-only PT8 session;
session range gets set to [0 to max] extent with this change.
2023-04-08 18:35:26 +10:00
295dbd8e1e
Make RCU reader return a const pointer (omnibus commit) 2023-04-08 00:15:37 +02:00
e9f71824a1 temporal: change API for TempoMap::stretch_tempo()
This will likely be modified because it is actually impossible to do
what this code is attempting to do.
2023-04-07 12:56:57 -06:00
f3e13848fa
Do not modify read-only RCU copy of routelist
RCU reader returns a shared ptr to the current object which
can also be used in other places at the same time.

Sorting the shared-ptr list invalidates iterators which can
throw off other users of the same object.

This fixes a bug in PT-import which calls get_nth_audio_track().
2023-04-07 19:37:30 +02:00
979f9876a7
VST3: skip redundant parameter-changes
This reduces initial parameter-changes during session-load
due to Controllable (PluginControl) state restore after
restoring the plugin state. This likely fixes #9287
2023-04-07 00:23:39 +02:00
2713c40b7d extend midi-controllable params with new well-known-controls 2023-04-06 14:52:09 -05:00
8b59bf47df
Add a dedicated PlaylistSet type
This is to consolidate various locations that use
`typedef std::set<std::shared_ptr<Playlist>>`
throughout the codebase.
2023-04-06 02:12:32 +02:00
0b8d5d3dc5
Tweak Window system-exec, wait for process to terminate 2023-04-05 00:16:37 +02:00
d09c049fee
Clarify plugin scan log message 2023-04-05 00:16:37 +02:00
d9c35199cc CoreAudio: Update latency when buffesize changes 2023-04-04 19:26:17 +02:00
112bf87436
VST3 scan, do not clutter up Log
This prevents excessive "Cache file is valid and up-to-date."
messages in the log window. - Plugin manager has verbose log.
2023-04-04 15:44:21 +02:00
850cf3e035
Add vst3/win debug messages to investigate #9273 2023-04-04 14:00:46 +02:00
29c6817599
Check that export-channel is not empty 2023-04-04 01:35:27 +02:00
473f575a05
Catch Glib::ConvertError when checking for files
This fixes some edge-cases when scanning recent sessions
in get_state_files_in_directory() and likely some other
places that use run_functor_for_paths in case the folder
contains files with non UTF-8 names.
2023-04-03 22:10:11 +02:00
2c4d1e011c
CaptureProcessor should not be reused
This lead to potentially silent stem-exports. It
should not be possible to hold a shared-ptr reference
of a processor that is not part of the processor chain.
2023-04-03 16:01:24 +02:00
a3a30e39df
Fix silent stem export channels (#9294)
When toggling a channel-configs the following happens:

 1. TrackExportChannelSelector::update_config
 2. ExportProfileManager::clear_channel_configs
 3. RouteExportChannel::create_from_route
[...] CriticalSelectionChanged
 4. ExportDialog::update_warnings_and_example_filename
 5. ARDOUR::ExportProfileManager::get_warnings
 6. ARDOUR::ExportProfileManager::build_filenames
 7. ARDOUR::ExportFilename::set_channel_config
[...]


Step 3 creates a RouteExportChannel, Step 7 retains a
shared-pointer to it in the config's ExportFilenamePtr.
When toggling another channel: step 2 release the reference
and step 3 creates a new RouteExportChannel.
This new channel reuses the existing Route::_capture_processor (!).

Now Step 7 releases the first RouteExportChannel in order
to get_warnings for the new one. Since ExportFilenamePtr holds the
the last reference, the d'tor of RouteExportChannel runs,
which removes the capture-processor from the route.

The newly created RouteExportChannel now has a reference
to a CaptureProcessor that is not in the signal-flow.


Note: the order of adding/removing RouteExportChannel matters.
With a two track session:
 * Disable "with track/bus processing
 * Enable Track 1
 * Enable Track 2
 * Disable Track 1
 * Enable Track 1 // << Track 2 becomes silent
2023-04-03 15:53:50 +02:00
9b23587886
Add missing processor-locks to iterate over processors 2023-04-03 15:17:12 +02:00
b03358615c
NO-OP: whitespace (re-align after boost:: -> std::) 2023-04-03 00:17:37 +02:00
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