mirror of
https://github.com/Boof2015/prism.git
synced 2026-08-18 19:44:16 +02:00
make Spectrum and Spectrogram more frequency accurate and detail preserving
This commit is contained in:
@@ -1,6 +1,7 @@
|
||||
import type { ScopeSettings } from '../types/settings'
|
||||
import type { ResolvedSpectrogramTheme } from '../types/theme'
|
||||
import type { SpectrogramOptions } from '../renderer/visualizers/Spectrogram'
|
||||
import { nominalFrequencyBoundsForRange } from '../types/frequencyScale'
|
||||
|
||||
/**
|
||||
* Map Prism's spectrogram settings + resolved theme to Spectrogram options.
|
||||
@@ -10,16 +11,22 @@ export function spectrogramSettingsToOptions(
|
||||
settings: ScopeSettings['spectrogram'],
|
||||
theme: ResolvedSpectrogramTheme,
|
||||
): SpectrogramOptions {
|
||||
const range = nominalFrequencyBoundsForRange(settings.frequencyRangeMode)
|
||||
return {
|
||||
lineColor: theme.mono,
|
||||
heatColors: theme.heatColors,
|
||||
backgroundColor: theme.background,
|
||||
gridColor: theme.guides,
|
||||
labelColor: theme.labels,
|
||||
minFrequency: range.minFrequency,
|
||||
maxFrequency: range.maxFrequency,
|
||||
fftSize: settings.fftSize,
|
||||
tiltDbPerOctave: settings.tiltDbPerOctave,
|
||||
scrollSpeed: settings.scrollSpeed,
|
||||
contrast: settings.contrast,
|
||||
clarityMode: settings.clarityMode,
|
||||
scaleMode: settings.scaleMode,
|
||||
showGrid: settings.showGrid,
|
||||
orientation: 'horizontal',
|
||||
colorScheme: settings.colorScheme,
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user