Transcription Audio

Service de Speech-to-Text par IA

Convertissez vos fichiers audio en texte avec une précision exceptionnelle. Notre API utilise des modèles de pointe pour fournir des transcriptions de qualité professionnelle dans plus de 50 langues.

Multi-formats

MP3, WAV, M4A, FLAC et plus

50+ langues

Détection automatique incluse

Timestamps

Timing mot par mot

Haute précision

Modèles IA de pointe

Endpoint principal

POST/v1/transcribe

Transcrit un fichier audio en texte. Accepte les fichiers jusqu'à 100MB et 4 heures de durée.

Paramètres (multipart/form-data)

NomTypeDescription
filerequisFileFichier audio à transcrire. Formats supportés : MP3, WAV, M4A, FLAC, OGG, WEBM, MP4
languagestringCode langue ISO 639-1 (fr, en, es...) ou "auto" pour détection automatique. Défaut : auto
timestampsbooleanInclure les timestamps pour chaque mot. Défaut : true
diarizationbooleanActiver la détection des locuteurs. Défaut : false
punctuationbooleanAjouter automatiquement la ponctuation. Défaut : true
formatstringFormat de sortie : "json", "text", "srt", "vtt". Défaut : json

Réponse succès

200
{
  "success": true,
  "data": {
    "text": "Bonjour et bienvenue dans cette présentation. Aujourd'hui nous allons parler d'intelligence artificielle.",
    "language": "fr",
    "language_confidence": 0.97,
    "duration": 8.5,
    "words": [
      {
        "word": "Bonjour",
        "start": 0.0,
        "end": 0.42,
        "confidence": 0.98
      },
      {
        "word": "et",
        "start": 0.44,
        "end": 0.52,
        "confidence": 0.99
      },
      {
        "word": "bienvenue",
        "start": 0.56,
        "end": 1.1,
        "confidence": 0.97
      }
    ],
    "segments": [
      {
        "start": 0.0,
        "end": 4.2,
        "text": "Bonjour et bienvenue dans cette présentation.",
        "speaker": null
      }
    ]
  },
  "credits_used": 2,
  "credits_remaining": 98,
  "processing_time_ms": 1250
}

Exemples d'utilisation

Transcription basique

cURL
bash
curl -X POST https://api.genesisai.fr/v1/transcribe \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -F "file=@interview.mp3"

Avec options avancées

cURL
bash
curl -X POST https://api.genesisai.fr/v1/transcribe \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -F "file=@meeting.wav" \
  -F "language=fr" \
  -F "diarization=true" \
  -F "format=json"

Export sous-titres SRT

cURL
bash
curl -X POST https://api.genesisai.fr/v1/transcribe \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -F "file=@video.mp4" \
  -F "format=srt" \
  -o subtitles.srt

Le format SRT est idéal pour les sous-titres vidéo :

1
00:00:00,000 --> 00:00:04,200
Bonjour et bienvenue dans cette présentation.

2
00:00:04,500 --> 00:00:08,500
Aujourd'hui nous allons parler d'intelligence artificielle.

Intégration SDK

JavaScript / Node.js

1import { GenesisAI } from '@genesisai/sdk';
2import fs from 'fs';
3
4const client = new GenesisAI(process.env.API_KEY);
5
6// Depuis un fichier
7const result = await client.transcribe({
8 file: fs.createReadStream('audio.mp3'),
9 language: 'fr',
10 diarization: true
11});
12
13console.log(result.text);
14console.log(`Durée: ${result.duration}s`);
15
16// Depuis une URL
17const fromUrl = await client.transcribe({
18 url: 'https://example.com/audio.mp3'
19});

Python

1from genesisai import GenesisAI
2import os
3
4client = GenesisAI(os.environ["API_KEY"])
5
6# Depuis un fichier
7with open("audio.mp3", "rb") as f:
8 result = client.transcribe(
9 file=f,
10 language="fr",
11 diarization=True
12 )
13
14print(result.text)
15print(f"Durée: {result.duration}s")
16
17# Depuis une URL
18from_url = client.transcribe(
19 url="https://example.com/audio.mp3"
20)

Détection des locuteurs

La diarisation permet d'identifier automatiquement les différents intervenants dans un enregistrement audio (réunions, interviews, podcasts).

Avec diarisation
bash
curl -X POST https://api.genesisai.fr/v1/transcribe \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -F "file=@meeting.mp3" \
  -F "diarization=true"
Réponse avec locuteurs
json
{
  "success": true,
  "data": {
    "text": "...",
    "segments": [
      {
        "start": 0.0,
        "end": 5.2,
        "text": "Bonjour à tous, merci d'être présents.",
        "speaker": "SPEAKER_00"
      },
      {
        "start": 5.5,
        "end": 10.8,
        "text": "Merci de nous recevoir. On peut commencer ?",
        "speaker": "SPEAKER_01"
      },
      {
        "start": 11.2,
        "end": 14.5,
        "text": "Oui, bien sûr. Commençons par le premier point.",
        "speaker": "SPEAKER_00"
      }
    ],
    "speakers_count": 2
  }
}

Conseil

La diarisation fonctionne mieux avec un audio de bonne qualité et des voix distinctes. Elle consomme 1 crédit supplémentaire par minute d'audio.

Formats supportés

Formats audio

MP3WAVM4AFLACOGGWEBMMP4MOV

Langues populaires

Françaisfr
Anglaisen
Espagnoles
Allemandde
Italienit
Portugaispt
Néerlandaisnl
Détection autoauto

Limites et tarification

ParamètreLimite
Taille maximale fichier100 MB
Durée maximale4 heures
Coût de base1 crédit / minute
Diarisation+1 crédit / minute
Rate limit60 requêtes / minute

Gestion des erreurs

Fichier trop volumineux

413
{
  "success": false,
  "error": {
    "code": "FILE_TOO_LARGE",
    "message": "Le fichier dépasse la limite de 100MB",
    "max_size_mb": 100,
    "file_size_mb": 125.5
  }
}

Format non supporté

415
{
  "success": false,
  "error": {
    "code": "UNSUPPORTED_FORMAT",
    "message": "Format de fichier non supporté",
    "supported_formats": ["mp3", "wav", "m4a", "flac", "ogg", "webm", "mp4", "mov"]
  }
}

Crédits insuffisants

402
{
  "success": false,
  "error": {
    "code": "INSUFFICIENT_CREDITS",
    "message": "Crédits insuffisants pour cette opération",
    "required": 5,
    "available": 2
  }
}

À explorer ensuite

Transcription Audio | Docs - GenesisAI