whisper-onnx-speech-to-text
Version:
Node.js plugin for speech recognition that works with OpenAI's Whisper models using ONNX.
64 lines (43 loc) • 1.8 kB
Markdown
# whisper-onnx-speech-to-text
[](https://npmjs.org/package/whisper-onnx-speech-to-text)
[](https://npmjs.org/package/whisper-onnx-speech-to-text)
Transcribe speech to text on node.js using OpenAI's Whisper models converted to cross-platform ONNX format
## Installation
1. Add dependency to project
```text
npm install whisper-onnx-speech-to-text
```
2. Download whisper model of choice
```text
npx whisper-onnx-speech-to-text download
```
## Usage
```js
import { initWhisper } from 'whisper-onnx-speech-to-text';
const whisper = await initWhisper("base.en");
const transcript = await whisper.transcribe("example/sample.wav");
```
### Result (JSON)
```javascript
[
{
text: " And so my fellow Americans ask not what your country can do for you, ask what you can do for your country."
chunks: [
{ timestamp: [0, 8.18], text: " And so my fellow Americans ask not what your country can do for you" },
{ timestamp: [8.18, 11.06], text: " ask what you can do for your country." }
]
}
]
```
## API
### initWhisper
The `initWhisper()` takes the name of the model and returns an instance of the Whisper class initialized with the chosen model.
### Whisper
The `Whisper` class has the following methods:
- `transcribe(filePath: string, language?: string)` : transcribes speech from wav file.
- `filePath`: path to wav file
- `language`: target language for recognition. Name format - the full name in English like `'spanish'`
- `disposeModel()` : dispose initialized model.
## Made with
- [Transformers.js](https://www.npmjs.com/package/@xenova/transformers)
- [ShellJS](https://www.npmjs.com/package/shelljs)