API de Mejora de Vídeo
Envía un vídeo que ya está en la plataforma, o un archivo que hayas subido, y recibe una versión mejorada en 1080p, 2K o 4K. Puedes activar o desactivar la nitidez del texto en pantalla, y mejorar el vídeo completo o un fragmento de hasta 10 minutos.
Fuentes de vídeo compatibles
Pasa una URL de archivo de la plataforma, o el identity que devuelve la API de Subida. La subida local requiere un plan Starter o superior.
Flujo
- Envía una tarea de mejora con el vídeo de origen y una resolución de destino
- Consulta el resultado hasta que
statusseaDONEoERROR - Cuando
statusseaDONE, leeoutput_url
Endpoints
| Método | Ruta | Descripción |
|---|---|---|
POST | /api/v2/video-enhancer | Enviar una tarea de mejora |
GET | /api/v2/video-enhancer/results/{id} | Obtener el resultado de la tarea |
Todas las solicitudes requieren:
Authorization: Bearer YOUR_API_KEY
Content-Type: application/json
x-wayinvideo-api-version: v2
Enviar una tarea de mejora
POST https://wayinvideo-api.wayin.ai/api/v2/video-enhancer
Cuerpo de la solicitud
| Parámetro | Tipo | Obligatorio | Predeterminado | Descripción |
|---|---|---|---|---|
video_url | string | Sí | — | URL de archivo de la plataforma, o el identity que devuelve la API de Subida. |
target_res | string | Sí | — | Resolución de salida. Valores permitidos: 1080p, 2k, 4k. |
enable_text_hd | boolean | No | true | Mejorar el texto en pantalla. Si se omite el campo, el valor predeterminado es true. |
start_ms | integer | No | — | Inicio del fragmento, en milisegundos. Omite start_ms y end_ms para procesar el vídeo completo, con el máximo de 10 minutos. Enviar solo uno de los dos campos se rechaza. |
end_ms | integer | No | — | Fin del fragmento, en milisegundos. Debe ser mayor que start_ms y no puede superar la duración del origen. |
El intervalo procesado no puede superar los 10 minutos. La facturación usa ese intervalo, redondeado hacia arriba al siguiente segundo entero. Las tarifas están en Facturación.
Ejemplo de solicitud
curl -X POST https://wayinvideo-api.wayin.ai/api/v2/video-enhancer \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "x-wayinvideo-api-version: v2" \
-d '{
"video_url": "EF_up_06wguq1afbwg1",
"target_res": "1080p",
"enable_text_hd": true,
"start_ms": 0,
"end_ms": 8000
}'
import requests
requests.post(
"https://wayinvideo-api.wayin.ai/api/v2/video-enhancer",
headers={
"Authorization": "Bearer YOUR_API_KEY",
"x-wayinvideo-api-version": "v2",
},
json={
"video_url": "EF_up_06wguq1afbwg1",
"target_res": "1080p",
"enable_text_hd": True,
"start_ms": 0,
"end_ms": 8000,
},
)
await fetch('https://wayinvideo-api.wayin.ai/api/v2/video-enhancer', {
method: 'POST',
headers: {
Authorization: 'Bearer YOUR_API_KEY',
'x-wayinvideo-api-version': 'v2',
'Content-Type': 'application/json',
},
body: JSON.stringify({
video_url: 'EF_up_06wguq1afbwg1',
target_res: '1080p',
enable_text_hd: true,
start_ms: 0,
end_ms: 8000,
}),
});
Respuesta
Una tarea recién enviada suele estar en PENDING (en cola) o IN_PROGRESS (ya en ejecución).
{
"data": {
"id": "proj_01HQ2X8J3K4L5M6N7O8P9Q0R",
"status": "IN_PROGRESS"
}
}
| Campo | Tipo | Descripción |
|---|---|---|
id | string | Id del proyecto. Se usa en la ruta de resultados. |
status | string | PENDING (en cola), IN_PROGRESS (en ejecución), DONE (terminado) o ERROR (fallido). |
output_url | string | URL del vídeo mejorado. Solo está presente cuando status es DONE. |
Obtener el resultado
Consulta con el id de la respuesta de envío hasta que status sea DONE o ERROR. Cuando status sea DONE, lee output_url.
GET https://wayinvideo-api.wayin.ai/api/v2/video-enhancer/results/{id}
Ejemplo de solicitud
curl -X GET https://wayinvideo-api.wayin.ai/api/v2/video-enhancer/results/proj_01HQ2X8J3K4L5M6N7O8P9Q0R \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "x-wayinvideo-api-version: v2"
Respuesta
{
"data": {
"id": "proj_01HQ2X8J3K4L5M6N7O8P9Q0R",
"status": "DONE",
"output_url": "https://cdn.viralhub.ai/user/video_0_8000_1080p.mp4"
}
}
Los campos coinciden con la respuesta de envío. output_url se incluye cuando la tarea ha terminado.
Facturación
La mejora de vídeo consume API Units por el intervalo procesado, redondeado hacia arriba al siguiente segundo entero. Menos de 1 segundo cuenta como 1 segundo.
| Resolución de destino | API Units |
|---|---|
| 1080p | 1 por segundo |
2K (2k) | 2 por segundo |
4K (4k) | 4 por segundo |
Si la cuenta no tiene suficientes API Units, la tarea no se crea y no se descuentan unidades. Consulta Facturación y Códigos de Estado.
Errores
Las solicitudes fallidas usan los códigos de estado y formatos de respuesta habituales. Consulta Códigos de Estado.