Add YSF to default decoding class; #143

This commit is contained in:
lwvmobile 2023-07-01 18:44:14 -04:00
parent b5d24f9c00
commit 3fc983f273
4 changed files with 16 additions and 15 deletions

View File

@ -3,7 +3,7 @@
`dsd-fme` is all you need to run for pulse input, pulse output, and auto detect for DMR BS/MS, and P25. To use other decoding methods which cannot be auto detected, please use the following command line switches. Make sure to route audio into and out of DSD-FME using pavucontrol and virtual sinks as needed.
```
-ft XDMA decoder class (P25 1 and 2, and DMR Stereo)
-ft XDMA decoder class (P25p1 and p2, YSF, and DMR Stereo)
-fs DMR Stereo, also may need to use -xr if inverted DMR
-fa Legacy Auto (not recommended)
-fi NXDN48
@ -14,6 +14,7 @@
-f1 P25P1
-f2 P25P2 (may need to specify wacn/sys/nac manually)
-fx X2-TDMA
-fy YSF
```
## Conventional Frequency "Fast Scanner"

View File

@ -232,7 +232,7 @@ getFrameSync (dsd_opts * opts, dsd_state * state)
{
t_max = 12; //based on Frame_Sync_2 pattern
}
else if (opts->frame_ysf == 1)
else if (state->lastsynctype == 30 || state->lastsynctype == 31 )
{
t_max = 20; //20 on YSF
}

View File

@ -542,7 +542,7 @@ initOpts (dsd_opts * opts)
opts->frame_dmr = 1;
opts->frame_dpmr = 0;
opts->frame_provoice = 0;
opts->frame_ysf = 0; //forgot to init this, and Cygwin treated as it was turned on.
opts->frame_ysf = 1;
opts->mod_c4fm = 1;
opts->mod_qpsk = 0;
opts->mod_gfsk = 0;
@ -1132,11 +1132,11 @@ usage ()
printf (" -f2 Decode only P25 Phase 2 (6000 sps) **\n");
printf (" -fd Decode only D-STAR\n");
printf (" -fx Decode only X2-TDMA\n");
printf (" -fy Decode only YSF\n");
printf (" -fi Decode only NXDN48* (6.25 kHz) / IDAS*\n");
printf (" -fn Decode only NXDN96* (12.5 kHz)\n");
printf (" -fp Decode only EDACS/ProVoice*\n");
printf (" -fm Decode only dPMR*\n");
printf (" -fy Decode only YSF*\n");
printf (" -l Disable DMR, dPMR, and NXDN input filtering\n");
printf (" -u <num> Unvoiced speech quality (default=3)\n");
printf (" -xx Expect non-inverted X2-TDMA signal\n");
@ -1158,8 +1158,8 @@ usage ()
printf (" (default=36)\n");
printf (" -M <num> Min/Max buffer size for QPSK decision point tracking\n");
printf (" (default=15)\n");
printf (" -ma Auto-select modulation optimizations (default)\n");
printf (" -mc Use only C4FM modulation optimizations\n");
printf (" -ma Auto-select modulation optimizations\n");
printf (" -mc Use only C4FM modulation optimizations (default)\n");
printf (" -mg Use only GFSK modulation optimizations\n");
printf (" -mq Use only QPSK modulation optimizations\n");
printf (" -m2 Use P25p2 6000 sps QPSK modulation optimizations\n");
@ -1784,11 +1784,11 @@ main (int argc, char **argv)
opts.frame_dmr = 1;
opts.frame_dpmr = 0;
opts.frame_provoice = 0;
opts.frame_ysf = 0;
opts.frame_ysf = 1;
opts.pulse_digi_rate_out = 48000; // /dev/dsp does need this set to 48000 to properly process the upsampling
opts.pulse_digi_out_channels = 1;
opts.dmr_stereo = 1; //switching in 'stereo' for 'mono'
opts.dmr_mono = 0;
opts.dmr_stereo = 0; //switching in 'stereo' for 'mono'
opts.dmr_mono = 1;
state.dmr_stereo = 0;
//opts.setmod_bw = 7000;
sprintf (opts.output_name, "Legacy Auto");
@ -2010,7 +2010,7 @@ main (int argc, char **argv)
opts.frame_dmr = 1;
opts.frame_dpmr = 0;
opts.frame_provoice = 0;
opts.frame_ysf = 0;
opts.frame_ysf = 1;
opts.mod_c4fm = 1;
opts.mod_qpsk = 0;
opts.mod_gfsk = 0;

View File

@ -539,7 +539,7 @@ void ncursesMenu (dsd_opts * opts, dsd_state * state)
info_win = newwin(6, WIDTH+18, starty, startx+20);
box (info_win, 0, 0);
mvwprintw(info_win, 2, 2, " Legacy Auto can only detect the following:");
mvwprintw(info_win, 3, 2, " P25-P1, D-STAR, DMR Mono, and X2-TDMA");
mvwprintw(info_win, 3, 2, " P25p1, D-STAR, DMR Mono, YSF, and X2-TDMA");
wrefresh(info_win);
}
@ -548,8 +548,8 @@ void ncursesMenu (dsd_opts * opts, dsd_state * state)
info_win = newwin(7, WIDTH+18, starty, startx+20);
box (info_win, 0, 0);
mvwprintw(info_win, 2, 2, " XDMA Decoding Class Supports the following:");
mvwprintw(info_win, 3, 2, " P25-P1, P25-P2, and DMR Stereo BS/MS");
mvwprintw(info_win, 4, 2, " --C4FM / FSK4 only, and OP25 P2 Capture Bins");
mvwprintw(info_win, 3, 2, " P25p1, P25p2, YSF, and DMR BS/MS");
mvwprintw(info_win, 4, 2, " C4FM, FSK4, QPSK only (no H8D-QPSK)");
wrefresh(info_win);
}
@ -1245,7 +1245,7 @@ void ncursesMenu (dsd_opts * opts, dsd_state * state)
opts->frame_dmr = 1;
opts->frame_dpmr = 0;
opts->frame_provoice = 0;
opts->frame_ysf = 0;
opts->frame_ysf = 1;
opts->mod_c4fm = 1;
opts->mod_qpsk = 0;
opts->mod_gfsk = 0;
@ -1378,7 +1378,7 @@ void ncursesMenu (dsd_opts * opts, dsd_state * state)
opts->frame_nxdn96 = 0;
opts->frame_dpmr = 0;
opts->frame_provoice = 0;
opts->frame_ysf = 0;
opts->frame_ysf = 1;
opts->mod_c4fm = 1;
opts->mod_qpsk = 0;
opts->mod_gfsk = 0;