Decoding D-Star

Status
Not open for further replies.

robman50

Member
Joined
Nov 4, 2014
Messages
185
Location
Niagara, Ontario, Canada
Has anyone had any success in compiling DSD to decode the mode 'D-Star'? I know for a fact that the DSD+ version will not decode the audio but only show scrambled text. Would I be better off with Windows or Linux for this? Or does anyone have an working Windows version that they would wish to share?
 

robman50

Member
Joined
Nov 4, 2014
Messages
185
Location
Niagara, Ontario, Canada
Did you carefully read the instructions referenced above?.
Yes of course.
'4. Within the Cygwin command window, use gcc, to compile every .c file within the folders mbelib-master and dsd-master (subfolders can be ignored), so that you will get an .o file (object file) for each source file.'
First, I'd like to point out that there are no .c files in the dsd-master folder, they are all in the src folder, so I guess I use those?

And second it keeps saying that one of the .h files are not found.
 
Last edited:

natedawg1604

Member
Premium Subscriber
Joined
Jun 29, 2013
Messages
2,726
Location
Colorado
....
First, I'd like to point out that there are no .c files in the dsd-master folder, they are all in the src folder, so I guess I use those?

And second it keeps saying that one of the .h files are not found.

Yeah you got it, and the header files are in the "include" directory. This is a very standard layout.
 

robman50

Member
Joined
Nov 4, 2014
Messages
185
Location
Niagara, Ontario, Canada
Yes of course.
'4. Within the Cygwin command window, use gcc, to compile every .c file within the folders mbelib-master and dsd-master (subfolders can be ignored), so that you will get an .o file (object file) for each source file.'
First, I'd like to point out that there are no .c files in the dsd-master folder, they are all in the src folder, so I guess I use those?

And second it keeps saying that one of the .h files are not found.

I put EVERYTHING into one folder from dsd-master and mbelib-master and I keep getting this.
'dsd.h:40:20: fatal error: mbelib.h: No such file or directory
compilation terminated.'

That file is in the directory in the same name.
So frustrating.
 

robman50

Member
Joined
Nov 4, 2014
Messages
185
Location
Niagara, Ontario, Canada
Here is all the files that I have in one folder.
.gitignore
.gitmodules
.travis.yml
ambe3600x2400.c
ambe3600x2400.o
ambe3600x2400_const.h
ambe3600x2450.c
ambe3600x2450.o
ambe3600x2450_const.h
CHANGELOG
cmake
CMakeLists.txt
cmake_uninstall.cmake.in
config.h
CONTRIBUTING.md
COPYRIGHT
descramble.h
dmr_const.h
dmr_data.c
dmr_voice.c
dsd.h
dsd_audio.c
DSD_Author.pgp
dsd_dibit.c
dsd_file.c
dsd_filters.c
dsd_filters.o
dsd_frame.c
dsd_frame_sync.c
dsd_main.c
dsd_mbe.c
dsd_serial.c
dsd_symbol.c
dsd_upsample.c
dstar.c
dstar_const.h
dstar_header.c
dstar_header.h
dstar_header.o
ecc.c
ecc.o
ecc_const.h
fcs.h
files.txt
FindITPP.cmake
FindLibMbe.cmake
FindLibPortAudio.cmake
FindLibSndFile.cmake
git_revision.cmake
git_revision.cmake.in
git_ver.c.in
git_ver.h
gmock
golay24-test.cpp
Golay24.hpp
gtest
hamming-test.cpp
Hamming.cpp
Hamming.hpp
imbe7100x4400.c
imbe7100x4400.o
imbe7200x4400.c
imbe7200x4400.o
imbe7200x4400_const.h
include
mbelib.c
mbelib.h
mbelib.h.gch
mbelib.o
mbelib_Author.pgp
mbelib_const.h
nxdn96.c
nxdn96_const.h
nxdn_const.h
nxdn_data.c
nxdn_voice.c
p25p1_check_hdu.cpp
p25p1_check_hdu.h
p25p1_check_ldu.cpp
p25p1_check_ldu.h
p25p1_check_nid.cpp
p25p1_check_nid.h
p25p1_const.h
p25p1_hdu.c
p25p1_hdu.h
p25p1_heuristics.c
p25p1_heuristics.h
p25p1_ldu.c
p25p1_ldu.h
p25p1_ldu1.c
p25p1_ldu2.c
p25p1_tdu.c
p25p1_tdulc.c
p25_lcw.c
pa_devs.c
pa_devs.h
pa_devs.o
provoice.c
provoice_const.h
README.md
reedsolomon-test.cpp
ReedSolomon.hpp
samples
src
test
test.cpp
travis_deps.sh
x2tdma_const.h
x2tdma_data.c
x2tdma_voice.c
 

toastycookies

Member
Joined
May 29, 2010
Messages
726
Location
the far east
what CPU and version of windows are you running?

If they are close to mine I will try to compile a binary for you to use.

I am on windows 10 enterprise on a i5-6600k skylake cpu.
 

natedawg1604

Member
Premium Subscriber
Joined
Jun 29, 2013
Messages
2,726
Location
Colorado
On Windows 7 I was able to get DSD 1.7 working, it was a bit painful (mostly because I've never used Cygwin before to compile stuff on Windows). I started with the following instructions buried in the comments of the above-referenced thread:

install libsndfile-devel, make, cmake and cpp in cygwin, extract both archives and then goto mbelib dir and type:
mkdir build
cd build
cmake ..
make
make install

then cd to dsd dir and type:
mkdir build
cd build
cmake ..
make
make install

I had to re-run the Cygwin setup program several times to add a few things it said were missing. Also, in the Cygwin terminal I had to manually compile IT++ (which isn't contained in the Cygwin package manager). Also, I copied the DSD.exe binary to "C:\cygwin\bin", because I kept getting errors about missing DLL files contained in that directory while trying to run the program from the build directory. That may not have been the "right" way to do it, but at least it got things working.

Finally, note that the windows port of DSD only accepts audio from the sound card configured as your default recording device in windows. Therefore, unlike DSD+ you cannot tell DSD to use a virtual audio cable. Rather, you must configure your raw disc. signal (i.e. from SDR#) to a VAC, and then set that VAC as your default recording device.
 

moonbounce

Member
Joined
Nov 5, 2002
Messages
1,398
I am going to assume you are using DSD1.7? If so that is what Iam using and it works on my tapped scanner and with RTL-SDR dongle.

MB
 
Last edited:

KD8DVR

Member
Joined
Apr 11, 2004
Messages
1,305
Location
Columbus, Ohio
There IS a ready to run Windows version of dsd 1.7. Sorry..at work so right now cannot provide link.

Sent from my LG-D631 using Tapatalk
 

robman50

Member
Joined
Nov 4, 2014
Messages
185
Location
Niagara, Ontario, Canada
natedawg1604 I did everything you mentioned above but as for cpp, was I supposed to use mcpp?

Rob@Rob-PC ~
$ cd dsd-master

Rob@Rob-PC ~/dsd-master
$ mkdir build
make install
Rob@Rob-PC ~/dsd-master
$ cd build

Rob@Rob-PC ~/dsd-master/build
$ cmake ..
-- The C compiler identification is GNU 5.4.0
-- The CXX compiler identification is unknown
CMake Warning at /usr/share/cmake-3.3.2/Modules/Platform/CYGWIN.cmake:15 (messag e):
CMake no longer defines WIN32 on Cygwin!

(1) If you are just trying to build this project, ignore this warning or
quiet it by setting CMAKE_LEGACY_CYGWIN_WIN32=0 in your environment or in
the CMake cache. If later configuration or build errors occur then this
project may have been written under the assumption that Cygwin is WIN32.
In that case, set CMAKE_LEGACY_CYGWIN_WIN32=1 instead.

(2) If you are developing this project, add the line

set(CMAKE_LEGACY_CYGWIN_WIN32 0) # Remove when CMake >= 2.8.4 is required

at the top of your top-level CMakeLists.txt file or set the minimum
required version of CMake to 2.8.4 or higher. Then teach your project to
build on Cygwin without WIN32.
Call Stack (most recent call first):
/usr/share/cmake-3.3.2/Modules/CMakeSystemSpecificInformation.cmake:36 (includ e)
CMakeLists.txt:1 (project)


-- Check for working C compiler: /usr/bin/cc
-- Check for working C compiler: /usr/bin/cc -- works
-- Detecting C compiler ABI info
-- Detecting C compiler ABI info - done
-- Detecting C compile features
-- Detecting C compile features - done
CMake Error at CMakeLists.txt:1 (project):
No CMAKE_CXX_COMPILER could be found.

Tell CMake where to find the compiler by setting either the environment
variable "CXX" or the CMake cache entry CMAKE_CXX_COMPILER to the full path
to the compiler, or to the compiler name if it is in the PATH.


-- Configuring incomplete, errors occurred!
See also "/home/Rob/dsd-master/build/CMakeFiles/CMakeOutput.log".
See also "/home/Rob/dsd-master/build/CMakeFiles/CMakeError.log".

Rob@Rob-PC ~/dsd-master/build
$ make
make: *** No targets specified and no makefile found. Stop.

Rob@Rob-PC ~/dsd-master/build
$ make install
make: *** No rule to make target 'install'. Stop.

Rob@Rob-PC ~/dsd-master/build
$


CMakeError.txt:
Compiling the CXX compiler identification source file "CMakeCXXCompilerId.cpp" failed.
Compiler: CMAKE_CXX_COMPILER-NOTFOUND
Build flags:
Id flags:

The output was:
No such file or directory


Compiling the CXX compiler identification source file "CMakeCXXCompilerId.cpp" failed.
Compiler: CMAKE_CXX_COMPILER-NOTFOUND
Build flags:
Id flags: -c

The output was:
No such file or directory
 

natedawg1604

Member
Premium Subscriber
Joined
Jun 29, 2013
Messages
2,726
Location
Colorado
natedawg1604 I did everything you mentioned above but as for cpp, was I supposed to use mcpp?

Rob@Rob-PC ~
$ cd dsd-master

Rob@Rob-PC ~/dsd-master
$ mkdir build
make install
Rob@Rob-PC ~/dsd-master
$ cd build

Rob@Rob-PC ~/dsd-master/build
$ cmake ..
-- The C compiler identification is GNU 5.4.0
-- The CXX compiler identification is unknown
CMake Warning at /usr/share/cmake-3.3.2/Modules/Platform/CYGWIN.cmake:15 (messag e):
CMake no longer defines WIN32 on Cygwin!

(1) If you are just trying to build this project, ignore this warning or
quiet it by setting CMAKE_LEGACY_CYGWIN_WIN32=0 in your environment or in
the CMake cache. If later configuration or build errors occur then this
project may have been written under the assumption that Cygwin is WIN32.
In that case, set CMAKE_LEGACY_CYGWIN_WIN32=1 instead.

(2) If you are developing this project, add the line

set(CMAKE_LEGACY_CYGWIN_WIN32 0) # Remove when CMake >= 2.8.4 is required

at the top of your top-level CMakeLists.txt file or set the minimum
required version of CMake to 2.8.4 or higher. Then teach your project to
build on Cygwin without WIN32.
Call Stack (most recent call first):
/usr/share/cmake-3.3.2/Modules/CMakeSystemSpecificInformation.cmake:36 (includ e)
CMakeLists.txt:1 (project)


-- Check for working C compiler: /usr/bin/cc
-- Check for working C compiler: /usr/bin/cc -- works
-- Detecting C compiler ABI info
-- Detecting C compiler ABI info - done
-- Detecting C compile features
-- Detecting C compile features - done
CMake Error at CMakeLists.txt:1 (project):
No CMAKE_CXX_COMPILER could be found.

Tell CMake where to find the compiler by setting either the environment
variable "CXX" or the CMake cache entry CMAKE_CXX_COMPILER to the full path
to the compiler, or to the compiler name if it is in the PATH.


-- Configuring incomplete, errors occurred!
See also "/home/Rob/dsd-master/build/CMakeFiles/CMakeOutput.log".
See also "/home/Rob/dsd-master/build/CMakeFiles/CMakeError.log".

Rob@Rob-PC ~/dsd-master/build
$ make
make: *** No targets specified and no makefile found. Stop.

Rob@Rob-PC ~/dsd-master/build
$ make install
make: *** No rule to make target 'install'. Stop.

Rob@Rob-PC ~/dsd-master/build
$


CMakeError.txt:
Compiling the CXX compiler identification source file "CMakeCXXCompilerId.cpp" failed.
Compiler: CMAKE_CXX_COMPILER-NOTFOUND
Build flags:
Id flags:

The output was:
No such file or directory


Compiling the CXX compiler identification source file "CMakeCXXCompilerId.cpp" failed.
Compiler: CMAKE_CXX_COMPILER-NOTFOUND
Build flags:
Id flags: -c

The output was:
No such file or directory

Two things. First, you should re-run the Ctgwin setup.exe file, and install gcc-g++. After that, if you still the error re: " CMake no longer defines WIN32 on Cygwin!", run cmake as follows:
cmake .. -DCMAKE_LEGACY_CYGWIN_WIN32=1
 

robman50

Member
Joined
Nov 4, 2014
Messages
185
Location
Niagara, Ontario, Canada
Okay.. that's a start.

Rob@Rob-PC ~/dsd-master/build
$ dsd
Digital Speech Decoder 1.7.0-dev (build:GIT-NOTFOUND)
mbelib version 1.3.0
Error, couldn't open /dev/audio

Also, how do I copy DSD and all it's required files to a USB drive?
 
Status
Not open for further replies.
Top