mirror of
https://github.com/f4exb/sdrangel.git
synced 2024-11-23 16:38:37 -05:00
DSD demod: enhanced DSDplus debugging output
This commit is contained in:
parent
90a5b75e91
commit
ecd91fce79
@ -212,7 +212,7 @@ void DSDDMRData::preProcess()
|
|||||||
|
|
||||||
if (m_dsdDecoder->m_opts.errorbars == 1)
|
if (m_dsdDecoder->m_opts.errorbars == 1)
|
||||||
{
|
{
|
||||||
fprintf(stderr, "%s %s ", m_dsdDecoder->m_state.slot0light, m_dsdDecoder->m_state.slot1light);
|
fprintf(stderr, "%s %s\n", m_dsdDecoder->m_state.slot0light, m_dsdDecoder->m_state.slot1light);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -178,7 +178,7 @@ void DSDDMRVoice::postProcess(int symbolIndex)
|
|||||||
|
|
||||||
if (symbolIndex == 54+12+54-1) // very last symbol -> go back to search sync state
|
if (symbolIndex == 54+12+54-1) // very last symbol -> go back to search sync state
|
||||||
{
|
{
|
||||||
fprintf(stderr, "\nDSDDMRVoice::postProcess: end of frame\n");
|
fprintf(stderr, "DSDDMRVoice::postProcess: end of frame\n");
|
||||||
m_dsdDecoder->m_fsmState = DSDDecoder::DSDLookForSync;
|
m_dsdDecoder->m_fsmState = DSDDecoder::DSDLookForSync;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -388,8 +388,19 @@ void DSDDMRVoice::processSlot5(int symbolIndex) // Slot5 is a 18 symbol slot
|
|||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
|
if (m_dsdDecoder->m_opts.errorbars == 1) {
|
||||||
|
fprintf(stderr, "\nMBE: ");
|
||||||
|
}
|
||||||
|
|
||||||
m_dsdDecoder->m_mbeDecoder.processFrame(0, ambe_fr, 0);
|
m_dsdDecoder->m_mbeDecoder.processFrame(0, ambe_fr, 0);
|
||||||
|
if (m_dsdDecoder->m_opts.errorbars == 1) {
|
||||||
|
fprintf(stderr, ".");
|
||||||
|
}
|
||||||
|
|
||||||
m_dsdDecoder->m_mbeDecoder.processFrame(0, ambe_fr2, 0);
|
m_dsdDecoder->m_mbeDecoder.processFrame(0, ambe_fr2, 0);
|
||||||
|
if (m_dsdDecoder->m_opts.errorbars == 1) {
|
||||||
|
fprintf(stderr, ".");
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -425,6 +436,10 @@ void DSDDMRVoice::processSlot6(int symbolIndex) // Slot6 is a 36 symbol slot
|
|||||||
if (mutecurrentslot == 0)
|
if (mutecurrentslot == 0)
|
||||||
{
|
{
|
||||||
m_dsdDecoder->m_mbeDecoder.processFrame(0, ambe_fr3, 0);
|
m_dsdDecoder->m_mbeDecoder.processFrame(0, ambe_fr3, 0);
|
||||||
|
|
||||||
|
if (m_dsdDecoder->m_opts.errorbars == 1) {
|
||||||
|
fprintf(stderr, "\n");
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -467,7 +482,6 @@ void DSDDMRVoice::processSlot9(int symbolIndex) // Slot9 is a 24 symbol slot
|
|||||||
|
|
||||||
sync[24] = 0;
|
sync[24] = 0;
|
||||||
syncdata[24] = 0;
|
syncdata[24] = 0;
|
||||||
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -20,23 +20,25 @@
|
|||||||
* Map is as follows in number of bytes
|
* Map is as follows in number of bytes
|
||||||
*
|
*
|
||||||
* 0 ... 5
|
* 0 ... 5
|
||||||
* A 0 54 ... 54 <- this one is always skipped
|
* A 0 54 ... 54 <- AMBE DMR slot 0 frame 2 1/2 + frame 3: skipped
|
||||||
* 1 12 12 <- cache data
|
* 1 12 12 <- CACH data
|
||||||
* 2 36 36 <- AMBE slot
|
* 2 36 36 <- AMBE DMR slot 1 frame 1
|
||||||
* 3 18 18 <- AMBE slot
|
* 3 18 18 <- AMBE DMR slot 1 frame 2 1/2
|
||||||
* 4 24 24 <- sync data
|
* 4 24 24 <- SYNC data
|
||||||
* B 5 18 18 <- AMBE slot
|
* B 5 18 18 <- AMBE DMR slot 1 frame 2 1/2
|
||||||
* 6 36 36 <- AMBE slot
|
* 6 36 36 <- AMBE DMR slot 1 frame 3
|
||||||
* 7 12 12 <- cache data
|
* 7 12 12 <- CACH data
|
||||||
* 8 54 54 <- this one is always skipped
|
* 8 54 54 <- AMBE DMR slot 0 frame 1 + frame 2 1/2: skipped
|
||||||
* 9 24 24 <- sync data
|
* 9 24 24 <- SYNC data
|
||||||
*
|
*
|
||||||
* The A gtoup of the first major block is already in memory and is processed
|
* The A group of the first major block is already in memory and is processed
|
||||||
* at initialization time
|
* at initialization time
|
||||||
* Then dibits for each slot are stored in cache and processed right after the
|
* Then dibits for each slot are stored in cache and processed right after the
|
||||||
* last dibit for the slot has been added.
|
* last dibit for the slot has been added.
|
||||||
* For skipped slots the dibits are simply thrown away
|
* For skipped slots the dibits are simply thrown away
|
||||||
*
|
*
|
||||||
|
* The DMR slot 0 is ignored. Only the DMR slot 1 is processed (listening to one conversation at a time)
|
||||||
|
*
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#ifndef DSDPLUS_DMR_VOICE_H_
|
#ifndef DSDPLUS_DMR_VOICE_H_
|
||||||
|
@ -628,7 +628,7 @@ void DSDDecoder::printFrameSync(const char *frametype, int offset, char *modulat
|
|||||||
{
|
{
|
||||||
if (m_opts.verbose > 0)
|
if (m_opts.verbose > 0)
|
||||||
{
|
{
|
||||||
fprintf(stderr, "\nSync: %s ", frametype);
|
fprintf(stderr, "Sync: %s ", frametype);
|
||||||
}
|
}
|
||||||
if (m_opts.verbose > 2)
|
if (m_opts.verbose > 2)
|
||||||
{
|
{
|
||||||
@ -1511,7 +1511,7 @@ int DSDDecoder::getFrameSync()
|
|||||||
if ((m_opts.errorbars == 1) && (m_opts.verbose > 1)
|
if ((m_opts.errorbars == 1) && (m_opts.verbose > 1)
|
||||||
&& (m_state.carrier == 1))
|
&& (m_state.carrier == 1))
|
||||||
{
|
{
|
||||||
printf("\nSync: no sync\n");
|
printf("Sync: no sync\n");
|
||||||
}
|
}
|
||||||
|
|
||||||
noCarrier();
|
noCarrier();
|
||||||
|
Loading…
Reference in New Issue
Block a user