BUGFIX: when bridge is receiving local or UDP audio, ignore all FNE network traffic in its entirety (this has the affect of making local audio and UDP audio priority over FNE audio);

fix_nid_array_cleanup
Bryan Biedenkapp 4 weeks ago
parent 360fcac8be
commit d05a593b36

@ -74,6 +74,11 @@ void HostBridge::processAnalogNetwork(uint8_t* buffer, uint32_t length)
LogDebug(LOG_NET, "Analog, seqNo = %u, srcId = %u, dstId = %u, len = %u", seqNo, srcId, dstId, length); LogDebug(LOG_NET, "Analog, seqNo = %u, srcId = %u, dstId = %u, len = %u", seqNo, srcId, dstId, length);
} }
// ignore network traffic entirely when local audio detect or
// traffic from UDP is running
if (m_audioDetect || m_trafficFromUDP)
return;
if (!individual) { if (!individual) {
if (srcId == 0) if (srcId == 0)
return; return;

@ -122,6 +122,11 @@ void HostBridge::processDMRNetwork(uint8_t* buffer, uint32_t length)
::memcpy(data.get(), buffer + 20U, DMR_FRAME_LENGTH_BYTES); ::memcpy(data.get(), buffer + 20U, DMR_FRAME_LENGTH_BYTES);
} }
// ignore network traffic entirely when local audio detect or
// traffic from UDP is running
if (m_audioDetect || m_trafficFromUDP)
return;
if (flco == FLCO::GROUP) { if (flco == FLCO::GROUP) {
if (srcId == 0) { if (srcId == 0) {
m_network->resetDMR(slotNo); m_network->resetDMR(slotNo);

@ -124,13 +124,13 @@ void HostBridge::processP25Network(uint8_t* buffer, uint32_t length)
lsd.setLSD1(lsd1); lsd.setLSD1(lsd1);
lsd.setLSD2(lsd2); lsd.setLSD2(lsd2);
if (control.getLCO() == LCO::GROUP) { // ignore network traffic entirely when local audio detect or
if ((duid == DUID::TDU) || (duid == DUID::TDULC)) {
// ignore TDU/TDULC entirely when local audio detect or
// traffic from UDP is running // traffic from UDP is running
if (m_audioDetect || m_trafficFromUDP) if (m_audioDetect || m_trafficFromUDP)
return; return;
if (control.getLCO() == LCO::GROUP) {
if ((duid == DUID::TDU) || (duid == DUID::TDULC)) {
// ignore TDU's that are grant demands // ignore TDU's that are grant demands
if (grantDemand) { if (grantDemand) {
m_network->resetP25(); m_network->resetP25();

Loading…
Cancel
Save

Powered by TurnKey Linux.