Commit graph

483 commits

Author SHA1 Message Date
awiouy
c9ba73c9ef rustfmt: core 2018-02-11 12:37:08 +01:00
awiouy
0d92ac74d1 Add rustfmt.toml 2018-02-11 12:33:00 +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
a35edc6af4 core API: move run_program to player.rs 2018-02-10 17:58:15 +01:00
awiouy
496a802248 core API: move subfile.rs to player.rs 2018-02-10 17:58:15 +01:00
awiouy
d7fa1464ff core API: move mkdir_existing to cache.rs 2018-02-10 17:58:15 +01:00
awiouy
77882836ce core API: move now_ms to spirc.rs 2018-02-10 17:58:15 +01:00
awiouy
55f27a9e0a core API: SessionWeak.try_upgrade(), SessionWeak.upgrade() 2018-02-10 17:58:15 +01:00
awiouy
ae85e69aca core API: Session.weak() 2018-02-10 17:58:15 +01:00
awiouy
72cef9a10c core API: Session.config() 2018-02-10 17:58:15 +01:00
Paul Liétar
e80b97e7b7
Merge pull request #127 from kingosticks/fix/skipping-with-queued-tracks
Improved next/prev handling for queued tracks. (v2)
2018-02-10 17:36:47 +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
awiouy
a8bb696be8 core API: MercurySender::new 2018-02-10 08:23:46 +01:00
Sasha Hilton
b0244ad42d
Merge pull request #135 from librespot-org/playback
Move audio backends into librespot-playback crate
2018-02-10 02:15:14 +01:00
Sasha Hilton
930bc3f841 Remove default option iin playback/Cargo.toml 2018-02-10 01:44:26 +01:00
Paul Liétar
ce2821408b
Merge pull request #136 from awiouy/core_API
core API
2018-02-10 00:47:20 +01:00
awiouy
762b75803b core API: connection 2018-02-09 21:36:18 +01:00
awiouy
4c23803c84 core API: cache.rs 2018-02-09 21:29:29 +01:00
awiouy
a105fd44c4 core API: save_to_file, save_to_writer 2018-02-09 21:24:58 +01:00
awiouy
c86f790986 core API: from_file, from_reader 2018-02-09 21:18:06 +01:00
awiouy
434b824c6e core API: dispatch 2018-02-09 21:06:16 +01:00
awiouy
d34068c5a7 core API: apresolve 2018-02-09 20:57:49 +01:00
Sasha Hilton
4f605dfd86 Correct feature flags 2018-02-09 02:14:11 +01:00
Sasha Hilton
1fb65354b0 Move audio backends into seperate crate 2018-02-09 02:05:50 +01:00
Sasha Hilton
bd59ded224
Merge pull request #124 from awiouy/lewton_as_default
Set lewton_decoder as default, libvorbis_decoder as optional. Wiki also updated.
2018-02-09 00:51:26 +01:00
Sasha Hilton
6e71260bbd
Merge pull request #123 from awiouy/lewton
No objections, so merging. lewton: handle OggError(NoCapturePatternFound)
2018-02-08 18:33:45 +01:00
Sasha Hilton
682df767a6
Merge pull request #131 from librespot-org/modularise
Move discovery functionality into new crate.
2018-02-08 09:30:50 +01:00
awiouy
e3516ebd9b Move discovery to its own module. 2018-02-08 04:03:53 +01:00
awiouy
f400a894bc lewton_decoder becomes default, libvorbis_decoder optional 2018-02-08 00:24:57 +01:00
awiouy
97bc429e08 Update Rust requirement to 1.20.0 2018-02-07 18:57:19 +01:00
awiouy
99e7da562d lewton: handle OggError(NoCapturePatternFound) 2018-02-07 18:25:21 +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
ccbaff267e Re-add serde_derive 2018-02-06 20:26:37 +01:00
Sasha Hilton
6a442a4570 Move keymaster to core 2018-02-06 19:54:28 +01:00
Sasha Hilton
578d6b7f06
Merge pull request #121 from ashthespy/metadata
Add track duration to `Track` metadata
2018-02-06 18:08:59 +01:00
ashthespy
4164717452 Add track duration to Track metadata 2018-02-06 03:20:21 +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
Sasha Hilton
59782fe285
Merge pull request #117 from awiouy/nit1
simplify dns-sd/mdns code
2018-02-04 20:10:09 +01:00
awiouy
2ae1f1399f simplify dns-sd/mdns code 2018-02-02 19:53:08 +01:00
Sasha Hilton
b22f252abd
Add missing " 2018-02-02 05:14:00 +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