Commit graph

1375 commits

Author SHA1 Message Date
Nick Botticelli 56585cabb6
Add Google sign in credential to protobufs 2021-11-26 23:28:37 +01:00
Nick Botticelli 7ed8fc01ee Add more platforms to keyexchange.proto 2021-09-21 02:13:32 -07:00
Roderick van Domburg f99f336a6a
Merge pull request #816 from roderickvd/new-api-client
Lay groundwork for new Spotify API client
2021-06-28 22:08:50 +02:00
Roderick van Domburg 124e851178
Merge pull request #815 from librespot-org/revert-805-new-api-client
Revert "Lay groundwork for new Spotify API client" squash merge
2021-06-28 21:41:33 +02:00
Roderick van Domburg a21b3c9f86 Revert "Lay groundwork for new Spotify API client (#805)"
This reverts commit 39bf40bcc7.
2021-06-28 21:34:59 +02:00
Roderick van Domburg 39bf40bcc7
Lay groundwork for new Spotify API client (#805)
Lay groundwork for new Spotify API before removing `spirc`

* Add token provider
* Introduce HTTP client
* Introduce caching `ApResolver` component
* Remove `keymaster` and update example
* Use `PacketType` instead of hex identifiers
* Document new unknown packet 0xb6
2021-06-28 20:58:58 +02:00
Roderick van Domburg 7cd1b7a26a
Merge branch 'dev' into new-api-client 2021-06-26 00:14:20 +02:00
Roderick van Domburg 7d27b94cfb
Document new unknown packet 0xb6 2021-06-25 23:56:17 +02:00
Roderick van Domburg 9082ffa308
Merge branch 'new-api' into new-api-client 2021-06-25 22:39:21 +02:00
Roderick van Domburg e58934849f
Fix clippy warnings 2021-06-23 21:43:23 +02:00
Roderick van Domburg aa4cc0bee6
Ignore known but unused packets 2021-06-23 21:26:52 +02:00
Roderick van Domburg 12365ae082
Fix comment 2021-06-22 23:58:35 +02:00
Roderick van Domburg 0703630041
Use PacketType instead of hex identifiers 2021-06-22 23:57:38 +02:00
Roderick van Domburg 4fe1183a80
Fix compilation on Rust 1.48 2021-06-22 21:54:50 +02:00
Roderick van Domburg d3074f597a
Remove keymaster and update example 2021-06-22 21:49:36 +02:00
Roderick van Domburg 3a7843d049
Fix refilling with proxies and a race condition 2021-06-22 21:39:38 +02:00
Roderick van Domburg eee79f2a1e
Introduce caching ApResolver component 2021-06-21 23:49:37 +02:00
Roderick van Domburg b6357a27a5
Store token_type and simplify scopes argument 2021-06-21 23:48:53 +02:00
Roderick van Domburg 15628842af
Introduce HTTP client 2021-06-20 23:09:27 +02:00
Roderick van Domburg ce4f8dc288
Remove superfluous status check 2021-06-20 20:45:15 +02:00
Roderick van Domburg e1e265179f
Document known token scopes 2021-06-20 20:40:33 +02:00
Roderick van Domburg be16d3babf
Merge pull request #807 from JasonLG1979/patch-1
Make CI ignore things that should not trigger build tests (reprise)
2021-06-20 11:24:04 +02:00
Jason Gray b1f1464825
Round 2 of trying to get CI to ignore things that should not trigger a build test 2021-06-20 00:07:33 -05:00
Roderick van Domburg 850db43254
Add token provider 2021-06-19 23:46:48 +02:00
Roderick van Domburg a7326815bd
Merge pull request #802 from JasonLG1979/fix_pipe_backend
Better errors in pipe backend
2021-06-19 22:38:47 +02:00
Roderick van Domburg 40e56794ce
Merge pull request #804 from JasonLG1979/patch-1
Make CI ignore things that should not trigger build tests
2021-06-19 22:31:50 +02:00
Roderick van Domburg 113ac94c07
Update protobufs (#796)
* Import Spotify 1.1.61.583 (Windows) protobufs
* Import Spotify 1.1.33.569 protobufs missing in 1.1.61.583
* Remove unused protobufs, no longer present in 1.1.61.583
2021-06-19 22:29:48 +02:00
JasonLG1979 586e864427 Update change log 2021-06-18 17:33:49 -05:00
Jason Gray 14de03e06f
Update tests
Make CI ignore things that should not trigger build tests.
2021-06-18 17:20:27 -05:00
Roderick van Domburg 79f08c54f5
Merge pull request #803 from JasonLG1979/fix_clippy_warnings
Fix clippy warnings introduced by #797.
2021-06-18 22:32:55 +02:00
JasonLG1979 336e714dba Fix clippy warning 2021-06-18 15:30:22 -05:00
JasonLG1979 5ffce0662a Fix clippy warnings
Fix the clippy warnings caused by https://github.com/librespot-org/librespot/pull/797
2021-06-18 15:11:07 -05:00
Jason Gray 2466e0b3c1
Merge branch 'librespot-org:dev' into fix_pipe_backend 2021-06-18 14:12:32 -05:00
Jason Gray 4c77854ffe
Better errors alsa backend (#797)
Better error handling in Alsa backend

* More consistent error messages
* Bail on fatal errors in player
* Capture and log the original error as a warning when trying to write to PCM before trying to recover
2021-06-18 20:25:09 +02:00
JasonLG1979 0bece0d867 Fix pipe backend
* Move all code that can fail to `start` where errors can be returned to prevent a panic!
* Replace unwrap
2021-06-18 04:54:20 -05:00
Hugo Osvaldo Barrera 51a697201b
Include a systemd.service file to run as a user (#800)
Include a systemd.service file to run as a user

This new `systemd.service` file allows running and controlling the service as
an unpriviledged user (generally, as part of a user session).
2021-06-18 11:40:44 +02:00
Roderick van Domburg 6244515879
Resolve dealer and spclient access points (#795) 2021-06-10 22:24:40 +02:00
Roderick van Domburg b0a94f901d
Merge pull request #789 from JasonLG1979/alsa_backend_fix
Improve ALSA buffer size
2021-06-09 20:51:15 +02:00
Roderick van Domburg c30959212a
Update CHANGELOG.md 2021-06-09 20:50:24 +02:00
JasonLG1979 4af095e741 Improve ALSA buffer size
* Go back to 4 periods at 125ms.
* Deal strictly in period time and periods to set ALSA buffer.
* Rename `buffer` to `period_buffer`.
* Add comments and change some other var names to add clarity.
* Let ALSA calculate the size of `period_buffer`.
2021-06-08 23:44:20 -05:00
Roderick van Domburg 5764f1f1a2
Merge pull request #783 from roderickvd/remove-fallback-accesspoint
Remove feature gate around `apresolve`

See: hrkfdn/ncspot#535
2021-06-05 23:53:31 +02:00
Roderick van Domburg 7c975f8ed0
Remove feature gate around apresolve 2021-06-01 20:43:23 +02:00
Roderick van Domburg 33c07f0e2b
Merge pull request #785 from roderickvd/revert-round-half-to-even
Revert `math::round_half_to_even`
2021-06-01 08:17:28 +02:00
Roderick van Domburg d4f466ef58
Revert math::round_half_to_even
This caused quite a bump in CPU usage, which be acceptable if this
actually improved sound quality. However, it turns out that this
function only has one decimal precision, i.e. it would consider
all values from `0.50..0.60` (exclusive) as `0.5` which is in
error for our purposes.
2021-05-31 23:35:48 +02:00
Roderick van Domburg ad19b69bfb
Various code improvements (#777)
* Remove deprecated use of std::u16::MAX
* Use `FromStr` for fallible `&str` conversions
* DRY up strings into constants
* Change `as_ref().map()` into `as_deref()`
* Use `Duration` for time constants and functions
* Optimize `Vec` with response times
* Move comments for `rustdoc` to parse
2021-05-31 22:32:39 +02:00
Roderick van Domburg bae1834988
Fix output on big-endian systems (#778) 2021-05-30 20:57:46 +02:00
Roderick van Domburg fe2d5ca7c6
Store and process samples in 64 bit (#773) 2021-05-30 20:09:39 +02:00
Roderick van Domburg 8062bd2518
Improve sample rounding and clean up noise shaping leftovers (#771) 2021-05-29 22:53:19 +02:00
johannesd3 a2fde0a1d6 Run cargo update 2021-05-28 19:55:57 +02:00
Johannesd3 d1cdc9e236
Merge pull request #766 from Johannesd3/fix-integer-overflow
Fix integer overflow in spotify_id
2021-05-28 09:33:00 +02:00