// Reference tone — the A440 of audio testing. // Run: node examples/tone.js sine 440 2s // Run: node examples/tone.js wave=triangle freq=1k -d 5s // Keys: ↑/↓ ±semitone · ←/→ cycle waveform · q quit import { AudioContext } from 'web-audio-api' import { init as buildTone } from './graphs/tone.js' import { args, num, sec, keys, status, clearLine, noteName, pausedTag, help } from './utils.js' help({ description: 'play a reference tone', usage: ['', '[wave] [frequency] [duration]', 'wave=triangle freq=1k dur=5s'], options: [ ['wave=', 'sine (default), triangle, square, or sawtooth'], ['freq=', 'frequency or note name such as 440, 1k, A4, or C#3 (default: 440)'], ['-d, --duration