Commit graph

214 commits

Author SHA1 Message Date
Roderick van Domburg 3a2455d686
Merge branch 'dev' into log-volume-ctrl-optimisations 2021-05-26 20:50:42 +02:00
Roderick van Domburg d8ec98015c
Merge pull request #673 from Johannesd3/discovery-crate
Create separate discovery crate
2021-05-26 20:21:43 +02:00
Johannesd3 28dd842e05 Fix bug in MercurySender 2021-05-24 16:31:34 +02:00
Roderick van Domburg eca505c387
Improve volume controls
This is a squashed commit featuring the following:

Connect:
- Synchronize player volume with mixer volume on playback
- Fix step size on volume up/down events
- Remove no-op mixer started/stopped logic

Playback:
- Move from `connect` to `playback` crate
- Make cubic volume control available to all mixers with `--volume-ctrl cubic`
- Normalize volumes to `[0.0..1.0]` instead of `[0..65535]` for greater precision and performance (breaking)
- Add `--volume-range` option to set dB range and control `log` and `cubic` volume control curves
- Fix `log` and `cubic` volume controls to be mute at zero volume

Alsa mixer:
- Complete rewrite (breaking)
- Query card dB range for the `log` volume control unless specified otherwise
- Query dB range from Alsa softvol (previously only from hardware)
- Use `--device` name for `--mixer-card` unless specified otherwise
- Fix consistency for `cubic` between cards that report minimum volume as mute, and cards that report some dB value
- Fix `--volume-ctrl {linear|log}` to work as expected
- Removed `--mixer-linear-volume` option; use `--volume-ctrl linear` instead
2021-05-24 15:53:32 +02:00
Johannesd3 ebea5397b9
Add librespot-discovery crate 2021-05-19 21:05:19 +02:00
johannesd3 68818758a2
Add timeout to test 2021-05-18 15:17:30 +02:00
johannesd3 041f084d7f Fix warnings 2021-05-13 22:42:55 +02:00
johannesd3 1c62af9160
Unpin protobuf version 2021-05-08 22:09:37 +02:00
Sasha Hilton 3cd5ef32c4 Merge branch 'dev' 2021-05-04 13:16:39 +01:00
Sasha Hilton 7570241d86 Change wildcard env_logger dependency to version 0.8 2021-05-04 13:16:16 +01:00
Sasha Hilton 2ef3928691 Update version numbers to 0.2.0 2021-05-04 13:05:13 +01:00
johannesd3 1681574846
Bump hmac and pbkdf2 2021-05-01 10:53:14 +02:00
johannesd3 ddf41a49f2
Update lower version bound for some deps 2021-05-01 10:40:52 +02:00
Sasha Hilton 9d5ac1b156
Merge pull request #699 from Johannesd3/ready-macro
Use `ready!` macro to reduce boilerplate
2021-05-01 01:25:14 +01:00
johannesd3 de6bc32dea
Add documentation, logging and tests 2021-04-21 11:29:32 +02:00
johannesd3 e9dc9cd839
Add size limit to cache 2021-04-21 11:29:08 +02:00
johannesd3 7d6267c0a2
Use ready macro to reduce boilerplate 2021-04-17 12:23:24 +02:00
johannesd3 4c2fc61d64 Better joining of session tasks 2021-04-12 22:54:32 +02:00
johannesd3 690e0d2e10 Add simple tests to librespot-core
The first test checks whether apresolve works. A second test tries
to create a Spotify sessions with fake credentials and asserts that
an error is returned.
2021-04-10 12:50:30 +02:00
johannesd3 e688e7e886 Almost eliminate util module 2021-04-10 12:50:30 +02:00
johannesd3 9378ae5b6f Bump num-bigint dependency 2021-04-09 22:39:51 +02:00
johannesd3 11ce29077e Fix formatting 2021-04-09 10:45:48 +02:00
johannesd3 7c3d89112d Fix clippy warnings 2021-04-09 10:45:43 +02:00
johannesd3 f5274f5ada Merge branch 'dev' into tokio_migration 2021-04-09 10:39:06 +02:00
Ash d4dfd4890f
Merge pull request #674 from Johannesd3/proxy-support
[Tokio migration] Add back hyper-proxy
2021-03-29 21:00:18 +02:00
johannesd3 95fedf5357 Add back hyper-proxy 2021-03-27 15:36:33 +01:00
ThouCheese ec1ec59b8a update examples
Re-add default impl to SessionConfig and make Credentials::with_password generic over Into<String>

add docs for Credential

reintroduce old Default impl for SessionConfig

use the third argument for the track-to-play rather than a testing id
2021-03-24 01:14:44 +01:00
johannesd3 5616004dbe Fix many clippy lints
...and other small improvements
2021-03-10 22:41:44 +01:00
Evan Cameron 6a33eb4efa
minor cleanup 2021-02-28 21:54:19 -05:00
Ash 56f1fb6dae
Merge pull request #595 from Johannesd3/const_versions
Replace version functions by constants
2021-02-26 10:47:44 +01:00
johannesd3 f22b41956f Update url crate to 2.1 2021-02-23 22:22:53 +01:00
johannesd3 18179e73ec Remove unused dependencies and fix feature flags 2021-02-23 22:22:53 +01:00
johannesd3 27f308b82f Replace error_chain by thiserror 2021-02-23 22:22:52 +01:00
johannesd3 10827bd6a8 Clean up dependencies of librespot-core
* Use sub-crates of future
* Remove unnecessary pin-project
* Removed unused crates and features
* Replace futures channels by tokio channels
* Use serde's "derive" feature flag instead of serde_derive
2021-02-23 22:22:51 +01:00
johannesd3 8cff10e983 Put apresolve behind feature flag 2021-02-23 22:22:51 +01:00
johannesd3 9253be7bc9 Small refactor of librespot-core
* Remove default impl for `SessionConfig`
* Move util mod to single file
* Restore privacy of mods
* Move `fn get_credentials` to application
* Remove `extern crate` statements
2021-02-23 22:22:51 +01:00
johannesd3 678d1777fd Merge branch 'dev' into tokio_migration 2021-02-23 22:22:49 +01:00
Sasha Hilton d8c1b491c4 Merge branch 'master' into dev 2021-02-22 00:57:45 +00:00
Sasha Hilton b7c3609c7b Update version numbers to 0.1.6 2021-02-22 00:37:28 +00:00
Sasha Hilton 4e1c24d98d
Merge pull request #602 from Johannesd3/bumb_crypto_crates
Bump crypto crates
2021-02-21 23:29:00 +00:00
johannesd3 007e653f3d Restore original blocking player behaviour 2021-02-21 17:04:44 +01:00
johannesd3 2c81aaaf4e Implement MercurySender not as sink 2021-02-21 14:10:00 +01:00
johannesd3 daf7ecd23a Migrate librespot-connect to tokio 1.0 2021-02-21 14:09:31 +01:00
Sasha Hilton 7f705ed148 Merge branch 'master' into dev 2021-02-20 23:31:04 +00:00
Sasha Hilton 2c110ca256 Update version numbers to 0.1.5 2021-02-20 23:05:56 +00:00
johannesd3 bce4858b9e Add semver constant, rename "build id" env var 2021-02-17 15:04:16 +01:00
johannesd3 34733baa75 Bump crypto crates 2021-02-13 19:10:57 +01:00
johannesd3 b77f0a18ce Fix formatting 2021-02-13 10:29:00 +01:00
johannesd3 85be0d075a Adjust documentation 2021-02-12 20:21:07 +01:00
johannesd3 872fab62d8 Merge branch 'dev' into tokio_migration 2021-02-10 21:51:33 +01:00