@aristech-org/tts-client
Version:
A Node.js client library for the Aristech Text-to-Speech API
69 lines (48 loc) • 1.77 kB
Markdown
This is the NodeJS client implementation for the Aristech TTS-Server.
```bash
npm install @aristech-org/tts-client
```
```typescript
import { TtsClient } from '@aristech-org/tts-client'
import fs from 'fs'
const client = new TtsClient({ host: 'tts.example.com' })
const buffer = await client.synthesize({
text: 'Hello, world!',
options: { voiceId: 'anne_en_GB' },
})
fs.writeFileSync('path/to/output/file.wav', buffer)
```
There are several examples in the `examples` directory:
- [file.ts](examples/file.ts): Pretty much the same as the example above.
- [streaming.ts](examples/streaming.ts): Demonstrates how to stream audio to a sox process which plays the audio as it is being streamed.
- [voices.ts](examples/models.ts): Demonstrates how to get the available voices from the server.
- [phoneset.ts](examples/phoneset.ts): Demonstrates how to get the phoneset for a voice.
- [transcribe.ts](examples/transcribe.ts): Demonstrates how to get how a voice would pronounce a given word.
You can run the examples directly using `tsx` like this:
1. Create a `.env` file in the [node](.) directory:
```sh
HOST=tts.example.com
TOKEN=your-token
SECRET=your-secret
```
2. Run the examples, e.g.:
```sh
npx tsx examples/streaming.ts
```
To rebuild the generated typescript files from the proto file, run:
```bash
npm run generate
```
To build the library, run:
```bash
npm run build
```