All notable changes to this project will be documented in this file.
The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.
- react-native support
- demo web app
- server app example
- support more audio output format
- able to run custom ffmpeg command
- expose onTranscribing event
- lamejs as new dependency
- audio recorded from microphone will be in lossless .wav format and will be converted to mp3 for cross-browser suppport
- recorded mp3 be optimized for speech with bitrate of 96k and sample rate of 44.1k
- add missing mode to onWhispered dependency list
- remove excessive use of useCallback
- add mode option for Whisper API, choose either transcriptions or translations (currently only support translation to English)
- default timeSlice from 2000ms to 1000ms
- streaming option for real-time trascription
- timeSlice option to control onDataAvailable event
- onDataAvaiable option for getting recorded blob in interval based on timeSlice
- recording in higher audio quality to help Whisper in transcription
- customServer option, deprecated since 0.0.11
- autoTranscribe default to true
- update examples in README.md
- add onTranscribe callback for handling transcription using custom server
- add whisperConfig to control Whisper API when trascribing
- autoTranscribe config, default to false. useWhisper will not longer try to transcribe after recorder stopped.
- deprecated customServer, use onTranscribe instead
- this changelog file
- comments to every functions and variables
- @chengsokdara/react-hooks-async for useCallbackAsync and useEffectAsync
- add Github Actions CI/CD
- now will not send audio to Whisper if converted mp3 audio is empty
- transcripting state changed to transcribing to make it a valid word
- move constants string to configs.ts
- hooks directory, now use @chengsokdara/react-hooks-async package instead
- remove console.log from distribution build