Struct dp_psd_kernel_t¶
PSD's per-frame kernel: one frame of n samples in, nfft DC-centred power bins out, and their reading against the full-scale reference. More...
#include <psd_core.h>
Public Attributes¶
| Type | Name |
|---|---|
| double | cg |
| double | enbw |
| dp_fft_state_t * | fft |
| float _Complex * | frame |
| double | full_scale |
| size_t | n |
| size_t | nfft |
| float * | pwr |
| double | s2 |
| float _Complex * | spec |
| float * | w |
Detailed Description¶
The one place a frame becomes a spectrum. It is held BY VALUE by every object that turns frames into spectra PSD, which folds each into its average, and the Spectrogram, which emits each one so neither owns a copy of the window, the transform or the dBFS reference, and neither carries the other's machinery. Fill it with dp_psd_kernel_init() and release it with dp_psd_kernel_free(); the frame calls below use its scratch, so one kernel serves one thread at a time.
Public Attributes Documentation¶
variable cg¶
Window coherent gain, sum(w).
variable enbw¶
Equivalent noise bandwidth, bins: n * s2 / cg^2 (1.5 for Hann).
variable fft¶
Forward cf32 plan, size nfft.
variable frame¶
Windowed + zero-padded, length nfft.
variable full_scale¶
Amplitude that reads 0 dBFS.
variable n¶
Window / frame length (samples).
variable nfft¶
Zero-padded transform length.
variable pwr¶
DC-centred power scratch, length nfft.
variable s2¶
Window power, sum(w^2).
variable spec¶
FFT output scratch, length nfft.
variable w¶
Window, length n.
The documentation for this class was generated from the following file native/inc/doppler/psd/psd_core.h