Decode from file and command line

On this page

Decode from file in the window

Choose File > Decode SSTV From File... (Ctrl+O) or the folder-with-a-note button on the Receive tab, then pick a recording. WAV, MP3, FLAC, OGG and AAC files are supported (any sample rate). The recording is played into the receiver at about ten times real time, you watch the picture appear, and afterwards the sound card receiver resumes. Decoded pictures are handled like any received picture. To decode a DRM recording, switch to the DRM settings tab first.

--decode

qsstv --decode recording.wav starts the program, opens the window and decodes the file. The --decode option may be repeated, and bare file names are treated as files to decode too, so you can also give qsstv one.wav two.wav. Add --drm for a DRM recording.

--batch (headless)

qsstv --batch -o out recording.wav decodes without a window, saves every picture found, prints the results and exits. Your settings are read but never written.

qsstv --batch --out-dir pictures/ pass1.wav pass2.mp3
qsstv --batch --mode PD120 --timeout 600 long-recording.flac
qsstv --batch --drm dsstv.wav

Pictures are named <file>_<n>_<MODE>.png in the output directory (the current directory by default). With --drm they are named <file>_<n>_drm.<ext> and a drm-stats: line (sync, FAC and MSC percentages, MSC flaps, FAC and MSC MER) is printed per file.

Exit codeMeaning
0Every file gave a picture.
1At least one file gave no picture.
2An unusable file or a bad option.
3Timeout.

The default timeout is the file's length plus 30 seconds; change it with --timeout. From the AppImage, run the AppImage file itself with the same options.

--encode

qsstv --encode picture.png --mode PD120 --wav-out picture.wav converts a picture into the SSTV audio for the chosen mode, through the normal transmit path, and writes it to a WAV file; no sound card is used. The default output name is <image>.wav. As with --batch, your settings are read but never written. Add --drm to make a DRM transmission instead; then --drm-mode, --drm-bw, --drm-qam, --drm-prot, --drm-interleave, --drm-rs and --drm-size choose the parameters (otherwise your Transmit-tab settings are used).

qsstv --encode rose.png --mode PD120 --wav-out pd120.wav
qsstv --encode rose.png --drm --drm-mode B --drm-qam 16 --drm-bw 2.5 --wav-out rose-drm.wav

A round trip is a good test of an installation: encode a picture and then decode the WAV with --batch.

Other options

--list-modes
Prints the short names accepted by --mode, with the full names (see SSTV modes).
--mode <mode>
With --batch or --decode: receive only this mode instead of auto detection. With --encode: the mode to transmit.
--install / --uninstall
AppImage only: add or remove the desktop menu entry and icons, then exit. See Help menu, updates and desktop integration.
-h, --help and -v, --version
Print the help or the version and exit.
--rx-gain <dB>, --rx-noise <dBFS>
Test aids for --batch: amplify or attenuate the recording, or add white noise of a given level (for example -40), before the receiver.

Option reference

OptionDescription
-d, --decode <file>Decode the recording (repeatable; bare arguments are files too). Opens the window.
-b, --batchHeadless: decode, save the pictures, print results and exit.
-o, --out-dir <dir>With --batch: directory for the pictures.
-m, --mode <mode>Receive only this mode (short name, e.g. PD120, JB60).
--timeout <seconds>With --batch: give up on a file after this many seconds.
--drmWith --batch: receive DRM. With --encode: transmit as DRM.
--drm-mode <A|B|E>With --encode --drm: robustness mode.
--drm-bw <kHz>With --encode --drm: bandwidth 2.2 or 2.5.
--drm-qam <4|16|64>With --encode --drm: QAM.
--drm-prot <high|low>With --encode --drm: protection level.
--drm-interleave <short|long>With --encode --drm: interleaver.
--drm-rs <n>With --encode --drm: Reed-Solomon 0 (none) to 4.
--drm-size <bytes>With --encode --drm: compress the picture to about this many bytes (default: the size slider setting, 5000).
--rx-gain, --rx-noiseTest aids for --batch.
--encode <image>Headless: write the transmit audio for a picture to a WAV file.
--wav-out <file>With --encode: the WAV file to write.
--list-modesPrint the mode names and exit.
--install, --uninstallAppImage only: desktop integration.
-h, --help, -v, --versionHelp and version.

Run qsstv --help for the authoritative text of your version.