.. | ||
leansdr | ||
CMakeLists.txt | ||
datvconstellation.h | ||
datvdemod.cpp | ||
datvdemod.h | ||
datvdemodgui.cpp | ||
datvdemodgui.h | ||
datvdemodgui.ui | ||
datvdemodplugin.cpp | ||
datvdemodplugin.h | ||
datvideorender.cpp | ||
datvideorender.h | ||
datvideostream.cpp | ||
datvideostream.h | ||
datvscreen.cpp | ||
datvscreen.h | ||
datvvideoplayer.h | ||
demoddatv.pro | ||
glshaderarray.cpp | ||
glshaderarray.h | ||
readme.md |
DATV demodulator plugin
Specific dependencies
- ffmpeg
- libavcodec-dev
- libavformat-dev
LeanSDR framework from F4DAV is intensively used. It has been integrated in the source tree and modified to suit SDRangel specific needs.
Introduction
This plugin can be used to view digital amateur analog television transmissions a.k.a DATV. The only supported standard for now is DVB-S in various modulations. The standard modulation is QPSK but experimental configurations with other PSK modulations (BPSK, 8PSK, QAMn) can be selected.
The whole bandwidth available to the channel is used. That is it runs at the device sample rate possibly downsampled by a power of two in the source plugin.
Interface
A: RF settings
A.1: Channel frequency shift
This is the shift of channel center frequency from RF passband center frequency
A.2: RF bandwidth
Sets the bandwidth of the channel filter
A.3: Channel power
Power of signal received in the channel (dB)
B: DATV section
B.1: Symbol constellation
This is the constellation of the PSK or QAM synchronized signal. When the demodulation parameters are set correctly (modulation type, symbol rate and filtering) and signal is strong enough to recover symbol synchronization the purple dots appear close to the white crosses. White crosses represent the ideal symbols positions in the I/Q plane.
B.2a: DATV signal settings
B.2a.1: DATV standard
For now only the DVB-S standard is available
B.2a.2: Modulation type
- BPSK: binary phase shift keying. Symbols are in π/4 and -3π/4 positions.
- QPSK: quadrature phase shift keying. Symbols are in π/4, 3π/4, -3π/4 and -π/4 positions.
- 8PSK: 8 phase shift keying a.k.a. π/4 QPSK. Symbols are in 0, π/4, π/2, 3π/4, π, -3π/4, -π/2 and -π/4 positions
- APSK16: amplitude and phase shift keying with 16 symbols
- APSK32: amplitude and phase shift keying with 32 symbols
- APSK64e: amplitude and phase shift keying with 64 symbols
- QAM16: quadrature amplitude modulation with 16 symbols
- QAM64: quadrature amplitude modulation with 64 symbols
- QAM256: quadrature amplitude modulation with 256 symbols
B.2a.3: Symbol rate
This controls the expected symbol rate
B.2a.4: FEC rate
Choice between 1/2 , 2/3 , 3/4, 5/6 and 7/8.
B.2a.5: Notch filter
LeanSDR feature: attempts to fix signal spectrum shape by eliminating peaks. This is the number of peaks to be tracked. It is safer to keep the 0 default (no notch).
B.2a.6: Fast lock
Faster signal decode but may yield more errors at startup.
B.2a.7: Allow drift
Small frequency drift compensation.
B.2a.8: Hard metric
Constellation hardening (LeanSDR feature).
B.2a.9: Viterbi
Viterbi decoding. Be aware that this is CPU intensive. Should be limited to FEC 1/2 , 2/3 and 3/4 in practice.
B.2a.10: Reset to defaults
Push this button when you are lost...
B.2a.11: Filter
- FIR Linear
- FIR Nearest
- RRC (Root Raised Cosine): when selected additional controls for roll-off factor (%) and excursion (dB) are provided.
B.2a.12: Amount of data decoded
Automatically adjusts unit (kB, MB, ...)
B.2a.13: Stream speed
B.2a.14: Buffer status
Gauge that shows percentage of buffer queue length
B.2b: DATV video stream
B.2b.1: Image thumbnail
Use full screen button (5) to switch to full screen video
B.2b.2: Stream information
B.2b.3: Stream decoding status
These non clickable checkboxes report the decoding status (checked when OK):
- data: reception on going
- transport: transport stream detected
- video: video data detected
- decoding: video being decoded
B.2b.4: Play/pause video playback
B.2b.4: Full screen mode
Click on this button to see video in full screen mode then click anywhere on the screen to exit full screen mode