Commit graph

219 commits

Author SHA1 Message Date
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 f79df63734 Merge pull request #115 from herrernst/also-test-alsa-backend
travis: also test alsa backend
2016-08-28 04:14:06 -07:00
herrernst 202397eb25 travis: also test alsa backend 2016-08-27 23:16:04 +02:00
Paul Lietar 5a4297551d Merge pull request #113 from joerg-krause/alsa-backend
Add ALSA backend
2016-08-27 13:22:34 -07: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
Paul Lietar 95f42d19c9 Merge pull request #112 from joerg-krause/fix-out-of-bounds-panic
Fix out of bounds panic
2016-08-23 16:53:23 -07:00
Jörg Krause 0716643ae3 Fix out of bounds panic
Selecting a librespot device with the Spotify desktop client causes a
crash if the playlist is empty.

Take into account the case where an empty list of tracks is received. In
this case notify the desktop client, so it will accept the device and
turn the status bar green.

Closes: #71
2016-08-23 23:49:19 +02:00
Paul Lietar cf7378fda4 Merge pull request #110 from herrernst/travis-cross-arm
travis: also test cross-compilation for arm
2016-08-09 14:44:14 -07:00
herrernst 65c0e2b58d travis: also test cross-compilation for arm 2016-08-09 23:04:17 +02:00
Paul Lietar 1308f095b1 Merge pull request #109 from herrernst/update-lmdb-dep
update lmdb-rs dependency
2016-08-08 15:01:46 -07:00
herrernst 704c89a8a7 update lmdb-rs dependency 2016-08-08 21:50:05 +02:00
Paul Lietar 85002e1e2a Merge pull request #108 from herrernst/cargo-deb
add some fields to Cargo manifest so debian package can be build easily with `cargo-deb`
2016-08-08 12:04:10 -07:00
herrernst 58d24e2744 add some fields to Cargo manifest so debian package can be build easily with cargo-deb 2016-08-08 20:25:18 +02:00
herrernst ceb375f37e close stream on stop 2016-08-03 21:48:25 +02:00
Paul Lietar 7632fa4712 Merge pull request #93 from serprex/master
Replace time with std::time
2016-07-31 17:40:37 -07:00
Paul Lietar 5388565652 Merge pull request #104 from alboyer/fix-latency
Fix latency
2016-07-22 16:14:58 -07:00
Alain Boyer 82af7a3d71 Specify suggested_latency from device info.
- Update portaudio dependency.
- Pass default_high_output_latency to ensure robust playback.
- This is the same behavior as when previously using Stream::open_default().
2016-07-23 01:39:41 +03:00
Paul Lietar 682658903d Merge pull request #98 from joerg-krause/update/tremor
Update dependency tremor
2016-07-20 14:08:48 -07:00
Jörg Krause 1c973adaae Update dependency tremor 2016-07-20 21:24:37 +02:00
Demur Rumed 674146f52a Replace time with std::time 2016-07-17 03:25:29 +00:00
Paul Lietar a9ae5b5086 travis: Update nightly version 2016-07-06 11:01:08 +01:00
Paul Lietar 1396f9729a Allow specifying an output device. 2016-07-06 10:54:46 +01:00
Paul Lietar 4cca541339 Remove the need for a application key. 2016-07-06 08:37:41 +01:00
Paul Lietar e9aad29ae4 Merge pull request #85 from egnwd/egnwd-typo-readme
Update README.md
2016-07-06 02:44:31 +01:00
Paul Lietar b25585a41b Use a pure rust mDNS responder instead of relying on Avahi / dns-sd.
Fixes #33, #70
2016-07-06 02:36:01 +01:00
Paul Lietar decce02373 Be a bit less verbose 2016-07-06 02:29:50 +01:00
Paul Lietar 24471eef9b Use serde for json serialization. 2016-07-06 02:29:38 +01:00
Paul Lietar e688914082 Fix some unused import warnings. 2016-07-06 01:36:46 +01:00
Paul Lietar facd6c5881 Update dependencies.
This removes the direct dependency on syntex, meaning plugins can bump
their own versions independently (see serde-rs/serde#358)
2016-07-06 01:34:20 +01:00
Paul Lietar f207d53943 Remove capi.
This was just some unsuccessful attempt at create an API compatible with
libspotify.

One day I’ll make a C API without caring about that compatibility
2016-07-06 00:21:05 +01:00
Elliot Greenwood 4c04737a3d Update README.md 2016-05-27 16:34:40 +01:00
Paul Lietar 4d277e5b75 stream: refactor into a reactor pattern. 2016-05-09 12:22:51 +01:00
Paul Lietar b753f3b72c travis: disable email notifications 2016-05-06 20:23:26 +01:00
Paul Lietar ed14c3469b track: Use a linear map to store files by format. 2016-05-04 10:03:46 +01:00
Paul Lietar c76b7b472f Workaround weird parsing bug 2016-05-04 09:56:23 +01:00
Paul Lietar ed425292f3 Update to latest nightly 2016-05-04 09:37:09 +01:00
Paul Lietar dde613e0a0 player: skip unavailable tracks rather than crash
Fixes #74
2016-05-04 09:11:27 +01:00
Paul Lietar 8d8aad8191 Update protobuf definition 2016-05-03 10:04:54 +01:00
Paul Lietar 7a21287311 Merge pull request #80 from marcust/fix-crash-2
Temporary fix for new CapabilityType 0xb (#74)
2016-04-30 22:29:11 +01:00
Marcus Thiesen 3efa42e081 Temporary fix for new CapabilityType 0xb (#74) 2016-04-30 13:53:33 +02:00
Paul Lietar 2439f10ea4 Merge pull request #79 from marcust/fix-crash
Temporary fix for #74
2016-04-29 11:36:10 +01:00
Marcus Thiesen 95c63fec7f Temporary fix for #74 2016-04-28 19:24:39 +02:00
Paul Lietar f4c409ffa5 Merge pull request #78 from plietar/fix-url
Downgrade url to 0.5
2016-04-25 20:14:54 +01:00
Paul Lietar 4e9e8bb5ce Downgrade url to 0.5
url 1.0 removed the parse_path API we need.
2016-04-25 15:22:22 +01:00
Paul Lietar a42752af2f Update dependencies. 2016-04-24 15:40:05 +01:00
Paul Lietar f50fca02ae player: Add seek_at command for precise seeking 2016-04-24 14:48:15 +01:00
Paul Lietar 8c0a37357d Fix static app key with syntex 2016-04-24 14:47:52 +01:00
Paul Lietar a36325a46a Add a main helper to make it easier to use librespot. 2016-04-24 13:29:26 +01:00
Paul Lietar edb8a6a766 Cleanup authentication logic 2016-04-24 12:15:53 +01:00