diff --git a/reflector/DVFramePacket.cpp b/reflector/DVFramePacket.cpp index c4a37c5..d8fcaf8 100644 --- a/reflector/DVFramePacket.cpp +++ b/reflector/DVFramePacket.cpp @@ -146,9 +146,9 @@ void CDvFramePacket::EncodeInterlinkPacket(CBuffer &buf) const buf.resize(GetNetworkSize()); auto data = buf.data(); auto off = CPacket::GetNetworkSize(); - data[off++] = (m_TCPack.sequence / 0x1000000u) & 0xffu; - data[off++] = (m_TCPack.sequence / 0x10000u) & 0xffu; - data[off++] = (m_TCPack.sequence / 0x100u) & 0xffu; + data[off++] = (m_TCPack.sequence >> 24) & 0xffu; + data[off++] = (m_TCPack.sequence >> 16) & 0xffu; + data[off++] = (m_TCPack.sequence >> 8) & 0xffu; data[off++] = m_TCPack.sequence & 0xffu; memcpy(data+off, m_uiDvData, 3); off += 3; memcpy(data+off, m_uiDvSync, 7); off += 7; diff --git a/reflector/Packet.cpp b/reflector/Packet.cpp index 8efbd01..e7909d4 100644 --- a/reflector/Packet.cpp +++ b/reflector/Packet.cpp @@ -75,10 +75,10 @@ void CPacket::EncodeInterlinkPacket(const char *magic, CBuffer &buf) const data[7] = m_cModule; data[8] = m_uiStreamId / 0x100u; data[9] = m_uiStreamId % 0x100u; - data[10] = (m_uiM17FrameNumber / 0x1000000u) % 0x100u; - data[11] = (m_uiM17FrameNumber / 0x10000u) % 0x100u; - data[12] = (m_uiM17FrameNumber / 0x100u) % 0x100u; - data[13] = m_uiM17FrameNumber % 100u; + data[10] = (m_uiM17FrameNumber >> 24) & 0xffu; + data[11] = (m_uiM17FrameNumber >> 16) & 0xffu; + data[12] = (m_uiM17FrameNumber >> 8) & 0xffu; + data[13] = m_uiM17FrameNumber & 0xffu; data[14] = m_uiDstarPacketId; data[15] = m_uiDmrPacketId; data[16] = m_uiDmrPacketSubid;