ranshufang55/sonascope
ranshufang55/sonascope has 34 GitHub stars and 202 forks. Star changes are not measured yet. Last checked 2026-11-12 01:10 UTC. Last push 2026-09-10.
So werden diese Zahlen gemessen
A local audio visualization workbench and TypeScript DSP library with waveform, spectrum, spectrogram, Web Audio, WAV interchange and streaming analysis.
Gemessener Sternzuwachs
- in 24h
- Verlauf wird gesammelt
- in 7 days
- Verlauf wird gesammelt
- in 15 days
- Verlauf wird gesammelt
- in 1 month
- Verlauf wird gesammelt
Nettoänderungen in überlappenden Zeiträumen, keine Tagessummen. Fehlende Messwerte bleiben leer. Sterne zeigen Interesse, nicht Qualität.
README.md
OriginalSonascope
Local audio analysis, visualized. A dependency-free TypeScript DSP library and browser workbench by Huang Zeyao, a student at Sun Yat-sen University.

Explore audio
git clone https://github.com/ranshufang55/sonascope.git
cd sonascope
npm ci
npm run demo
Open http://127.0.0.1:4173. Compare synthetic harmonics, chirps, pulses and noise, or choose a local recording. The workbench displays waveform, selected-frame spectrum and spectrogram with linear/log frequency scales, three palettes, FFT/window controls, zoom and pan. Playback and microphone capture share an explicit lifecycle. Export WAV, PNG, JSON or CSV locally.
Use the library
import { generateSine, analyzeAudio, serializeAnalysis } from './dist/index.js';
const audio = generateSine(48000, 0.1, 1000, { amplitude: 0.5 });
const analysis = analyzeAudio(audio, { fftSize: 1024, hopSize: 256 });
console.log(serializeAnalysis(analysis));
Run npm run build first. Package subpaths are sonascope, sonascope/core, sonascope/io and sonascope/browser; a local tarball can be created with npm pack. This repository does not require an npm registry release.
What's included
| Area | Capabilities |
|---|---|
| DSP | FFT/IFFT, STFT/ISTFT, windows, spectral/time descriptors, mel filters, resampling |
| Audio | Planar buffers, channel conversion, slicing, concatenation, fades, normalization |
| Interchange | PCM 8/16/24/32 and float 32/64 WAV; validated analysis JSON/CSV |
| Rendering | Peak-preserving waveform, spectrum, linear/log spectrogram, bounded viewport |
| Streaming | Incremental frames, bounded history, microphone resource cleanup |
The demo accepts files up to 20 MB and 30 seconds. Core operations have explicit allocation limits. Microphone capture needs localhost or HTTPS and browser permission. Audio stays in the page; the application has no upload service or analytics.
Verify
npm run build
npm run test:all
npm run format:check
npm run test:package
Tests include independent direct Fourier references, exhaustive short-input checks, transformation properties, full export/schema goldens and executable examples. CI covers Node.js 22 and 24. See contribution instructions.
Read the guides, run the examples, or inspect the changelog. The companion project Speechloom handles speech model evaluation and dataset preparation.
License
MIT © Huang Zeyao.
Ähnliche Projekte entdecken
ytdl-org/youtube-dl
Kommandozeilenprogramm zum Herunterladen von Videos von YouTube.com und anderen Videoseiten
141,539 Sterneexcalidraw/excalidraw
Virtuelles Whiteboard zum Skizzieren von Diagrammen im handgezeichneten Stil
135,492 Sternegodotengine/godot
Godot Engine – Plattformübergreifende 2D- und 3D-Spiele-Engine
120,003 Sternemrdoob/three.js
JavaScript-3D-Bibliothek.
118,122 Sterne