Exportar Subtítulos
Descargue subtítulos en sus formatos preferidos y realice un seguimiento en tiempo real del estado de sus proyectos de transcripción.
/api/v1/export/:projectIdcurl -X POST https://api.srtgen.com/api/v1/export/proj_8k2n9m1b \
-H "x-api-key: <YOUR_API_KEY>" \
-H "Content-Type: application/json" \
-d '{
"output": "srt"
}'Parámetros
| Parámetro | Tipo | Requerido | Descripción |
|---|---|---|---|
| Parámetros Principales | |||
id | String | Yes | El identificador único del proyecto pasado en la ruta de la URL. |
output | String | No | Formato de subtítulos deseado o recurso multimedia para exportar. Opciones: srt, vtt, ass, txt, json, mp4 | Predeterminado: srt |
burnId | String | No | Solicitar explícitamente el estado/resultado de un ID de trabajo de burn específico. |
language | String | No | Idioma de destino para los subtítulos. Rango: Cualquier código traducido o 'original' | Predeterminado: original |
| Soporte Multi-Idioma (Nuevo) | |||
languages | Array | No | Matriz de configuraciones para mostrar varios idiomas en el mismo archivo. Límite: Máximo 3 idiomas | Predeterminado: Predeterminado: ASS, VTT |
- language | String | Yes* | El código para este espacio de idioma (ej. 'zh' o 'original'). |
- lineBreakRules | Object | No | Anulaciones de segmentación por idioma. |
- styleSettings | Object | No | Estilo por idioma (Principal para ASS). |
| Reglas de Salto de Línea (lineBreakRules) | |||
lineBreakRules | Object | No | Objeto anidado para la lógica de segmentación de subtítulos. |
- maxChars | Number | No | Máximo de caracteres permitidos por línea. Rango: 5 - 100 | Predeterminado: 45 |
- maxWords | Number | No | Máximo de palabras permitidas por línea de subtítulo. Rango: 1 - 20 | Predeterminado: 10 |
- balanceLines | Boolean | No | Equilibra la longitud de las líneas en subtítulos de varias líneas. Predeterminado: true |
- sentenceSplit | Boolean | No | Prefiere romper las líneas al final de las oraciones. Predeterminado: true |
- gapThreshold | Number | No | Brecha máxima (segundos) entre palabras en una línea. Rango: 0.1 - 2.0 | Predeterminado: 0.4 |
| Conceptos Básicos de Estilo (styleSettings) | |||
uppercase | Boolean | No | Forzar todo el texto a mayúsculas. |
styleSettings | Object | No | Objeto anidado para anulaciones de estilo visual. |
- preset | String | No | Aplicar un ajuste preestablecido de estilo incorporado como base. Opciones: standard-stream, classic-apple, etc. |
- fontSize | Number | No | Tamaño de fuente como una relación con la altura del video. Predeterminado: 0.045 (approx 48px) |
- fontFamily | String | No | Nombre de fuente estándar utilizado para el renderizado. Predeterminado: Nombre de fuente estándar utilizado para el renderizado. |
- bold | Boolean | No | Aplicar negrita al texto. Rango: true | false | Predeterminado: false |
- italic | Boolean | No | Aplicar estilo cursiva al texto. Rango: true | false | Predeterminado: false |
| Colores y Bordes | |||
- primaryColor | Hex | No | Código hexadecimal del color de texto principal. Predeterminado: #FFFFFF |
- secondaryColor | Hex | No | Color secundario (utilizado para efectos de karaoke). Predeterminado: #00FFFF |
- outlineColor | Hex | No | Color del contorno del texto. Predeterminado: #000000 |
- outline | Number | No | Grosor del contorno (Relación con la altura). Predeterminado: 0.002 |
- shadow | Number | No | Profundidad de la sombra (Relación con la altura). Predeterminado: 0.001 |
| Posicionamiento (Relaciones 0-1) | |||
- alignment | Number | No | Código de alineación ASS (1-9). La parte inferior central es 2. Rango: 1 - 9 | Predeterminado: 2 |
- posX | Number | No | Posición horizontal (0 = Izquierda, 1 = Derecha). Rango: 0.0 - 1.0 | Predeterminado: 0.5 |
- posY | Number | No | Relación de posición vertical (0 = Arriba, 1 = Abajo). Predeterminado: 0.88. Rango: 0.0 - 1.0 | Predeterminado: 0.88 |
- marginV | Number | No | Relación de margen vertical desde la parte inferior/superior. Predeterminado: 0.056. Rango: 0.0 - 0.5 | Predeterminado: 0.056 |
| Animación y Efectos | |||
- fadeIn | Number | No | Duración del desvanecimiento de entrada en milisegundos. Rango: 0ms - 5000ms | Predeterminado: 0 |
- fadeOut | Number | No | Duración del desvanecimiento de salida en milisegundos. Rango: 0ms - 5000ms | Predeterminado: 0 |
- karaoke | String | No | Tipo de etiqueta de karaoke (k, kf, ko, ks). Opciones: k, kf, ko, ks | Predeterminado: none |
curl -X POST https://api.srtgen.com/api/v1/export/proj_8k2n9m1b \
-H "x-api-key: <YOUR_API_KEY>" \
-H "Content-Type: application/json" \
-d '{
"output": "srt",
"language": "fr",
"lineBreakRules": {
"maxChars": 25,
"maxWords": 5,
"balanceLines": true
}
}'curl -X POST https://api.srtgen.com/api/v1/export/proj_8k2n9m1b \
-H "x-api-key: <YOUR_API_KEY>" \
-H "Content-Type: application/json" \
-d '{
"output": "ass",
"lineBreakRules": {
"maxChars": 30
},
"styleSettings": {
"preset": "standard-stream",
"fontSize": 55,
"primaryColor": "#FF0000",
"bold": true
}
}'curl -X POST https://api.srtgen.com/api/v1/export/proj_8k2n9m1b \
-H "x-api-key: <YOUR_API_KEY>" \
-H "Content-Type: application/json" \
-d '{
"output": "ass",
"languages": [
{
"language": "original",
"styleSettings": {
"preset": "classic-apple",
"fontSize": 40,
"posY": 0.85
}
},
{
"language": "zh",
"lineBreakRules": {
"maxChars": 16,
"balanceLines": false
},
"styleSettings": {
"preset": "standard-stream",
"fontSize": 55,
"posY": 0.7
}
}
]
}'Estructura de la Respuesta
1. Estado de Procesamiento
Si el proyecto aún está siendo procesado por nuestro motor de IA o está pendiente, recibirá una actualización de estado indicando su estado actual.
Esto le permite implementar un sondeo simple en su interfaz utilizando el mismo endpoint hasta que el estado sea completed.
{ "projectId": "proj_abc123", "status": "processing", "message": "AI is generating..." }
2. Estado Completado
Una vez finalizado, la respuesta incluye el contenido de los subtítulos en el formato solicitado.
Cada formato está optimizado para su caso de uso:
{ "success": true, "projectId": "proj_abc123", "status": "completed", "format": "srt", "content": "1\\n00:00:01,000 --> 00:00:03,000\\nHello..." }
Códigos de Error
| Estado | Código de Error | Descripción |
|---|---|---|
| 400 | param_not_valid | Un parámetro proporcionado está fuera de su rango permitido. |
| 401 | unauthorized | La clave de API falta o es inválida. |
| 404 | not_found | El ID del proyecto no existe. |
| 500 | export_error | Ocurrió un error durante el formateo. |
| 500 | project_fetch_failed | Error al recuperar los datos del proyecto. |
| 500 | server_error | Ocurrió un error interno del servidor inesperado. |
{ "success": false, "error": "unauthorized", "message": "La clave de API proporcionada no es válida o ha caducado." }