fix: add 'opus' to the container aliases for improved direct play detection

Signed-off-by: Deluan <deluan@navidrome.org>
This commit is contained in:
Deluan
2026-03-09 18:26:07 -04:00
parent d76b49c6d1
commit 844dffa2f1
2 changed files with 13 additions and 1 deletions
+1 -1
View File
@@ -10,7 +10,7 @@ var containerAliasGroups = func() map[string]string {
groups := [][]string{
{"aac", "adts", "m4a", "mp4", "m4b", "m4p"},
{"mpeg", "mp3", "mp2"},
{"ogg", "oga"},
{"ogg", "oga", "opus"},
{"aif", "aiff"},
{"asf", "wma"},
{"mpc", "mpp"},
+12
View File
@@ -129,6 +129,18 @@ var _ = Describe("Decider", func() {
Expect(decision.CanDirectPlay).To(BeTrue())
})
It("handles container aliases (opus -> ogg)", func() {
mf := withProbe(&model.MediaFile{ID: "1", Suffix: "opus", Codec: "Opus", BitRate: 165, Channels: 2, SampleRate: 48000})
ci := &ClientInfo{
DirectPlayProfiles: []DirectPlayProfile{
{Containers: []string{"ogg"}, AudioCodecs: []string{"opus"}, Protocols: []string{ProtocolHTTP}},
},
}
decision, err := svc.MakeDecision(ctx, mf, ci, DecisionOptions{})
Expect(err).ToNot(HaveOccurred())
Expect(decision.CanDirectPlay).To(BeTrue())
})
It("handles codec aliases (adts -> aac)", func() {
mf := withProbe(&model.MediaFile{ID: "1", Suffix: "m4a", Codec: "AAC", BitRate: 256, Channels: 2})
ci := &ClientInfo{