> ## Documentation Index
> Fetch the complete documentation index at: https://docs.evolink.ai/llms.txt
> Use this file to discover all available pages before exploring further.

# Génération vidéo d'humain numérique OmniHuman-1.5

> - Le modèle OmniHuman-1.5 (omnihuman-1.5) génère des vidéos d'humains numériques pilotées par audio
- Mode de traitement asynchrone, utilisez l'ID de tâche retourné pour [interroger](/fr/api-manual/task-management/get-task-detail)
- Les liens vidéo générés sont valides pendant 24 heures, veuillez les enregistrer rapidement

**Remarque** :
- Durée audio maximale : 35 secondes
- Formats audio pris en charge : MP3, WAV
- La facturation est basée sur la durée audio (arrondie à la seconde supérieure)



## OpenAPI

````yaml fr/api-manual/video-series/omnihuman/omnihuman-1.5-video-generate.json POST /v1/videos/generations
openapi: 3.1.0
info:
  title: API de génération de vidéo humaine numérique OmniHuman-1.5
  description: >-
    Créer des tâches de génération vidéo d'humain numérique pilotées par l'audio
    à l'aide du modèle OmniHuman-1.5
  license:
    name: MIT
  version: 1.0.0
servers:
  - url: https://api.evolink.ai
    description: Environnement de production
security:
  - bearerAuth: []
tags:
  - name: Génération de vidéo d'humain numérique
    description: APIs de génération vidéo d'humain numérique OmniHuman-1.5
paths:
  /v1/videos/generations:
    post:
      tags:
        - Génération de vidéo d'humain numérique
      summary: Génération vidéo d'humain numérique OmniHuman-1.5
      description: >-
        - Le modèle OmniHuman-1.5 (omnihuman-1.5) génère des vidéos d'humains
        numériques pilotées par audio

        - Mode de traitement asynchrone, utilisez l'ID de tâche retourné pour
        [interroger](/fr/api-manual/task-management/get-task-detail)

        - Les liens vidéo générés sont valides pendant 24 heures, veuillez les
        enregistrer rapidement


        **Remarque** :

        - Durée audio maximale : 35 secondes

        - Formats audio pris en charge : MP3, WAV

        - La facturation est basée sur la durée audio (arrondie à la seconde
        supérieure)
      operationId: createOmniHumanVideoGeneration
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/OmniHumanVideoGenerationRequest'
            examples:
              basic_generation:
                summary: Génération d'humain numérique de base
                value:
                  model: omnihuman-1.5
                  audio_url: https://example.com/audio.mp3
                  image_urls:
                    - https://example.com/person.jpg
      responses:
        '200':
          description: Tâche de génération de vidéo d'humain numérique créée avec succès
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/OmniHumanVideoGenerationResponse'
        '400':
          description: Paramètres de requête invalides
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              example:
                error:
                  code: invalid_request
                  message: Invalid request parameters
                  type: invalid_request_error
        '401':
          description: Non authentifié, jeton invalide ou expiré
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              example:
                error:
                  code: unauthorized
                  message: Invalid or expired token
                  type: authentication_error
        '402':
          description: Quota insuffisant, recharge requise
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              example:
                error:
                  code: insufficient_quota
                  message: Insufficient quota. Please top up your account.
                  type: insufficient_quota
        '403':
          description: Accès refusé
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              example:
                error:
                  code: model_access_denied
                  message: 'Token does not have access to model: omnihuman-1.5'
                  type: invalid_request_error
        '429':
          description: Limite de débit dépassée
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              example:
                error:
                  code: rate_limit_exceeded
                  message: Too many requests, please try again later
                  type: rate_limit_error
        '500':
          description: Erreur interne du serveur
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              example:
                error:
                  code: internal_error
                  message: Internal server error
                  type: api_error
components:
  schemas:
    OmniHumanVideoGenerationRequest:
      type: object
      required:
        - model
        - audio_url
        - image_urls
      properties:
        model:
          type: string
          description: Nom du modèle de génération de vidéo d'humain numérique
          enum:
            - omnihuman-1.5
          default: omnihuman-1.5
          example: omnihuman-1.5
        audio_url:
          type: string
          format: uri
          description: >-
            URL audio pour piloter la synchronisation labiale et les mouvements
            corporels


            **Remarque :**

            - Durée audio maximale : `35` secondes

            - Formats pris en charge : `.mp3`, `.wav`

            - Les URL audio doivent être directement accessibles par le serveur

            - La facturation est basée sur la durée audio (arrondie à la seconde
            supérieure)
          example: https://example.com/audio.mp3
        image_urls:
          type: array
          description: |-
            Liste d'URLs d'images de référence contenant la personne à animer

            **Remarque** :
            - Nombre d'images : `1`
            - L'image doit contenir un sujet humain clair
            - Formats pris en charge : JPG, JPEG, PNG
            - Taille maximale : 10 MB
          items:
            type: string
            format: uri
          maxItems: 1
          example:
            - https://example.com/person.jpg
        prompt:
          type: string
          description: >-
            Invite textuelle optionnelle pour guider le style de génération,
            prend en charge uniquement le chinois, l'anglais, le japonais, le
            coréen, l'espagnol mexicain et l'indonésien
          example: A person speaking naturally with subtle expressions
        pe_fast_mode:
          type: boolean
          description: >-
            Activer le mode de traitement rapide


            **Remarque :**

            - `true` : Génération plus rapide avec une qualité potentiellement
            inférieure

            - `false` : Traitement de qualité standard (par défaut)
          default: false
          example: false
        mask_url:
          type: array
          description: >-
            Tableau d'URL de masque pour spécifier les régions d'animation


            **Remarque :**

            - Paramètre optionnel pour un contrôle avancé

            - Les images de masque doivent correspondre aux dimensions de
            l'image de référence
          items:
            type: string
            format: uri
          example:
            - https://example.com/mask.png
        seed:
          type: integer
          description: >-
            Graine aléatoire comme base pour déterminer l'état de diffusion
            initial, aléatoire par défaut. Si la graine est le même entier
            positif et que tous les autres paramètres sont cohérents, le contenu
            généré peut avoir des résultats cohérents
        subject_check:
          type: boolean
          description: >-
            Activer la détection de sujet pour vérifier la présence humaine dans
            l'image


            **Remarque :**

            - `true` : Activer la détection de sujet, le temps d'initiation de
            la requête augmentera

            - `false` : Ignorer la détection de sujet (par défaut)
          default: false
          example: false
        auto_mask:
          type: boolean
          description: >-
            Activer la génération automatique de masque


            **Note :**

            - `true` : Détecte et masque automatiquement la silhouette humaine,
            le temps d'initiation de la requête augmentera. Ce paramètre est
            ignoré lorsque `mask_url` a une valeur

            - `false` : Utiliser le mask_url fourni ou aucun masque (par défaut)
          default: false
          example: false
        callback_url:
          type: string
          description: >-
            Adresse de rappel HTTPS après l'achèvement de la tâche


            **Moment du rappel :**

            - Déclenché lorsque la tâche est terminée, échouée ou annulée

            - Envoyé après confirmation de la facturation


            **Restrictions de sécurité :**

            - Seul le protocole HTTPS est pris en charge

            - Les rappels vers les adresses IP internes sont interdits
            (127.0.0.1, 10.x.x.x, 172.16-31.x.x, 192.168.x.x, etc.)

            - La longueur de l'URL ne doit pas dépasser `2048` caractères


            **Mécanisme de rappel :**

            - Délai d'expiration : `10` secondes

            - Maximum `3` tentatives en cas d'échec (tentatives après `1`
            seconde/`2` secondes/`4` secondes)

            - Le format du corps de réponse du rappel est cohérent avec le
            format de réponse de l'API de requête de tâche

            - Un code de statut 2xx renvoyé par l'adresse de rappel est
            considéré comme un succès, les autres codes de statut déclenchent
            une nouvelle tentative
          format: uri
          example: https://your-domain.com/webhooks/video-task-completed
    OmniHumanVideoGenerationResponse:
      type: object
      properties:
        created:
          type: integer
          description: Horodatage de création de la tâche
          example: 1757169743
        id:
          type: string
          description: ID de tâche
          example: task-unified-1757169743-7cvnl5zw
        model:
          type: string
          description: Nom du modèle réellement utilisé
          example: omnihuman-1.5
        object:
          type: string
          enum:
            - video.generation.task
          description: Type de tâche spécifique
        progress:
          type: integer
          description: Pourcentage de progression de la tâche (0-100)
          minimum: 0
          maximum: 100
          example: 0
        status:
          type: string
          description: Statut de la tâche
          enum:
            - pending
            - processing
            - completed
            - failed
          example: pending
        task_info:
          $ref: '#/components/schemas/VideoTaskInfo'
          description: Informations détaillées de la tâche vidéo
        type:
          type: string
          enum:
            - text
            - image
            - audio
            - video
          description: Type de sortie de la tâche
          example: video
        usage:
          $ref: '#/components/schemas/VideoUsage'
          description: Informations d'utilisation et de facturation
    ErrorResponse:
      type: object
      properties:
        error:
          type: object
          properties:
            code:
              type: string
              description: Identifiant du code d'erreur
            message:
              type: string
              description: Description de l'erreur
            type:
              type: string
              description: Type d'erreur
    VideoTaskInfo:
      type: object
      properties:
        can_cancel:
          type: boolean
          description: >-
            Indique si la tâche peut être annulée (toujours false pour
            OmniHuman)
          example: false
        estimated_time:
          type: integer
          description: Temps d'achèvement estimé (secondes)
          minimum: 0
          example: 120
        video_duration:
          type: integer
          description: Durée de la vidéo (secondes), basée sur la durée de l'audio
          example: 10
    VideoUsage:
      type: object
      description: Informations d'utilisation et de facturation
      properties:
        billing_rule:
          type: string
          description: Règle de facturation (per_second pour OmniHuman)
          enum:
            - per_call
            - per_token
            - per_second
          example: per_second
        credits_reserved:
          type: number
          description: Crédits estimés consommés (basés sur la durée de l'audio)
          minimum: 0
          example: 10
        user_group:
          type: string
          description: Catégorie de groupe d'utilisateurs
          example: default
  securitySchemes:
    bearerAuth:
      type: http
      scheme: bearer
      description: >-
        ##Toutes les API nécessitent une authentification Bearer Token##


        **Obtenir une clé API :**


        Visitez la [Page de gestion des clés
        API](https://evolink.ai/dashboard/keys) pour obtenir votre clé API


        **Ajouter à l'en-tête de requête :**

        ```

        Authorization: Bearer YOUR_API_KEY

        ```

````