UNPKG

@chordbook/tuner

Version:

The tuner used by ChordBook.app

35 lines (32 loc) 904 B
import { PitchDetector } from 'pitchy'; interface TunerConfig { a4?: number; clarityThreshold?: number; minVolumeDecibels?: number; bufferSize?: number; smoothingTimeConstant?: number; minFrequency?: number; maxFrequency?: number; updateInterval?: number; sampleRate?: number; onNote?: (note: Note) => void; } declare const TunerDefaults: TunerConfig; interface Note { name: string; value: number; cents: number; octave: number; frequency: number; clarity: number; } declare function createTuner(config?: TunerConfig): { start: () => Promise<void>; stop: () => Promise<void>; context: AudioContext; analyser: AnalyserNode; detector: PitchDetector<Float32Array>; config: TunerConfig; getNote: (frequency: number, clarity?: number) => Note; }; export { type Note, type TunerConfig, TunerDefaults, createTuner };