Skip to main content

Interface: VisualizerCapabilities

Defined in: packages/player/src/visualizer.ts:15

What the visualizer can deliver, probed from the linked libmpv rather than assumed.

Remarks

There is no per-platform branching here and no per-platform story to tell: both platforms read the same two mpv properties from the same source patch (ARCHITECTURE §11, §21). The one thing that can vary is the binary — a libmpv older than v1.1.9-rnmedia.3 / v0.7.2-rnmedia.3 has no PCM tap — and that is what VisualizerCapabilities.fft answers. A capability that cannot be served fails with a typed error, never a silent no-op.

Properties

fft

readonly fft: boolean;

Defined in: packages/player/src/visualizer.ts:17

Whether a frequency spectrum is available at all.


maxFftSize

readonly maxFftSize: number;

Defined in: packages/player/src/visualizer.ts:33

Largest legal VisualizerOptions.fftSize.


maxFps

readonly maxFps: number;

Defined in: packages/player/src/visualizer.ts:29

Fastest delivery rate, in frames per second.

This is the rate frames are delivered at, which is not the rate new spectral content arrives at: the tap only advances when the audio device consumes a chunk, measured at ~20-45 Hz on Android. Delivering faster is still worth doing, because the asymmetric smoothing below animates between targets and can only do that on frames it is given.


minFftSize

readonly minFftSize: number;

Defined in: packages/player/src/visualizer.ts:31

Smallest legal VisualizerOptions.fftSize.


waveform

readonly waveform: boolean;

Defined in: packages/player/src/visualizer.ts:19

Whether time-domain samples are available. Tracks fft.