Skip to content

v0.1.3 — M1 Core (alpha)

Pre-release
Pre-release

Choose a tag to compare

@github-actions github-actions released this 01 Oct 20:26
· 169 commits to main since this release

Arrangement and control fixes on top of M1 — Core.

Changed

  • A warped Audio Clip (a tempo-tagged loop, or one played faster or slower) stretches in real
    time: a trim, split, Clip Loop or tempo change is heard at once and no longer renders a new
    file or stops the transport.
  • Adding a FLAC, OGG or MP3 as a clip decodes it into the Project's Audio folder as a WAV, and
    the clip plays that copy. Projects saved by 0.1.x that use such a file directly are not
    migrated: they read it as it is, which can cost more CPU.
  • Waveforms are read on a normal-priority thread, so an Audio Clip's waveform appears sooner.

Fixed

  • An Audio Clip's waveform no longer hangs on "Preparing audio", stays put when the clip is split or
    moved (to the same or another track), and is not left generating when its file can't be read.
  • A clip's title no longer glitches or follows the Playhead during playback.
  • Clicking a track header selects the track instead of focusing its Record Arm button, and the
    header's menu can't act on a track that was deleted while it was open.
  • A Knob's focus ring is no longer clipped, and the value tag of a Knob or Fader sits beside the
    control instead of following the pointer.
  • Clicking a Mixer fader away from its cap jumps the cap to that dB, in one undo step with any drag
    that follows.

Download

Open Resamper-0.1.3-macOS.dmg (Apple Silicon) and drag Resamper to Applications.

All changes

🔀 Pull requests

  • #112 🐛 fix(arrangement): draw a stretched clip's source while its proxy renders by @leizzo
  • #113 🐛 fix(arrangement): keep a clip's title put while the Playhead repaints over it by @leizzo
  • #114 🐛 fix(arrangement): draw a split clip's waveform in the first paint by @leizzo
  • #115 ✅ test(arrangement): cover a dragged clip keeping its waveform (#90) by @leizzo
  • #116 🐛 fix(controls): anchor the ValueTag, keep the Knob focus ring inside, click-to-jump the Fader by @leizzo
  • #117 🐛 fix(arrangement): select the track on a header click; keep focus off Record Arm by @leizzo
  • #118 🐛 fix(arrangement): warp Audio Clips in real time instead of rendering proxies by @leizzo

🐛 Fixes

  • 🐛 fix(arrangement): draw a stretched clip's source while its proxy renders (a010cd2) by @leizzo
  • 🐛 fix(arrangement): don't leave a waveform generating when its audio can't come (7f9b70d) by @leizzo
  • 🐛 fix(arrangement): keep a clip's title put while the Playhead repaints over it (baaf519) by @leizzo
  • 🐛 fix(arrangement): draw a split clip's waveform in the first paint (30da7bb) by @leizzo
  • 🐛 fix(controls): anchor the ValueTag, keep the Knob's focus ring inside, click-to-jump the Fader (8e77d10) by @leizzo
  • 🐛 fix(arrangement): select the track on a header click; keep focus off Record Arm (611636a) by @leizzo
  • 🐛 fix(arrangement): keep the track header's menu items off a deleted header (bb9379e) by @leizzo
  • 🐛 fix(arrangement): warp Audio Clips in real time instead of rendering proxies (099bd98) by @leizzo

⚡️ Performance

  • ⚡️ perf(engine): read waveforms on a normal-priority thread (7d3f75e) by @leizzo

♻️ Refactoring

  • ♻️ refactor(arrangement): name the waveform progress padding, null-check the test clip (a175b59) by @leizzo
  • ♻️ refactor(arrangement): name the on-screen and painted areas, cover an off-screen strip repaint (1d9d54b) by @leizzo
  • ♻️ refactor(arrangement): null-check the dragged clip's component, say why its peaks stay whole (0fc288f) by @leizzo
  • ♻️ refactor(controls): name the ValueTag gap; tidy the control view test helpers (448fa14) by @leizzo
  • ♻️ refactor(tests): share the mouseEvent helper through TestFixture.h (a1775f6) by @leizzo
  • ♻️ refactor(arrangement): name a decoded clip after the added file; tidy review nits (5aae5d4) by @leizzo

✅ Tests

  • ✅ test(arrangement): cover a dragged clip keeping its waveform (0c4f266) by @leizzo
  • 🧪 test(waveform): null-safe first-clip helper; set aside perch false positives (f5a8510) by @leizzo

🔧 Other

  • 🔧 chore(perch): close findings on unchanged methods and pre-existing literals (076a43c) by @leizzo
  • 🔧 chore(perch): close three findings on unchanged ApplicationModel methods (a7aecba) by @leizzo
  • 🔧 chore(perch): set aside pre-existing ValueTag theme-token finding (5cee156) by @leizzo
  • 🔧 chore(perch): set aside a test-lambda false positive (2d7d71e) by @leizzo
  • 🔧 chore(perch): set aside pre-existing TrackHeader theme-token findings (f7138a0) by @leizzo
  • 🔧 chore(perch): set aside the recording-waveform null finding again (afc83d2) by @leizzo