aboutsummaryrefslogtreecommitdiff
path: root/music/playqueue.go
diff options
context:
space:
mode:
Diffstat (limited to 'music/playqueue.go')
-rw-r--r--music/playqueue.go17
1 files changed, 17 insertions, 0 deletions
diff --git a/music/playqueue.go b/music/playqueue.go
index 76d14df..fe82c4e 100644
--- a/music/playqueue.go
+++ b/music/playqueue.go
@@ -142,6 +142,23 @@ func (q *Queue) TogglePause() {
142 } 142 }
143} 143}
144 144
145func (q *Queue) SkipTo(s *subsonic.Child) {
146 i := -1
147 for n, s2 := range q.GetSongs() {
148 if s.ID == s2.ID {
149 i = n
150 break
151 }
152 }
153
154 if i == -1 {
155 return
156 }
157
158 q.songs = q.songs[i:]
159 q.Play()
160}
161
145func (p *Queue) setupSpeaker(s beep.Streamer, format beep.Format) (beep.Streamer, error) { 162func (p *Queue) setupSpeaker(s beep.Streamer, format beep.Format) (beep.Streamer, error) {
146 if !p.speakerInitialized { 163 if !p.speakerInitialized {
147 err := speaker.Init(format.SampleRate, format.SampleRate.N(time.Second/10)) 164 err := speaker.Init(format.SampleRate, format.SampleRate.N(time.Second/10))