add back logging of playback errors
This commit is contained in:
@@ -2,6 +2,7 @@ package backend
|
|||||||
|
|
||||||
import (
|
import (
|
||||||
"context"
|
"context"
|
||||||
|
"fmt"
|
||||||
"log"
|
"log"
|
||||||
"math/rand"
|
"math/rand"
|
||||||
"time"
|
"time"
|
||||||
@@ -419,6 +420,11 @@ func (p *PlaybackManager) PlayPause() {
|
|||||||
}
|
}
|
||||||
|
|
||||||
func (p *PlaybackManager) runCmdQueue(ctx context.Context) {
|
func (p *PlaybackManager) runCmdQueue(ctx context.Context) {
|
||||||
|
logIfErr := func(action string, err error) {
|
||||||
|
if err != nil {
|
||||||
|
log.Println("Playback error (%s): %v", action, err)
|
||||||
|
}
|
||||||
|
}
|
||||||
for {
|
for {
|
||||||
select {
|
select {
|
||||||
case <-ctx.Done():
|
case <-ctx.Done():
|
||||||
@@ -426,33 +432,35 @@ func (p *PlaybackManager) runCmdQueue(ctx context.Context) {
|
|||||||
case c := <-p.cmdQueue.C():
|
case c := <-p.cmdQueue.C():
|
||||||
switch c.Type {
|
switch c.Type {
|
||||||
case cmdStop:
|
case cmdStop:
|
||||||
p.engine.Stop()
|
logIfErr("Stop", p.engine.Stop())
|
||||||
case cmdContinue:
|
case cmdContinue:
|
||||||
p.engine.Continue()
|
logIfErr("Continue", p.engine.Continue())
|
||||||
case cmdPause:
|
case cmdPause:
|
||||||
p.engine.Pause()
|
logIfErr("Pause", p.engine.Pause())
|
||||||
case cmdPlayTrackAt:
|
case cmdPlayTrackAt:
|
||||||
p.engine.PlayTrackAt(c.Arg.(int))
|
logIfErr("PlayTrackAt", p.engine.PlayTrackAt(c.Arg.(int)))
|
||||||
case cmdSeekSeconds:
|
case cmdSeekSeconds:
|
||||||
p.engine.SeekSeconds(c.Arg.(float64))
|
logIfErr("SeekSeconds", p.engine.SeekSeconds(c.Arg.(float64)))
|
||||||
case cmdSeekFwdBackN:
|
case cmdSeekFwdBackN:
|
||||||
p.engine.SeekFwdBackN(c.Arg.(int))
|
action := fmt.Sprintf("SeekFwdBack[%d]", c.Arg.(int))
|
||||||
|
logIfErr(action, p.engine.SeekFwdBackN(c.Arg.(int)))
|
||||||
case cmdVolume:
|
case cmdVolume:
|
||||||
p.engine.SetVolume(c.Arg.(int))
|
logIfErr("Volume", p.engine.SetVolume(c.Arg.(int)))
|
||||||
case cmdLoopMode:
|
case cmdLoopMode:
|
||||||
p.engine.SetLoopMode(c.Arg.(LoopMode))
|
p.engine.SetLoopMode(c.Arg.(LoopMode))
|
||||||
case cmdStopAndClearPlayQueue:
|
case cmdStopAndClearPlayQueue:
|
||||||
p.engine.StopAndClearPlayQueue()
|
p.engine.StopAndClearPlayQueue()
|
||||||
case cmdUpdatePlayQueue:
|
case cmdUpdatePlayQueue:
|
||||||
p.engine.UpdatePlayQueue(c.Arg.([]mediaprovider.MediaItem))
|
logIfErr("UpdatePlayQueue", p.engine.UpdatePlayQueue(c.Arg.([]mediaprovider.MediaItem)))
|
||||||
case cmdRemoveTracksFromQueue:
|
case cmdRemoveTracksFromQueue:
|
||||||
p.engine.RemoveTracksFromQueue(c.Arg.([]int))
|
p.engine.RemoveTracksFromQueue(c.Arg.([]int))
|
||||||
case cmdLoadItems:
|
case cmdLoadItems:
|
||||||
p.engine.LoadItems(
|
err := p.engine.LoadItems(
|
||||||
c.Arg.([]mediaprovider.MediaItem),
|
c.Arg.([]mediaprovider.MediaItem),
|
||||||
c.Arg2.(InsertQueueMode),
|
c.Arg2.(InsertQueueMode),
|
||||||
c.Arg3.(bool),
|
c.Arg3.(bool),
|
||||||
)
|
)
|
||||||
|
logIfErr("LoadItems", err)
|
||||||
case cmdLoadRadioStation:
|
case cmdLoadRadioStation:
|
||||||
p.engine.LoadRadioStation(
|
p.engine.LoadRadioStation(
|
||||||
c.Arg.(*mediaprovider.RadioStation),
|
c.Arg.(*mediaprovider.RadioStation),
|
||||||
|
|||||||
Reference in New Issue
Block a user