wacrm/public
Arnas Donauskas 4fa29b7a45
refactor(inbox): record voice notes client-side, drop server ffmpeg
Follow-up to #259. Voice notes are encoded to Ogg/Opus in the browser via
opus-recorder (small WASM encoder, lazy-loaded on record), so there's no
server-side transcode and nothing to provision on the host. The server
stores the .ogg like any other attachment; WhatsApp renders it as a voice
note.

- Composer: MediaRecorder + /api/whatsapp/transcode-audio replaced with
  opus-recorder. Encoder worker vendored at public/opus/encoderWorker.min.js
  (no install-time download to fail), ignored by eslint + prettier.
- Removed the transcode route, the audio-transcode lib + tests, the
  ffmpeg-static dep + ambient types, the FFMPEG_PATH env doc, and the
  unused transcodeAudio rate limit.
- Added opus-recorder ambient types.

Still behind the 'chat_media' beta flag with per-kind size caps.
typecheck/lint/build green; 414 tests pass.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-18 11:27:12 +03:00
..
opus refactor(inbox): record voice notes client-side, drop server ffmpeg 2026-06-18 11:27:12 +03:00
file.svg Initial commit from Create Next App 2026-04-16 17:52:39 +03:00
globe.svg Initial commit from Create Next App 2026-04-16 17:52:39 +03:00
inbox-doodle.svg feat(inbox): WhatsApp-style doodle background in the chat area 2026-05-22 10:06:34 +03:00
next.svg Initial commit from Create Next App 2026-04-16 17:52:39 +03:00
vercel.svg Initial commit from Create Next App 2026-04-16 17:52:39 +03:00
window.svg Initial commit from Create Next App 2026-04-16 17:52:39 +03:00