mirror of
https://github.com/g4klx/MMDVMHost
synced 2025-12-22 08:05:49 +08:00
Fix Viterbi decoder for punctured codes
This commit is contained in:
10
NXDNSACCH.cpp
Normal file → Executable file
10
NXDNSACCH.cpp
Normal file → Executable file
@@ -86,14 +86,14 @@ bool CNXDNSACCH::decode(const unsigned char* data)
|
||||
unsigned int index = 0U;
|
||||
for (unsigned int i = 0U; i < NXDN_SACCH_LENGTH_BITS; i++) {
|
||||
if (n == PUNCTURE_LIST[index]) {
|
||||
::strcat(text, "1, ");
|
||||
temp2[n++] = 1U;
|
||||
::strcat(text, "X, ");
|
||||
temp2[n++] = 99U;
|
||||
index++;
|
||||
}
|
||||
|
||||
bool b = READ_BIT1(temp1, i);
|
||||
temp2[n++] = b ? 2U : 0U;
|
||||
::strcat(text, b ? "2, " : "0, ");
|
||||
temp2[n++] = b ? 1U : 0U;
|
||||
::strcat(text, b ? "1, " : "0, ");
|
||||
}
|
||||
|
||||
LogMessage(text);
|
||||
@@ -109,7 +109,7 @@ bool CNXDNSACCH::decode(const unsigned char* data)
|
||||
conv.decode(s0, s1);
|
||||
}
|
||||
|
||||
conv.chainback(m_data, 36U);
|
||||
conv.chainback(m_data, 32U);
|
||||
|
||||
CUtils::dump("NXDN, SACCH decoded", m_data, 5U);
|
||||
|
||||
|
||||
Reference in New Issue
Block a user