Skip to content

Commit b1024fb

Browse files
committed
version 1.4.1
1 parent 59f8d38 commit b1024fb

24 files changed

+815
-392
lines changed

CHANGELOG

Lines changed: 42 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,44 @@
1+
1.4.1
2+
New features:
3+
Several new sync types for existing formats now recognized:
4+
Decodes voice from NXDN 4800 (6.25kHz) signals
5+
Decodes voice from NXDN 9600 (12.5kHz) repeater output
6+
Decodes voice from DMR/MotoTRBO simplex/repeater input
7+
Decodes voice from X2-TDMA simplex/repeater input
8+
9+
Fixed bugs:
10+
renamed "input:" to "inlvl:" to reduce confusion. This value
11+
indicates the audio input level, NOT the "decode success
12+
rate". Voice decode errors are indicated by the errorbars "=".
13+
14+
1.4
15+
New features:
16+
Decodes voice from NXDN 9600 (12.5 kHz) simplex/repeater input
17+
NXDN96 frames enabled by default
18+
Improved resistance to NXDN96 sync false positives
19+
20+
Fixed bugs:
21+
.wav file header updated after playing .imb/.amb data files
22+
.imb/.amb files now have correct tgid in filename
23+
24+
1.3.1 New features:
25+
Support for ProVoice EA sync
26+
CTRL-C is now caught so .wav files can be properly closed
27+
DSD now shows mbelib version as well as it's own version
28+
-R resume option now triggers on any TSDU so control channels can be left
29+
in conventional scanlists.
30+
Auto output gain now has 0.5 second hold time for faster error burst recovery
31+
(was 1.5 seconds)
32+
Audio output upsampling function simplified and improved
33+
34+
Fixed bugs:
35+
DSD_Author.pgp now has correct public key (was copy of mbelib_Author key)
36+
TGID and SRC are now cleared after TDULC or TDU.
37+
Voice error counter is now reset in noCarrier()
38+
TGID and SRC were not displaying for X2-TDMA frames
39+
Fixed buffer issue in resumeScan()
40+
Fixed error in .wav file headers preventing playback on some apps
41+
142
1.3 New features:
243
Decodes voice from ProVoice signals (requires -fp option)
344
algid and kid are now shown in hex notation
@@ -17,7 +58,7 @@
1758

1859
Fixed bugs:
1960
nac was showing wrong ID
20-
p25 metadata (lcinfo, mfid, lfcormat, mi, keyid, algid, lsd) are now
61+
P25 metadata (lcinfo, mfid, lfcormat, mi, keyid, algid, lsd) are now
2162
printed out in the correct bit order (MSB -> LSB), was reversed.
2263
fixed serveral bugs in dsd_upsample.c, with improved quality
2364

DSD_Author.pgp

Lines changed: 26 additions & 26 deletions
Original file line numberDiff line numberDiff line change
@@ -1,30 +1,30 @@
11
-----BEGIN PGP PUBLIC KEY BLOCK-----
22
Version: GnuPG v1.4.10
33

4-
mQENBEufusYBCADN1SNkRkQzdLM02MCjen8KQmfuA38MrQIV0dZLpPJcn1+hsvZZ
5-
KWvpUiWCNw1ClGRsJAT5cjonndi1PV7tpzQz+CyMqSP5OwR40eTJBoZhl74hdmU8
6-
QvcKkJ32khSsOXMo60NHk5iIMDELzOGqq57NHhbunj6NtYog2mR5+WT37JLCvF/q
7-
dvYl2KkRwEHD76/b/O1CyheiiqNMGBb13zPN0qO/PRlENSgViLcDh9qVj4ETNNS6
8-
zMlP4D4pa07iED4Ua31wiXI04ReznnmvMqzQb8uFbg7d98F3bZpsbNURbmsFHMhj
9-
c9qw65nzaMa3OHfZ3Qwl4XRlNqEzZrclIZADABEBAAG0DW1iZWxpYiBBdXRob3KJ
10-
ATgEEwECACIFAkufusYCGwMGCwkIBwMCBhUIAgkKCwQWAgMBAh4BAheAAAoJEE+Y
11-
6GPqXv4sI/4H/RsumInT5GtDdBTgxt3lERqc5GF8tI5CAQX9DUMMkKxQ306Fgb4M
12-
ISYdepgL6BlbtSyMdKpKsDLScNA6YXER4gMU1nhhyBulqj41kAfsVbG8hiTBy5Ri
13-
FTo36HrC//Zj1MlaTCB8Rl6B6IftAHIb1U+Gda3WnLDe+R5Pym/76TqeYx23PnJl
14-
V+qfrkjbNyOb2bttyko2iccm9DSq/I1OF0Ufz3P60ssUwHW/b2S6WOXRxiZIq0sz
15-
8pAweUFCxIMWo+XYlSpRtwpebfx+JoHJKdW1cSCgY9jwVsOZO1zxc8P+jr3ByiIR
16-
ZPd0PfBt/AHuC6Hmw9nC12e49+4qsHkj50S5AQ0ES5+6xgEIALf60WjqHm552FIX
17-
KqmG0TIrXpCsYoTWzDdO5j0Ro6fmg9U48BqDH5aS4YRvuyPE7q6DGYEnXF5EIPtU
18-
FhUk4FMmez5eMg91UW4Qjqx8M3reoBROYocM5Nfbc9w7St8+3oRS6rUBIh/B6o4O
19-
kEjkoW3R7O3uFpC53Oi9IVhx/joWxhi430RrUTig5CQzuPFTAHd3xJVE6Pv44nsY
20-
/PsOhBLu2Z3kRkvjcGbsGDlAl2bDEobzQdsqXDD8gJkF5W4IeBKvRC54SE0FSm57
21-
G1gadhZ7vT4DWQZvYYKXR+AE7FTcopoAFHdapYokOGLHCguabyeZ5q7+s7J4nddL
22-
p5yq8ikAEQEAAYkBHwQYAQIACQUCS5+6xgIbDAAKCRBPmOhj6l7+LPi6B/sEkDkm
23-
Qs/aTz9HDANBAbTuDZTY4WBbkPdFos3xxC2Z/TH5m4bfHEkvNk5WD+j+vYB3exAc
24-
uBi7ZiqibRpap4kiAiKKCRXOyvmEmrjKB5wOWbRpkdTeEdPcpsQ4dDDw1ZUKwzjN
25-
1jI/9GOgq49nAGdlU59f3IdPut6oQNq9vrtanTq2xHVN/rOhV9GLE6gLX1YWkpIH
26-
zYSUheGPsnv4sWRsQDTB7xmF+6RZzjmauKNwsGFscX1TenOWtUbYb9qFCwvNMOSk
27-
51sEaD6PK6wWTXMqQlgjaoGqh1ZaePgT0QTh1W/bvOD0fL5NEToJl2h/lBSvO+ez
28-
R9B++dt5JX9BMxAH
29-
=puA7
4+
mQENBEufuqsBCADAtWFE1qE3xqJE4xggUn6id0fVulM7y+rSH1VPxo7Ps9duc/O9
5+
VegEx8+N5KphDROS4RgHxMiS1O8Qy5Hpq4gEp6RvLNj3s+0DMwqRZoA0tBCkNmvF
6+
K7sF+GncrOu/NZkDIZ8emN9NWWeWynWJvuM2H5HQA9yCq+YTFae5sgyr3APC3xh4
7+
OkTuVMcclGTJdVrISlNBDpo/AZLJ/nV0SgITpiZVsI4RSNiQPP1kX+2fIDEAwtxN
8+
3HIDyegDoX36cOItsb05zHkLxoUoZnWoxMvV3rwnqXg5cr6PWfiwgqWd0avl1sg6
9+
abpR6MKV68OCpTkqMrDIXJJrM2sTz+ZB2bBtABEBAAG0CkRTRCBBdXRob3KJATgE
10+
EwECACIFAkufuqsCGwMGCwkIBwMCBhUIAgkKCwQWAgMBAh4BAheAAAoJEPqiY10/
11+
HX/Q11UH/0ZutGQWLZyZD5ZqVdBeYEf6IKhKhaC2vD/+5zUJ2cIgT5xJVTPCKN7X
12+
sygBANJc9GyPRYRvQecdcTHR5B+wUKCPeibv9iQuU3v7Uqb5edXEh2b4jOMWNvHJ
13+
l3lqBdUefuQdbc2xXCPgn+GkyexXEBsVF3hCzWV9r4bCpY57iWUYZZT0wAbN81hz
14+
jPKCCRmF+gZUUufxyhUGq/+eAKeUll6lgG5Ms2YKOlUMphfMav45qgWZHj1DASOV
15+
wPsiIVUaC6+GtHTTzHYRL05ydxxduX+yyKDO1emCE4fx1n3jdwToHLRrC1ui+AJM
16+
Q1s+bp+bGmMYaYaKc/JtNHcN8mbWyCK5AQ0ES5+6qwEIAJvPrnv2QO5Be3FRsnYL
17+
qbA1h/Lj0SjnuimaiNOzCYFIYtusLpyWjwWUnOEXdw5FoExqUStOHJ557SDG/zFB
18+
qy+DsNC9ncSRZ5U2tUQUtt50m2lpYvoy/sVf3oN+IsyZ5hZpiAwrxlyMC/aoGR3C
19+
6ZlLkZ42azNCmEmoBniIxQ+XwhwkLMRsOnqLoFyXB9CcDFIXeEhZkVWZT0B5+20f
20+
yGSBDJ6VcIAASoaIyvSwU9l/DT7D/s0J8WnZQZmRdrsZ3Ikj0Sv/4D2MJnCVJTSw
21+
DHq5Sf7DmUq/WD0iWRLEXWmPt9w3WxP4imhtmIpICxCDoeQUTkqFpOTf29sVcpPt
22+
838AEQEAAYkBHwQYAQIACQUCS5+6qwIbDAAKCRD6omNdPx1/0O8ECADAcPORjGFl
23+
RnIrsgiVMp82GQ7hnZZxktU1WVVx8EsPTT1DD79nIoeKI+UcenzuOGyTX7DGcy+P
24+
rWntUbt2ZygPTbP5Wu6zd845y9EzjxQ5q0vDF4oAefQptwqGDVeO/KBv9cZLbnih
25+
VEjQELgC/rVB7nd5p83EL5vb8qL/Eiu65stxwZ3QOT9pp2bsAPk6LJWWnVqJroKI
26+
Pc6KWG7n6mMJPbhFmE8Ld2lcNlSKQwLHIxDocL2GAqh5S5hJeGg2oLMFpy0g2Ron
27+
643w0zPfpKC15TlnkJDCIgtRlHovrs42Qkypz9y3e8yOL9O0RLYIKbuKw4mNR3cT
28+
OdeV+TjfiZ5I
29+
=2oe6
3030
-----END PGP PUBLIC KEY BLOCK-----

Makefile

Lines changed: 10 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,7 @@
1414
# PERFORMANCE OF THIS SOFTWARE.
1515

1616
CC = gcc
17-
CFLAGS = -O2
17+
CFLAGS = -O2 -Wall
1818
INCLUDES = -I. -I/usr/local/include -I/usr/include
1919
LIBS = -L/usr/local/lib -lm -lmbe
2020
INSTALL=install
@@ -24,7 +24,7 @@ DEST_BASE=/usr/local
2424
DEST_INC=${DEST_BASE}/include
2525
DEST_LIB=${DEST_BASE}/lib
2626
DEST_BIN=${DEST_BASE}/bin
27-
OBJS = dsd_main.o dsd_symbol.o dsd_dibit.o dsd_frame_sync.o dsd_file.o dsd_audio.o dsd_serial.o dsd_frame.o dsd_mbe.o dsd_upsample.o p25p1_hdu.o p25p1_ldu1.o p25p1_ldu2.o p25p1_tdulc.o p25_lcw.o x2tdma_voice.o x2tdma_data.o dstar.o nxdn96.o dmr_voice.o dmr_data.o provoice.o
27+
OBJS = dsd_main.o dsd_symbol.o dsd_dibit.o dsd_frame_sync.o dsd_file.o dsd_audio.o dsd_serial.o dsd_frame.o dsd_mbe.o dsd_upsample.o p25p1_hdu.o p25p1_ldu1.o p25p1_ldu2.o p25p1_tdulc.o p25_lcw.o x2tdma_voice.o x2tdma_data.o dstar.o nxdn_voice.o nxdn_data.o dmr_voice.o dmr_data.o provoice.o
2828

2929
all: dsd
3030

@@ -84,8 +84,14 @@ x2tdma_data.o: x2tdma_data.c x2tdma_const.h dsd.h config.h
8484
dstar.o: dstar.c dstar_const.h dsd.h config.h
8585
$(CC) $(CFLAGS) $(INCLUDES) -c dstar.c -o dstar.o
8686

87-
nxdn96.o: nxdn96.c nxdn96_const.h dsd.h config.h
88-
$(CC) $(CFLAGS) $(INCLUDES) -c nxdn96.c -o nxdn96.o
87+
nxdn48_voice.o: nxdn48_voice.c nxdn_const.h dsd.h config.h
88+
$(CC) $(CFLAGS) $(INCLUDES) -c nxdn48_voice.c -o nxdn48_voice.o
89+
90+
nxdn_voice.o: nxdn_voice.c nxdn_const.h dsd.h config.h
91+
$(CC) $(CFLAGS) $(INCLUDES) -c nxdn_voice.c -o nxdn_voice.o
92+
93+
nxdn_data.o: nxdn_data.c nxdn_const.h dsd.h config.h
94+
$(CC) $(CFLAGS) $(INCLUDES) -c nxdn_data.c -o nxdn_data.o
8995

9096
dmr_voice.o: dmr_voice.c dmr_const.h dsd.h config.h
9197
$(CC) $(CFLAGS) $(INCLUDES) -c dmr_voice.c -o dmr_voice.o

README

Lines changed: 47 additions & 46 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
Digital Speech Decoder 1.3
1+
Digital Speech Decoder 1.4
22
Copyright (C) 2010 DSD Author
33
GPG Key ID: 0x3F1D7FD0 (74EF 430D F7F2 0A48 FCE6 F630 FAA2 635D 3F1D 7FD0)
44

@@ -16,10 +16,10 @@ PERFORMANCE OF THIS SOFTWARE.
1616

1717
DSD is able to decode several digital voice formats from discriminator
1818
tap audio and synthesize the decoded speech. Speech
19-
synthesis requires mbelib, which is a separate package. DSD 1.3
19+
synthesis requires mbelib, which is a separate package. DSD 1.4.1
2020
requires mbelib 1.1 or later.
2121

22-
Supported formats in version 1.3:
22+
Supported formats in version 1.4.1:
2323

2424
P25 Phase 1 Widely deployed radio standard used in public safety
2525
and amateur radio.
@@ -46,18 +46,17 @@ PERFORMANCE OF THIS SOFTWARE.
4646
DMR/MOTOTRBO "Digital Mobile Radio" Eurpoean two slot TDMA standard.
4747
MOTOTRBO is a popular implementation of this standard.
4848

49-
Support includes decoding and synthesis of speech and
50-
the ability to save and replay .amb data files.
49+
Support includes decoding and synthesis of speech and
50+
the ability to save and replay .amb data files.
5151

52-
Development (no speech) support only:
52+
NXDN Digital radio standard used by NEXEDGE and IDAS brands.
53+
Supports both 9600 baud (12.5 kHz) and
54+
4800 baud (6.25 kHz) digital voice.
5355

54-
NXDN (9600) Digital radio standard used by NEXEDGE and IDAS brands.
56+
Support includes decoding and synthesis of speech and
57+
the ability to save and replay .amb data files.
5558

56-
Development support only. DSD recognizes frames and can
57-
extract the voice bits but speech is not yet decoded.
58-
The issue is likely either an unusual interleave pattern
59-
or a pseudo-random bit mask initialized by a "color code"
60-
Note: not enabled by default, use -fn to enable.
59+
Development (no speech) support only:
6160

6261
D-STAR Amateur radio digital voice standard
6362

@@ -66,9 +65,9 @@ PERFORMANCE OF THIS SOFTWARE.
6665
D-STAR likely uses a version of AMBE not yet supported by
6766
mbelib. The voice bit interleave pattern also needs to be
6867
determined.
69-
Note: not enabled by default, use -fn to enable.
68+
Note: not enabled by default, use -fd to enable.
7069

71-
Unsupported formats in version 1.3 considered for future development:
70+
Unsupported formats in version 1.4 considered for future development:
7271

7372
P25 Phase 2 This is not yet a published standard. Full support is
7473
expected once the standard is published and there are
@@ -78,10 +77,7 @@ PERFORMANCE OF THIS SOFTWARE.
7877
OpenSKY It is possible that the four slot version uses a vocoder
7978
supported by mbelib. The two slot version does not.
8079

81-
NXDN (4800) This should be supportable as soon as we have .wav files
82-
or access to a radio programmed in this format.
83-
84-
Supported demodulation optimizations in version 1.3:
80+
Supported demodulation optimizations in version 1.4:
8581

8682
C4FM Continuous envelope 2 or 4 level FSK with relatively
8783
sharp transitions between symbols. Used by most P25
@@ -147,19 +143,19 @@ Display modes
147143
Errorbars mode output for P25 Phase 1 looks like this:
148144

149145

150-
Sync: -p25p1 mod: C4FM input: 39% nac: 5C2 src: 0 tg: 32464 TDULC
151-
Sync: -p25p1 mod: C4FM input: 39% nac: 5C2 src: 0 tg: 32464 TDULC
152-
Sync: -p25p1 mod: C4FM input: 39% nac: 5C2 src: 0 tg: 32464 TDULC
153-
Sync: -p25p1 mod: C4FM input: 39% nac: 5C2 src: 0 tg: 32464 TDULC
154-
Sync: -p25p1 mod: C4FM input: 38% nac: 5C2 src: 0 tg: 32464 TDU
155-
Sync: -p25p1 mod: C4FM input: 38% nac: 5C2 src: 0 tg: 32464 HDU
156-
Sync: -p25p1 mod: C4FM input: 42% nac: 5C2 src: 0 tg: 32464 LDU1 e:
157-
Sync: (-p25p1) mod: C4FM input: 39% nac: 5C2 src: 52610 tg: 32464 (LDU2) e:
158-
Sync: -p25p1 mod: C4FM input: 38% nac: 5C2 src: 52610 tg: 32464 LDU1 e:
159-
Sync: -p25p1 mod: C4FM input: 39% nac: 5C2 src: 52610 tg: 32464 LDU2 e:
160-
Sync: -p25p1 mod: C4FM input: 39% nac: 5C2 src: 52610 tg: 32464 LDU1 e:
161-
Sync: -p25p1 mod: C4FM input: 39% nac: 5C2 src: 52610 tg: 32464 LDU2 e:
162-
Sync: -p25p1 mod: C4FM input: 39% nac: 5C2 src: 52610 tg: 32464 LDU1 e:
146+
Sync: -P25p1 mod: C4FM inlvl: 39% nac: 5C2 src: 0 tg: 32464 TDULC
147+
Sync: -P25p1 mod: C4FM inlvl: 39% nac: 5C2 src: 0 tg: 32464 TDULC
148+
Sync: -P25p1 mod: C4FM inlvl: 39% nac: 5C2 src: 0 tg: 32464 TDULC
149+
Sync: -P25p1 mod: C4FM inlvl: 39% nac: 5C2 src: 0 tg: 32464 TDULC
150+
Sync: -P25p1 mod: C4FM inlvl: 38% nac: 5C2 src: 0 tg: 32464 TDU
151+
Sync: -P25p1 mod: C4FM inlvl: 38% nac: 5C2 src: 0 tg: 32464 HDU
152+
Sync: -P25p1 mod: C4FM inlvl: 42% nac: 5C2 src: 0 tg: 32464 LDU1 e:
153+
Sync: (-P25p1) mod: C4FM inlvl: 39% nac: 5C2 src: 52610 tg: 32464 (LDU2) e:
154+
Sync: -P25p1 mod: C4FM inlvl: 38% nac: 5C2 src: 52610 tg: 32464 LDU1 e:
155+
Sync: -P25p1 mod: C4FM inlvl: 39% nac: 5C2 src: 52610 tg: 32464 LDU2 e:
156+
Sync: -P25p1 mod: C4FM inlvl: 39% nac: 5C2 src: 52610 tg: 32464 LDU1 e:
157+
Sync: -P25p1 mod: C4FM inlvl: 39% nac: 5C2 src: 52610 tg: 32464 LDU2 e:
158+
Sync: -P25p1 mod: C4FM inlvl: 39% nac: 5C2 src: 52610 tg: 32464 LDU1 e:
163159

164160
"Sync" indicates the frame type detected and whether the polarity is
165161
positive or negative. DSD automatically detects and handles either
@@ -179,7 +175,7 @@ Sync: -p25p1 mod: C4FM input: 39% nac: 5C2 src: 52610 tg: 32464 LDU1 e:
179175

180176
"mod" indicates the current demodulation optimizations.
181177

182-
"input" indicates the audio input level. QPSK signals tend to appear
178+
"inlvl" indicates the audio input level. QPSK signals tend to appear
183179
much "wider" than C4FM from a discriminator tap so it is important
184180
to set your input gain using a QPSK signal if you plan to montir them.
185181
It is not necessary nor desirable to get to 100%, in fact your sound
@@ -189,7 +185,7 @@ Sync: -p25p1 mod: C4FM input: 39% nac: 5C2 src: 52610 tg: 32464 LDU1 e:
189185

190186
"nac" is the P25 Phase 1 Network Access Code. This is a 12 bit field
191187
in each P25 Phase 1 header. It should not be confused with the 16
192-
bit System ID used in non-p25 trunking control channels.
188+
bit System ID used in non-P25 trunking control channels.
193189

194190
"src" is the radio id of the trasmitting subscriber unit.
195191

@@ -207,10 +203,10 @@ Sync: -p25p1 mod: C4FM input: 39% nac: 5C2 src: 52610 tg: 32464 LDU1 e:
207203

208204
Errorbars mode output for X2-TDMA looks like this:
209205

210-
Sync: -X2-TDMA mod: QPSK input: 59% src: 17211 tg: 197 [SLOT0] slot1 VOICE e:
211-
Sync: -X2-TDMA mod: QPSK input: 47% src: 17211 tg: 197 [SLOT0] slot1 VOICE e:
212-
Sync: -X2-TDMA mod: QPSK input: 43% src: 17211 tg: 197 [SLOT0] slot1 VOICE e:
213-
Sync: (-X2-TDMA) mod: QPSK input: 28% src: 17211 tg: 197 [SLOT0] slot1 VOICE e:
206+
Sync: -X2-TDMA mod: QPSK inlvl: 59% src: 17211 tg: 197 [SLOT0] slot1 VOICE e:
207+
Sync: -X2-TDMA mod: QPSK inlvl: 47% src: 17211 tg: 197 [SLOT0] slot1 VOICE e:
208+
Sync: -X2-TDMA mod: QPSK inlvl: 43% src: 17211 tg: 197 [SLOT0] slot1 VOICE e:
209+
Sync: (-X2-TDMA) mod: QPSK inlvl: 28% src: 17211 tg: 197 [SLOT0] slot1 VOICE e:
214210

215211
DMR/MOTOTRBO display is similar except it does not yet show source
216212
and talkgroup information.
@@ -303,10 +299,10 @@ Display Options
303299
information displayed in Errorbars mode:
304300

305301
-e Show Frame Info and errorbars (default)
306-
-pe Show p25 encryption sync bits
307-
-pl Show p25 link control bits
308-
-ps Show p25 status bits and low speed data
309-
-pt Show p25 talkgroup info
302+
-pe Show P25 encryption sync bits
303+
-pl Show P25 link control bits
304+
-ps Show P25 status bits and low speed data
305+
-pt Show P25 talkgroup info
310306
-q Don't show Frame Info/errorbars
311307
-s Datascope (disables other display options)
312308
-t Show symbol timing during sync
@@ -439,7 +435,8 @@ Scanner control options:
439435

440436
-B <num> Serial port baud rate (default=115200)
441437
-C <device> Serial port for scanner control (default=/dev/ttyUSB0)
442-
-R <num> Resume scan after <num> TDULC frames or any PDU
438+
-R <num> Resume scan after <num> TDULC frames or any PDU or TSDU
439+
443440

444441
On some P25 systems Packet Data Units (PDU) are sent on the same
445442
frequencies used for voice traffic. If done constantly this can
@@ -453,7 +450,8 @@ Decoder options
453450
-fa Auto-detect frame type (default)
454451
-f1 Decode only P25 Phase 1
455452
-fd Decode only D-STAR* (no audio)
456-
-fn Decode only NXDN96* (no audio)
453+
-fi Decode only NXDN48* (6.25 kHz) / IDAS*
454+
-fn Decode only NXDN96 (12.5 kHz)
457455
-fp Decode only ProVoice*
458456
-fr Decode only DMR/MOTOTRBO
459457
-fx Decode only X2-TDMA
@@ -465,10 +463,13 @@ Decoder options
465463
-xx Expect non-inverted X2-TDMA signal
466464
-xr Expect inverted DMR/MOTOTRBO signal
467465

466+
* denotes frame types that cannot be auto-detected.
468467

469-
NXDN and D-STAR are not enabled by default as they are for development
470-
testing only and have shorter frame sync patterns that are prone to
471-
false triggering.
468+
ProVoice and NXDN48 not auto-detected as use different symbol
469+
rates (9600 and 2400) than most formats (4800). D-STAR is not
470+
enabled by default as voice decode does not work and it has a
471+
short sync word that is prone to false triggering. It is included
472+
for development/testing only.
472473

473474
MBE speech synthesis is broken down into two main types of sounds,
474475
"Voiced" and "Unvoiced". Voiced speech bands are synthesized with

configure

100644100755
File mode changed.

dmr_data.c

Lines changed: 1 addition & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -206,7 +206,7 @@ processDMRdata (dsd_opts * opts, dsd_state * state)
206206
printf ("%s ", syncbits);
207207
#endif
208208

209-
if (strcmp (sync, DMR_DATA_SYNC) == 0)
209+
if ((strcmp (sync, DMR_BS_DATA_SYNC) == 0) || (strcmp (sync, DMR_MS_DATA_SYNC) == 0))
210210
{
211211
if (state->currentslot == 0)
212212
{
@@ -217,17 +217,6 @@ processDMRdata (dsd_opts * opts, dsd_state * state)
217217
sprintf (state->slot1light, "[slot1]");
218218
}
219219
}
220-
else if (strcmp (sync, DMR_VOICE_SYNC) == 0)
221-
{
222-
if (state->currentslot == 0)
223-
{
224-
sprintf (state->slot0light, "[SLOT0]");
225-
}
226-
else
227-
{
228-
sprintf (state->slot1light, "[SLOT1]");
229-
}
230-
}
231220

232221
if (opts->errorbars == 1)
233222
{

0 commit comments

Comments
 (0)