aboutsummaryrefslogtreecommitdiff
path: root/src/base/QXmppRtpPacket.cpp
diff options
context:
space:
mode:
authorJeremy Lainé <jeremy.laine@m4x.org>2018-02-28 00:32:35 +0100
committerJeremy Lainé <jeremy.laine@m4x.org>2018-02-28 00:32:35 +0100
commit2416d50b48d564d27c27a55fc424eedee311de74 (patch)
treebddcd8d8b51b48981c0ec64e6d23c3e55e968149 /src/base/QXmppRtpPacket.cpp
parent5804795a35d27f8d10301d5f40567a34efca2643 (diff)
downloadqxmpp-2416d50b48d564d27c27a55fc424eedee311de74.tar.gz
Fix encoding / decoding of CSRC count in RTP packets
Diffstat (limited to 'src/base/QXmppRtpPacket.cpp')
-rw-r--r--src/base/QXmppRtpPacket.cpp4
1 files changed, 2 insertions, 2 deletions
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;