Commit graph

358 commits

Author SHA1 Message Date
ashthespy
9bbf8c3b26 WIP tokio-core -> tokio migration 2021-01-23 22:21:42 +00:00
Sasha Hilton
efabb03631 Fix incorrect cache initialisation causing crash on startup 2021-01-24 23:21:35 +00:00
Sasha Hilton
414383db18
Merge pull request #506 from LaurentLouf/feature-split_cache_folders
Feature split cache folders, resolves #505
2021-01-02 23:17:33 +00:00
maxthiel
2f7bf54076 Add a preload event to warn about new track coming soon 2020-12-10 21:17:41 +00:00
ashthespy
3dfad7f788 Implement mapped volume for alsa mixer 2020-07-29 15:59:45 +01:00
Laurent Louf
c14c254c6b Format 2020-07-26 16:11:32 +02:00
Laurent Louf
09bebe5dd7 Fix types 2020-07-25 13:51:45 +02:00
Laurent Louf
77cb66d9a3 Fix syntax 2020-07-25 13:51:34 +02:00
Ash
f0b3b2c7e8
Refactor Volume control, allow for a fixed volume option (#447)
Refactored the old `--linear-volume` flag to a more generic `--volume-ctrl` flag that takes the options of `[linear, log, fixed]`. It defaults as previously to log.
2020-07-25 09:38:08 +02:00
Laurent Louf
8fc9ebfa8c Add the option to specify the system cache for credentials and volume files and adapt Cache to use two cache directories instead of one 2020-07-24 23:18:29 +02:00
Sasha Hilton
6eabf4a75c
Merge pull request #449 from kaymes/blocking_sink_events
Add blocking SinkActive|SinkInactive events
2020-07-24 03:07:38 +01:00
Anton Voyl
0aa9bc60e3
Merge pull request #452 from kaymes/improved_events
Add more data to player events and fire more of them
2020-05-11 08:57:18 +02:00
Ash
e47ae83f33
libmdns housekeeping (#467)
* Rename log hooks (mdns-> libmdns)

* Bump libmdns
2020-05-10 13:22:19 +02:00
v1ne
ed0e1eed5a
Synchronise name and help: softvol (#470)
Using "softmixer" as a mixer backend does not work.

Co-authored-by: v1ne <v1ne2go@gmail.com>
2020-05-02 12:14:53 +02:00
Konstantin Seiler
223b8d611e Roll back the meta data processing. 2020-03-20 17:31:18 +11:00
Konstantin Seiler
b562ec6015 rename variable. 2020-03-12 23:29:24 +11:00
Konstantin Seiler
c9117542eb Refactor TrackMetaData in the player and add the metadata to the player events.
Fire more events in the --onevent script and set more variables.
2020-03-12 23:01:45 +11:00
Konstantin Seiler
667e559340 Merge remote-tracking branch 'origin/dev' into blocking_sink_events 2020-03-10 23:52:20 +11:00
Konstantin Seiler
6f28b0486f Emit blocking sink events 2020-03-10 23:26:01 +11:00
Ash
ef27b4bce3
Disable gapless playback via runtime flag (#444)
* Enable gapless playback via runtime flag

* Set gapless playback as default, use `--disable-gapless` to turn it off

* Ensure sink restarts b/w tracks when gapless is disabled
2020-03-10 13:00:57 +01:00
Sasha Hilton
b86c317ac9
Merge pull request #435 from Malvineous/patch-1
Allow use of HTTP proxies listening on port 80
2020-02-27 02:14:49 +00:00
Adam Nielsen
63cc846a10
Allow use of HTTP proxies listening on port 80
Since port 80 is the default port for the HTTP protocol, `url.port()` returns `None`, causing an "invalid proxy" message.  Using `port_or_known_default()` will only return `None` if the both the port has been omitted and an unknown protocol has been specified.
2020-02-16 18:52:09 +10:00
Konstantin Seiler
18d1181bf5 Clean up some code
Ensure the player events are emitted correctly.
Only call the external script on events we want to notify about.
Stop sink when loading to pause.
cargo fmt
2020-02-03 18:58:44 +11:00
Konstantin Seiler
5784b4652c Prepare for gapless play.
- change communication between player and spirc to use player events channel.
- enhance player events channel
- have spirc send loading messages to Spotify
- enable preloading of tracks in the player
2020-02-01 08:41:11 +11:00
Konstantin Seiler
37f6e3eb9c Print error message on connection failure. 2020-01-29 09:51:26 +11:00
Konstantin Seiler
65d1c1bf8e Proper error handling when connecting to the server. 2020-01-29 09:45:06 +11:00
Sasha Hilton
e9c3357e41 Run cargo fmt 2020-01-24 02:26:16 +01:00
Sasha Hilton
cdcb919c08
Merge branch 'dev' into connection-lost-crash 2020-01-24 01:02:40 +01:00
Konstantin Seiler
a52092e094 Convert another panic to error handling.
Compatibility fix for Rust 1.33.
2020-01-24 10:12:16 +11:00
Konstantin Seiler
0e22678a28 Workaround for Rust 1.33 borrow checker. 2020-01-23 21:10:55 +11:00
Konstantin Seiler
dadab486d2 Don't exit if too many spirc failures. 2020-01-23 19:51:09 +11:00
Konstantin Seiler
f26db01110 Rate-limit automatic re-connection attempts when spirc shuts down. 2020-01-23 19:32:06 +11:00
Konstantin Seiler
719943aec9 Don't panic if spirc terminates prematurely.
Instead attempt to reconnect and wait for new client connections.
2020-01-23 01:24:59 +11:00
Konstantin Seiler
b6c676ad60 Prevent librespot from panicking if server connection is lost. 2020-01-22 21:55:45 +11:00
marcelbuesing
38d82f2dc2
Rerun rustfmt on full codebase 2020-01-17 18:47:30 +01:00
ashthespy
d26590afc5
Update to Rust 2018
- Fix deprecated Error::cause warnings and missing dyn
- Reset max_width
- Add rustfmt to Travis
- Run rustfmt on full codebase
 with `cargo fmt --all`
- Add rustfmt to Travis
- Complete migration to edition 2018
- Replace try! shorthand
- Use explicit `dyn Trait`
2020-01-17 18:11:52 +01:00
marcelbuesing
be2ad9059a
Migrate to rust 2018 edition 2020-01-17 15:54:42 +01:00
ashthespy
b3c9744b29 Add a autoplay option flag 2019-11-05 20:34:43 +01:00
Ash
25107ee796 Revert "Fix play.rs example (#379)"
This reverts commit 2ff71abb8e.
2019-10-09 18:05:08 +02:00
Gilles Castel
2ff71abb8e Fix play.rs example (#379)
Fix `play.rs` example by renaming `core` to `librespot_core`
2019-10-09 10:44:20 +02:00
George Hahn
6e280b3c88 Upgrade dependencies 2019-07-17 22:08:15 -05:00
Tristan Stenner
37eca2fab3 Update env_logger to 0.6 2019-05-03 07:40:13 +02:00
ashthespy
cc6c9b2dc4 More alsa stragglers 2019-03-22 00:00:58 +01:00
ashthespy
0e1147077c Add run time option flags for AlsaMixer
Add `Cargo.lock` for Travis
2019-03-22 00:00:57 +01:00
ashthespy
a67048c3d7 Add initial support for alsamixer 2019-03-22 00:00:14 +01:00
Will Stott
b81bdca707 QDH: Instantiate audio backend immediately when using "--device ?". 2019-03-20 13:16:29 +00:00
Artyom Pavlov
391b9c69c4
Merge branch 'master' into master 2019-03-15 16:32:54 +00:00
Nick Steel
6a600596e8 main: exit librespot after the first ctrl+c if no currently active spirc session. 2019-03-13 18:47:56 +00:00
Artyom Pavlov
772591576a
Merge branch 'master' into master 2018-12-06 09:38:33 +00:00
ruben
81e7c9b9d3 Changed TRACK_ID from base16 to base62 so that it is equal with the official Spotify app 2018-11-04 18:41:33 +01:00