mirror of
https://github.com/g4klx/MMDVMHost
synced 2025-12-21 15:09:23 +08:00
Merged branch master into develop
This commit is contained in:
6
Conf.cpp
6
Conf.cpp
@@ -118,12 +118,12 @@ m_fusionEnabled(true),
|
|||||||
m_fusionRemoteGateway(false),
|
m_fusionRemoteGateway(false),
|
||||||
m_p25Enabled(true),
|
m_p25Enabled(true),
|
||||||
m_p25NAC(0x293U),
|
m_p25NAC(0x293U),
|
||||||
m_dstarNetworkEnabled(true),
|
m_dstarNetworkEnabled(false),
|
||||||
m_dstarGatewayAddress(),
|
m_dstarGatewayAddress(),
|
||||||
m_dstarGatewayPort(0U),
|
m_dstarGatewayPort(0U),
|
||||||
m_dstarLocalPort(0U),
|
m_dstarLocalPort(0U),
|
||||||
m_dstarNetworkDebug(false),
|
m_dstarNetworkDebug(false),
|
||||||
m_dmrNetworkEnabled(true),
|
m_dmrNetworkEnabled(false),
|
||||||
m_dmrNetworkAddress(),
|
m_dmrNetworkAddress(),
|
||||||
m_dmrNetworkPort(0U),
|
m_dmrNetworkPort(0U),
|
||||||
m_dmrNetworkLocal(0U),
|
m_dmrNetworkLocal(0U),
|
||||||
@@ -139,7 +139,7 @@ m_fusionNetworkMyPort(0U),
|
|||||||
m_fusionNetworkGwyAddress(),
|
m_fusionNetworkGwyAddress(),
|
||||||
m_fusionNetworkGwyPort(0U),
|
m_fusionNetworkGwyPort(0U),
|
||||||
m_fusionNetworkDebug(false),
|
m_fusionNetworkDebug(false),
|
||||||
m_p25NetworkEnabled(true),
|
m_p25NetworkEnabled(false),
|
||||||
m_p25GatewayAddress(),
|
m_p25GatewayAddress(),
|
||||||
m_p25GatewayPort(0U),
|
m_p25GatewayPort(0U),
|
||||||
m_p25LocalPort(0U),
|
m_p25LocalPort(0U),
|
||||||
|
|||||||
@@ -337,8 +337,13 @@ void CP25Control::writeNetwork()
|
|||||||
break;
|
break;
|
||||||
case 0x6AU:
|
case 0x6AU:
|
||||||
::memcpy(m_netLDU1 + 200U, data, 16U);
|
::memcpy(m_netLDU1 + 200U, data, 16U);
|
||||||
if (m_netState != RS_NET_IDLE)
|
if (m_netState != RS_NET_IDLE) {
|
||||||
|
// Check for an unflushed LDU2
|
||||||
|
void* p = ::memchr(m_netLDU2, 0x02U, 9U * 25U);
|
||||||
|
if (p != NULL)
|
||||||
|
createNetLDU2();
|
||||||
createNetLDU1();
|
createNetLDU1();
|
||||||
|
}
|
||||||
break;
|
break;
|
||||||
case 0x6BU:
|
case 0x6BU:
|
||||||
::memcpy(m_netLDU2 + 0U, data, 22U);
|
::memcpy(m_netLDU2 + 0U, data, 22U);
|
||||||
@@ -366,9 +371,14 @@ void CP25Control::writeNetwork()
|
|||||||
break;
|
break;
|
||||||
case 0x73U:
|
case 0x73U:
|
||||||
::memcpy(m_netLDU2 + 200U, data, 16U);
|
::memcpy(m_netLDU2 + 200U, data, 16U);
|
||||||
if (m_netState != RS_NET_IDLE) {
|
if (m_netState == RS_NET_IDLE) {
|
||||||
createNetHeader();
|
createNetHeader();
|
||||||
createNetLDU1();
|
createNetLDU1();
|
||||||
|
} else {
|
||||||
|
// Check for an unflushed LDU1
|
||||||
|
void* p = ::memchr(m_netLDU1, 0x02U, 9U * 25U);
|
||||||
|
if (p != NULL)
|
||||||
|
createNetLDU1();
|
||||||
}
|
}
|
||||||
createNetLDU2();
|
createNetLDU2();
|
||||||
break;
|
break;
|
||||||
@@ -641,11 +651,6 @@ void CP25Control::createNetHeader()
|
|||||||
|
|
||||||
void CP25Control::createNetLDU1()
|
void CP25Control::createNetLDU1()
|
||||||
{
|
{
|
||||||
// Check for an unflushed LDU2
|
|
||||||
void* p = ::memchr(m_netLDU2, 0x02U, 9U * 25U);
|
|
||||||
if (p != NULL)
|
|
||||||
createNetLDU2();
|
|
||||||
|
|
||||||
insertMissingAudio(m_netLDU1);
|
insertMissingAudio(m_netLDU1);
|
||||||
|
|
||||||
unsigned char buffer[P25_LDU_FRAME_LENGTH_BYTES + 2U];
|
unsigned char buffer[P25_LDU_FRAME_LENGTH_BYTES + 2U];
|
||||||
@@ -695,11 +700,6 @@ void CP25Control::createNetLDU1()
|
|||||||
|
|
||||||
void CP25Control::createNetLDU2()
|
void CP25Control::createNetLDU2()
|
||||||
{
|
{
|
||||||
// Check for an unflushed LDU1
|
|
||||||
void* p = ::memchr(m_netLDU1, 0x02U, 9U * 25U);
|
|
||||||
if (p != NULL)
|
|
||||||
createNetLDU1();
|
|
||||||
|
|
||||||
insertMissingAudio(m_netLDU2);
|
insertMissingAudio(m_netLDU2);
|
||||||
|
|
||||||
unsigned char buffer[P25_LDU_FRAME_LENGTH_BYTES + 2U];
|
unsigned char buffer[P25_LDU_FRAME_LENGTH_BYTES + 2U];
|
||||||
|
|||||||
@@ -97,10 +97,8 @@ bool CP25Data::decodeLDU1(const unsigned char* data)
|
|||||||
decodeLDUHamming(raw, rs + 15U);
|
decodeLDUHamming(raw, rs + 15U);
|
||||||
|
|
||||||
bool ret = m_rs241213.decode(rs);
|
bool ret = m_rs241213.decode(rs);
|
||||||
if (!ret) {
|
if (!ret)
|
||||||
LogDebug("P25, uncorrectable errors in the RS(24,12,13) code");
|
|
||||||
return false;
|
return false;
|
||||||
}
|
|
||||||
|
|
||||||
switch (m_lcf) {
|
switch (m_lcf) {
|
||||||
case P25_LCF_GROUP:
|
case P25_LCF_GROUP:
|
||||||
|
|||||||
Reference in New Issue
Block a user