For those who have not tried it, try forcing GFSK modulation ( use the -mg command in the DSD batch file command line) on P25 Phase 1 and see if your decode error rate improves..
On my PC, I was getting constant high error rates and very choppy audio with the default DSD settings and C4FM modulation, however as soon as I switched to GFSK, the P25 phase 1 error rate almost disappears completely and the recovered audio is almost as good as any digital scanner.
I have tested this with both external (discriminator / sound card input) and using FuncubeDongle/RTL and VAC and more recently VB-Audio virtual cables on both TRS and conventional P25 systems. In each case C4FM, or the default DSD setting, is much worse.. Maybe it is because my PC is too slow to do C4FM correctly, but either way, there may be people out there who have given up completely on DSD for this very reason..
On a related issue, with the Funcubedongle receiver I.F width reduced to only 6000-7000Hz, I can decode good narrow band P25 audio at signals <10dB above the noise floor! On an external base antenna, with this configuration and at very low signal strengths just above the receivers noise floor, the Funcubedongle & DSD combination provides better P25 decoding than my BCD-996XT and GRE scanners hooked up to the same antenna.
For best results on weak signal, narrowband P25, set your SDR I.F setting to 6-7Khz (6000-7000Hz).
This will best match the actual deviation of +- 2.5Khz from the transmitter which will in turn improve the S/N and weak signal decoding performance. At these narrow IF settings though, make sure you have calibrated the SDR's receiver's frequency. You don't want the SDR/dongle to be off frequency by more than a couple of hundred Hz. You can tell pretty easily by zooming in on the tuned signal and ensuring that it is centered in the I.F passband.
Your Mileage May Vary of course..
If anyone tries this and can confirm these findings, please report back here
Cheers..