Skip to content
No description, website, or topics provided.
C Other
  1. C 98.4%
  2. Other 1.6%
Branch: master
Clone or download
Pull request Compare This branch is 6 commits ahead, 132 commits behind EliasOenal:master.
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
example
unsupported
.gitignore
CMakeLists.txt
COPYING
README.md
clip.c
costabf.c
costabi.c
demod_afsk12.c
demod_afsk24.c
demod_afsk24_2.c
demod_afsk24_3.c
demod_ccir.c
demod_clipfsk.c
demod_display.c
demod_dtmf.c
demod_dumpcsv.c
demod_dzvei.c
demod_eas.c
demod_eea.c
demod_eia.c
demod_fmsfsk.c
demod_fsk96.c
demod_hapn48.c
demod_morse.c
demod_poc12.c
demod_poc24.c
demod_poc5.c
demod_pzvei.c
demod_ufsk12.c
demod_zvei1.c
demod_zvei2.c
demod_zvei3.c
filter-i386.h
filter.h
fms.c
gen-ng.pro
gen.c
gen.h
gen_clipfsk.c
gen_dtmf.c
gen_hdlc.c
gen_sin.c
gen_uart.c
gen_zvei.c
hdlc.c
mkcostab.c
msvc_support.h
multimon-ng.pro
multimon.h
pocsag.c
selcall.c
uart.c
unixinput.c
win32_getopt.c
win32_getopt.h
win32_soundin.c
xdisplay.c

README.md

Cubehub fork

This paragraph here summarizies what Cubehub has done differently.

Currently this fork only exists because it seems that multimon-ng is quite picky about fsk9600 symbol rate. There is slight error in demod if input stream is converted to 22050 sps output stream. With this little error multimon-ng was unable to decode fsk9600 stream.

Anyway branch 48k-demod-fsk96 adds 48000 sps input stream support to fsk9600.

More information about demod and multimon-ng hack can be read from my blog.

sudo apt-get install libpulse-dev

git clone https://github.com/cubehub/multimon-ng.git
cd multimon-ng
git checkout 48k-demod-fsk96
mkdir build
cd build
qmake ../multimon-ng.pro
make
sudo make install

multimon-ng

It is a fork of multimon. It decodes the following digital transmission modes:

  • POCSAG512 POCSAG1200 POCSAG2400
  • EAS
  • UFSK1200 CLIPFSK AFSK1200 AFSK2400 AFSK2400_2 AFSK2400_3
  • HAPN4800
  • FSK9600
  • DTMF
  • ZVEI1 ZVEI2 ZVEI3 DZVEI PZVEI
  • EEA EIA CCIR
  • MORSE CW

Changes

The following changes have been made so far:

  • Fixes for x64
  • Basic functionality on Mac OS X 'Lion' (Soundcard/OSS input is unsupported)
  • DUMMY_AUDIO "backend" (Gets rid of the OSS dependency, breaks audio in doing so)
  • ONLY_RAW disables the format conversion while getting rid of posix dependencies
  • Option NO_X11 to disable the X11 dependency since Apple will drop Xorg soon
  • Override mode for POCSAG decoding (e.g. force text decoding)
  • Brute-Force BCH implementation for POCSAG forward error correction
  • Verbose mode is now listed in -h
  • Continued EAS/SAME development. The decoder now works, but it should be considered "alpha" quality. Do not rely on it for the reception of emergency alerts!
  • Portability is a major goal
  • Compiles on Windows (MinGW or Cygwin) without format conversion
  • PulseAudio support, contributed by inf_l00p_
  • Windows native audio and a VisualStudio/MSVC project file, contributed by bzzt_ploink
  • Now accepts raw samples as piped input

Install

using qmake

mkdir build
cd build
qmake ../multimon-ng.pro
make
sudo make install

using cmake

mkdir build
cd build
cmake ../
make
make install

How to convert files to multimon-ng format [1 channel, signed 16 bit integer, 22050 sps]

Files can be easily converted into multimon-ng's native raw format using sox. e.g: sox -t wav pocsag_short.wav -esigned-integer -b16 -r 22050 -t raw pocsag_short.raw

Use cases

You can also "pipe" raw samples into multimon-ng using something like this sox -t wav pocsag_short.wav -esigned-integer -b16 -r 22050 -t raw - | ./multimon-ng - (note the trailing dash)

You can’t perform that action at this time.