Skip to content

About

audio dev tools

Resources

Stars

0 stars

Watchers

0 watching

Forks

Latest commit

 

History

71 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

🎵 AudioTools.dev

Free open source audio processing ecosystem — audiotools.dev

Privacy-first audio tools that run entirely in your browser. No uploads, no accounts, no usage limits.

Online Tools

Tool URL Technology
Audio Converter /converter/ Mediabunny (WebCodecs + WASM encoders)
Voice to Text /voice-to-text/ Web Speech API + Whisper (Transformers.js)
Text to Speech /text-to-speech/ Web Speech Synthesis API
Audio Trimmer /audio-trimmer/ Web Audio API
Speed Changer /audio-speed-changer/ WSOLA time-stretching
Volume Booster /volume-booster/ Web Audio API, soft limiter
Audio Joiner /audio-joiner/ Web Audio API, crossfade
Audio Compressor /audio-compressor/ Web Audio API + Mediabunny MP3

Chinese pages: /zh/, /zh/converter/, and /zh/ versions of Volume Booster, Text to Speech, Audio Joiner and Audio Compressor.

Architecture

audiotools.dev/
├── index.html, zh/         ← Home page (EN, ZH) with the tool helper
├── <tool>/index.html       ← One folder per tool; tool-specific styles inline
├── style.css               ← Shared look: tokens, nav, footer, tool header and panel, sections
├── assistant.js            ← Home helper + "continue with this file" hand-off between tools
├── media.js                ← Shared decoding/encoding on Mediabunny: convertFile (streams, video in), encodeBuffer
├── vendor/mediabunny/      ← Self-hosted Mediabunny + MP3/FLAC/AAC encoder bundles (MPL-2.0)
├── batch.js                ← Several files at once: per-file list + ZIP download (Converter, Compressor)
├── audio-export.js         ← MP3 (192 kbps) or WAV download for edited audio
├── support.js              ← GA4 events + support line after a successful result
├── voice-to-text/whisper-worker.js ← Whisper in a Web Worker
├── about/, changelog/, privacy/, terms/, 404.html
├── sitemap.xml, robots.txt, llms.txt
└── CNAME

How it works

Audio tools

  • Decoding: Web Audio API (WAV, MP3, FLAC, OGG, AAC, M4A, WebM, or anything else the browser can decode)
  • WAV encoding: custom JS encoder (lossless)
  • Converter: Mediabunny reads audio and video containers in pieces and decodes with WebCodecs; output MP3, M4A (AAC), WAV or FLAC. Browsers without WebCodecs fall back to Web Audio decoding.
  • MP3 / FLAC / AAC encoding: Mediabunny encoder extensions (LAME and FLAC in WebAssembly, in a worker; AAC only where the browser has no encoder)
  • The other tools save MP3 or WAV. Nothing is uploaded; there is no server.

Voice to Text

  • Live dictation uses the browser's built-in Web Speech Recognition API (Chrome/Safari may process audio on the vendor's servers).
  • Private mode transcribes audio files and microphone recordings with Whisper (tiny/base, q8) via Transformers.js in a Web Worker (voice-to-text/whisper-worker.js). Audio is decoded and resampled to 16 kHz mono in the browser; only the model weights are downloaded from Hugging Face and cached.

SEO maintenance

  • python3 scripts/seo_sync.py rewrites the FAQPage JSON-LD on every page from the FAQ that is visible on that page, and refreshes <lastmod> in sitemap.xml from git. Run it after editing a FAQ or a page (needs beautifulsoup4).
  • CI (.github/workflows/seo-check.yml) runs scripts/seo_sync.py --check and fails if the markup and the visible FAQ drift apart.
  • python3 scripts/build_zh.py rebuilds the Chinese tool pages (volume booster, text to speech, joiner, compressor) from the English ones with the translation tables in the script, and keeps hreflang, the 中文/EN switch and the Chinese navigation in step. It stops if an English string it translates has changed, and runs scripts/seo_sync.py at the end.
  • python3 scripts/build_landing.py rebuilds the format pages (/mp4-to-mp3/, /video-to-mp3/, /mp3-to-wav/, /wav-to-mp3/ and their /zh/ versions) from the converter pages: same code, own copy and FAQ, output format preselected via <body data-default-format>. Run it after changing a converter page; it also refreshes the "Popular conversions" links on the converters and runs seo_sync.py.
  • Social preview images live in og/ (1200×630, one per tool).

Deployment

The site is static HTML — deploy to GitHub Pages:

git add .
git commit -m "Update audiotools.dev"
git push origin main

GitHub Pages serves from the main branch. The CNAME file points to audiotools.dev.

Open Source Projects

This site is the hub for the audio tools ecosystem:

Project Language Description
go-audio-converter Go Pure Go audio converter — no FFmpeg, custom FLAC encoder
voice-to-text Python Bulk voice transcription — Whisper, faster-whisper, OpenAI, Groq
music_recognition Python Bulk music identification via Shazam + auto ID3 tagging
audiobook-cleaner Python AI noise removal — MDX-Net, VR, Roformer models

Tech Stack

  • Frontend: Vanilla HTML/CSS/JS (no frameworks, fast loading)
  • Audio Processing: Web Audio API, Mediabunny, Transformers.js (Whisper)
  • Hosting: GitHub Pages
  • SEO: JSON-LD structured data, Open Graph, semantic HTML

License

MIT — Roman Gordienko

About

audio dev tools

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages