Solicitud de subtítulos automáticos

Este tema explica cómo solicitar la generación de subtítulos a partir de pistas de audio en su video utilizando la API de ingesta dinámica.

Introducción

Brightcove Auto Captioning es un servicio a nivel de plataforma que le permite generar automáticamente subtítulos para videos nuevos o existentes en 31 idiomas diferentes (siempre que tenga una pista de audio para el idioma especificado). Como todos los servicios de voz a texto, los subtítulos automáticos no son 100 % precisos, pero brindan una forma rápida y fácil de generar subtítulos directamente en Video Cloud.

Video Cloud utiliza el siguiente proceso para determinar la fuente que se utilizará para generar los subtítulos.

  • Si el video tiene una pista de audio predeterminada, se usará como el archivo de origen de los subtítulos (compatible de manera predeterminada en el módulo multimedia)
  • Si el video no tiene una pista de audio predeterminada pero existe un archivo maestro/mezzanine, se usará como archivo de origen (compatible de manera predeterminada en el módulo multimedia)
  • Si el video no tiene una pista de audio predeterminada o archivos maestros/intermedios, pero las pistas de audio se especifican en la llamada de ingesta dinámica, se usará la pista de audio especificada (aún no se admite en el módulo multimedia)
  • Si el video no tiene una pista de audio predeterminada, no hay archivos maestros/intermedios y no se especifica ninguna pista de audio, no se pueden generar subtítulos.

Configuración

la configuración para Dynamic Ingest solicitudes es la misma, ya sea que esté ingeriendo un video, imágenes, pistas de audio, WebVTT archivos, solicitando subtítulos automáticos, o todos estos:

Solicitar URL
https://ingest.api.brightcove.com/v1/accounts/{account_id}/videos/{video_id}/ingest-requests
Autenticación
La autenticación requiere un token de acceso pasado como Bearer token en un Authorization encabezamiento:
      Authorization: Bearer {access_token}

Para obtener tokens de acceso, necesitará credenciales del cliente (vea abajo). Para conocer el proceso de obtención de un token de acceso, consulte Obtener tokens de acceso.

Nota sobre S3

Si sus archivos de origen se extraerán de un depósito de S3 protegido, deberá establecer una política de depósito para permitir Video Cloud para acceder a los archivos. Ver Utilizando Dynamic Ingest con S3 para detalles.

Obtención de credenciales

Para obtener un client_id y client_secret, tendrás que ir a la interfaz de usuario de OAuth y registrar esta aplicación:

Estos son los permisos que necesitarás:

Ingesta dinámica Permisos
Dynamic Ingest Permisos

También puede obtener sus credenciales a través de CURL , Postman , o nuestra aplicación en línea - consulte:

Si obtienes credenciales directamente de la API, estos son los permisos que necesitas:

[
  "video-cloud/video/all",
  "video-cloud/ingest-profiles/profile/read",
  "video-cloud/ingest-profiles/account/read",
  "video-cloud/upload-urls/read"
]

Casos de uso

Estos son algunos casos de uso típicos

Cree subtítulos automáticos para nuevas ingestiones o retranscodificación

Cuerpo de la solicitud
{
  "master": {
    "use_archived_master": true
  },
  "profile": "multi-platform-standard-static-with-mp4",
  "transcriptions": [
    {
      "srclang": "EN-us",
      "kind": "captions",
      "label": "English",
      "status" : "published",
      "default": true
    }
  ],
  "priority": "normal"
}

Crear subtítulos automáticos al ingerir una pista de audio

Cuerpo de la solicitud
{
  "audio_tracks": {
    "merge_with_existing": true,
    "masters": [
        {
            "language": "fr-FR",
            "variant": "alternate",
            "url": "https://support.brightcove.com/test-assets//audio/celtic_lullaby.m4a"
        }
    ]
  },
  "transcriptions": [
      {
          "srclang": "fr-FR",
          "kind": "captions",
          "label": "french-FR",
          "status" : "published",
          "default": false,
          "input_audio_track": {
              "language": "fr-FR",
              "variant": "alternate"
          }
      }
  ]
}

Cree subtítulos automáticos para un video existente usando el maestro digital

Cuerpo de la solicitud
{
  "transcriptions": [
      {
          "srclang": "fr-FR",
          "kind": "captions",
          "label": "french-FR",
          "default": false
      }
  ]
}

Cree subtítulos automáticos para un video existente que defina las pistas de audio

Cuerpo de la solicitud
{
  "transcriptions": [
      {
          "srclang": "en-US",
          "kind": "captions",
          "label": "english-EN",
          "default": false,
          "input_audio_track": {
              "language": "en-US",
              "variant": "main"
          }
      },
      {
          "srclang": "fr-FR",
          "kind": "captions",
          "label": "french-FR",
          "default": false,
          "input_audio_track": {
              "language": "fr-FR",
              "variant": "alternate"
          }
      }
  ]
}

Solicitar campos de cuerpo para subtítulos automáticos

La siguiente tabla muestra los campos del cuerpo de la solicitud para subtítulos automáticos.

Campos para subtítulos automáticos y transcripciones
Campo Tipo Requerido Descripción
autodetect booleano no true para detectar automáticamente el idioma de la fuente de audio. false usar srclang especificando el idioma del audio.
default booleano no Si true , srclang se ignorará y se usará la pista de audio principal; el idioma se detectará automáticamente.
input_audio_track objeto no Para varias pistas de audio, define el audio del que extraer los subtítulos. Está compuesto por idioma y variante (ambos obligatorios).
kind cuerda no El tipo de salida a generar. Valores permitidos:
  • subtítulos
  • transcripciones
Notas:
  1. Si el tipo es transcripciones y se incluye la URL del archivo de transcripciones, se incorporará un archivo de transcripciones y no se generarán subtítulos automáticos. Consulte Ingesta de transcripciones para obtener más detalles.
  2. Si el amable es transcripciones , y el URL para el archivo de transcripciones es no incluido, se generará un archivo de transcripción y subtítulos,
  3. Si el tipo es subtítulos , se generarán subtítulos, pero no un archivo de transcripción.
label cuerda no Etiqueta legible por humanos. El valor predeterminado es el código de idioma de estilo BCP-47.
srclang cuerda no Código de idioma estilo BCP-47 para las pistas de texto (en-US, fr-FR, es-ES, etc.); ver idiomas admitidos
status cuerda no Indica la situación real del pie de foto, si es published , draft.
url cuerda no La URL donde se encuentra un archivo de transcripción. Debe incluirse en el tipo es transcripciones . No debe incluirse si el tipo es subtítulos .

input_audio_track campos

Campos input_audio_track
Campo Tipo Requerido Descripción
language cuerda Código de idioma estilo BCP-47 para las pistas de texto (en-US, fr-FR, es-ES, etc.); ver idiomas admitidos
variant cuerda Especifica la variante a utilizar:
  • main
  • alternate
  • dub
  • commentary
  • descriptive

Idiomas admitidos

Actualmente, los subtítulos automáticos están limitados a los siguientes idiomas

  • Inglés australiano (en-AU)
  • Afrikáans (af-ZA)
  • Portugués brasileño (pt-BR)
  • Inglés británico (en-GB)
  • Francés canadiense (fr-CA)
  • Danés (da-DK)
  • Holandés (nl-NL)
  • Farsi persa (fa-IR)
  • Francés (fr-FR)
  • Alemán (de-DE)
  • Árabe del Golfo (ar-AE)
  • hebreo (he-IL)
  • Inglés indio (en-IN)
  • Hindi indio (hi-IN)
  • Indonesio (id-ID)
  • Inglés irlandés (en-IE)
  • italiano (it-IT)
  • Japonés (ja-JP)
  • Coreano (ko-KR)
  • Malayo (ms-MY)
  • Chino mandarín – Continente (zh-CN)
  • Chino mandarín (Taiwán) (zh-TW)
  • Árabe estándar moderno (ar-SA)
  • Inglés de Nueva Zelanda (en-NZ)
  • Portugués (pt-PT)
  • Ruso (ru-RU)
  • Inglés escocés (en-AB)
  • Inglés sudafricano (en-ZA)
  • Español (es-ES)
  • alemán suizo (de-CH)
  • Tamil (ta-IN)
  • Telugu (te-IN)
  • Tailandés (th-TH)
  • Turco (tr-TR)
  • Inglés de EE. UU. (en-EE. UU.)
  • Español de EE. UU. (es-US)
  • Inglés galés (en-WL)