Brandon Thomas
52294bd4a3
Merge main into #291
...
# Conflicts:
# crates/engine/src/cmd/event.rs
2026-10-13 04:30:17 -04:00
Brandon Thomas
12d9f4dde6
Merge pull request #260 from Silvertree2010/fix/timecode-overflow
...
Compute timecode frame counts in i128 and clamp (#248 )
2026-10-13 04:29:45 -04:00
Brandon Thomas
6dfa00590b
Merge pull request #304 from marcoarnulfo/fix/midi-track-offsets
...
Apply MIDI track offsets when scheduling notes
2026-10-13 04:29:40 -04:00
Brandon Thomas
6bab8365e6
Merge pull request #289 from marcoarnulfo/fix/clear-trim-automation
...
fix(track): Clear Trim Automation removes the trim lane (#233 )
2026-10-13 04:29:36 -04:00
Brandon Thomas
cd1ddff0c0
Merge pull request #324 from iannitram/fix/gate-on-windows-and-rust-1.95
...
Make cargo xtask ci pass on Windows, and on Rust 1.95
2026-10-13 04:29:32 -04:00
Brandon Thomas
ec67064398
Merge pull request #355 from mroxso/fix/ui-test-palette-lock-323
...
fix(ui-egui): own the test palette lock for every SoundApp lifetime (#323 )
2026-10-13 04:29:27 -04:00
Brandon Thomas
e59f079a02
Merge pull request #342 from mroxso/t3code/76964692
...
fix(mix): mix.insert_params rejects unknown parameter names
2026-10-13 04:29:23 -04:00
Brandon Thomas
b0339a418f
Merge pull request #401 from Claudio911015/fix/273-clip-loop-unloop-consistency
...
Make clip.loop / clip.unloop self-consistent (loop_id tag)
2026-10-13 04:29:19 -04:00
Brandon Thomas
d9b959ed6c
Merge pull request #400 from marcoarnulfo/fix/vst3-set-param-controller-sync
...
VST3: hand host-set parameter values to the controller before saving state
2026-10-13 04:29:15 -04:00
Brandon Thomas
75e019dde3
Merge pull request #301 from marcoarnulfo/fix/seek-flushes-state
...
Locate clears plugin and delay-compensation state
2026-10-13 04:29:11 -04:00
Brandon Thomas
e5ca13d07f
Merge pull request #327 from Limestudio90/fix-replaced-instance
...
mix: a newly adopted plugin instance replaces a matching one in its slot
2026-10-13 04:29:07 -04:00
Brandon Thomas
a307f767ba
Merge pull request #212 from itrycodinganditsbad/consolidate-selection
...
Consolidate covers the whole edit selection (#164 )
2026-10-13 04:28:45 -04:00
Brandon Thomas
f868c2678f
Merge pull request #386 from itrycodinganditsbad/fix-240
...
fix(meter): keep K-weighting stable below ~3.4 kHz sample rates
2026-10-13 04:28:41 -04:00
Brandon Thomas
34117efc24
Merge pull request #354 from webdevtodayjason/automation-thin-tolerance
...
Keep automation thinning within its tolerance
2026-10-13 04:28:36 -04:00
Brandon Thomas
651b9049a8
Merge pull request #353 from webdevtodayjason/trim-keeps-clip-gain
...
Keep the clip gain line where a clip is trimmed or separated
2026-10-13 04:28:31 -04:00
Brandon Thomas
a89c0c4db5
Merge pull request #379 from webdevtodayjason/trim-to-selection-order
...
Keep clips in order after Trim to Selection
2026-10-13 04:28:26 -04:00
Brandon Thomas
54254639cc
Merge pull request #358 from sajibsrs/fix/282-new-midi-clip-menu
...
Add Clip › New MIDI Clip so an empty MIDI track can get a clip (#282 )
2026-10-13 04:28:22 -04:00
Brandon Thomas
fe8270e6dc
Merge pull request #293 from MarekSpodBiedry/m4b-open
...
Open .m4b audiobook files like .m4a
2026-10-13 04:28:17 -04:00
Brandon Thomas
2d1f25b1bb
Merge pull request #264 from TheMojoMan/toolbar-horizontal-scroll
...
fix(ui): horizontally scroll the Edit toolbar
2026-10-13 04:28:12 -04:00
Brandon Thomas
8eb1d1aa77
Merge pull request #313 from lunar-me/fix-docs/issue-008
...
docs: fix grammar issue in docs/target-app-parity.md
2026-10-13 04:28:07 -04:00
Brandon Thomas
d85889aafa
Merge pull request #312 from lunar-me/fix-docs/issue-007
...
docs: fix grammar issue in docs/target-app-parity.md
2026-10-13 04:28:03 -04:00
Brandon Thomas
63717328c5
Merge pull request #311 from lunar-me/fix-docs/issue-002
...
docs: fix grammar issue in README.md
2026-10-13 04:27:58 -04:00
Brandon Thomas
18579f546c
Merge pull request #295 from marcoarnulfo/fix/pan-automation-bounce
...
fix(mix): pan automation reads the same in playback and bounce
2026-10-13 04:27:50 -04:00
Brandon Thomas
3c53d25413
Merge pull request #294 from marcoarnulfo/fix/feet-frames-reference
...
Apply the Feet+Frames reference to counters and typed positions
2026-10-13 04:27:47 -04:00
Brandon Thomas
3ef50746c8
Merge pull request #292 from marcoarnulfo/fix/trim-no-overlap
...
fix(edit): trims stop at the neighbouring clips instead of overlapping them (#228 , #229 )
2026-10-13 04:27:43 -04:00
Brandon Thomas
704ebc3c76
Merge pull request #288 from marcoarnulfo/fix/clip-gain-cut-clipboard
...
fix(edit): cut clip gain keeps the removed gain for paste (#230 )
2026-10-13 04:27:37 -04:00
Brandon Thomas
db9ea775fc
Merge pull request #287 from marcoarnulfo/fix/midi-backspace-rename
...
fix(midi-editor): Backspace in a text field leaves the selected notes alone (#223 )
2026-10-13 04:27:30 -04:00
Brandon Thomas
8c33cefe1c
Merge pull request #286 from marcoarnulfo/fix/modulation-feedback-tail
...
fix(dsp): chorus and flanger tails follow their feedback (#242 )
2026-10-13 04:27:23 -04:00
Brandon Thomas
5bb3e7b3b6
Merge pull request #285 from marcoarnulfo/fix/pitch-shift-full-range
...
fix(dsp): pitch_shift reaches ±48 semitones (#243 )
2026-10-13 04:27:18 -04:00
Brandon Thomas
f58da8fe8a
Merge pull request #284 from marcoarnulfo/fix/elastic-properties-ratio
...
fix(clip): Elastic Properties stretches the clip by the requested ratio (#227 )
2026-10-13 04:27:14 -04:00
Brandon Thomas
99dbd4d628
Merge pull request #283 from marcoarnulfo/fix/marker-edit-name
...
fix(markers): markers.edit applies the documented name (#236 )
2026-10-13 04:27:10 -04:00
Brandon Thomas
741010d50c
Merge pull request #281 from marcoarnulfo/fix/h264-param-set-overflow
...
fix(video): H.264 parameter sets check their arithmetic before range checks (#251 , #252 )
2026-10-13 04:27:06 -04:00
Brandon Thomas
3726c57d78
Merge pull request #280 from marcoarnulfo/fix/eq-discrete-redesign
...
fix(eq): switches and choices redesign the filter on a running EQ (#239 )
2026-10-13 04:27:02 -04:00
Brandon Thomas
e5787ab7ac
Merge pull request #279 from marcoarnulfo/fix/midi-quantize-grid
...
fix(midi-editor): Quantize snaps to the grid the editor shows (#226 )
2026-10-13 04:26:56 -04:00
Brandon Thomas
f146bc359f
Merge pull request #278 from marcoarnulfo/fix/pencil-plugin-range
...
fix(edit-window): Pencil clicks on plugin lanes use the plugin's range (#224 )
2026-10-13 04:26:53 -04:00
Brandon Thomas
12224df8f5
Merge pull request #277 from marcoarnulfo/fix/hide-floating-automation
...
fix(window): Hide All Floating Windows also hides Automation (#253 )
2026-10-13 04:26:49 -04:00
Brandon Thomas
baf102e13f
Merge pull request #276 from marcoarnulfo/fix/filmstrip-clip-start
...
fix(video-universe): filmstrip thumbnails use the clip's own movie time (#225 )
2026-10-13 04:26:45 -04:00
Brandon Thomas
bd7e8f271f
Merge pull request #275 from marcoarnulfo/fix/video-selection-midi-target
...
fix(midi-editor): a selected video clip is not a MIDI target (#258 )
2026-10-13 04:26:42 -04:00
Brandon Thomas
b8e206273c
Merge pull request #272 from marcoarnulfo/fix/midi-front-keeps-editor
...
fix(window): keep the MIDI Editor open on Bring to Front (#254 )
2026-10-13 04:26:37 -04:00
Brandon Thomas
5c1f9d7dc8
Merge pull request #271 from marcoarnulfo/fix/command-filter-ui-rows
...
fix(control): apply the engine.commands filter to UI commands (#255 )
2026-10-13 04:26:33 -04:00
Brandon Thomas
d14edcd51c
Merge pull request #270 from marcoarnulfo/fix/track-vca-null
...
fix(track): vca: null clears a VCA assignment, as documented (#237 )
2026-10-13 04:26:28 -04:00
Brandon Thomas
06a4b21663
Merge pull request #269 from marcoarnulfo/fix/pitch-detect-large-rate
...
fix(dsp): a huge finite sample rate is no pitch, not an overflow (#241 )
2026-10-13 04:25:54 -04:00
Brandon Thomas and Claude Opus 5.5
5183bc4dba
rustfmt
...
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com >
2026-10-13 04:22:21 -04:00
Brandon Thomas and Claude Opus 5.5
ad8beac9b4
Look up the MIDI track offset without allocating on the audio thread
...
schedule_notes ran format!() every block for every instrument track; scan
the edit values by prefix instead.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com >
2026-10-13 04:21:20 -04:00
Brandon Thomas and Claude Opus 5.5
165fa98a90
Count tracks, not lanes, in track.clear_trim_automation's result
...
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com >
2026-10-13 04:21:20 -04:00
Claudio
bee999584f
Make clip.unloop recognise loops made by clip.loop, even after edits
...
clip.unloop found loop copies only by comparing content of back-to-back
clips. As soon as the source clip's notes were edited, its content no
longer matched the copies and unloop answered "the selection is not a
looped clip" for the very loop that clip.loop had just created.
clip.loop now tags the origin and its copies with a shared `loop_id`
(new optional Clip field, serde default so old sessions load), and
unloop treats equal-length adjacent clips with the same loop_id as one
loop. The content comparison stays as a fallback for loops without a
tag. unloop with mode=flatten clears the tag so the copies become
ordinary independent clips.
Propagating edits from the source to the copies is not part of this
change.
2026-10-12 23:54:33 -06:00
Marco Arnulfo
40c5e9b42a
VST3: hand host-set parameter values to the controller before saving state ( fixes #257 )
...
Plugin::set_param only queues the value for the processor, so a parameter that lives in the controller alone (no processor state) was saved with the controller's old value and came back wrong after load_state. set_param may run on the audio thread, so it now just marks the value; save_state, which already calls into the controller, pushes the marked values with setParamNormalized before taking the snapshot.
2026-10-13 07:06:22 +02:00
Fabio Lussi and Claude Opus 5.5
81ec430341
fix(meter): keep K-weighting stable below ~3.4 kHz sample rates
...
The shelf corner (~1682 Hz) sits at or above Nyquist for rates under
~3.4 kHz. The bilinear prewarp tan() then wraps negative (unstable
poles, +750 LUFS readings, -144 integrated) or aliases. Hold the
design frequency below Nyquist (0.49 * sr, as Coeffs::design does).
Coefficients at 8 kHz and above are unchanged.
Fixes #240
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com >
2026-10-12 23:45:03 +02:00
webdevtodayjason
950f3e7085
Keep clips in order after Trim to Selection
2026-10-12 16:09:01 -05:00
Sajidur Rahman and Claude Opus 5.5
7a62ab3be0
Add Clip › New MIDI Clip menu entry and command reachability test
...
midi.new_clip had no UI path, so an empty instrument/MIDI track could
never get a MIDI clip (#282 ). The menu bar is built from the catalog,
so the entry is added to menus::tree() and placed first in Clip.
The new test checks every mutating command is reachable from the GUI
(built menu tree, shortcut, or UI reference), with today's gaps listed.
Closes #282
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com >
2026-10-13 02:44:59 +06:00