Skip to content

v0.8.2

Choose a tag to compare

@SimoHypers SimoHypers released this 23 Sep 14:37
· 781 commits to master since this release
6bb535d

Playback reliability, mostly. YouTube is moving to SABR and several clients
stopped serving whole files, so the fallback chain was rebuilt around the
three identities that still work. Plus a normalization switch, podcast fixes
and two small Linux niceties.

New features

  • A volume normalization switch under Settings ▸ Playback ▸ Audio, on by
    default. Off clears mpv's filter chain entirely: no boost, no attenuation,
    no limiter. (#298, #300)
  • Two-finger swipe to go back, on Linux. Windows already had it. (#302)
  • Clicking the empty space around the artwork collapses the now-playing
    view, the way a dialog backdrop does. (#302)

Improvements

  • The stream fallback chain is now WEB_REMIX, VISIONOS, TVHTML5_SIMPLY, then
    rustypipe. TVHTML5_SIMPLY gives signed-out playback a second leg in regions
    where the web identity's bot check refuses. ANDROID_VR is gone: googlevideo
    would only serve the first mebibyte of its URLs, so it cost two round trips
    per resolve and could never have played anything. (#292)
  • Loudness defaults move with the switch: the boost cap drops from 6 dB to
    3 dB, and the limiter ceiling goes to full scale so it only touches what
    would genuinely clip.
  • Network errors read "No connection" instead of reqwest's raw
    http: error sending request for url (...).
  • A nightly workflow checks that YouTube still streams a whole track on each
    client and that the cipher registries know the player being served. It
    never blocks a merge.
  • The Windows app-icon hint no longer promises the taskbar button, which
    Windows 11 draws from the installed app and no running process can change.
    (#299)

Bug fixes

  • Gapless transitions popped or stuttered. A WebM track left one unwanted
    sample at its end, and the next stream was not opened until the boundary
    had already arrived. (#199)
  • Waking a PC from sleep walked the whole queue and scrobbled every track it
    touched. A lost audio device is now told apart from a dead stream: playback
    stops where it is and waits for you to press play. (#267)
  • Podcasts added to the library by RSS feed were skipped as unavailable.
    (#294)
  • A podcast opened by its playlist id showed no title or artwork. (#294)
  • A network outage skipped or dropped tracks instead of stopping.
  • Signed-out users could get "Failed to recognize file format" on every
    track. A capped stream URL is now refused before mpv sees it, and a resolve
    that failed only for want of an account says to sign in. (#292)
  • Clients disabled in Settings were still used for music videos.
  • A player.js rotation that landed before the community registries had a
    config for it killed both cipher clients until a restart. (#292)
  • A cached stream URL was replayed with the wrong client's headers.
  • A failed crossfade preload left its bad URL cached, so it failed again in
    front of you.
  • A stalled music-video connection hung the player with no error.
  • The cipher webview is kept alive on Windows, where rebuilding it has been
    measured at two minutes on a cold machine. (#288)
  • Diagnostics read the disabled-clients setting under a key nothing writes,
    so it reported none on every machine.

New contributors

  • @Voltikor: found and fixed the pop and stutter on gapless transitions, in
    #295.

macOS: the app is signed ad-hoc, so Gatekeeper says it "is damaged". Clear it with xattr -dr com.apple.quarantine /Applications/limusic.app.

On Linux only the AppImage self-updates. The .rpm is a normal package, so rpm users install a new rpm.