40 lines
854 B
Go
40 lines
854 B
Go
package main
|
|
|
|
import (
|
|
"mxl-player/internal/playback"
|
|
"time"
|
|
)
|
|
|
|
const (
|
|
defaultInitialRetryDelay = 500 * time.Millisecond
|
|
defaultMaxRetryDelay = 10 * time.Second
|
|
)
|
|
|
|
func resolveDomain(shared, override string) string {
|
|
if override != "" {
|
|
return override
|
|
}
|
|
return shared
|
|
}
|
|
|
|
func (a appArgs) playbackConfig() playback.SessionConfig {
|
|
return playback.SessionConfig{
|
|
Video: playback.FeedConfig{
|
|
Domain: resolveDomain(a.Domain, a.VideoDomain),
|
|
UUID: a.VideoFlowId,
|
|
Active: a.VideoFlowId != "",
|
|
},
|
|
Audio: playback.FeedConfig{
|
|
Domain: resolveDomain(a.Domain, a.AudioDomain),
|
|
UUID: a.AudioFlowId,
|
|
Active: a.AudioFlowId != "",
|
|
},
|
|
SyncRequested: a.SyncRequested,
|
|
Retry: playback.RetryPolicy{
|
|
MaxAttempts: a.MaxAttempts,
|
|
InitialDelay: defaultInitialRetryDelay,
|
|
MaxDelay: defaultMaxRetryDelay,
|
|
},
|
|
}
|
|
}
|