Skip to content

Releases: SEKY443/Android-LibreThing

v1.3.3

Choose a tag to compare

@SEKY443 SEKY443 released this 10 Sep 05:26

Fixes

  • Fixed a real outage: a health-check-triggered restart could kill the whole app instead of just restarting the daemon, leaving it showing stale "discoverable" state for minutes until Android happened to revive it on its own. Also switched to a more reliable way of force-killing a stuck daemon process, since Android's own API for that turned out not to always work.
    (I keep running this app for 4 days to catch this bug!!!)
  • Fixed the playback progress bar jumping around when a Spotify Connect session transfers to this device.

v1.3.2

Choose a tag to compare

@SEKY443 SEKY443 released this 07 Sep 13:48

Fixes

  • Playback could silently stall for good on an autoplay radio station that ran out of tracks
    mid-page — go-librespot kept retrying the exact same permanently-missing page every couple of
    minutes for hours instead of recognizing there was nothing left. Fixed upstream.
  • Reduced Bluetooth disconnect/reconnect blips: the audio buffer had been trimmed for a faster
    volume-change response, but that left too little margin against an ordinary scheduling hiccup —
    an underrun that's a known trigger for a Bluetooth speaker to drop its connection. Restored the
    larger buffer.
  • The in-app volume slider only ever pushed volume to the daemon, never to the phone's own
    system volume — dragging it could silently drift out of sync with the system volume shown
    elsewhere. Now kept in sync.
  • A daemon that hung (rather than crashed) could leave the app stuck showing stale state
    indefinitely, since auto-restart only ever triggered on an actual process exit. Added a
    periodic health check that detects an unresponsive daemon and restarts it the same way a crash
    does.
  • Fixed a race where a superseded restart's delayed exit signal could spuriously restart a
    session that had already recovered.
  • Fixed the playback progress bar jumping around when a Spotify Connect session transfers to
    this device.

v1.3.1

Choose a tag to compare

@SEKY443 SEKY443 released this 27 Aug 02:40

Fixes

  • OLED pixel shift no longer exposes a mismatched color at the screen edge when it nudges the
    page
  • Reduced Bluetooth disconnect/reconnect blips: an automatic restart after a go-librespot crash
    no longer tears down and recreates the Android-side audio output, which was a known trigger for
    the connected Bluetooth device to briefly drop and re-establish its audio route.
    (not fully fixed, if you run the app for hours like me you will notice it)

New

  • Automatic cache clearing (optional, off by default) — wipes the cached track audio once it
    grows past a size limit you set (50MB–2GB, 500MB by default), checked on every start.
    (you can do that in the android setting, but i still added a option for doing it automatically)

v1.3.0

Choose a tag to compare

@SEKY443 SEKY443 released this 25 Aug 03:02

New

  • OAuth 2.0 device authorization login — sign in with a code entered on any device, no shared Wi-Fi or browser callback on this device required. New "Device login" option in Settings' credentials dropdown.
  • OLED protection: pixel shift and checkerboard dimming , both opt-in.
  • Display filters: scheduled grayscale and red-light modes, each with its own start/end time.
  • Automatic update checking (on by default, turn it off if you don't like it) — checks GitHub releases at most twice a day and prompts with a link when a newer version is out.

v1.2.1

Choose a tag to compare

@SEKY443 SEKY443 released this 24 Aug 14:11

Fixes

  • Track-transition flash could still occasionally slip through with "Hide flash between
    tracks" turned on — the masking window was 1.5s, bumped the window to 3s now :/
  • Updated the bundled go-librespot engine to the latest SEKY443/go-librespot-termux
    (upstream devgianlu/go-librespot), pulling in:
    • OAuth 2.0 device authorization flow support (sign in via a code on another device,
      not exposed in the app UI yet).
    • A fix for tracks seeking a few milliseconds on start when they shouldn't.
    • audio/media capability declaration.
    • Connect/TTS proto updates.

v1.2.0

Choose a tag to compare

@SEKY443 SEKY443 released this 23 Aug 04:06

Fixes

  • The cover didn't actually round during the shrink transition
  • Swiping to skip from anywhere other than the cover art (with the full-screen gesture option
    on) skipped the track but never animated the cover
  • Portrait dashboard: the title/artist position shifted depending on whether the "last session"
    label was showing.
  • The console peek behind the shrinking cover sometimes left empty space at the top of the
    frame.

New

  • Gesture controls (Playback section, off by default). While a track is loaded: double-tap
    the cover art to play/pause, swipe left/right to skip tracks, swipe up/down to adjust volume.
    Comes with an adjustable haptic-strength slider, and works the same way while fake-sleeping
    (the black-screen overlay) -- waking up then always takes a single tap instead of whatever the
    fake-sleep wake setting is normally set to, so double-tap and swipes stay free for playback.
  • "Gesture area covers the whole screen" option. Normally gestures are scoped to the cover
    art itself; this expands them to anywhere on the dashboard -- buttons, the volume slider, and
    the console still work normally, since the gesture only ever claims touches nothing else has
    already handled.
  • "Show console during transition" option. Peeks the last few log lines behind the cover
    while it shrinks and slides on a swipe, instead of plain black. Disappears the instant the
    animation ends.
  • "Round the cover while it shrinks" option (on by default). Matches the card's own rounded
    corners as the cover shrinks and slides on a swipe, instead of staying square.
  • Fake sleep now wakes on a single tap by default, instead of requiring double-tap.

v1.1.0

Choose a tag to compare

@SEKY443 SEKY443 released this 22 Aug 05:32

Fixes

  • Settings panel open/close animation stutter.
  • Volume drifting to a different value shortly after a slider drag.
  • Volume slider visibly snapping back and replaying its animation after a drag.
  • Slightly high volume-change latency.

New

  • "Hide flash between tracks" setting (Playback section, on by default). When a track ends
    and go-librespot auto-advances to the next one, it briefly reports idle in between -- the
    dashboard flashes to the idle screen for a moment before the next track appears. This doesn't
    happen on a manual skip. It's harmless and some people like the look of it, so instead of
    suppressing it outright, it's an option: turn it off to see the flash.

Initial Release

Choose a tag to compare

@SEKY443 SEKY443 released this 21 Aug 04:01

Librething v1.0 — Initial Release

Librething turns an Android phone or tablet into a standalone Spotify Connect speaker. It
runs go-librespot natively on-device as a managed
background service — no Termux, no computer, no separate hardware. Point Spotify at it like any
other Connect device and it plays through whatever speaker or headphones are attached.

This is the first tagged release.

  • Real Spotify Connect device — discoverable automatically over Zeroconf/mDNS, or sign in
    directly with interactive login or a cached token.
  • Runs in the background, screen off included, so a device can sit in a corner and just work
    like a dedicated speaker.
  • Two dashboard styles — a clean, minimal "now playing" screen by default, or a classic
    card-based layout with a full bottom-nav shell (Nerd mode) for more visible controls.
  • Fake sleep — fades the screen to pure black to protect OLED panels and stop the display
    from being a distraction, either automatically after a period of inactivity or with one tap.
    Wake it back up with a double-tap, a swipe, or single-tap (configurable), with a matching fade
    animation either way.
  • Auto-restart on crash — if the background player dies unexpectedly, it relaunches itself
    automatically instead of silently going offline.
  • Predictive back gesture support on the Settings screen (Android 13+).
  • Appearance options — light/dark/system theme, plus tinted, pure-black, or blurred-cover-art
    dashboard backgrounds.
  • Playback controls — bitrate selection, volume normalization (with album/track gain and
    pregain), autoplay, and a live volume slider synced with the device's own volume.
  • A built-in log console with per-level color coding and copy/clear actions, for actually
    seeing what's going on when something doesn't work instead of guessing.
  • Reliability options — keep-screen-on, wake lock, autostart on boot, and a battery
    optimization exemption shortcut, since Android will otherwise suspend a backgrounded speaker.
  • Fully string-resource backed UI, laying the groundwork for future translations.

Requirements: Android 7.0 (API 24) or newer.

Credits

Built on go-librespot by
devgianlu, licensed under GPLv3 — see LICENSE and
the README's licensing note for how it's distributed alongside this app.