Skip to content

Releases: better-lyrics/tacet

v1.3.0

Choose a tag to compare

@github-actions github-actions released this 24 Aug 10:41
0387048

What's Changed

  • feat: sing-along per song, and the next track on the source ladder by @boidushya in #14

Full Changelog: v1.2.0...v1.3.0

v1.2.0

Choose a tag to compare

@github-actions github-actions released this 21 Aug 22:55
a0b9ad9

What's Changed

  • feat(settings): let crossfade run without sing-along by @boidushya in #13

Full Changelog: v1.1.2...v1.2.0

v1.1.2

Choose a tag to compare

@github-actions github-actions released this 13 Aug 23:57
10d812d

What's Changed

  • fix(playback): keep the crossfade cue alive and smooth the handover by @boidushya in #12

Full Changelog: v1.1.1...v1.1.2

v1.1.1

Choose a tag to compare

@github-actions github-actions released this 13 Aug 22:57
76a2224

What's Changed

  • fix(automix): stop a gapless append silencing the crossfade cue by @boidushya in #11

Full Changelog: v1.1.0...v1.1.1

v1.1.0

Choose a tag to compare

@github-actions github-actions released this 13 Aug 21:29
dfe914e

What's Changed

  • feat(acquisition): acquire a track from a url the page mints itself by @boidushya in #10

Full Changelog: v1.0.1...v1.1.0

v1.0.1

Choose a tag to compare

@github-actions github-actions released this 12 Aug 14:46
d19fd08

What's Changed

  • fix(capture): stop a second track's media being served as the first track's audio by @boidushya in #9

Full Changelog: v1.0.0...v1.0.1

v1.0.0

Choose a tag to compare

@github-actions github-actions released this 12 Aug 11:42
9c6d71f

What's Changed

  • feat(automix): crossfade between tracks without waiting for separation by @boidushya in #7
  • feat(popup): rebuild around tabs and show what is playing by @boidushya in #8

Full Changelog: v0.4.0...v1.0.0

v0.4.0

Choose a tag to compare

@github-actions github-actions released this 10 Aug 18:24

What's Changed

  • fix(fader): keep the level handle on the pointer while dragging by @boidushya in #5

Full Changelog: v0.3.1...v0.4.0

v0.3.1

Choose a tag to compare

@github-actions github-actions released this 10 Aug 16:13

What's Changed

  • feat(ui): choose whether the fader sits in the dock or the player bar by @boidushya in #4

Full Changelog: v0.3.0...v0.3.1

v0.3.0

Choose a tag to compare

@github-actions github-actions released this 10 Aug 13:42

Highlights

A half precision model. htdemucs now comes in two precisions and you pick one in the popup. Half is an 83 MB download against Full's 163 MB, sounds pretty much the same, and builds its session about 4x faster (260 ms against 1047 ms). Inference itself is only slightly quicker, 398 ms against 463 ms a segment on Apple metal-3, so take it for the download rather than the separation speed. It measures 32 dB SNR and 0.9997 correlation against the full precision reference. Full stays the default, and switching applies from the next track with no reload.

Worth knowing: a naive fp16 conversion is entirely NaN on WebGPU. ORT's CPU kernels widen to fp32 internally while its WebGPU shaders compute in f16 natively, so reductions crossing 65504 saturate. Three sites in this graph do, one of which corrupts the output without ever producing a NaN. All three are excluded in tooling/convert-fp16.py, and stems are now checked for NaN before they are cached, since the Opus encoder turns them into silence.

No more stuttered starts. A track that already had stems sounded like it started twice. Every transport event rebuilt the buffer sources, and play and playing both fire at a track start, so the stems were torn down and restarted three times in the first two seconds. They now restart only when they have actually drifted from the track.

Separations stopped dying at the model. A separation could fail immediately after the decode with "No separation model URL is configured", killing that track. The offscreen document had to ask the background for the model URL, and a reply that arrived perfectly could still be rejected on shape. It is now handed the model with the settings it already receives, so there is no request to lose, and a missing field degrades instead of failing the run.

The fader clears the player bar. When the control sits in YouTube Music's own player bar rather than the Better Lyrics dock, its tooltip and card overlapped the progress bar. They now sit above it.

What's Changed

  • fix(playback): stop rebuilding the stem sources on every transport event by @boidushya in #2
  • fix: stop the offscreen document asking for its model URL by @boidushya in #3

New Contributors

Full Changelog: v0.2.0...v0.3.0