From 2416d50b48d564d27c27a55fc424eedee311de74 Mon Sep 17 00:00:00 2001 From: Jeremy Lainé Date: Wed, 28 Feb 2018 00:32:35 +0100 Subject: Fix encoding / decoding of CSRC count in RTP packets --- src/base/QXmppRtpPacket.cpp | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'src/base/QXmppRtpPacket.cpp') diff --git a/src/base/QXmppRtpPacket.cpp b/src/base/QXmppRtpPacket.cpp index 4f1ed17b..558086a2 100644 --- a/src/base/QXmppRtpPacket.cpp +++ b/src/base/QXmppRtpPacket.cpp @@ -101,7 +101,7 @@ bool QXmppRtpPacket::decode(const QByteArray &ba) quint8 tmp; QDataStream stream(ba); stream >> tmp; - const quint8 cc = (tmp >> 1) & 0xf; + const quint8 cc = (tmp & 0xf); const int hlen = 12 + 4 * cc; if ((tmp >> 6) != RTP_VERSION || ba.size() < hlen) return false; @@ -136,7 +136,7 @@ QByteArray QXmppRtpPacket::encode() const ba.resize(d->payload.size() + 12 + 4 * d->csrc.size()); QDataStream stream(&ba, QIODevice::WriteOnly); stream << quint8((RTP_VERSION << 6) | - ((d->csrc.size() & 0xf) << 1)); + (d->csrc.size() & 0xf)); stream << quint8((d->type & 0x7f) | (d->marker << 7)); stream << d->sequence; stream << d->stamp; -- cgit v1.2.3