DSD 1.4 and mbelib 1.2.3 released

Status
Not open for further replies.

KC8RYW

Member
Joined
Aug 16, 2006
Messages
2
Does anyone know where to find the latest source?

The RR wiki page has links to MegaUpload, which was shut down by the FBI.

The latest version of dsd I can find on SourceForge is 1.1. :-(
 

dogpatch

Member
Premium Subscriber
Joined
Mar 6, 2009
Messages
5
Location
San Diego
DSD and muting encryption

Hi,
I am amazed how such a small program decodes P25 C4FM so well. I listen to a lot of frequencies and talkgroups that are partially encrypted so muting the encrypted transmissions would be a very useful addition for me. I am using XP SP3 and have DSD running on 3 computers with various soundcards.
 

gvodvarka

Member
Joined
Nov 10, 2009
Messages
71
Location
Ontario, Ca.
I have several Vertex VXD-7200 DMR Radios to test with. I am currently trying to decode talk groups. Any help here would be useful. If you need files created I can encode them on the radio and decode and record them using my Motorola Service monitor. Gary
 

capitaineal

Member
Joined
Feb 22, 2004
Messages
7
Location
Gatineau, Quebec, Canada
hi i am not sure i m at the right place for my question but i dont know where to go
my problem is that i have install dsd on my computer(intel 3,06 ghz, audigy soundblaster se,running windows 7) my discrimination tap is install on my ( bc296d uniden) but i dont have a clear decoding lots off cutting and never able to understand a full sentence could you help me out on THat is it possible that yhe signal is not strong enough
(sorry if my english is not too good i m french
thank you

regards alain
 

exkalibur

Member
Premium Subscriber
Joined
Aug 15, 2006
Messages
2,942
Location
York, Ontario
26 taps! That's an expensive filter.

You're joking, right?

An old as the hills 486 is capable of around 50 million calculations per second.

A filter with even 100 taps is only going to use 4.8 million.

26 is around a milllion. That's a walk in the park for any computer made this century. Or older. A 286 can do nearly 3M.

Considering Unitrunker doesn't do any effective filtering, I'm not surprised you would think 26 is 'expensive'.
 

SCPD

QRT
Joined
Feb 24, 2001
Messages
0
Location
Virginia
You are a much better programmer than I. Please show us how this can be done for five protocol decoders on the same sample stream. Leave headroom for at least four more sample streams (each with five filters) and allow Windows to remain responsive to the user.
 

exkalibur

Member
Premium Subscriber
Joined
Aug 15, 2006
Messages
2,942
Location
York, Ontario
I'm not a programmer at all. I hate programming, so I'll never claim to be better than anyone for that.

Why would you need to apply it to 5 protocol decoders on the same stream at the same time?

Could you not set up a quick test for each system type that it checks against? IE, have the input go through one decoder and if the decoder doesn't produce usable results (IE, the input isn't in the protocol of that particular decoder), it'll move on to the next...once all 5 protocols have been checked against, it would just loop around to the begining. If any of the steps are successful at producing valid data, the conditions would stop and the program would run with that decoder. If the decoder stopped producing usable results due to the user switching the input type, the loop would just take off from where it stopped last time.

In future as you add more protocols, that would be as simple as appending another "if" test on the end.

That way, you'd only be applying one filter at a time and wouldn't need to worry about being a CPU hog. Just as a specific example, TRUNK88 runs with next to no CPU usage and it has better filtering than anything else I've ever tried. It'll have 100% decoding on systems Unitrunker won't even decode anymore.
 

SCPD

QRT
Joined
Feb 24, 2001
Messages
0
Location
Virginia
The users have come to expect fast acquisition time. Running all five (as opposed to each one in turn) accomplishes this. Once you've acquired a signal, you could shut off the others but you'd have to bring them back if the signal drops. The worst case comes up either way.

Trunk88 runs at a lower sample rate and sample size (22100 at 8 bits). He can truncate amplitude with no loss of data. That's the nature of two level protocols. His LTR program runs at 11050.

Back to the 26 tap filter. It's 1.25 macs per second at 48000 sps or 2.5 macs at 96000 sps. This is probably an RC or RRC filter with no feedback. Other high performing filters can be constructed with only 2 to 4 taps. That's a huge savings.
 

slicerwizard

Member
Joined
Sep 19, 2002
Messages
7,768
Location
Toronto, Ontario
Please show us how this can be done for five protocol decoders on the same sample stream. Leave headroom for at least four more sample streams (each with five filters) and allow Windows to remain responsive to the user.
Desired filter specs?


Trunk88 runs at a lower sample rate and sample size (22100 at 8 bits). He can truncate amplitude with no loss of data. That's the nature of two level protocols. His LTR program runs at 11050.
TRUNK88 supports sampling rates up to 96 kHz, 8 or 16 bit sampling.

LTR-Analyzer samples at 22 kHz. LTRNet-Analyzer samples at 48 kHz (because modern hardware/drivers generally don't know how to sample at 22 kHz)

For all of these programs, the filter costs are far outweighed by the downstream processing.
 

SCPD

QRT
Joined
Feb 24, 2001
Messages
0
Location
Virginia
Thanks Andy.

The Hz value is the symbol rate. Except for the filter implemented, I don't have proper specs like alpha = 0.2. The low pass cutoff freqs are likely 120% of the symbol rate.

1200 Hz high pass MPT1327
1200 Hz low pass half rate DMR variant
1800 Hz low pass Motorola / MPT1327
2400 Hz low pass EDACS48 / C4FM / CQPSK / Opensky 2 (implemented)
3000 Hz low pass P2
4800 Hz low pass EDACS96 / Opensky

This of course does not include LTR filtering.

Edit: I see I botched the standard sample rate numbers - 22050 and 11025.
 
Last edited:

exkalibur

Member
Premium Subscriber
Joined
Aug 15, 2006
Messages
2,942
Location
York, Ontario
The users have come to expect fast acquisition time. Running all five (as opposed to each one in turn) accomplishes this. Once you've acquired a signal, you could shut off the others but you'd have to bring them back if the signal drops. The worst case comes up either way.

It sounds to me like this arrangement is sacrificing performance for features.

I don't think anyone would bat an eyelash if it took 10-20 seconds for the program to begin decoding, if it meant near 100% decodes all the time. As for the shutting off the others once a signal was acquired - how many users are really going to even notice? I would wager that the vast majority of users don't switch very often. A simple solution would be to include a "System Switch" button that would enable the other filters until a new system was locked onto.

Even before Andy implemented some very good filtering - the older DOS version that used a data slicer - would decode at >90% from a tapped scanner...when a Motorola radio connected to the same antenna would display Out of Range.
 

slicerwizard

Member
Joined
Sep 19, 2002
Messages
7,768
Location
Toronto, Ontario
1200 Hz high pass MPT1327
1200 Hz low pass half rate DMR variant
1800 Hz low pass Motorola / MPT1327
2400 Hz low pass EDACS48 / C4FM / CQPSK / Opensky 2 (implemented)
3000 Hz low pass P2
4800 Hz low pass EDACS96 / Opensky

This of course does not include LTR filtering.
Initial testing results are:

Generating 7 filtered streams from a 48 kHz 16 bit input:

My netbook and its anemic Atom processor: 5.5 CPU seconds used per 100 seconds of input audio.

My laptop (1.6 GHz processor): 3 CPU seconds used per 100 seconds of input audio.
 

SCPD

QRT
Joined
Feb 24, 2001
Messages
0
Location
Virginia
We've gone off topic so these posts might belong in a separate thread.

I don't think anyone would bat an eyelash if it took 10-20 seconds for the program to begin decoding, if it meant near 100% decodes all the time.
One of the uses of the program is to rapidly survey an area for recognizable trunking signals. It's an activity myself and others do on a weekly basis.


A simple solution would be to include a "System Switch" button that would enable the other filters until a new system was locked onto.
Actually, the plan is to give user control over which filters are running. If a user dedicates a receiver to a particular system, they can turn off the other protocols (and associated filters). This has been discussed elsewhere in this forum.
 
Status
Not open for further replies.
Top