Commit graph

22265 commits

Author SHA1 Message Date
Paul Davis
9e9afef527 NO-OP: correct comment description of a value 2025-11-17 11:07:18 -07:00
Paul Davis
1e6d75d781 MidiBuffer: make ::write() return an error code if ::insert_event() fails 2025-11-16 14:03:11 -07:00
Paul Davis
6e58f6e2c8 NO-OP: space for function decl 2025-11-16 14:03:11 -07:00
Paul Davis
1fcc09ca84 NO-OP: space for function decl 2025-11-16 14:03:11 -07:00
Paul Davis
493a136d43 MidiBuffer: print an error if ::push_back() fails 2025-11-16 14:03:11 -07:00
Paul Davis
66f18a065e MIDI diskwriter: at least pretend to catch errors when pushing to MidiRingBuffer 2025-11-16 14:03:11 -07:00
Paul Davis
cc3981643a NO_OP: spaces for function call 2025-11-16 14:03:11 -07:00
Paul Davis
8baf7fbab2 NO-OP: comment formatting 2025-11-16 14:03:11 -07:00
Paul Davis
ec9120ab05 NO-OP: change variable name and better alignment 2025-11-16 14:03:11 -07:00
Paul Davis
67a09c19c8 NO-OP: spaces for function calls 2025-11-16 14:03:11 -07:00
Paul Davis
21a4501e47 MIDI: fix major error in computing delta times for SMFSource::append_event_samples()
timecnt_t constructor is: (distance, position); this code was not computing the
distance between the new event and _last_ev_time_samples.
2025-11-16 14:03:11 -07:00
Paul Davis
637e59a14f SMFSource: auto-ify a knarly container iteration 2025-11-16 14:03:11 -07:00
Robin Gareus
03d5411843
Allow to load partial state 2025-11-15 16:44:43 +01:00
Robin Gareus
f2a267675c
Allow to uniquely identify sessions
This is in preparation to allow merging sessions, or importing
partial state, and particularly different versions of the same
session where PBD::Ids may match.
2025-11-15 16:44:43 +01:00
Robin Gareus
04b180cc79
Remove unused cycles/cycle-timer 2025-11-14 17:43:51 +01:00
Robin Gareus
fa319ffda2
FIX SNAFU with MIDI pending overwrite 2025-11-14 17:35:30 +01:00
EZ4Stephen
8ca2d12198
Change to ytk wscript, to work slightly better with MSVC
Replace obj.ldflags  = '-l... with obj.lib  = ['... to work for both MinGW and MSVC.
Also, obj.linkflags = ['-Wl,--export-all-symbols'] only happens for MinGW.

(Previously, both lines were ignored by MSVC.
2025-11-14 00:21:11 +01:00
Robin Gareus
5960ad2e0f
Fix additional for loop iterators that were lost in auto-fication
see also c469c33bc4
2025-11-13 01:56:39 +01:00
Paul Davis
e97d1d3d3f (maybe) fix MIDI consolidation issues
Stay in BeatTime, not audio time.
2025-11-12 14:24:21 -07:00
Paul Davis
f895bc2cd9 new Session signal to indicate that instrument tracks/busses were added and are configured
Existing code sent RouteAdded() before the instrument plugin(s) were added. Rather than risk changing code
ordering, just emit a 2nd signal to notify (the GUI) that new instrument tracks/busses were added
2025-11-12 12:31:34 -07:00
Paul Davis
c469c33bc4 auto-ify libs/ardour/route.cc iterating over processors
Because there's nothing else to do on a Wednesday morning
2025-11-12 12:31:34 -07:00
Robin Gareus
a7e557ad65
Hide colorpicker eyedropper on platforms where it does not work 2025-11-12 14:57:53 +01:00
Robin Gareus
224e5ec163
When Ardour is running, there is at least 1 CPU core available 2025-11-12 02:22:26 +01:00
Robin Gareus
ac0bbfb481
Fix class/struct mismatch 2025-11-12 02:22:23 +01:00
Paul Davis
e50032ecb5 for debug builds, show stacktrace for TempoMap::fetch_condition() failure 2025-11-11 14:35:55 -07:00
Paul Davis
f932e4bf15 UndoTransaction: do not delete a Command when handling its DropReferences signal 2025-11-11 13:01:50 -07:00
Paul Davis
decb945300 simpler assert 2025-11-11 13:01:50 -07:00
Paul Davis
751dea75d3 use drop_and_kill() when connecting Commands to their dependents 2025-11-11 13:01:50 -07:00
Paul Davis
210f58ddb7 add Destructible::drop_and_kill()
This should be used when a Destructible-derived object needs to be
deleted. Handlers of the DropReferences signal should not responsible for
deleting the Destructible, since that would happen in the middle of signal
emission.

Instead, emit the DropReferences signal, then delete the Destructible.
2025-11-11 13:01:50 -07:00
Paul Davis
a1d5294af5 use nullptr not zero 2025-11-11 13:01:50 -07:00
Robin Gareus
f6a2ee0103
Prefer std::regex, and modern C++ string search 2025-11-11 19:04:16 +01:00
Robin Gareus
8085627173
Add a FIXME note (MClk when vari-speeding from stop) 2025-11-11 01:59:37 +01:00
Robin Gareus
d8ea090902
Add preference to configure VST3 Knob mode 2025-11-11 01:34:34 +01:00
Robin Gareus
6d53b42022
Add enum to configure VST3 knob mode 2025-11-11 01:04:24 +01:00
Robin Gareus
599d02bd2e
Amend previous commit, fix diff 2025-11-10 20:12:53 +01:00
Robin Gareus
8929147566
Another partial revert of 4998b114ea, fix mingw builds 2025-11-10 20:04:11 +01:00
Robin Gareus
57fc904004
Undo changes from 4998b114e that break existing MSVC build
This defines should be in common header file and wrapped
in an #ifndef clause
2025-11-10 16:00:48 +01:00
Robin Gareus
7a5558af65
Properly forward MutePointChanged to mutable
The GUI only subscribes to the mutable's mute_points_changed
signal, without direct access to to the MuteMaster itself.

Previously changing mute points by means other than the GUI,
did not update existing context menus in the mixer GUI.
2025-11-10 00:42:17 +01:00
Robin Gareus
b3e4deb32f
Prefer std::regex over C regex_t 2025-11-09 21:27:26 +01:00
Robin Gareus
bf154d0239
AmEND 2025-11-09 20:55:42 +01:00
Robin Gareus
4998b114ea
First batch of change of waf/MSVC specific changes from EZ4Stephen 2025-11-09 20:51:56 +01:00
Robin Gareus
e29523ab52
Update YTK unistd.h checks 2025-11-09 20:51:51 +01:00
Robin Gareus
1ee5a68d76
Use consistent defines for header availability 2025-11-09 20:51:36 +01:00
Robin Gareus
83d44860e0
Set some more waf MSVC flags 2025-11-09 16:36:28 +01:00
Robin Gareus
289f7b10d2
Remove cycle based storing timer, prefer TimerRAII
..besides with dummy backend one can measure performance
on instruction level granularity with valgrind.
2025-11-09 16:32:24 +01:00
Robin Gareus
b3bf623c4b
Remove unused cycle timer from plugins
These days performance is measured on PluginInsert level
using more elaborate PBD::TimingStats
2025-11-09 16:24:17 +01:00
Robin Gareus
0fd67d36d9
Fix adding C++ class instances to Lua STL containers
This is because Userdata::getClass() doesn't handle
negative stack indexes. It worked fine for Lua built-in types.
2025-11-09 03:48:39 +01:00
Paul Davis
5310745312 input connection change on a midi track - forget last seen MIDI note 2025-11-06 09:23:23 -07:00
Paul Davis
e994a5665d add CapsLock modifier to Gtkmm2ext::Keyboard 2025-11-06 09:19:20 -07:00
Paul Davis
47eeb6dd98 make Route::input_change_handler() virtual and use it in MidiTrack to notice incoming notes 2025-11-06 09:19:20 -07:00