Commit Graph

36835 Commits

Author SHA1 Message Date
Robin Gareus 38c613cd9a Towards arranging sections
This allows to move or copy whole sections of the timline (everything
you hear) to a differnt position on the timeline.

NB. Markers and tempo-map are not yet moved, and interpolated MIDI
events are lost.
2023-01-23 04:07:46 +01:00
Robin Gareus c24c210cce Use Controllist's time-domain for guard-point delta
This fixes copy/paste of pan automation (amongst other things).
2023-01-23 04:02:08 +01:00
Robin Gareus efe943c98e Reimplement Route::shift, move all automation 2023-01-23 04:02:08 +01:00
Paul Davis bd82e2cc07 fix transparency when opaque MIDI region is edited 2023-01-22 17:41:43 -07:00
Paul Davis 15434456d5 architecture and implementation for preferences searching
Metadata is only defined for a single region at this point, (much)
more to come.
2023-01-22 17:41:43 -07:00
Paul Davis 09acd5f8b4 add new gtk style name for "shaded entry", used in web-style search entry 2023-01-22 17:41:43 -07:00
Paul Davis 3b40289740 add new color name to all themes (to be used for preferences search) 2023-01-22 17:41:43 -07:00
Paul Davis 46a8073ff2 extend ArdourWidgets::Frame to allow no-draw of frame
Associated: disambiguate Frame use where necessary.
2023-01-22 17:41:43 -07:00
Paul Davis d982507085 move match_search_strings() function from plugin utils to PBD 2023-01-22 17:41:43 -07:00
Robin Gareus 79033d8ee5 Resample when engine and session sample-rates mismatch 2023-01-22 20:51:44 +01:00
Robin Gareus 65317ef0e0 Prevent engine dialog from changing devices when the engine is running
This fixes an issue with excessive "sample rate mismatches" warnings
via device_changed -> set_in/output_device_name -> set_sample_rate
2023-01-22 20:45:29 +01:00
Robin Gareus 86d9bcf525 Remove direct use of audio-engine rate (2/2)
This is in preparation for sample-rate independence.
2023-01-22 20:07:40 +01:00
Robin Gareus 5130a43d87 Remove direct use of audio-engine rate (1/2)
This is in preparation for sample-rate independence.
2023-01-22 20:06:14 +01:00
Robin Gareus 859d6ebe4a debug: log canvas exposure area 2023-01-21 17:36:22 +01:00
Paul Davis 4cd7de7a6f debugging: allow selection no-draw for canvas fill, outline, text, lineset and waveview 2023-01-20 18:13:12 -07:00
Robin Gareus a1dee6cba2 Fix printing from Lua DSP context (#9202) 2023-01-21 01:42:33 +01:00
Paul Davis 7e4bb2ff68 only when necessary, parse GTK/GDK command line arguments 2023-01-20 16:51:57 -07:00
Robin Gareus a3095162de Prevent auditioner from writing files to disk 2023-01-21 00:37:41 +01:00
Robin Gareus 02515c2176 Set "image surface" preference sensitivity 2023-01-21 00:35:43 +01:00
Robin Gareus 54c765ad2a Expose preference to use NSGLView on macOS 2023-01-20 21:54:11 +01:00
Robin Gareus e6230bfd98 Add enum to configure Apple NSGLView mode 2023-01-20 21:46:11 +01:00
Robin Gareus db63f8320e
Plugin Setup dropdown heuristics, limit dropdown entries
The Plugin Pin dialog still shows all options, which can
potentially be a very large dropdown. During initial setup
however, we only need the common "stereo" and "all", options.
2023-01-17 22:02:11 +01:00
Robin Gareus b410ed992b
Consolidate code duplication 2023-01-17 22:02:10 +01:00
Robin Gareus 2226da1385
VST3: retain I/O from older versions (bump session format)
A VST3 plugin can have additional busses which were not
available in older versions of Ardour. For compatibility
reasons those should remain unconnected. This is achieved
by using a custom I/O config  (same way a user would configure
this).
2023-01-17 22:02:10 +01:00
Robin Gareus e5e9b477d0
Force rescan of VST3 plugins 2023-01-17 22:02:10 +01:00
Robin Gareus f221a5e47f
VST3: offer output bus configurations 2023-01-17 22:02:10 +01:00
Robin Gareus 1cbd2d3468
VST3: support VST I/O busses
This unconditionally enable all busses with connected pins.
It does not provide re/configurable I/O (like Audio Unit), nor
implement dynamic Vst::kIoChanged callbacks. But regardless
this allows for plugins with multiple I/O busses (e.g. drum synths).
2023-01-17 22:02:10 +01:00
Robin Gareus 0063211b4e
Indicate plugin-busses in the plugin pin dialog 2023-01-17 22:02:10 +01:00
Robin Gareus 617ec6f54f
Include bus number in IOPortDescription 2023-01-17 22:02:10 +01:00
Robin Gareus e87b989501
Inform plugins about connected input pins
When not using inplace processing (because I/O pins connections
are not an identity matrix), dedicated inplace-buffers are used.
Those buffers contain silence on unused ports, and hence always
valid to use. However it is still useful for plugins to know
if a plugin-port is actually used. VST3 can disable busses
for unconnected pins.
2023-01-17 22:02:10 +01:00
Robin Gareus f6eac0f03a
Clarify that plugin replication is exclusive to re-configurable I/O 2023-01-17 22:02:07 +01:00
John Emmas 7433ca7e8b Correct a couple of typos when calling 'g_fopen()' 2023-01-17 10:32:36 +00:00
Robin Gareus e66a757154
Fix simple export when there is no session range 2023-01-17 00:23:08 +01:00
Paul Davis b8e9e67f78 tweak ::define_one_bar() API to allow correct undo/redo command name 2023-01-16 14:57:23 -07:00
Paul Davis db987cf046 fix deadlock in Editor::define_one_bar() 2023-01-16 14:57:23 -07:00
Robin Gareus 58594e2554
Fix SMF read/write when compiled on Windows 2023-01-16 22:57:03 +01:00
Robin Gareus c44b40afd7
Indicate UTF8 literals - fixes glyph rendering with MSVC (2/2) 2023-01-16 21:41:22 +01:00
Robin Gareus 2c7f8eeb97
Indicate UTF8 literals - fixes glyph rendering with MSVC (1/2) 2023-01-16 21:41:09 +01:00
Robin Gareus c635d15cf0
Use pipe with CmdPipeWriter (see b8d07b8) 2023-01-16 16:41:28 +01:00
Robin Gareus 2522deabda
SystemExec: tweak writing to stdin of child process 2023-01-16 16:39:37 +01:00
Robin Gareus e5eafea128
Fix small memory leak
g_file_open_tmp() requires the caller to free the filename.
2023-01-16 05:11:49 +01:00
Robin Gareus b8d07b8be2
Export CmdPipeWriter: add option to use tmpfile
Investigate issues with mp3 export (#9193)
2023-01-16 05:10:32 +01:00
Robin Gareus d1b72b28ec
NO-OP: remove unused code 2023-01-13 21:20:21 +01:00
Marijn Kruisselbrink b0f5fea53a
Fix minor errors in temporal/wscript 2023-01-12 20:58:24 +01:00
Marijn Kruisselbrink aa163b05ca
Fix some minor copy-paste errors in ardour_ui_dependents.cc 2023-01-12 11:08:56 -08:00
Robin Gareus 0083c8fb9f Remove "using namespace" from header (part 2) 2023-01-12 19:19:41 +01:00
Robin Gareus 3a6f822381
Remove "using namespace" from header 2023-01-12 19:01:48 +01:00
Robin Gareus 6407ca51cd
Fix region-fade, time-stretch and other scaling operations (#9057)
This resolves an ambiguity between abs(int) and std::abs(T) which
depends on context and compiler version and optimization.

In context of #9057, (gcc-6.3 -O3) math.h `abs(int)` was used. This
truncated the superclock value to 31 bit in ControlList::extend_to.
2023-01-12 16:17:39 +01:00
Robin Gareus 117cfc844b
Fix 128 bit integer math rounding (#9057)
The previous code only used the 1st multiplicand was use to
determine the direction of rounding, breaking commutative property

`muldiv_round (1, 3, 4) != muldiv_round (3, 1, 4)`
2023-01-12 16:08:53 +01:00
Robin Gareus 1ff5592731
Remove UI side grid limit
This concept from 2007 is no longer required Temporal::get_grid
already limits the number of grid-lines depending on the step
size (mod-bar, beat_div) and start/end positions.
2023-01-11 00:32:47 +01:00