Improve silence fillin messages.

This commit is contained in:
Jonathan Naylor 2016-02-18 19:57:11 +00:00
parent 6c0c553a47
commit 9a3fe18e91
3 changed files with 11 additions and 13 deletions

View file

@ -866,12 +866,13 @@ void CDMRSlot::clock(unsigned int ms)
m_packetTimer.clock(ms);
if (m_packetTimer.isRunning() && m_packetTimer.hasExpired()) {
unsigned int frames = m_elapsed.elapsed() / DMR_SLOT_TIME;
unsigned int elapsed = m_elapsed.elapsed();
unsigned int frames = elapsed / DMR_SLOT_TIME;
if (frames > m_frames) {
unsigned int count = frames - m_frames;
if (count > 3U) {
LogMessage("DMR Slot %u, lost audio for 300ms filling in, %u %u", m_slotNo, frames, m_frames);
LogMessage("DMR Slot %u, lost audio for 300ms filling in, elapsed: %ums, expected: %u, received: %u", m_slotNo, elapsed, frames, m_frames);
insertSilence(count - 1U);
}
}

View file

@ -186,10 +186,8 @@ bool CDStarControl::writeModem(unsigned char *data)
}
} else if (type == TAG_EOT) {
if (m_state == RS_RELAYING_RF_AUDIO) {
if (m_net) {
for (unsigned int i = 0U; i < 2U; i++)
writeNetworkData(DSTAR_END_PATTERN_BYTES, 0U, true, false);
}
if (m_net)
writeNetworkData(DSTAR_END_PATTERN_BYTES, 0U, true, false);
if (m_duplex)
writeQueueEOT();
@ -201,10 +199,8 @@ bool CDStarControl::writeModem(unsigned char *data)
writeEndOfTransmission();
} else if (m_state == RS_RELAYING_NETWORK_AUDIO) {
if (m_net) {
for (unsigned int i = 0U; i < 2U; i++)
writeNetworkData(DSTAR_END_PATTERN_BYTES, 0U, true, true);
}
if (m_net)
writeNetworkData(DSTAR_END_PATTERN_BYTES, 0U, true, true);
}
return false;
@ -547,12 +543,13 @@ void CDStarControl::clock(unsigned int ms)
m_packetTimer.clock(ms);
if (m_packetTimer.isRunning() && m_packetTimer.hasExpired()) {
unsigned int frames = m_elapsed.elapsed() / DSTAR_FRAME_TIME;
unsigned int elapsed = m_elapsed.elapsed();
unsigned int frames = elapsed / DSTAR_FRAME_TIME;
if (frames > m_frames) {
unsigned int count = frames - m_frames;
if (count > 5U) {
LogMessage("D-Star, lost audio for 200ms filling in, %u %u", frames, m_frames);
LogMessage("D-Star, lost audio for 200ms filling in, elapsed: %ums, expected: %u, received: %u", elapsed, frames, m_frames);
insertSilence(count - 2U);
}
}

View file

@ -19,6 +19,6 @@
#if !defined(VERSION_H)
#define VERSION_H
const char* VERSION = "20160217";
const char* VERSION = "20160218";
#endif