You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
feat(now-playing): album art in header, full-width visualizer, real HypeM art
Relocate the album art into the top header box, left-aligned with the
Now Playing metadata, and let the scatter visualizer span the full width
again (it previously gave up a 34-col left gutter to the art). Fullscreen
mode is unchanged.
The art column is sized to the cover's actual rendered width — derived
from its source aspect ratio and the terminal's cell pixel size — so the
metadata sits a consistent gap away whether the cover is square (Spotify)
or 16:9 (YouTube/SoundCloud), rather than floating after a fixed-width
column.
Fix and extend artwork resolution for stream-first services:
- SoundCloud: `fetch_thumbnail` passed `--print id`, which implies
yt-dlp's `--simulate` and suppresses all file writes — so
`--write-thumbnail` silently wrote nothing. Add `--no-simulate` to
restore the write while keeping the printed id.
- HypeM: yt-dlp's extractor exposes no thumbnail field at all, so scrape
the track page's stable Open Graph `og:image` (via a small blocking
reqwest call) to recover the real cover.
- Any track that still has no art falls back to the bundled cover, so the
header art box renders consistently instead of collapsing to the
compact layout.
reqwest is added with default-features off + native-tls only to reuse the
TLS backend stream-download already pulls and avoid dragging rustls/ring,
which would conflict with librespot's pinned getrandom 0.2.6.
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
0 commit comments