From c97a48a73faa1178bc448caf4f314fafb9b63d21 Mon Sep 17 00:00:00 2001 From: Alexey Khit Date: Fri, 21 Oct 2022 12:00:00 +0300 Subject: [PATCH] Fix mjpeg for 2K cameras --- pkg/mjpeg/consumer.go | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/pkg/mjpeg/consumer.go b/pkg/mjpeg/consumer.go index c2c3b9bf..8b057f20 100644 --- a/pkg/mjpeg/consumer.go +++ b/pkg/mjpeg/consumer.go @@ -61,8 +61,16 @@ func (c *Consumer) AddTrack(media *streamer.Media, track *streamer.Track) *strea lqt, cqt = MakeTables(q) } + // https://www.rfc-editor.org/rfc/rfc2435#section-3.1.5 + // The maximum width is 2040 pixels. w := uint16(packet.Payload[6]) << 3 h := uint16(packet.Payload[7]) << 3 + + // fix 2560x1920 and 2560x1440 + if w == 512 && (h == 1920 || h == 1440) { + w = 2560 + } + //fmt.Printf("t: %d, q: %d, w: %d, h: %d\n", t, q, w, h) header = MakeHeaders(t, w, h, lqt, cqt) }