OSCILLA playground
Source & Pattern
- Spectrum
- Requested frequency
Spectrogram
Microphone Analyzer
Requested:
Microphone detected:
Not a calibrated measurement. Microphone frequency response varies.
Device & Limits
- Sample rate
- —
- Nyquist
- —
- Safe max
- —
Limits
The limit is scheduled on the audio clock, so it holds even if the page stalls. It also caps the Finite tone. Other programmed patterns stop at their own end (max 30 s); a continuous sweep repeat needs “Allow continuous playback”.
Output device
Default audio output
Web Audio can generate digital signals within sampling limits. Actual speaker output is unknown.
Pattern Sequencer
Sweep
Filter Lab
Envelope (ADSR)
Additive Synthesis
Phase & Stereo
Bioacoustics
Ranges are approximate and vary by source and individual.
Sources
Dual Oscillator
Measure
Guided measurement
Frequency UNCALIBRATED Level UNCALIBRATEDStimulus
- Runs
- Noise check
Live input
- Frequency profile
- Levels
Run the setup check to read the input device, its sample rate and the processing the browser applies.
The microphone opens only for the setup check, the measurement and the live RTA, and is released when they end. Audio stays in this page.
Quality
Measurement result
Measurement setup
Experiment
The recording is analysed in this page and discarded when the analysis ends: it is never stored or exported. A saved experiment keeps derived results. One of them, the impulse response, is computed from the recording, so other sound the microphone picked up during the sweep, and above all just after it, can be recovered from it, also from an exported file.
Experiments
Definitions
-
- No definitions yet. A definition fixes what to measure and how; every experiment started from it records its version.
Saved experiments
Findings
A finding is your interpretation, linked to the evidence it rests on. A measurement is what was observed or computed; recording a finding never changes it.
-
Your judgement:
- No evidence linked.
- No findings yet. Record one from an experiment's detail or from a comparison.
Experiment
Open an experiment from the list to see its summary, provenance and response.
Learn
Presets
-
- No presets here yet. Use “Save current…” or the status bar “Save Preset”.
-
- Nothing played in this page view yet.
Studio
Node library
Signal graph
Inspector
Timeline
About · OSCILLA
About OSCILLA
See sound. Shape frequency.
A zero-install, scientifically honest acoustic laboratory in your browser: generate, measure and reproduce sound experiments, and know how far each result can be trusted.
Measure the response of your speaker, room and microphone chain, compare two setups with every difference named, save an experiment and repeat it, and patch a signal graph in the Studio.
- Version
- Release
- Commit
- (opens in a new tab) source build
- Channel
- Source digest
- Runtime
- One self-contained HTML file
- Audio
- Web Audio API, in the browser
- Network
- None at runtime; nothing is sent anywhere, no analytics
- Levels
- Relative (dBFS); dB SPL only with a level calibration in MEASURE
Built in one night. Not built as a throwaway.
→ CEST first tracked commit → modular V2 on main 5 h 51 min
- 01 · Plan First tracked commit: rules and a 95-section plan Recorded
- 02 · V1 Single-file instrument, tagged v1.0.0 Released
- 03 · V2 Modular acoustic laboratory Released
- 04 · Measure Measurement architecture (V3) Released
- 05 · Studio Composition and signal flow (V3.1) Released
- 06 · Review Independent DSP review; Studio links and a derived Signal Path (V3.2) Released
- 07 · Navigate Eight workspaces; every Studio review finding fixed (V3.3) Released
- 08 · Records Release records; an About page the release gate keeps current (V3.4) Released
- 09 · Runtime The Studio says what is running and why; plan identity and divergence (V3.5) Released
- 10 · Evidence A completed experiment is immutable, each experiment has an identity, provenance names the exact build (V3.6) Released
- 11 · Comparison Two experiments are compared by what changed between them, against a chosen baseline (V3.7) Released
- 12 · Trace One edit followed from intent to the running graph: applied, stored or refused (V3.8) Released
- 13 · Definitions An experiment is executed from a versioned definition and records which version it used (V3.9) Released
- 14 · Lineage An experiment states what produced each value and what repeating it would need, from what it stored (V3.10) Released
- 15 · Findings A finding cites the stored experiments it rests on, and a stored record links to the records connected to it (V3.11) Released
- 16 · Audit The Studio passes its final review, and a deployed page names its release state: the release itself, or how far after it (V3.12) Current
A Origin
OSCILLA began with a simple question: how much of an acoustic laboratory could live entirely inside a web browser?
The first version was deliberately direct:
- Generate
- Hear
- See
- Inspect
From there it grew into a denser instrument for frequency, phase, modulation, filtering, sequencing and microphone comparison, without hiding the signal path.
B Engineering
The speed was unusual. The constraints were deliberately not.
- Deterministic The same source builds the same bytes; the committed file is the deployed file.
- Protected V1 engine schedules are frozen and replayed; a browser gate runs Chromium, Firefox and WebKit.
- Verified The interface is compared against a visual reference.
- Recorded Architecture decisions are written down with their reasons.
- Honest Approximation is never presented as measurement; relative is not calibrated.
- Private No server, no account, no analytics. A measurement's recording is discarded after its analysis; a saved run keeps derived results, whose impulse response can still carry room sound.
C Method
Much of the implementation was AI-assisted. That is how OSCILLA is built, not why it exists.
- Human judgment defined the product and the architecture.
- AI accelerated implementation.
- Majordomus kept the rules, plan and decisions in the repository and checked them.
- The repository remained the source of truth.
Engineering system
Majordomus
A repository-native engineering control plane for human and AI contributors.
Instead of depending on an AI conversation to remember how OSCILLA should work, the repository carries its own machine-readable engineering context: every contributor, person or model, starts from the same rules and plan. Where it is checked: on each commit and in CI, Majordomus validates that context; before a push, a task's scope; and every pull request runs the test suites and a test that each path the claims, rules and guides name exists and each claim's test runs in CI. Review covers what no check can.
- Architectural rules
- Repository context
- Task scope
- Plans & milestones
- Decision records
- Claims & tests
- Workflows
AI accelerated implementation.
Majordomus supplied structure, memory and constraints.
The repository remained the source of truth.
D Two experiments
OSCILLA explores sound and frequency. Its development explores a narrower question: can implementation speed rise without architecture, verification and product identity dissolving around it?
The measurement tooling has shipped as Measure and Experiments, and composition and signal flow as Studio.
- Created by
- Tomas Korcak
- Contact
- korczis@gmail.com
- Licence
- MIT; the full text is in the comment at the top of this file.
- Built with
- Alpine.js and uPlot (MIT), p5.js (LGPL-2.1, embedded unmodified); licence texts are in the comment at the top of this file.