Ssdv
A robust version of the JPEG image format, for transmission over an unreliable medium.
Install / Use
/learn @fsphil/SsdvREADME
SSDV - simple command line app for encoding / decoding SSDV image data
Created by Philip Heron phil@sanslogic.co.uk http://www.sanslogic.co.uk/ssdv/
A robust packetised version of the JPEG image format.
Uses the Reed-Solomon codec written by Phil Karn, KA9Q.
NOTICE
The GitHub repository at https://github.com/fsphil/ssdv has been archived and is no longer being updated. The new location is at:
https://codeberg.org/fsphil/ssdv
ENCODING
$ ssdv -e -c TEST01 -i ID input.jpeg output.bin
This encodes the 'input.jpeg' image file into SSDV packets stored in the 'output.bin' file. TEST01 (the callsign, an alphanumeric string up to 6 characters) and ID (a number from 0-255) are encoded into the header of each packet. The ID should be changed for each new image transmitted to allow the decoder to identify when a new image begins.
The output file contains a series of fixed-length SSDV packets (default 256 bytes). Additional data may be transmitted between each packet, the decoder will ignore this.
DECODING
$ ssdv -d input.bin output.jpeg
This decodes a file 'input.bin' containing a series of SSDV packets into the JPEG file 'output.jpeg'.
LIMITATIONS
Only JPEG files are supported, with the following limitations:
- Greyscale or YUV/YCbCr colour formats
- Width and height must be a multiple of 16 (up to a resolution of 4080 x 4080)
- Baseline DCT only
- The total number of MCU blocks must not exceed 65535
INSTALLING
make
TODO
- Allow the decoder to handle multiple images in the input stream.
- Experiment with adaptive or multiple huffman tables.
Related Skills
node-connect
345.4kDiagnose OpenClaw node connection and pairing failures for Android, iOS, and macOS companion apps
frontend-design
104.6kCreate distinctive, production-grade frontend interfaces with high design quality. Use this skill when the user asks to build web components, pages, or applications. Generates creative, polished code that avoids generic AI aesthetics.
openai-whisper-api
345.4kTranscribe audio via OpenAI Audio Transcriptions API (Whisper).
qqbot-media
345.4kQQBot 富媒体收发能力。使用 <qqmedia> 标签,系统根据文件扩展名自动识别类型(图片/语音/视频/文件)。
