13
0
Commit Graph

39786 Commits

Author SHA1 Message Date
38ebe95613 add missing files 2024-10-17 07:44:29 -06:00
54c41372cc fix a rebase error 2024-10-17 07:44:29 -06:00
2b997343a4 first working visual evidence of MIDI display/editing on cue page 2024-10-17 07:44:29 -06:00
ff962821ad NO-OP: comment fix 2024-10-17 07:44:29 -06:00
584d97bc2d NO-OP (whitespace) 2024-10-17 07:44:29 -06:00
e24d1d069d all streamviews are now ViewBackgrounds
This new inheritance heirarchy lets us share (a very small piece of) code
between streamviews in the Editor and the nascent piano roll object on the cue
page.
2024-10-17 07:44:29 -06:00
a550b6482f start using the now-compilable MidiView
Nothing yet derives from this, but MIDI display items and drags
do use it.
2024-10-17 07:44:29 -06:00
fb1dbb1e9c remove method decls no longer based in PublicEditor.h 2024-10-17 07:44:29 -06:00
a6e02d7a94 add set_* methods to Slice; remove property additions
Derived classes (currently only Region) just register the Slice properties
_start and _length.
2024-10-17 07:44:29 -06:00
e3be2c781f constification of EditingContext/{Public}Editor time+snap methods 2024-10-17 07:44:29 -06:00
9e5211e9b1 move 2 relative time methods from RegionView to EditingContext 2024-10-17 07:44:29 -06:00
45328723b0 separate out all bounds/position info from Region into "Slice"
The idea here is to be able to describe region size, start and position
independently of an actual Region object.
2024-10-17 07:44:29 -06:00
7799adc8db make Stateful a virtual base class of StatefulDestructible
This permits dual inheritance from Stateful.
2024-10-17 07:44:29 -06:00
9d7a87083a removed unused MidiRegionView argument from SysEx (visual) constructor 2024-10-17 07:44:29 -06:00
e67e6aa363 no-compilable steps towards MidiView 2024-10-17 07:44:29 -06:00
204d4237f8 further steps towards MidiRegionView outside the Editor 2024-10-17 07:44:29 -06:00
ca7bd9a73d manually merge in new actions for note tupling 2024-10-17 07:44:29 -06:00
e6c56b39d1 finish basic distribution of EditingContext methods
This compiles but is not expected to work yet
2024-10-17 07:44:29 -06:00
4398fe931b more movement of code and members from Editor => EditingContext 2024-10-17 07:44:29 -06:00
e9d63a707a skeleton for MIDI cue editor 2024-10-17 07:44:29 -06:00
b4e592a469 adjust relationship between VerboseCursor and Editor to use EditingContext 2024-10-17 07:44:29 -06:00
8bbe117e6b add preprocessor guard clauses 2024-10-17 07:44:29 -06:00
2187c63bee add stub for cue editor 2024-10-17 07:44:29 -06:00
1bf2307137 more reorganization of implementations between Editor & EditingContext & PublicEditor 2024-10-17 07:44:29 -06:00
7d5f575d61 finish inheritance work between EditingContext & Editor
this completes the initial phase of defining what an EditingContext must offer,
though the may expand or shrink as we being work on editing outside the Editor
2024-10-17 07:44:29 -06:00
3341184f8c clean up minor mess after manual rebasing 2024-10-17 07:44:29 -06:00
dee8e920e6 editing refactoring, the drag part 2024-10-17 07:44:29 -06:00
089a9521d5 steps to an ecology of editing 2024-10-17 07:44:29 -06:00
744b491162 PublicEditor IS-A MidiEditingContext 2024-10-17 07:44:28 -06:00
722d74c3ef skeleton work for a MidiEditingContext, incomplete 2024-10-17 07:44:28 -06:00
e3d790207f modify MIDITrigger to use an RTMidiBuffer<Beats,Beats> for playback, not a MidiModel
Creating an iterator on a MidiModel (Sequence) creates a read-lock on the same,
which exists until the iterator is destroyed.

This new designs renders the model/source to an RTMidiBuffer, then atomically
swaps in a new RTMidiBuffer in an RT context.

Not yet implemented in this temporary branch is handling required
state-changing messages when the buffer is swapped.
2024-10-17 07:44:28 -06:00
a4a277c141 templatize RTMidiBuffer to allow use in different time domains
Also add ::track_state() method to configue a MidiStateTracker
to correspond to the state implied by an RTMidiBuffer<T,D>
at a given point in time.
2024-10-17 07:44:28 -06:00
b693d07fcb Add a new ::render() method to MidiSource that writes to an EventSink 2024-10-17 07:44:28 -06:00
0986b8d1e8
Revert "Only enable RegionFX in debug builds for the time being"
This reverts commit d525f8d60c.
2024-10-17 15:36:29 +02:00
John Emmas
b6cb758357 Another minor tweak to fix a build issue with MSVC/c++17
Fixes a conflict between 'std::byte' (new in c++17) and earlier declarations / typedef's that defined 'byte'
2024-10-17 12:07:05 +01:00
0a0848b2d6
Set LiveTrax binary name when packaging 2024-10-16 20:21:19 +02:00
d525f8d60c
Only enable RegionFX in debug builds for the time being
This reverts commit 14ff2f2e68.
2024-10-16 18:29:51 +02:00
6149771910 fix yet more cases where SMF are imported and named incorrectly 2024-10-15 22:35:04 -06:00
5c2e1bd807 fix another case where SMF are imported and named incorrectly 2024-10-15 21:22:10 -06:00
3221e9bc85 MIDI map for M-Audio Axiom 49 MkII by Francois-Xavier Thomas 2024-10-16 00:00:28 +02:00
cab7fdf3d0 when d-n-d'ing SMF, use file & track name for the new sources and regions 2024-10-15 09:36:42 -06:00
2d0f472af5 Consolidate macOS version parser 2024-10-15 00:57:10 +02:00
Mads Kiilerich
0d4bce8663
backends: Fix class name in debug and error messages for set_latency_range and get_latency_range traces 2024-10-15 00:41:12 +02:00
Mads Kiilerich
99ba70384a
FaderPort8: Improve DEBUG_TRACE messages 2024-10-15 00:41:12 +02:00
Mads Kiilerich
5c763c99ba
FaderPort8: Use explicit "Port 1" for FP8 too
84e38b4c65 made the same change for FP16.

It has apparently not been necessary for FP8 so far, because backends
have happened to report "Port 1" before the control port. But that is
not necessarily the case. It failed for me when playing around.

Change FP8 handling to also not make assumptions about the device order
returned by the backend.
2024-10-15 00:41:12 +02:00
3171eb5aa1
C++17 requires macOS 10.13 or later 2024-10-15 00:35:50 +02:00
Mads Kiilerich
b7249c8fe7
build: Set _POSIX_C_SOURCE=200809L instead of comment about -std=gnu99 in 8fea1ea42e
We are converging towards setting it globally.
2024-10-14 22:57:15 +02:00
Mads Kiilerich
57c5aa95f7
preferences: Don't lowercase 'ardour' in the 'monitoring' list between 'Audio Driver' and 'Audio Hardware'
c7ec2bb gave the other "Record monitoring handled by" options nice title
casing. Now allow the application name to use a similar style.
2024-10-14 22:56:45 +02:00
eb87b0e2eb
Remove old safety check
These days it only produces false positives (locate at start
of session export).

We leave `ENSURE_PROCESS_THREAD` in place, since it may
come in handy at some point (eg. static analysis, documentation)
2024-10-14 22:52:37 +02:00
Daniel Appelt
6a2d3fcbec
Add script that duplicates regions on the grid 2024-10-14 21:59:14 +02:00