P25p2 -- Slot ON/OFF During Realtime Tuning;
This commit is contained in:
parent
d073e7cae8
commit
84df9bbca7
|
|
@ -130,6 +130,9 @@ getFrameSync (dsd_opts * opts, dsd_state * state)
|
|||
{
|
||||
state->samplesPerSymbol = 10;
|
||||
state->symbolCenter = 4;
|
||||
//re-enable both slots
|
||||
opts->slot1_on = 1;
|
||||
opts->slot2_on = 1;
|
||||
}
|
||||
|
||||
//start going through the lcn/frequencies CC/signal hunting
|
||||
|
|
|
|||
|
|
@ -216,6 +216,9 @@ if(opts->frame_m17 == 1) //&& opts->audio_in_type == 5
|
|||
{
|
||||
state->samplesPerSymbol = 10;
|
||||
state->symbolCenter = 4;
|
||||
//re-enable both slots
|
||||
opts->slot1_on = 1;
|
||||
opts->slot2_on = 1;
|
||||
}
|
||||
}
|
||||
//zero out vc frequencies?
|
||||
|
|
|
|||
|
|
@ -356,6 +356,20 @@ void processMPDU(dsd_opts * opts, dsd_state * state)
|
|||
{
|
||||
state->samplesPerSymbol = 8;
|
||||
state->symbolCenter = 3;
|
||||
|
||||
//shim fix to stutter/lag by only enabling slot on the target/channel we tuned to
|
||||
//this will only occur in realtime tuning, not not required .bin or .wav playback
|
||||
if (channelt & 1) //VCH1
|
||||
{
|
||||
opts->slot1_on = 0;
|
||||
opts->slot2_on = 1;
|
||||
}
|
||||
else //VCH0
|
||||
{
|
||||
opts->slot1_on = 1;
|
||||
opts->slot2_on = 0;
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
//rigctl
|
||||
|
|
@ -459,6 +473,20 @@ void processMPDU(dsd_opts * opts, dsd_state * state)
|
|||
{
|
||||
state->samplesPerSymbol = 8;
|
||||
state->symbolCenter = 3;
|
||||
|
||||
//shim fix to stutter/lag by only enabling slot on the target/channel we tuned to
|
||||
//this will only occur in realtime tuning, not not required .bin or .wav playback
|
||||
if (channelt & 1) //VCH1
|
||||
{
|
||||
opts->slot1_on = 0;
|
||||
opts->slot2_on = 1;
|
||||
}
|
||||
else //VCH0
|
||||
{
|
||||
opts->slot1_on = 1;
|
||||
opts->slot2_on = 0;
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
//rigctl
|
||||
|
|
@ -569,6 +597,20 @@ void processMPDU(dsd_opts * opts, dsd_state * state)
|
|||
{
|
||||
state->samplesPerSymbol = 8;
|
||||
state->symbolCenter = 3;
|
||||
|
||||
//shim fix to stutter/lag by only enabling slot on the target/channel we tuned to
|
||||
//this will only occur in realtime tuning, not not required .bin or .wav playback
|
||||
if (channelt & 1) //VCH1
|
||||
{
|
||||
opts->slot1_on = 0;
|
||||
opts->slot2_on = 1;
|
||||
}
|
||||
else //VCH0
|
||||
{
|
||||
opts->slot1_on = 1;
|
||||
opts->slot2_on = 0;
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
//rigctl
|
||||
|
|
|
|||
|
|
@ -238,6 +238,20 @@ void processTSBK(dsd_opts * opts, dsd_state * state)
|
|||
{
|
||||
state->samplesPerSymbol = 8;
|
||||
state->symbolCenter = 3;
|
||||
|
||||
//shim fix to stutter/lag by only enabling slot on the target/channel we tuned to
|
||||
//this will only occur in realtime tuning, not not required .bin or .wav playback
|
||||
if (channel & 1) //VCH1
|
||||
{
|
||||
opts->slot1_on = 0;
|
||||
opts->slot2_on = 1;
|
||||
}
|
||||
else //VCH0
|
||||
{
|
||||
opts->slot1_on = 1;
|
||||
opts->slot2_on = 0;
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
//rigctl
|
||||
|
|
|
|||
127
src/p25p2_vpdu.c
127
src/p25p2_vpdu.c
|
|
@ -139,6 +139,20 @@ void process_MAC_VPDU(dsd_opts * opts, dsd_state * state, int type, unsigned lon
|
|||
{
|
||||
state->samplesPerSymbol = 8;
|
||||
state->symbolCenter = 3;
|
||||
|
||||
//shim fix to stutter/lag by only enabling slot on the target/channel we tuned to
|
||||
//this will only occur in realtime tuning, not not required .bin or .wav playback
|
||||
if (channel & 1) //VCH1
|
||||
{
|
||||
opts->slot1_on = 0;
|
||||
opts->slot2_on = 1;
|
||||
}
|
||||
else //VCH0
|
||||
{
|
||||
opts->slot1_on = 1;
|
||||
opts->slot2_on = 0;
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
|
|
@ -225,6 +239,20 @@ void process_MAC_VPDU(dsd_opts * opts, dsd_state * state, int type, unsigned lon
|
|||
{
|
||||
state->samplesPerSymbol = 8;
|
||||
state->symbolCenter = 3;
|
||||
|
||||
//shim fix to stutter/lag by only enabling slot on the target/channel we tuned to
|
||||
//this will only occur in realtime tuning, not not required .bin or .wav playback
|
||||
if (channel & 1) //VCH1
|
||||
{
|
||||
opts->slot1_on = 0;
|
||||
opts->slot2_on = 1;
|
||||
}
|
||||
else //VCH0
|
||||
{
|
||||
opts->slot1_on = 1;
|
||||
opts->slot2_on = 0;
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
|
|
@ -342,6 +370,20 @@ void process_MAC_VPDU(dsd_opts * opts, dsd_state * state, int type, unsigned lon
|
|||
{
|
||||
state->samplesPerSymbol = 8;
|
||||
state->symbolCenter = 3;
|
||||
|
||||
//shim fix to stutter/lag by only enabling slot on the target/channel we tuned to
|
||||
//this will only occur in realtime tuning, not not required .bin or .wav playback
|
||||
if (tunable_chan & 1) //VCH1
|
||||
{
|
||||
opts->slot1_on = 0;
|
||||
opts->slot2_on = 1;
|
||||
}
|
||||
else //VCH0
|
||||
{
|
||||
opts->slot1_on = 1;
|
||||
opts->slot2_on = 0;
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
|
|
@ -453,6 +495,20 @@ void process_MAC_VPDU(dsd_opts * opts, dsd_state * state, int type, unsigned lon
|
|||
{
|
||||
state->samplesPerSymbol = 8;
|
||||
state->symbolCenter = 3;
|
||||
|
||||
//shim fix to stutter/lag by only enabling slot on the target/channel we tuned to
|
||||
//this will only occur in realtime tuning, not not required .bin or .wav playback
|
||||
if (channel & 1) //VCH1
|
||||
{
|
||||
opts->slot1_on = 0;
|
||||
opts->slot2_on = 1;
|
||||
}
|
||||
else //VCH0
|
||||
{
|
||||
opts->slot1_on = 1;
|
||||
opts->slot2_on = 0;
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
|
|
@ -546,7 +602,21 @@ void process_MAC_VPDU(dsd_opts * opts, dsd_state * state, int type, unsigned lon
|
|||
{
|
||||
state->samplesPerSymbol = 8;
|
||||
state->symbolCenter = 3;
|
||||
|
||||
//shim fix to stutter/lag by only enabling slot on the target/channel we tuned to
|
||||
//this will only occur in realtime tuning, not not required .bin or .wav playback
|
||||
if (channel & 1) //VCH1
|
||||
{
|
||||
opts->slot1_on = 0;
|
||||
opts->slot2_on = 1;
|
||||
}
|
||||
else //VCH0
|
||||
{
|
||||
opts->slot1_on = 1;
|
||||
opts->slot2_on = 0;
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
//rigctl
|
||||
|
|
@ -702,6 +772,20 @@ void process_MAC_VPDU(dsd_opts * opts, dsd_state * state, int type, unsigned lon
|
|||
{
|
||||
state->samplesPerSymbol = 8;
|
||||
state->symbolCenter = 3;
|
||||
|
||||
//shim fix to stutter/lag by only enabling slot on the target/channel we tuned to
|
||||
//this will only occur in realtime tuning, not not required .bin or .wav playback
|
||||
if (tunable_chan & 1) //VCH1
|
||||
{
|
||||
opts->slot1_on = 0;
|
||||
opts->slot2_on = 1;
|
||||
}
|
||||
else //VCH0
|
||||
{
|
||||
opts->slot1_on = 1;
|
||||
opts->slot2_on = 0;
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
|
|
@ -879,6 +963,20 @@ void process_MAC_VPDU(dsd_opts * opts, dsd_state * state, int type, unsigned lon
|
|||
{
|
||||
state->samplesPerSymbol = 8;
|
||||
state->symbolCenter = 3;
|
||||
|
||||
//shim fix to stutter/lag by only enabling slot on the target/channel we tuned to
|
||||
//this will only occur in realtime tuning, not not required .bin or .wav playback
|
||||
if (tunable_chan & 1) //VCH1
|
||||
{
|
||||
opts->slot1_on = 0;
|
||||
opts->slot2_on = 1;
|
||||
}
|
||||
else //VCH0
|
||||
{
|
||||
opts->slot1_on = 1;
|
||||
opts->slot2_on = 0;
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
|
|
@ -1001,6 +1099,20 @@ void process_MAC_VPDU(dsd_opts * opts, dsd_state * state, int type, unsigned lon
|
|||
{
|
||||
state->samplesPerSymbol = 8;
|
||||
state->symbolCenter = 3;
|
||||
|
||||
//shim fix to stutter/lag by only enabling slot on the target/channel we tuned to
|
||||
//this will only occur in realtime tuning, not not required .bin or .wav playback
|
||||
if (tunable_chan & 1) //VCH1
|
||||
{
|
||||
opts->slot1_on = 0;
|
||||
opts->slot2_on = 1;
|
||||
}
|
||||
else //VCH0
|
||||
{
|
||||
opts->slot1_on = 1;
|
||||
opts->slot2_on = 0;
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
|
|
@ -1116,7 +1228,22 @@ void process_MAC_VPDU(dsd_opts * opts, dsd_state * state, int type, unsigned lon
|
|||
{
|
||||
state->samplesPerSymbol = 8;
|
||||
state->symbolCenter = 3;
|
||||
|
||||
//shim fix to stutter/lag by only enabling slot on the target/channel we tuned to
|
||||
//this will only occur in realtime tuning, not not required .bin or .wav playback
|
||||
if (channelt & 1) //VCH1
|
||||
{
|
||||
opts->slot1_on = 0;
|
||||
opts->slot2_on = 1;
|
||||
}
|
||||
else //VCH0
|
||||
{
|
||||
opts->slot1_on = 1;
|
||||
opts->slot2_on = 0;
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
//rigctl
|
||||
|
|
|
|||
|
|
@ -279,6 +279,9 @@ void process_SACCH_MAC_PDU (dsd_opts * opts, dsd_state * state, int payload[180]
|
|||
{
|
||||
state->samplesPerSymbol = 10;
|
||||
state->symbolCenter = 4;
|
||||
//re-enable both slots
|
||||
opts->slot1_on = 1;
|
||||
opts->slot2_on = 1;
|
||||
}
|
||||
|
||||
//rigctl
|
||||
|
|
@ -614,6 +617,9 @@ void process_FACCH_MAC_PDU (dsd_opts * opts, dsd_state * state, int payload[156]
|
|||
{
|
||||
state->samplesPerSymbol = 10;
|
||||
state->symbolCenter = 4;
|
||||
//re-enable both slots
|
||||
opts->slot1_on = 1;
|
||||
opts->slot2_on = 1;
|
||||
}
|
||||
|
||||
//rigctl
|
||||
|
|
|
|||
Loading…
Reference in New Issue