@rfkit/spectrum-analyzer
Version:
A high-performance spectrum analyzer library for RF signal processing, supporting real-time spectrum analysis, waterfall display, and multi-segment frequency scanning
19 lines (18 loc) • 837 B
TypeScript
import type { TimestampedFloat32Array } from '../SpectrumAnalyzer/types';
import type { WaterfallAnalyzerConfig, WaterfallSamplingOptions, WaterfallSnapshot } from './types';
export default class WaterfallAnalyzer {
private readonly maxFrames?;
private readonly onWaterfallUpdate?;
private sourceData;
private samplingOptions?;
private snapshot;
constructor(config?: WaterfallAnalyzerConfig);
setData(frames: readonly TimestampedFloat32Array[]): Readonly<WaterfallSnapshot>;
appendFrame(source: TimestampedFloat32Array): Readonly<WaterfallSnapshot>;
updateSamplingRange(options: WaterfallSamplingOptions): Readonly<WaterfallSnapshot>;
getSnapshot(): Readonly<WaterfallSnapshot>;
private createSnapshot;
private createReusableRows;
private getSourceSize;
private publishSnapshot;
}