mirror of
https://github.com/g4klx/MMDVMHost
synced 2025-12-29 14:35:41 +08:00
Update the way that jitter buffer logging works.
This commit is contained in:
@@ -83,8 +83,8 @@ m_beacon(false)
|
||||
m_streamId[0U] = 0x00U;
|
||||
m_streamId[1U] = 0x00U;
|
||||
|
||||
m_jitterBuffers[1U] = new CJitterBuffer(60U, DMR_SLOT_TIME, jitter, 256U, true);
|
||||
m_jitterBuffers[2U] = new CJitterBuffer(60U, DMR_SLOT_TIME, jitter, 256U, true);
|
||||
m_jitterBuffers[1U] = new CJitterBuffer(60U, DMR_SLOT_TIME, jitter, 256U, debug);
|
||||
m_jitterBuffers[2U] = new CJitterBuffer(60U, DMR_SLOT_TIME, jitter, 256U, debug);
|
||||
|
||||
m_id[0U] = id >> 24;
|
||||
m_id[1U] = id >> 16;
|
||||
|
||||
@@ -76,14 +76,12 @@ bool CJitterBuffer::addData(const unsigned char* data, unsigned int length, unsi
|
||||
// Is the data out of sequence?
|
||||
if (headSequenceNumber < tailSequenceNumber) {
|
||||
if (sequenceNumber < headSequenceNumber || sequenceNumber >= tailSequenceNumber) {
|
||||
if (m_debug)
|
||||
LogDebug("JitterBuffer: rejecting frame with seqNo=%u, raw=%u, head=%u, tail=%u", sequenceNumber, m_headSequenceNumber, headSequenceNumber, tailSequenceNumber);
|
||||
LogDebug("JitterBuffer: rejecting frame with seqNo=%u, raw=%u, head=%u, tail=%u", sequenceNumber, m_headSequenceNumber, headSequenceNumber, tailSequenceNumber);
|
||||
return false;
|
||||
}
|
||||
} else {
|
||||
if (sequenceNumber >= tailSequenceNumber && sequenceNumber < headSequenceNumber) {
|
||||
if (m_debug)
|
||||
LogDebug("JitterBuffer: rejecting frame with seqNo=%u, raw=%u, head=%u, tail=%u", sequenceNumber, m_headSequenceNumber, headSequenceNumber, tailSequenceNumber);
|
||||
LogDebug("JitterBuffer: rejecting frame with seqNo=%u, raw=%u, head=%u, tail=%u", sequenceNumber, m_headSequenceNumber, headSequenceNumber, tailSequenceNumber);
|
||||
return false;
|
||||
}
|
||||
}
|
||||
@@ -98,8 +96,7 @@ bool CJitterBuffer::addData(const unsigned char* data, unsigned int length, unsi
|
||||
|
||||
// Do we already have the data?
|
||||
if (m_buffer[index].m_length > 0U) {
|
||||
if (m_debug)
|
||||
LogDebug("JitterBuffer: rejecting duplicate frame with seqNo=%u, pos=%u, raw=%u, head=%u, tail=%u", sequenceNumber, index, m_headSequenceNumber, headSequenceNumber, tailSequenceNumber);
|
||||
LogDebug("JitterBuffer: rejecting duplicate frame with seqNo=%u, pos=%u, raw=%u, head=%u, tail=%u", sequenceNumber, index, m_headSequenceNumber, headSequenceNumber, tailSequenceNumber);
|
||||
return false;
|
||||
}
|
||||
|
||||
@@ -110,8 +107,7 @@ bool CJitterBuffer::addData(const unsigned char* data, unsigned int length, unsi
|
||||
m_buffer[index].m_length = length;
|
||||
|
||||
if (!m_timer.isRunning()) {
|
||||
if (m_debug)
|
||||
LogDebug("JitterBuffer: starting the timer");
|
||||
LogDebug("JitterBuffer: starting the timer");
|
||||
m_timer.start();
|
||||
}
|
||||
|
||||
@@ -151,13 +147,11 @@ JB_STATUS CJitterBuffer::getData(unsigned char* data, unsigned int& length)
|
||||
|
||||
m_buffer[head].m_length = 0U;
|
||||
|
||||
if (m_debug)
|
||||
LogDebug("JitterBuffer: no data available, elapsed=%ums, raw=%u, head=%u", m_stopWatch.elapsed(), m_headSequenceNumber - 1U, head);
|
||||
LogDebug("JitterBuffer: no data available, elapsed=%ums, raw=%u, head=%u", m_stopWatch.elapsed(), m_headSequenceNumber - 1U, head);
|
||||
|
||||
// Return the last data frame if we have it
|
||||
if (m_lastDataLength > 0U) {
|
||||
if (m_debug)
|
||||
LogDebug("JitterBuffer: returning the last received frame");
|
||||
LogDebug("JitterBuffer: returning the last received frame");
|
||||
::memcpy(data, m_lastData, m_lastDataLength);
|
||||
length = m_lastDataLength;
|
||||
|
||||
|
||||
Reference in New Issue
Block a user