Skip to content

Releases: devgianlu/go-librespot

v0.0.1

05 Sep 17:05
Compare
Choose a tag to compare

Changelog

  • 9291781 Add "will_play" websocket event
  • d0bef2e Add ContextResolver + minor
  • 5438f68 Add Login5 API support
  • 816de09 Add TrackId and base62 stuff
  • ddf9a9b Add ability for logging in with Spotify token
  • a21f5e8 Add active/inactive events
  • 1091fac Add audio decryption key API
  • d370c08 Add barebone dealer
  • 907604e Add basic CI
  • f513151 Add blob AP authentication method
  • c7b7cff Add build instructions
  • 55c2ca1 Add client token retrieval for Spclient
  • 9383a2a Add controls logging
  • 39ca96a Add description to configuration fields
  • 1949bb3 Add device identifier and name to status API
  • 14c8c4b Add documentation + minor API changes
  • 89c33e9 Add more info to status API request
  • 8267d41 Add not_playing and stopped websocket events
  • 1542665 Add paused and buffering to status API
  • 7e35eb6 Add play origin field to websocket events
  • 51bd18c Add play origin to status API
  • faf54f0 Add state options to status API
  • f64c918 Add stopped to status API
  • 410a66d Add storage resolve and track metadata APIs
  • 1774833 Add stream stop command
  • 7c3506e Add track URI to multiple events
  • 2e2ed31 Add websocket server for events
  • 256b137 Add zeroconf support
  • 5843ed9 Allow setting config and credentials files path
  • b5f5693 Allow setting device type
  • 4fd7b23 Allow setting volume from API
  • 2d74fff Allow starting playback via API
  • fe82b61 Apply track normalisation factor
  • c070554 Authentication + shannon encryption
  • 95ecb79 Avoid incoherent stream leftover
  • 8a6ccca Baby steps to working player
  • 31904bd Better error handling of failed put state requests
  • 16d95de CI: add goreleaser
  • 88665ef CI: build daemon
  • 5482bb2 CI: compile alsa-lib inside /tmp
  • 9fd8851 CI: fix sudo typo
  • 7c8f96c CI: install build dependencies
  • fc57fa9 CI: locally working
  • 5066f03 CI: run apt-get update beforehand
  • b56a443 CI: use sudo where needed
  • 5a07f7b Continue with next track when other ends
  • 72585fd Customize User-Agent of HTTP client
  • a6ddaca Customize audio bitrate
  • 6b2ff98 Emit seek event consistently
  • a231c45 Ensure closing http response body
  • ce8cc13 Fetch alternative files
  • 8fd1d7a Fetch endpoints from apresolve
  • e2980d2 Fix AP deadlock + minor
  • d069a10 Fix KeyProvider deleting wrong request on failure
  • 4922902 Fix audio stuttering when seeking
  • 7a5e749 Fix crash on failing to resolve context
  • 7458cd7 Fix credentials.json permissions
  • 196406a Fix deadlock when processing events
  • a52db48 Fix go.sum
  • ed6dea5 Fix nil deref
  • f019ef1 Fix nil deref with context metadata
  • ad455aa Fix player skipping to next track when pausing
  • 7075172 Fix seek bar + improve precision when pausing/resuming
  • fe49658 Fix shannon cipher implementation
  • 095228d Fix transfer track seek
  • 84e65e1 Fixed error while handling messages + websocket events logging
  • 8781830 Generic API fixes
  • 73e2e88 Handle AP basic packet types
  • 59a831f Handle API requests for seek, skip next and skip prev
  • 82066b6 Handle API requests for status, pause and resume
  • 8249ebd Handle connection ID from dealer
  • bd63b7a Handle dealer requests
  • 317abd2 Handle empty context pages
  • c85b2a9 Handle login5 access token expiration
  • 592dcac Handle message payloads in dealer
  • 6ffc726 Handle reconnection in accesspoint
  • 88a6931 Handle reconnection in dealer
  • 507bdd8 Handle update_context commands
  • 93f5274 Improve API status endpoint
  • 8694ae4 Improve platform info + program version
  • 4529432 Improve resolver expirations
  • 991b1d6 Improved dealer logging
  • 060560b Initial commit
  • 7b12f49 Load configuration from file
  • 5bdf2d1 Minor config cleanup
  • 22f6a55 Model receive channel from accesspoint
  • 74be697 Move compiled protobufs
  • 0cd906d Move device id generation
  • c45302c Move diffiehellman to separate package
  • 5368066 Pause playback when context ends
  • 0b78a32 Put initial connect state
  • 2082bc3 Receive ProductInfo packet from accesspoint
  • ff80007 Receive messages and requests from dealer
  • b098af5 Refactor ApResolver getters
  • 186bad4 Refactor audio fetching to support seeking
  • 84ccc84 Refactor daemon session to support zeroconf
  • bbd0212 Refactor deviceId and clientToken
  • 11b3a80 Refactor state handling
  • 0a8f2ea Refactor track position getter
  • 7aba5d3 Remove seek artifacts by muting player
  • 15d0ed8 Rename "track" event to "metadata"
  • 50c63e9 Rename AccessPoint to Accesspoint
  • 9033bad Rename audio_key to audio
  • b65021c Save reusable credentials for spotify token + remove refresh token
  • d3c5b59 Send packets with accesspoint
  • 442baf4 Set device type + add put state request API
  • 9f0c793 Set very large read limit on websocket
  • fce2723 Start and authenticate all components
  • 9b4f2f7 Start receive loops lazily
  • 7c9187c Stop player when becomes inactive
  • 0d1a8e3 Store credentials to file
  • 7112727 Support pause, resume and seek_to
  • 43cee18 Support play command
  • a185efe Support retrieving new endpoints from apresolve
  • 4e4f811 Support selection audio device
  • 54f919e Support skip prev/next
  • 20696c6 Suspend / resume oto context
  • b24678f Swallow unsupported dealer payload format
  • c82602c TrackId improvements
  • f2a9a04 Update README example config
  • cb35e3a Update config schema
  • 4f9510c Update credentials config format
  • bef6b42 Update devgianlu/oto
  • 79803fa Update devgianlu/oto + close player when exiting
  • da4a329 Use ProductInfo data
  • 5723a51 Use integers for volume control + API volume getter
  • 01b14b1 Working accesspoint connection