mirror of
https://github.com/jamiepine/voicebox.git
synced 2026-09-15 12:50:42 -07:00
- Created new directory structure for documentation under `/docs2`. - Added `.gitignore` to exclude build artifacts and dependencies. - Introduced `package.json`, `next.config.mjs`, and `postcss.config.mjs` for project configuration. - Implemented MDX components in `mdx-components.tsx` for rendering documentation. - Migrated existing documentation content and created new files for auto-updater and other features. - Established compatibility layer for Mintlify components in `mintlify-compat.tsx`. - Set up OpenAPI documentation in `openapi.json`. - Updated README and migration guide to reflect new structure and usage instructions. - Ensured all components and pages are ready for development and deployment with Fumadocs.
96 lines
1.3 KiB
Plaintext
96 lines
1.3 KiB
Plaintext
---
|
|
title: "Recordings API"
|
|
description: "Record and transcribe audio"
|
|
---
|
|
|
|
## Start Recording
|
|
|
|
```http
|
|
POST /recordings/start
|
|
```
|
|
|
|
**Request:**
|
|
```json
|
|
{
|
|
"source": "microphone"
|
|
}
|
|
```
|
|
|
|
**Response:**
|
|
```json
|
|
{
|
|
"recording_id": "rec123",
|
|
"status": "recording"
|
|
}
|
|
```
|
|
|
|
## Stop Recording
|
|
|
|
```http
|
|
POST /recordings/stop
|
|
```
|
|
|
|
**Request:**
|
|
```json
|
|
{
|
|
"recording_id": "rec123"
|
|
}
|
|
```
|
|
|
|
**Response:**
|
|
```json
|
|
{
|
|
"recording_id": "rec123",
|
|
"audio_url": "/audio/rec123.wav",
|
|
"duration": 15.5
|
|
}
|
|
```
|
|
|
|
## Transcribe Audio
|
|
|
|
```http
|
|
POST /transcribe
|
|
```
|
|
|
|
**Request:** (multipart/form-data)
|
|
```
|
|
audio: <file>
|
|
language: "en" (optional)
|
|
```
|
|
|
|
**Response:**
|
|
```json
|
|
{
|
|
"text": "Transcribed speech text here",
|
|
"language": "en",
|
|
"duration": 15.5,
|
|
"confidence": 0.95
|
|
}
|
|
```
|
|
|
|
## TypeScript Example
|
|
|
|
```typescript
|
|
import { VoiceboxClient } from '@/lib/api'
|
|
|
|
const client = new VoiceboxClient({
|
|
baseUrl: 'http://localhost:17493'
|
|
})
|
|
|
|
// Start recording
|
|
const recording = await client.startRecording({
|
|
source: 'microphone'
|
|
})
|
|
|
|
// ... record audio ...
|
|
|
|
// Stop recording
|
|
const result = await client.stopRecording(recording.id)
|
|
|
|
// Transcribe
|
|
const transcription = await client.transcribe(audioFile, 'en')
|
|
console.log(transcription.text)
|
|
```
|
|
|
|
For full API documentation, visit `http://localhost:17493/docs` when the server is running.
|