diff --git a/internal/protocols/mpegts/to_stream.go b/internal/protocols/mpegts/to_stream.go index 7496a4adc21..4c4ff57fa7a 100644 --- a/internal/protocols/mpegts/to_stream.go +++ b/internal/protocols/mpegts/to_stream.go @@ -113,7 +113,7 @@ func ToStream(r *mpegts.Reader, stream **stream.Stream) ([]*description.Media, e Type: description.MediaTypeAudio, Formats: []format.Format{&format.Opus{ PayloadTyp: 96, - IsStereo: (codec.ChannelCount == 2), + IsStereo: (codec.ChannelCount >= 2), }}, } diff --git a/internal/protocols/webrtc/incoming_track.go b/internal/protocols/webrtc/incoming_track.go index e108f130823..a3c6b99c48f 100644 --- a/internal/protocols/webrtc/incoming_track.go +++ b/internal/protocols/webrtc/incoming_track.go @@ -72,6 +72,7 @@ func newIncomingTrack( case strings.ToLower(webrtc.MimeTypeOpus): t.format = &format.Opus{ PayloadTyp: uint8(track.PayloadType()), + IsStereo: strings.Contains(track.Codec().SDPFmtpLine, "stereo=1"), } case strings.ToLower(webrtc.MimeTypeG722): diff --git a/internal/staticsources/hls/source.go b/internal/staticsources/hls/source.go index b8d3fd1b904..b99a76f6fb7 100644 --- a/internal/staticsources/hls/source.go +++ b/internal/staticsources/hls/source.go @@ -174,7 +174,7 @@ func (s *Source) Run(params defs.StaticSourceRunParams) error { Type: description.MediaTypeAudio, Formats: []format.Format{&format.Opus{ PayloadTyp: 96, - IsStereo: (tcodec.ChannelCount == 2), + IsStereo: (tcodec.ChannelCount >= 2), }}, }