Paul Lietar
d27c4ca752
Support building with rust stable, using syntex.
2016-03-07 18:22:41 +00:00
Paul Lietar
de357e63c9
player: Update the position on pause/play events.
2016-02-24 00:36:19 +00:00
Paul Lietar
c3c258dfaf
Bump protobuf-macros version and use the simpler string literal syntax
2016-02-22 05:48:58 +00:00
Paul Lietar
c700315b30
Fix a deadlock between SpircManager and Player.
...
The player was invoking its observers with the state locked, and the
SpircManager’s registered observer would try to lock it again.
Instead, the observers are invoked with a cloned state, and the SpircManager
avoids locking the state again.
2016-02-22 05:41:37 +00:00
Paul Lietar
95d1dfd774
Make recipient of SpircManager methods non-mut.
...
SpircManager has interior mutability using a Mutex. There’s no need to
make it’s methods take a mut reference.
2016-02-19 00:03:08 +00:00
Simon Persson
3ccb2e2a10
Clean up before merging.
2016-02-19 00:02:41 +01:00
Simon Persson
c98ff9bd54
Make SpricManager cloneable to simplify for clients.
2016-02-17 20:53:25 +01:00
Simon Persson
906241b92e
Export the current queue.
2016-02-17 20:53:25 +01:00
Simon Persson
8e0325c297
Add function for sending load comand.
2016-02-17 20:53:25 +01:00
Simon Persson
5e3404137f
Add support for replacing tracks. Make a builder out of send_cmd.
2016-02-17 20:53:21 +01:00
Simon Persson
08cb429a0c
Add functions for sending commands to other clients.
2016-02-17 20:45:01 +01:00
Simon Persson
677173d01b
Export devices.
2016-02-17 20:45:01 +01:00
Simon Persson
5a19d38270
Refactor notify/notify_with_player_state.
2016-02-17 20:45:01 +01:00
Simon Persson
958d0c74d4
Maintain list of connected devices.
2016-02-17 20:44:54 +01:00
Paul Lietar
526c54702b
Set the default volume to 100%, and add a fast path to volume control.
2016-02-05 20:54:47 +00:00
Paul Lietar
93640465dc
Import librespot_protocol as protocol.
2016-01-27 10:40:00 +00:00
Paul Lietar
327bb8477e
Move Session::connect to authentication.rs
2016-01-26 23:02:17 +00:00
Paul Lietar
7a1db5f5a9
Encapsulate the session data and configuration.
2016-01-26 22:34:57 +00:00
Paul Lietar
9747bbc470
Add link API.
2016-01-26 22:25:13 +00:00
Paul Lietar
f822031ce3
Expose some more metadata.
2016-01-26 22:24:36 +00:00
Paul Lietar
8fed885595
Reorganize the spirc/player interaction.
...
Updates are now sent through a callback mechanism rather than a channel.
2016-01-20 15:52:50 +00:00
Paul Lietar
463ce97661
Remove the SpircDelegate abstraction
2016-01-20 14:11:49 +00:00
Paul Lietar
303121032d
Store the volume as a u16
2016-01-20 13:55:36 +00:00
Paul Lietar
c5ed04f70d
Merge remote-tracking branch 'realtwister/queue'
2016-01-20 13:51:35 +00:00
Paul Lietar
ac0d597e75
Ignore files which don’t have an id.
...
Fixes #42
2016-01-20 10:37:57 +00:00
Erik
6f962089fd
added queue functionality and created load_tracks
2016-01-16 02:15:24 +01:00
Erik
4310162b88
Fixed the multiple volume vars and the calculation is a bit simplified.
2016-01-15 01:12:08 +01:00
Erik
5788da8ddc
Oops, left a debug still standing..
2016-01-14 13:13:57 +01:00
Erik
17a5bb122a
Added Volume in a fishy manner by modulating stream, could maybe be optimized.
2016-01-14 13:12:01 +01:00
Erik
3c8d709ff1
Added: Next and Previous track
...
Bug resolved: opening a list with "dissallowed tracks" is now possible
2016-01-14 04:27:34 +01:00
Paul Lietar
7401fde7fc
Update dependencies
2016-01-13 00:17:05 +00:00
Paul Lietar
fd6b805bfd
Fix some clippy warnings.
2016-01-02 16:48:44 +01:00
Paul Lietar
90eeed3f80
rustfmt
2016-01-02 16:20:35 +01:00
Paul Lietar
5464647164
Ignore messages from unknown channels.
...
It occasionally happens that messages on a channel are received before
the subscription confirmation, which would cause a panic when looking
for the subscription.
Changed to simply ignore those.
2016-01-02 15:51:05 +01:00
Paul Lietar
2c2ff16986
discovery: Truncate the AES key to 128
...
The computed key is 20 bytes long (SHA1 checksum), but it used for AES128.
The last 4 bytes should therefore be dropped.
2016-01-02 13:30:01 +01:00
Paul Lietar
f8956166ea
Add option to specify bitrate.
2016-01-02 03:30:24 +01:00
Paul Lietar
47c6d60b12
Merge branch 'env-password' of https://github.com/herrernst/librespot into master
2016-01-02 02:53:20 +01:00
Paul Lietar
e35da9c90a
Use discovery if username and password are not provided.
2016-01-02 02:30:03 +01:00
Paul Lietar
38351c9a87
Make dns-sd optional
2016-01-02 02:28:54 +01:00
Paul Lietar
bead9daf78
Add zeroconf based authentication.
2016-01-02 00:27:08 +01:00
Paul Lietar
4806f3e85a
mercury: Register subscription for all channel aliases
...
When subscribing to a channel, we may actually end up subscribed to other
alias channels. We must track these as well in order to redirect received
messages properly.
2016-01-02 00:02:22 +01:00
herrernst
7f8e85f90b
try reading password from env variable first, so it doesn't appear in process listing
2015-12-31 11:55:56 +01:00
Jaime Rodriguez
e321379501
Use canonical username when subscribing to spirc.
...
Uses canonical username that APWelcome message
contains once authenticated instead of username
provided by user. SpircManager now accesses it via
its Session field.
Fixes #15
2015-12-30 20:11:46 +01:00
Paul Lietar
525b27df98
Fix formula for the number of chunks.
...
It was rounding to the nearest boundary as opposed to rounding up. This
caused the last chunk to not always be downloaded.
2015-12-30 12:42:47 +01:00
Paul Lietar
654a403459
Improve handling of missing audio keys by failing the future rather than crashing.
2015-12-29 23:12:02 +01:00
Paul Lietar
8c2aa28d43
Use the correct country when checking for track availability.
2015-12-29 13:13:26 +01:00
Paul Lietar
22d586e473
Block player thread when nothing is playing.
2015-12-28 18:45:13 +01:00
Paul Lietar
17d4534260
Play an alternative track if selected one is not available.
2015-12-28 17:47:59 +01:00
Paul Lietar
4f518fc445
Get track availability and alternatives
2015-12-28 17:47:32 +01:00
Paul Lietar
5db141066a
Use eventual’s futures in metadata instead of rolling our own.
...
For now the object cache has been removed. It may be added back later.
2015-12-28 16:53:54 +01:00