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
William R. Fraser
9fa138a116
implement using tokio-process instead
2018-10-16 02:34:56 -07:00
William R. Fraser
eaac599ce3
reap the exit statuses from 'onevent' child processes
2018-10-16 00:24:33 -07:00
newpavlov
e4677027d2
replace rust-crypto's hashes, HMAC and PBKDF2
2018-07-23 16:41:39 +03:00
Harold
4fb3d5f271
Add ap-port option to specify preferred port
2018-07-03 13:09:22 +02:00
Brice
d40c0f50db
Cache volume across restarts ( #220 )
...
* create Volume struct for use with Cache
* add "volume" file to Cache
* load cached volume on start, intial overrides cached overrides default
* amend volume_to_mixer function to cache the volume on every change
* pass cache to Spirc and SpircTask so volume_to_mixer has access
* rustfmt changes
* revert volume_to_mixer function and Spirc/SpircTask cache variable
* Volume implements Copy, pass by value instead of reference
* clamp volume to 100 if cached value exceeds limit
* convert Volume to u16 internally, use float and round to convert hex->dec
* convert initial_volume and ConnectConfig.volume to u16 as well
* add cache_volume function to SpircTask
* remove conversion to/from percentage on cached volume
* consolidate device.set_volume, mixer.set_volume, and caching
* streamline intial volume logic
2018-05-17 03:15:17 +02:00
Reinier Balt
deb240c02f
reverse #212 since it does not address the real problem ( #213 )
2018-05-01 21:39:49 +02:00
Reinier Balt
6a4e9e8bec
return from Main loop on Ctrl-C/shutdown
2018-04-30 14:22:45 +02:00
Johan Anderholm
3a14e9a6be
Validate proxy urls better.
...
Use the url crate to handle proxies to make sure they conform to a
proper format.
2018-03-24 08:45:43 +00:00
Johan Anderholm
3bdc5e0073
Add support for http proxy
...
Currently only http proxy (no https) is supported.
2018-03-24 08:45:43 +00:00
Johan Anderholm
612978908f
Reformat according to new rustfmt rules
2018-03-24 08:45:43 +00:00
thekr1s
d6b82cd732
revert file mode to original mode
2018-03-14 23:19:49 +01:00
thekr1s
b1f2a412ad
fir rustfmt issues
2018-03-11 13:34:30 +01:00
thekr1s
b3966b0e08
Add optional linear volume contol
2018-03-11 11:27:28 +01:00
Sasha Hilton
237ef1e4f9
Format according to rustfmt
2018-02-26 02:50:41 +01:00
Sasha Hilton
084646e21b
Use prompt for password in main.rs
2018-02-25 05:40:00 +01:00
Sasha Hilton
bde157fad7
Merge branch 'master' into events-on-prev-next
2018-02-24 20:16:28 +01:00
Sasha Hilton
eed2bb6938
Merge pull request #162 from librespot-org/normalisation
...
Add volume normalisation support
2018-02-24 18:54:03 +01:00
Anton Voyl
58ea1baa98
Issue 130 ( #164 )
...
* Core API: device_id
* Core API: u128
2018-02-24 16:34:04 +01:00
Sasha Hilton
f8db550e5e
Add volume normalisation support
2018-02-23 20:08:20 +01:00
Simon Persson
23d3c1593f
Just spawn event handlers, don't wait for exit code.
2018-02-20 23:17:06 +01:00
Simon Persson
93af49aadf
Send player event messages over futures aware channel.
2018-02-20 23:12:29 +01:00
Simon Persson
2eb4aa61d3
Use single program on events, and pass events in envars.
2018-02-20 22:45:14 +01:00
Simon Persson
1b943d069f
Move PlayerEvent into player.
2018-02-20 21:57:42 +01:00
Simon Persson
b0ee03112f
First attempt at a better playback event system.
2018-02-16 00:16:38 +01:00
Sasha Hilton
17d39dffa9
Make backtrace var conditional
2018-02-13 16:46:10 +01:00
Sasha Hilton
67dabcdd8e
Enable backtrace on all builds
2018-02-13 14:02:37 +01:00
Sasha Hilton
60996d108e
Update device usage instructions
2018-02-13 02:35:59 +01:00
Sasha Hilton
90ae9d713d
Fix conflicts from PR #143
2018-02-12 01:12:02 +01:00
awiouy
d900134114
connect: discovery and spirc
2018-02-11 23:55:41 +01:00
awiouy
191caca518
core API: move Bitrate and PlayerConfig from core to playback
2018-02-11 23:55:41 +01:00
Michael Herger
5ed4639cca
Remove the -z as an alias for the --zeroconf-port parameter
2018-02-11 06:32:07 +01:00
Michael Herger
12487966b2
Somewhat uniform coding style might help myself to better understand Rust :-)
2018-02-11 06:32:07 +01:00
Sasha Hilton
f3bb85c33a
Merge pull request #137 from awiouy/core_API
...
core API review changes.
2018-02-10 23:14:41 +01:00
awiouy
77882836ce
core API: move now_ms to spirc.rs
2018-02-10 17:58:15 +01:00
Nick Steel
d05fa10067
Improved next/prev handling for queued tracks.
...
1) A queued track is removed once it has become the current track.
Note that the track doesn't need to actually play i.e. it could
have been immediately skipped over with 'next()'. This is
implemented in 'consume_queued_track()'.
2) Queued tracks are always positioned immediately after the current
track. 1) ensures this is true for 'next()' but 'prev()' requires
all the queued tracks are actually moved for this to remain the
case.
Also fixed the case where 'prev()' on the first track would incorrectly
wrap back around to the last track even when repeat was disabled. The
correct behaviour is to remain on the first track and just seek to the
start.
For example, with the following tracks and repeat enabled:
TrackA, TrackB, TrackC-Q, TrackD-Q, TrackE
^^^^^^
Here, the result of 'prev' changes the current track from TrackB to
TrackA and the queued tracks (TrackC, TrackD) move to the position
immediately after TrackA:
TrackA, TrackC-Q, TrackD-Q, TrackB, TrackE
^^^^^^
Calling 'prev' again results in the current track wrapping back around
to TrackE and the queued tracks moving after that same track:
TrackA, TrackB, TrackE, TrackC-Q, TrackD-Q
^^^^^^
2018-02-10 15:17:30 +00:00
Sasha Hilton
1fb65354b0
Move audio backends into seperate crate
2018-02-09 02:05:50 +01:00
awiouy
e3516ebd9b
Move discovery to its own module.
2018-02-08 04:03:53 +01:00
Sasha Hilton
7ead896ae7
Merge pull request #122 from librespot-org/keymaster
...
Move keymaster to core
2018-02-07 17:50:45 +01:00
Sasha Hilton
53fab4dc86
Merge pull request #11 from thekr1s/alsa-open-crash
...
Prevent crash in audio_backend/alsa.rs when switching from Kodi audio…
2018-02-07 15:08:52 +01:00
Sasha Hilton
cfa7a62dfc
Re-add serde_derive to lib.rs
2018-02-07 15:07:01 +01:00
Sasha Hilton
6a442a4570
Move keymaster to core
2018-02-06 19:54:28 +01:00
Robert
b03430a057
minor code cleanup
2018-02-05 00:33:17 +01:00
Sasha Hilton
977a6db3ef
Merge pull request #116 from librespot-org/jackaudio
...
Jackaudio Support. Closes #93 .
2018-02-04 20:23:16 +01:00
awiouy
2ae1f1399f
simplify dns-sd/mdns code
2018-02-02 19:53:08 +01:00
Sasha Hilton
407e23b311
Merge branch 'master' into jackaudio
2018-02-02 05:12:36 +01:00
Sasha Hilton
f35f52cbf9
Remove redundant code
2018-02-02 05:03:59 +01:00
Sasha Hilton
932441db45
Merge pull request #112 from librespot-org/feature_dns
...
Feature flag for selecting dns service
2018-01-31 21:51:59 +01:00
Sasha Hilton
7a58e6d561
fix addr in wrong place
2018-01-31 12:08:23 +01:00
Sasha Hilton
d923f3bad3
Add with-dns-sd feature flag
2018-01-31 12:00:53 +01:00
Colm
8be642de31
Merge pull request #110 from librespot-org/inital-volume-ifelse-cleanup
...
Initial volume ifelse cleanup
2018-01-30 23:38:36 +00:00
Sasha Hilton
fddcbbcd82
Tidied up Syntax
2018-01-31 00:05:54 +01:00
Sasha Hilton
3efe499737
Merge pull request #109 from librespot-org/zeroconf_port
...
Add zeroconf-port option
2018-01-30 23:19:29 +01:00
ComlOnline
618eceb740
lost iv -
due to previous
2018-01-30 21:46:57 +00:00
ComlOnline
46de5a704b
Thats what I get for copypasta
2018-01-30 21:30:37 +00:00
ComlOnline
863ea9c976
removed and optimised
2018-01-30 20:52:25 +00:00
Sasha Hilton
8e8bab03d5
Add zeroconf-port option
2018-01-30 21:38:54 +01:00
thekr1s
63755aae46
Merge branch 'master' into alsa-open-crash
2018-01-30 18:53:11 +01:00
Sasha Hilton
91647ab2dd
Merge pull request #10 from thekr1s/progressive-voume-control
...
Change volume control to implement logarithmic scaling.
2018-01-30 17:38:40 +01:00
Robert
bec6b8c512
Changed volume control after discussion: https://github.com/librespot-org/librespot/pull/10
...
implement exponential volume control only
2018-01-29 23:39:55 +01:00
Robert
752a6b1df4
Prevent crash in audio_backend/alsa.rs when switching from Kodi audio to librespot
2018-01-26 01:42:24 +01:00
Robert
4870acd572
Add --progressive-volume option. Increase volume slowly at low level, faster at higher level
2018-01-25 23:37:28 +01:00
Thomas Bächler
2465b0f57f
Refactor the discovery module to remove usage of deprecated functions
2018-01-25 23:23:45 +01:00
Thomas Bächler
d36017d6f0
Remove usage of deprecated tokio_core::io
2018-01-25 23:23:45 +01:00
Thomas Bächler
630de8c0a9
Use futures::sync::mpsc::UnboundedSender::unbounded_send() instead of the deprecated send()
2018-01-25 23:23:45 +01:00
Thomas Bächler
5237203899
Remove usage of deprecated BoxFuture, BoxStream and BoxSink
2018-01-25 23:23:45 +01:00
Thomas Bächler
644355269e
Use futures::sync::oneshot::Sender::send() instead of the deprecated complete()
2018-01-25 23:23:45 +01:00
Colm
5302bd1072
Merge pull request #6 from brain0/work
...
Make librespot more robust against audio failures
2017-12-19 21:46:22 +00:00
Thomas Bächler
4cda8affcd
Handle audio sink errors in the player
...
Failing to open or write to the audio sink is not necessarily a fatal and permanent error.
When the audio sink fails, the player now tries to restart the sink periodically.
2017-12-18 00:56:37 +01:00
Thomas Bächler
f250179fed
Join the player thread when the player is dropped
2017-12-17 23:46:52 +01:00
Thomas Bächler
f5d8019c18
Add proper error handling to the pulseaudio backend and ensure that no invalid pointers are passed to pulseaudio
2017-12-17 23:28:42 +01:00
Thomas Bächler
35ec580eac
Disable the "variable does not need to be mutable" compiler warning in generated code
2017-12-17 23:15:49 +01:00
fossedihelm
de2b4cc8e3
added comments and edited README
2017-12-07 11:36:26 +01:00
fossedihelm
94e4cd853a
merge ColmOnline changes
2017-12-07 10:04:43 +01:00
fossedihelm
ac39da6c97
check if argument of initial-value is in the [0,100 range
2017-12-06 15:22:28 +01:00
fossedihelm
1dc99e3a15
check if argument of initial-value is a number
2017-12-06 14:47:46 +01:00
fossedihelm
8313da522b
--initial-volume as parameter
2017-12-06 14:37:34 +01:00
Federico Fossemò
9e51977885
reset volume to 50%
2017-12-04 12:16:41 +01:00
Federico Fossemò
c8a2190e9e
default volume to 20% (my config)
2017-12-04 11:37:36 +01:00
Federico Fossemò
20fc764916
default volume to 50%
2017-12-03 18:06:24 +01:00
ComlOnline
2bff5d0f21
Merge pull request #2 from kingosticks/master
...
Added repeat and shuffle support from kingosticks
2017-11-18 23:29:58 +00:00
ComlOnline
74964d8087
Merge pull request #1 from ipha/pulseaudio_stop_sink
...
Stop pulseaudio sink when not in use
2017-11-18 23:26:16 +00:00
Nick Steel
628df27292
Support for enabling shuffle.
2017-11-03 01:15:27 +00:00
nsteel
5581289351
Added repeat support
2017-10-28 00:24:11 +01:00
loblik
adeb22b2f3
add support for jack audio connection kit
...
This is initial support for JACK. It creates ports at startup and
keeps it connected while librespot is running. So when librespot
playback is stoped it writes silence (zeroes).
It uses jack crate (rust-jack) which needs libjack. To compile in
jack support use --features jackaudio-backend. And run librespot
with --backend jackaudio.
2017-10-05 21:06:51 +02:00
Paul Lietar
d1447d2bfb
Add support for lewton as an Vorbis decoder.
2017-08-04 05:28:25 +01:00
Paul Lietar
ec8f80df75
Create new librespot-audio crate
2017-08-03 20:37:04 +01:00
Paul Lietar
a51b562487
Create new librespot-metadata crate
2017-08-03 20:11:17 +01:00
Paul Lietar
bf60f6e7ab
Create new librespot-core crate
2017-08-03 19:58:44 +01:00
Paul Lietar
d59f3eff81
Remove AudioFileManager and MetadataManager since they are stateless.
2017-08-03 19:37:21 +01:00
Paul Lietar
72070b6ce0
Allow device type to be chosen.
...
Fix #187
2017-08-03 19:31:15 +01:00
Fabian Zaremba
910974e5e2
Change system_information_string according to request from Spotify ( #218 )
...
Spotify requested us to use a system_information_string that looks like
librespot_[short sha]_[random 8 characters build id]
2017-07-17 14:31:06 +02:00
michaelherger
67deb07250
Add --disable-audio-cache startup parameter ( #204 )
...
Disable caching of downloaded audio files at runtime. Comes in handy when running librespot on a small device with SD card or other small storage.
2017-06-30 07:43:11 +01:00
Paul Liétar
d09f469aad
Merge pull request #189 from jsopenrb/patch-1
...
Some tracks might have several `allowed` fields, librespot assumes that all fields must match, otherwise track cannot be played.
This change collects all `allowed` and `forbidden` lists, then does the final check on whole lists at once.
2017-06-10 21:13:07 +01:00
Paul Lietar
29d5f794d6
Make Librespot Connect Again !
2017-06-04 08:56:31 +01:00
Evgeny S
96c199e95a
Update metadata.rs
...
Turns out unreleased tracks can have no forbidden and allowed lists at all, take care of that.
2017-06-03 22:30:04 +03:00
Evgeny S
8bd9174370
Update metadata.rs
...
Properly check forbidden and allowed lists, skip tracks where allowed list is set but is empty.
2017-06-03 19:55:30 +03:00
Evgeny S
4a17a15a82
Fix #173 (a track cannot be played with librespot)
...
Some tracks might have several `allowed` fields, librespot assumes that all fields must match, otherwise track cannot be played.
This change collects all `allowed` and `forbidden` lists, then does the final check on whole lists at once.
2017-06-01 13:04:22 +03:00
Paul Lietar
6f24e3b731
Add support for new mercury subscription protocol.
...
Fixes #185
2017-05-15 23:47:34 +01:00
Paul Lietar
7c237c77df
Change Connect mercury URL
2017-05-15 21:55:49 +01:00
Paul Lietar
ba51b8f236
Add more mercury debug
2017-05-15 21:54:43 +01:00
Paul Lietar
28232b5a52
Add keymaster API
2017-05-10 16:26:48 +01:00
Paul Lietar
7ae919b1f7
Skip song if it fails to load
2017-04-29 15:18:16 +01:00
Paul Lietar
ded43122a2
Allow deprecated items.
...
Tokio has moved lots of stuff from tokio-core::io to tokio-io.
2017-04-29 12:56:15 +01:00
Johan Anderholm
e60cdeafca
hyper::Url -> hyper::Uri, portaudio -> portaudio-rs
...
hyper::Url is replaced by hyper::Uri in recent hyper versions.
portaudio was renamed to portaudio-rs and added to cargo.io
2017-04-29 13:06:29 +02:00
Paul Lietar
294a7821d6
Add simple playback example.
2017-04-28 23:24:55 +01:00
Jörg Krause
14da5c8f17
spirc: add more commands
...
Add play, playpause, pause, prev, next, volumeup, and volumedown.
volume up/down is realized in 16 steps.
2017-03-27 08:22:38 +02:00
Paul Lietar
6a0657fec6
Fix compiling error
2017-02-22 15:32:18 +00:00
Paul Lietar
188958710f
Download shannon dependency from crates.io
2017-02-22 14:48:41 +00:00
Paul Lietar
b8e4febb8e
main: Fix cache setup
2017-02-22 14:28:09 +00:00
Paul Lietar
d940ed161a
Allow switching user accounts at runtime
...
Fixes #130
2017-02-22 04:18:27 +00:00
Paul Lietar
2853e2230b
Force shutdown on second ^C
2017-02-21 23:25:04 +00:00
Paul Lietar
2708aa4fef
Merge remote-tracking branch 'origin/master'
2017-02-21 22:46:19 +00:00
Paul Lietar
58b1625445
Use function types instead of closures for backend builders.
2017-02-21 22:05:31 +00:00
Paul Lietar
5974cf7f24
Fixes for PR #148
2017-02-21 21:49:45 +00:00
Paul Lietar
6f1871d822
Merge remote-tracking branch 'origin/master'
2017-02-09 01:33:52 +00:00
Paul Lietar
64f9283b67
Fix Clippy warnings
2017-02-09 01:32:18 +00:00
Paul Lietar
19b06ae5fb
Update dependencies.
...
Rust 1.15 is now required.
2017-02-09 01:27:52 +00:00
Daniel Romero
10f9da410e
Remove code to notify spirc manager from the mixer
2017-02-03 17:11:36 +01:00
Daniel Romero
a7aba5c8e7
SoftVolumeMixer: move factor in again, otherwise i32 division always results in 0
2017-02-03 14:19:30 +01:00
Daniel Romero
44467a44d6
Call start and stop on mixer
2017-02-03 13:30:30 +01:00
Daniel Romero
5ef28bf2a5
SpircManager: Update state from player and mixer before sending info
2017-02-03 13:22:49 +01:00
Daniel Romero
ec0e81f0ae
Add documentation for channel macro
2017-02-03 13:22:49 +01:00
Daniel Romero
2c187eb3ae
Avoid copying the data array in the player
2017-02-03 13:22:49 +01:00
Daniel Romero
48a43f4948
Move structs which are send across threads to own module
2017-02-03 13:22:49 +01:00
Daniel Romero
da537b57f4
AudioFilter: Modify fn modify_stream(&self, data: &mut [i16]);
2017-02-03 13:22:49 +01:00
Daniel Romero
2de5d10a2f
SoftMixer: Change volume to AtomicUsize and pass AtomicUsize to SoftVolumeApplier
2017-02-03 13:22:49 +01:00
Daniel Romero
134239d298
Send update messages from mixer to SpircManager
2017-02-03 13:22:49 +01:00
Daniel Romero
c8ee08663d
Create channel in spirc instead of in mercury and use MercuryResponseSender implemented by macro
2017-02-03 13:22:49 +01:00
Daniel Romero
37916330b4
Add macro to be able to create wrapped senders to send multiple message types to one channel
2017-02-03 13:22:49 +01:00
Daniel Romero
e547a0c3da
Changes code review
2017-02-03 13:22:49 +01:00
Daniel Romero
636de3fe71
Use stream_editor in player
2017-02-03 13:22:49 +01:00
Daniel Romero
6df2af0ac9
Select mixer dynamically
2017-02-03 13:22:49 +01:00
Daniel Romero
464e85e285
Split mixer into Mixer and StreamEditor
2017-02-03 13:22:49 +01:00
Daniel Romero
59398b3cee
Remove mixer from Player and add it to SpircManager
2017-02-03 13:22:49 +01:00
Daniel Romero
347bf05dbe
Refactored to have apply_volume in a specifix mixer
2017-02-03 13:22:49 +01:00
Paul Lietar
9873eaf2a0
Better handling of shutdown
2017-01-31 08:21:30 +00:00
Paul Lietar
7be9626836
spirc: Increase the number of volume steps to 64
2017-01-30 04:13:18 +00:00
Paul Lietar
d2161ff75f
Use EasyBuf instead of copying buffers
2017-01-29 17:54:32 +00:00
Paul Lietar
bbc438d9b2
Clippy run
2017-01-29 17:20:12 +00:00
Paul Lietar
17482c236a
Stop caching audio keys, reenable audio file cache
2017-01-29 15:36:39 +00:00
Paul Lietar
8aeb266a2d
Refactor player and spirc
2017-01-29 15:02:12 +00:00
Paul Lietar
f3ba3f4bd4
Update dependencies
2017-01-29 12:50:18 +00:00
Paul Lietar
0da9020ad3
Store DeviceState directly into SpircTask
2017-01-20 14:44:13 +00:00
Paul Lietar
bcedfefaa9
Move spirc to tokio
2017-01-20 13:28:13 +00:00
Paul Lietar
d62a154786
Move session to tokio over fully
2017-01-20 02:40:07 +00:00
Paul Lietar
bf6be73caa
Move album cover to tokio
2017-01-20 01:59:47 +00:00
Paul Lietar
379c90c0b2
Move audio_file and channels to tokio
2017-01-20 01:59:47 +00:00
Paul Lietar
05118b40f8
Move MetadataManager to use tokio
2017-01-20 01:59:47 +00:00
Paul Lietar
bcbd7afb1a
Change mercury to use tokio
2017-01-20 01:59:47 +00:00
Paul Lietar
855a7e87a7
Move AudioKeyManager to tokio
2017-01-20 01:59:47 +00:00
Paul Lietar
d27063d5da
Create event loop in main
2017-01-20 01:59:46 +00:00
Paul Lietar
2a0ccc0d1d
Move device id into config
2017-01-20 01:59:46 +00:00
Paul Lietar
9de55bb8cd
Move ap resolve and discovery to tokio.
2017-01-20 01:59:46 +00:00
Paul Lietar
9d5e2e9fed
Rewrite connection layer to use tokio
2017-01-20 01:59:46 +00:00
Mitch Bigelow
4e02ef5a6c
Stop pulseaudio sink when not in use
2017-01-14 16:22:33 -05:00
Paul Lietar
aa499e0189
Get rid of main_helper
2017-01-10 16:31:12 +00:00
Paul Lietar
ae7c177823
Merge pull request #143 from SimonPersson/general_main_helper
...
Improve for library users
2017-01-06 17:32:28 +01:00
Simon Persson
560d4e1c4c
Move get_credentials to authentication module.
2017-01-06 17:18:41 +01:00
Simon Persson
f11310581c
Add standard traits to Bitrate.
2017-01-06 17:09:57 +01:00
Simon Persson
1f32efce83
Revert "Make main_helper useful with values not from getopts."
...
This reverts commit b4c7e8e057
.
2017-01-06 17:06:14 +01:00
Simon Persson
b828e4d528
Improve log strings and never log to stdout.
2017-01-06 15:21:44 +01:00
Simon Persson
28aed0d18b
Give Bitrate copy semantics.
...
For such a simple type, which will likely never change
to be un-copyable, it's nicer to have copy semantics.
2017-01-06 12:56:34 +01:00
Simon Persson
b4c7e8e057
Make main_helper useful with values not from getopts.
...
Applications that gets these values from config file
shouldn't have to reinvent the wheel.
2017-01-06 12:50:44 +01:00
Paul Lietar
e254bb7291
Remove support for Facebook authentication.
2017-01-05 14:40:33 +01:00
Paul Lietar
7ba3d766c0
Reduce log verbosity by default.
...
Fixes #141
2017-01-05 14:25:14 +01:00
Paul Lietar
d0a84d7915
Print password prompt on stderr.
2017-01-05 14:24:22 +01:00
Paul Lietar
baf2b65d7b
Use rustls rather than openssl
2016-12-31 14:49:04 +01:00
Paul Lietar
8831dea166
Add missing file :(
2016-12-31 13:24:18 +01:00
Paul Lietar
9c3541c41b
Change the stdout backend to work with arbitrary files.
2016-12-31 13:17:06 +01:00
Paul Lietar
512304c6c3
Merge remote-tracking branch 'badaix/master'
2016-12-31 13:04:14 +01:00
Jörg Krause
64b8b5f91a
Don't panic on error InitialFileHeadersCorrupt
2016-12-31 12:56:09 +01:00
Paul Lietar
8544faf75d
Only use syntex on modules that need it.
...
Also updated dependencies.
Fixes #133 and #138
2016-12-31 12:51:44 +01:00
Paul Lietar
7fd8503f45
Use the fallback AP when apresolve fails.
...
This matches the desktop client’s behaviour.
Fixes #136
2016-12-30 12:02:00 +01:00
badaix
383e0e9ae8
added stdout-backend
2016-11-22 15:31:59 +01:00
Paul Lietar
880a266625
Merge pull request #117 from joerg-krause/feature/onstart
...
Add --on{start,stop} command line option
2016-11-19 22:14:05 +00:00
Jörg Krause
c1e570f48d
Say goodbye when terminating
...
When librespot is terminated while a session is active it will now send
a goodbye message, so that the Spotify client unregisters the device
from its list.
Closes : #114
2016-09-20 21:00:01 +02:00
Jörg Krause
1d3c387fed
Add --on{start,stop} command line option
...
The --onstart and --onstop command line options can be used to run a
program when the audio playback is about to begin or has ended.
Note, that librespot needs executions rights to run the program.
Furthermore, the full path needs to be specified, e.g.
`/usr/bin/logger`. Executable scripts must begin with a shebang, e.g.
`#!/bin/sh`.
2016-09-08 20:52:21 +02:00
Paul Lietar
445171a46a
Add ALSA backend
...
Closes : #63
2016-08-27 20:14:11 +02:00
Paul Lietar
253dfb7c88
Merge pull request #107 from joerg-krause/fix/close-stream-on-stop
...
close stream on stop
2016-08-27 01:25:48 -07:00