Convertidor de JSON a SRT

Sube un archivo JSON de transcripción, deja que el sistema detecte el esquema y exporta un SRT limpio con tiempos, texto y etiquetas de hablante opcionales.

Ideal para la mayoría de videos

Suelta aquí tu archivo .json

Tu archivo JSON se convierte localmente en el navegador. No se sube nada.

¡JSON convertido a subtítulos correctamente!

Formato detectado:
Bloques de subtítulos creados:
Segmentos inválidos omitidos:
Editar en AI Studio
Revisa el SRT después de la conversión

Los SRT generados automáticamente deben validarse brevemente y, en videos importantes, comprobarse visualmente por timing.

Validar SRT Editar en Studio

¿Qué es un convertidor de JSON a SRT?

Servicios de transcripción como OpenAI Whisper, AWS Transcribe o Google Cloud Speech-to-Text suelen entregar archivos JSON en lugar de subtítulos listos. Esos JSON pueden incluir tiempos, palabras, frases, alternativas y datos de hablantes. Este convertidor interpreta la estructura, extrae inicio, fin y texto, y crea un archivo SubRip estándar en formato SRT.

¿Cómo se convierte JSON a SRT?

Un JSON sin procesar no se puede subir directamente a YouTube ni importar de forma fiable en Adobe Premiere, DaVinci Resolve o Final Cut Pro. Primero hay que transformarlo en una pista lineal de subtítulos: número, hora de inicio, hora de fin y texto visible. Esa conversión la hace la herramienta automáticamente.

Ejemplos: entrada JSON y salida SRT

A diferencia de un mini convertidor limitado, esta página muestra estructuras reales de API. Así puedes ver rápido si tu JSON se parece y por qué puede convertirse en un SRT válido.

JSON de Whisper a SRT

Los exports de Whisper suelen incluir un array segments. Cada elemento normalmente contiene start, end y text, una estructura que encaja muy bien con bloques SRT.

Entrada JSON

{
  "segments": [
    { "start": 0.00, "end": 2.40, "text": "Bienvenido al video." },
    { "start": 2.40, "end": 5.10, "text": "Hoy mostramos el flujo de trabajo." }
  ]
}

Salida SRT

1
00:00:00,000 --> 00:00:02,400
Bienvenido al video.

2
00:00:02,400 --> 00:00:05,100
Hoy mostramos el flujo de trabajo.

JSON de AWS Transcribe a SRT

AWS Transcribe suele devolver palabras y signos de puntuación por separado en results.items. La herramienta agrupa esos datos en bloques de subtítulos legibles y puede conservar las etiquetas de hablante.

Entrada JSON

{
  "results": {
    "items": [
      { "type": "pronunciation", "start_time": "0.00", "end_time": "0.55", "alternatives": [{ "content": "Hola" }], "speaker_label": "spk_0" },
      { "type": "pronunciation", "start_time": "0.56", "end_time": "1.10", "alternatives": [{ "content": "Maik" }], "speaker_label": "spk_0" },
      { "type": "punctuation", "alternatives": [{ "content": "." }] }
    ]
  }
}

Salida SRT

1
00:00:00,000 --> 00:00:01,100
spk_0: Hola Maik.

JSON de Google Speech-to-Text a SRT

Google Speech-to-Text suele guardar las palabras en results[].alternatives[].words[]. Los tiempos de inicio y fin aparecen a menudo como segundos con sufijo s, por ejemplo 1.200s.

Entrada JSON

{
  "results": [
    {
      "alternatives": [
        {
          "words": [
            { "startTime": "0s", "endTime": "0.700s", "word": "Esto", "speakerTag": 1 },
            { "startTime": "0.700s", "endTime": "1.400s", "word": "funciona", "speakerTag": 1 }
          ]
        }
      ]
    }
  ]
}

Salida SRT

1
00:00:00,000 --> 00:00:01,400
Speaker 1: Esto funciona

Campos admitidos y detección automática del esquema

JSON no es un formato de subtítulos, sino un formato de datos. Por eso cada proveedor puede usar nombres de campo distintos. El convertidor revisa variantes habituales y también puede buscar en arrays anidados cuando el archivo no sigue exactamente el esquema de Whisper, AWS o Google.

Campo Claves reconocidas Uso en el SRT
Hora de iniciostart, start_time, startTime, from, beginse convierte en la hora de inicio del bloque SRT
Hora de finend, end_time, endTime, to, finishse convierte en la hora de fin del bloque SRT
Textotext, transcript, content, sentence, valuese convierte en el texto visible del subtítulo
Hablantespeaker, speaker_label, speaker_id, speakerTagpuede añadirse como prefijo antes del texto

Etiquetas de hablante en archivos SRT

Muchos servicios de transcripción entregan información de hablante como speaker, speaker_label, speakerTag o un campo similar. Si activas “incluir etiquetas de hablante”, el convertidor escribe esa información dentro del texto del subtítulo.

SRT no tiene un campo técnico propio para hablantes. En la práctica, se guardan como prefijo de texto. Es útil para entrevistas, podcasts, reuniones, cursos y grabaciones de soporte.

1
00:00:00,000 --> 00:00:02,200
Speaker 1: Bienvenido a la conversación.

2
00:00:02,300 --> 00:00:04,800
Speaker 2: Gracias por invitarme.

Proveedores y estructuras JSON habituales

La siguiente tabla muestra las estructuras que la herramienta reconoce de forma específica. Además intenta detectar arrays genéricos con inicio, fin y texto.

Proveedor Estructura JSON habitual ¿Compatible? Nota
OpenAI Whispersegments[] mit start, end, textSí, directamenteEstructura por segmentos, ideal para salida SRT directa.
AWS Transcriberesults.items[] plus optional speaker_labelsSí, directamenteLos datos por palabra se agrupan en subtítulos legibles.
Google Speech-to-Textresults[].alternatives[].words[]Sí, directamenteLas listas de palabras con tiempos en segundos se agrupan y ordenan.
JSON genéricoArray o array anidado con inicio, fin y textoSí, si existen los camposFunciona si hay campos claros de tiempo y texto.

¿Están seguros mis datos JSON?

Sí. La conversión se ejecuta localmente con JavaScript en tu navegador. Tu JSON no se sube a ningún servidor. Es importante porque las transcripciones suelen contener reuniones internas, material de clientes, guiones sin publicar o videos todavía privados.

Límites de la detección automática de JSON

La herramienta solo puede crear segmentos si el JSON contiene información de tiempo útil. Un JSON que solo tenga texto, sin inicio ni fin, no puede convertirse de forma fiable a SRT porque SRT necesita marcas de tiempo. Si tu archivo solo contiene texto, usa un convertidor TXT a SRT o sincronízalo después en Studio.

Después de convertir: valida el SRT o ajusta el timing

Las transcripciones JSON suelen venir de reconocimiento automático de voz. Conviene revisar el SRT generado para comprobar tiempos, bloques vacíos y legibilidad.

Abrir SRT Validator Editar en Studio

Cómo convertir JSON a SRT online

1

Subir archivo JSON

Elige una transcripción JSON de Whisper, AWS, Google o un sistema speech-to-text similar.

2

Detectar el formato automáticamente

La herramienta reconoce esquemas conocidos y busca segmentos, listas de palabras, campos de tiempo e información opcional de hablante.

3

Guardar el archivo SRT

Descarga el SRT generado y, si hace falta, revísalo en el SRT Validator o en Studio.

Preguntas frecuentes

¿Qué formatos JSON de transcripción son compatibles?

Se admiten exports habituales de OpenAI Whisper, AWS Transcribe y Google Cloud Speech-to-Text, además de arrays JSON genéricos con inicio, fin y texto.

¿Puedo ajustar la longitud de cada bloque de subtítulo?

Sí. Puedes elegir bloques cortos, normales o largos. Es especialmente útil cuando el JSON de AWS o Google contiene datos palabra por palabra.

¿Este convertidor admite etiquetas de hablante?

Sí. Si el JSON contiene información de hablante, la herramienta puede escribirla como prefijo en la salida SRT.

¿Mi archivo JSON es privado?

Sí. La conversión ocurre por completo en tu navegador. No se sube ningún archivo a servidores.

¿Por qué un JSON sin tiempos no se puede convertir a SRT?

SRT necesita una hora de inicio y una hora de fin para cada bloque. Si el JSON solo contiene texto, faltan los datos de timing necesarios.

¿Puedo convertir palabras sueltas de AWS en líneas completas de subtítulos?

Sí. La herramienta agrupa automáticamente palabras y puntuación en bloques de subtítulos legibles.

¿Qué debo revisar después de convertir JSON a SRT?

Revisa timing, longitud de frases, etiquetas de hablante y bloques vacíos. Para errores técnicos, pasa el archivo por el SRT Validator.