Commit graph

374 commits

Author SHA1 Message Date
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
ComlOnline 5141f434b5 Add travis ci tag 2017-11-23 11:19:47 +00:00
ComlOnline 2a215278ef Edit to puch for travis 2017-11-23 00:14:29 +00:00
ComlOnline 80493d8bbe README Upadte 2017-11-20 00:55:34 +00: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
Elad Nava 8971d3aa68 Add note to README about Spotify Premium (#259)
As per https://github.com/plietar/librespot/issues/167#issuecomment-322021960.
2017-10-05 14:54:24 +02:00
Paul Liétar 1e652b1a7e typo 2017-10-03 23:26:56 +02:00
Paul Liétar 171be66fd9 bye bye librespot 2017-10-03 22:53:51 +02:00
Jakob e109de2001 fix protobuf checksum (#257) 2017-10-02 08:04:16 +03:00
Jakob 030b318a9c fix crash for artists without tracks (closes #103) (#256) 2017-10-01 05:15:19 +03:00
Jakob 696aec33e9 Add album type 'EP' (#255)
* add album type 'EP'

* fix indentation
2017-10-01 01:51:05 +03:00
Paul Lietar ddfc28f99f Increase required Rust version to 1.17.0.
Some dependencies require it.

Additionally, only build with lewton on >= 1.18
2017-08-04 05:28:25 +01:00
Paul Lietar 3a18d1f91d Update Cargo.lock, use hyper, libpulse-sys and lewton from crates.io. 2017-08-04 05:28:25 +01: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 2846d3acfd Fix the play example 2017-08-03 20:11:30 +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
Paul Lietar aa86ebf549 Add two new file formats to enumeration
Fixes #212 and #213
2017-07-09 20:01:31 +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
Shane c070f6b0db Rust-Crypto fix for Intel "Westmere" CPU's (#208)
See https://github.com/DaGenix/rust-crypto/issues/390 for details.
2017-06-29 15:45:53 +01:00
herrernst 2259188f19 Add note to README that the armhf build won't work on RPi1/Zero (#199)
see e. g. #171
2017-06-13 23:14:21 +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
Anton Voyl d01b7a4736 Add aarch64 as a cross-compilation target (#194) 2017-06-08 12:31:06 +01:00
Sasha Hilton 39012ba05e Note incompatibility of homebrew rust (#192)
Added a brief note advising use of rustup over homebrew due to bugs in the homebrew rust.
2017-06-05 19:06:50 +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 Liétar 30bdcafb7e Merge pull request #180 from Fulkerson/master
hyper::Url -> hyper::Uri, portaudio -> portaudio-rs
2017-04-29 13:23:13 +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
Paul Lietar d95c0b3fcd Update protocol files.
Fixes #172
2017-04-13 14:33:28 +02:00
Paul Liétar d551d194d3 Fix typo in README 2017-03-30 20:15:54 +01:00
Paul Liétar 42c034f2b7 Add note to README about me being busy 2017-03-30 20:09:26 +01:00
Paul Liétar b015bb8360 Merge pull request #157 from joerg-krause/spirc-add-commands
Handle more commands in Spirc
2017-03-27 10:32:22 +01:00