hook up playback config onchanged

This commit is contained in:
Drew Weymouth
2023-04-01 10:42:15 -07:00
parent 4740446c13
commit d84c0d71ed
5 changed files with 57 additions and 14 deletions
+2 -1
View File
@@ -68,6 +68,7 @@ func StartupApp(appName, appVersionTag, configFile, latestReleaseURL string) (*A
PreventClipping: a.Config.ReplayGain.PreventClipping,
PreampGain: a.Config.ReplayGain.PreampGainDB,
})
a.Player.SetAudioExclusive(a.Config.LocalPlayback.AudioExclusive)
a.ServerManager = NewServerManager(appName)
a.PlaybackManager = NewPlaybackManager(a.bgrndCtx, a.ServerManager, a.Player, &a.Config.Scrobbling)
@@ -100,7 +101,7 @@ func (a *App) initMPV() error {
p := player.NewWithClientName(a.appName)
c := a.Config.LocalPlayback
c.InMemoryCacheSizeMB = clamp(c.InMemoryCacheSizeMB, 10, 500)
if err := p.Init(c.AudioExclusive, c.InMemoryCacheSizeMB); err != nil {
if err := p.Init(c.InMemoryCacheSizeMB); err != nil {
return fmt.Errorf("failed to initialize mpv player: %s", err.Error())
}
a.Player = p
+8
View File
@@ -270,6 +270,14 @@ func (p *PlaybackManager) StopAndClearPlayQueue() {
p.playQueue = nil
}
func (p *PlaybackManager) SetReplayGainOptions(config ReplayGainConfig) {
p.player.SetReplayGainOptions(player.ReplayGainOptions{
Mode: player.ReplayGainMode(config.Mode),
PreventClipping: config.PreventClipping,
PreampGain: config.PreampGainDB,
})
}
// call BEFORE updating p.nowPlayingIdx
func (p *PlaybackManager) checkScrobble(playDur time.Duration) {
if !p.scrobbleCfg.Enabled || len(p.playQueue) == 0 || p.nowPlayingIdx < 0 {