mirror of
https://github.com/g4klx/MMDVMHost
synced 2025-12-21 15:09:23 +08:00
Remobe AMBE regeneration on data packets.
This commit is contained in:
@@ -235,7 +235,9 @@ bool CDStarControl::writeModem(unsigned char *data, unsigned int len)
|
||||
|
||||
return false;
|
||||
} else if (m_rfState == RS_RF_AUDIO) {
|
||||
unsigned int errors = m_fec.regenerateDStar(data + 1U);
|
||||
unsigned int errors = 0U;
|
||||
if (!m_rfHeader.isDataPacket())
|
||||
errors = m_fec.regenerateDStar(data + 1U);
|
||||
|
||||
m_rfErrs += errors;
|
||||
m_rfBits += 48U;
|
||||
@@ -354,7 +356,9 @@ bool CDStarControl::writeModem(unsigned char *data, unsigned int len)
|
||||
|
||||
delete header;
|
||||
|
||||
unsigned int errors = m_fec.regenerateDStar(data + 1U);
|
||||
unsigned int errors = 0U;
|
||||
if (!m_rfHeader.isDataPacket())
|
||||
errors = m_fec.regenerateDStar(data + 1U);
|
||||
|
||||
m_rfErrs += errors;
|
||||
m_rfBits += 48U;
|
||||
@@ -529,7 +533,9 @@ void CDStarControl::writeNetwork()
|
||||
|
||||
unsigned char n = data[1U];
|
||||
|
||||
unsigned int errors = m_fec.regenerateDStar(data + 2U);
|
||||
unsigned int errors = 0U;
|
||||
if (!m_netHeader.isDataPacket())
|
||||
errors = m_fec.regenerateDStar(data + 2U);
|
||||
|
||||
blankDTMF(data + 2U);
|
||||
|
||||
|
||||
@@ -72,6 +72,11 @@ void CDStarHeader::setRepeater(bool on)
|
||||
m_header[0U] &= ~DSTAR_REPEATER_MASK;
|
||||
}
|
||||
|
||||
bool CDStarHeader::isDataPacket() const
|
||||
{
|
||||
return (m_header[0U] & DSTAR_DATA_MASK) == DSTAR_DATA_MASK;
|
||||
}
|
||||
|
||||
void CDStarHeader::setUnavailable(bool on)
|
||||
{
|
||||
if (on)
|
||||
|
||||
@@ -28,6 +28,8 @@ public:
|
||||
bool isRepeater() const;
|
||||
void setRepeater(bool on);
|
||||
|
||||
bool isDataPacket() const;
|
||||
|
||||
void setUnavailable(bool on);
|
||||
|
||||
void getMyCall1(unsigned char* call1) const;
|
||||
|
||||
Reference in New Issue
Block a user