Xerbo 7d9f38f91e | 4 years ago | |
---|---|---|
.github/ISSUE_TEMPLATE | 4 years ago | |
cmake | 4 years ago | |
palettes | 4 years ago | |
src | 4 years ago | |
util | 4 years ago | |
.gitignore | 4 years ago | |
CMakeLists.txt | 4 years ago | |
CONTRIBUTING.md | 4 years ago | |
LICENSE | 4 years ago | |
Makefile | 4 years ago | |
README.md | 4 years ago | |
build_windows.sh | 4 years ago | |
textlogo.png | 5 years ago |
Copyright (c) 2004-2009 Thierry Leconte (F4DWV), Xerbo (xerbo@protonmail.com) 2019-2020
Aptdec is a FOSS program that decodes images transmitted by NOAA weather satellites. These satellites transmit constantly (among other things) medium resolution (4km/px) images of the earth over a analog mode called APT. These transmissions can easily be received with a cheap SDR and simple antenna. Then the transmission can be decoded in narrow FM mode.
Aptdec can turn the audio recordings into PNG images and generate images such as:
The input audio format can be anything supported by libsndfile
(although only tested with WAV and FLAC). Sample rate doesn’t matter, although lower samples rates will process faster.
sudo apt install git gcc libsndfile-dev libpng-dev
git clone https://github.com/Xerbo/aptdec.git && cd aptdec
make
To create an image from gqrx_20200527_115730_137914960.wav
(output filename will be gqrx_20200527_115730_137914960-r.png
)
./aptdec gqrx_20200527_115730_137914960.wav
To manually set the output filename
./aptdec -o image.png gqrx_20200527_115730_137914960.wav
Decode all WAV files in the current directory and put them in images
mkdir images && ./aptdec -d images *.wav
Apply a denoise filter (see Post-Processing Effects for a full list of post-processing effects)
./aptdec -e d gqrx_20200527_115730_137914960.wav
Create a temperature compensated image for NOAA 18
./aptdec -i t -s 18 gqrx_20200527_115730_137914960.wav
Apply a falsecolor palette
./aptdec -i p -p palettes/WXtoImg-N18-HVC.png gqrx_20200527_115730_137914960.wav
-i [r|a|b|t|m|p] Output type (stackable*)
-e [t|h|l|d|p|f] Effects (stackable)
-o <path> Output filename
-d <path> Destination directory
-s (15-19) Satellite number
-m <path> Path to WXtoImg map
-p <path> Path to palette
-r Realtime decode
-g Gamma adjustment (1.0 = off)
-k Map offset (in px, default: 0)
* Should work with all combinations, but temperature needs to be done last as it calibrates the buffer
r
: Raw Imagea
: Channel Ab
: Channel Bt
: Temperaturem
: MCIR (Map Color InfraRed)p
: Palletedt
: Crop telemetry (only effects raw image)h
: Histogram equalisel
: Linear equalised
: Denoisep
: Precipitation overlayf
: Flip image (for northbound passes)c
: Crop noise from ends of imageAptdec even supports decoding in realtime. The following decodes the audio coming from the audio device pulseaudio alsa_output.pci-0000_00_1b.0.analog-stereo
mkfifo /tmp/aptaudio
aptdec -r /tmp/aptaudio
sox -t pulseaudio alsa_output.pci-0000_00_1b.0.analog-stereo.monitor -c 1 -t wav /tmp/aptaudio
To stop the decode and calibrate the image simply kill the sox
process.
Palettes are just simple PNG images, 256x256px in size with 24bit RGB color. The X axis represents the value of Channel A and the Y axis the value of Channel B.
Thanks to the help of Aang23 aptdec is moving towards cmake + cpack for builds.
To use cmake to build instead of GNU automake:
mkdir build && cd build
cmake ..
make
Since cmake is now being used for building, windows support has come. You can build for windows with the build_windows.sh
script, you will need wine and mingw64 installed:
./build_windows.sh
User’s Guide for Building and Operating Environmental Satellite Receiving Stations
NOAA Satellite specifications and more information
See LICENSE