Asahi Lina
d1cc71150f
Adjust interpretation of swing amount
...
Previously,
0 -> no swing (1:1, 50%)
50 -> triplet swing (2:1, 66%)
75 -> hard swing (3:1, 75%)
100 -> sextuplet swing (5:1, 83%) (default!)
150 -> absolute maximum (inf:1, 100%)
This is rather confusing...
One common interpretation uses percentages of the beat, where triplet
swing is 66%. However, that causes precision issues since it's really
66.666...
Since we already default to 100 and take "no swing" as zero, let's make
that reference point triplet swing. Then the scale becomes:
0 -> no swing (1:1)
100 -> triplet swing (2:1)
150 -> hard swing (3:1)
200 -> sextuplet swing (5:1)
300 -> absolute maximum (inf:1)
300 doesn't make any sense, so let's change the range to -250 .. 250
which covers all useful values.
Also remove the division through 100 and back, to avoid rounding issues.
Signed-off-by: Asahi Lina <lina@asahilina.net>
2023-09-09 20:06:37 +09:00
Asahi Lina
f1004a445e
Fix quantization swing
...
- Fix selection of what beats to swing (was always done)
- Fix swing strength (lack of precision rounded to 50% or 100%)
- Fix model offset not being applied properly
Signed-off-by: Asahi Lina <lina@asahilina.net>
2023-09-09 20:06:37 +09:00
Asahi Lina
ca25b5c841
Fix quantize threshold setting
...
Signed-off-by: Asahi Lina <lina@asahilina.net>
2023-09-09 20:06:37 +09:00
Asahi Lina
577918dc07
Fix quantize beat divisions
...
Signed-off-by: Asahi Lina <lina@asahilina.net>
2023-09-09 20:06:37 +09:00
Paul Davis
aca5d7d988
place lollipops in correct location on timeline
...
It is not immediately clear to me why the + radius expression is reqired
2023-09-08 16:16:15 -06:00
Paul Davis
4ff8cff024
add velocity sense for MIDI Learn-ed clip triggering
2023-09-08 15:27:11 -06:00
Paul Davis
2f25592702
push2: add velocity sensitivity
2023-09-08 14:57:28 -06:00
Paul Davis
1249195516
push2: remove debug output
2023-09-08 14:57:07 -06:00
Paul Davis
b440488295
launchpad pro: provide velocity info when launching clips/triggers
2023-09-08 14:41:21 -06:00
Paul Davis
36048ea651
triggerbox: change API to allow providing velocity information when "banging" triggers
...
... and by extension using it (based on the magnitude of the velocity effect setting) to set the gain of
audio triggers
2023-09-08 14:41:21 -06:00
Ben Loftis
503e6249f4
remove GridTypePlayhead
2023-09-08 15:27:04 -05:00
Robin Gareus
d57676b9c7
Maybe clear time-selection when switching to draw tool
2023-09-08 14:50:43 +02:00
Ben Loftis
e81b2353cc
Indicate arrangement section selection on canvas
2023-09-08 03:26:00 +02:00
Robin Gareus
b243b93072
Allow to reuse range context menu w/o track/region selection
2023-09-08 03:25:59 +02:00
Robin Gareus
019a3a1976
Allow to select Arrangement sections
...
This also adds interaction with sections in the
Arrangement Ruler.
Note that selecting a range switches to the Range tool.
This is enforced because time-range selection is only meaningful
with tools that perform edit operations on the whole timeline.
2023-09-08 03:25:59 +02:00
Ben Loftis
b6e9f37007
Arrangement Sidebar: follow-edits locates to selected section
2023-09-08 03:25:59 +02:00
Robin Gareus
d2b083f385
Arrangement Sidebar: allow name edit by double-click
2023-09-08 03:25:59 +02:00
Robin Gareus
78db634321
Unconditionally show time-selection in info box with object tool
...
Arrangement Section can be selected with the object tool,
and should be indicated even when not using Smart mode.
2023-09-08 03:25:59 +02:00
Robin Gareus
20b646e962
Handle MouseGrid cursor (fix -Wswitch, amend 784d2ecc)
2023-09-08 03:25:59 +02:00
Paul Davis
250174b16e
don't bother locating at end of no-motion marker drag if using external sync
2023-09-07 14:23:08 -06:00
Paul Davis
f9a121ce9c
click (no drag) on markers locates there, unless using marker as edit point
2023-09-07 14:23:08 -06:00
Ben Loftis
3f14b27ee3
remove (unimplemnted) Stretch MIDI checkbox
2023-09-07 15:18:36 -05:00
Robin Gareus
e88a121ff8
Fix canvas rectangle bounding box
...
When drawing the outline of a rectangle, the bounding
box must cover the whole pixel of the line. Otherwise
the line would be left behind when the rectangle shrinks.
2023-09-07 02:45:26 +02:00
Robin Gareus
cc47b5fe3c
Only allow grid-tool with musical grid
2023-09-06 23:56:10 +02:00
Paul Davis
966dce5516
remove now-invalid tempo edit menu items
2023-09-06 15:29:55 -06:00
Paul Davis
aaadc3906c
triggerbox: fix crashing bug while processing clips in rubberband
...
The read_index is adjusted in the loop, which means that the calculation of how much
data can be delivered to the stretcher must also be inside the loop
2023-09-06 14:46:24 -06:00
Paul Davis
58b667c6c0
temporal: fix crash caused by unsafe use of tempo map iterators
2023-09-06 14:46:24 -06:00
Paul Davis
3675f8f444
launchpad pro: remove debug output
2023-09-06 14:46:24 -06:00
Paul Davis
6d9c47c920
launchpad pro: only light Sends button if the selected stripable has 1+ sends
2023-09-06 14:46:24 -06:00
Paul Davis
1ec966d964
launchpad pro: allow clear+cue buttons to ... clear a cue
2023-09-06 14:46:24 -06:00
Paul Davis
68678aa957
triggerbox: add API to clear a cue (row)
2023-09-06 14:46:24 -06:00
Ben Loftis
da4d2a645f
remove tempo-mapping bar, tempo_meta group. this reverts 8fbf2c and related
2023-09-06 19:31:00 +02:00
Ben Loftis
784d2ecce4
Add the tool for Grid, and accompanying buttons and event-handling
2023-09-06 19:30:56 +02:00
Ben Loftis
268d1d33c7
Add invisible Rectangle to initiates Tempo(grid) drags
2023-09-06 19:14:14 +02:00
Robin Gareus
f339236c5b
Add icon for the Grid tool
2023-09-06 19:13:59 +02:00
Robin Gareus
80a813ff1c
Fix use-after-free when undoing marker creation
...
Create a marker by ctrl-click, hover over it and then ctrl+z
undo. This used to crash in Editor::get_preferred_edit_position()
gtk2_ardour/editor.cc:5179, checking for entered_marker->position()
2023-09-06 17:37:11 +02:00
Robin Gareus
c2ce0bcb4a
Amend 101744b8, allow when and start to point to the same variable
2023-09-06 01:01:30 +02:00
Robin Gareus
3851a93e39
Update selection-markers on track and time selection
2023-09-06 00:02:36 +02:00
Robin Gareus
10ff5ad599
Use section delete for Editor::Delete operation
2023-09-06 00:02:31 +02:00
Ben Loftis
6e87a46ba4
convention for selection (as used on track headers) is red border, red tint
2023-09-05 23:08:30 +02:00
Robin Gareus
29430ac550
NO-OP: clang-format
2023-09-05 23:08:30 +02:00
Robin Gareus
68ccbc8ac3
Arrangement: locate on double-click
2023-09-05 23:08:30 +02:00
Ben Loftis
e5e40c751f
if user moves selection markers, convert selection to a timeline section
2023-09-05 23:08:30 +02:00
Ben Loftis
4217a68852
Arranger: implement bi-directional selection
2023-09-05 23:08:30 +02:00
Ben Loftis
5ceb66c902
Arranger: allow renaming by context-menu
2023-09-05 23:08:29 +02:00
Ben Loftis
101744b812
Add method to find a section location by position
2023-09-05 23:08:29 +02:00
Robin Gareus
5c888f2b90
Fix deadlock when cut/pasting section to itself
2023-09-05 23:08:29 +02:00
Paul Davis
5223d05854
launchpad pro: various improvements and fixes
2023-09-04 19:41:25 -06:00
Paul Davis
269699c340
temporal: fix get_grid() to work in the presence of "weird" BBT markers
2023-09-04 19:41:25 -06:00
Paul Davis
13bdfda81a
temporal: add Meter::round_up_to_beat_div()
...
reimplement round_up_to_beat() in terms of round_up_to_beat_div()
2023-09-04 19:41:25 -06:00