El evento job.succeeded
Firmado según Standard Webhooks: verifica webhook-signature (HMAC-SHA256 de <webhook-id>.<webhook-timestamp>.<cuerpo>, con tu secreto whsec_… como clave) sobre el cuerpo crudo. Responde 2xx; si no, se reintenta tras 1 min, 5 min, 30 min, 2 h, 6 h, 12 h y 24 h. La entrega es al menos una vez: descarta las repeticiones por el id del evento.
Autorizaciones
Sección titulada «Autorizaciones»Cuerpo de la petición
Sección titulada «Cuerpo de la petición»object
Único por evento: descarta las repeticiones por él.
El job, tal como lo muestra GET /v1/jobs/{id} (sin billed_minutes).
object
Queued (esperando hueco en el plan) → processing → succeeded | failed | canceled.
object
Los ajustes con los que se creó el job (normalizados, con los valores por defecto aplicados): de ahí parte un reintento o un duplicado.
object
Qué producir: al menos uno de streaming, mp4, mp3, posters o storyboard.
object
Streaming adaptativo: una versión por variante, con cada pista de audio y de subtítulos elegida.
object
HLS y/o DASH; comparten sus segmentos.
240p, 360p, 480p, 720p, 1080p, 1440p, 2160p, o cualquier altura par de 144 a 2160 (“540p”, “576p”, “900p”): un cuadro 16:9 a su alrededor, con el bitrate máximo interpolado entre sus vecinas.
object
240p, 360p, 480p, 720p, 1080p, 1440p, 2160p, o cualquier altura par de 144 a 2160 (“540p”, “576p”, “900p”): un cuadro 16:9 a su alrededor, con el bitrate máximo interpolado entre sus vecinas.
El códec de video.
Calidad constante (CRF): menor es mejor y más pesado. 22 por defecto. Excluyente con bitrate.
Un techo en bps, no un bitrate fijo. Con quality, el CRF decide por debajo (las escenas sencillas quedan muy por debajo) y nunca se supera el bitrate de la fuente; con bitrate en vbr, hasta dónde puede subir. Por defecto: según la resolución (240p 400 Kbps … 2160p 15 Mbps); con vbr, 1,5 × bitrate.
Un bitrate objetivo en bps en vez de una calidad, respetado aunque la fuente tenga menos. Excluyente con quality.
Con bitrate: vbr (media; sube en las escenas complejas hasta max_bitrate, el valor por defecto) o cbr (constante, rellenado: televisión, publicidad, CDNs que lo exigen). AV1 solo admite vbr, sin max_bitrate.
Velocidad del codificador frente a compresión. veryfast por defecto.
Solo H.264. Por defecto: según la resolución.
contain: el cuadro gira con el video y no hay barras (un 720p vertical es 720×1280). pad: un cuadro 16:9 con barras. crop: un cuadro 16:9, recortado.
Una imagen en espejo, aplicada antes de escalar.
Una imagen superpuesta al video. Las variantes con marca de agua no se puntúan con quality_metrics.
object
La imagen (normalmente PNG con transparencia), en una URL https pública o prefirmada.
Un archivo MP4 por variante, con cada pista de audio elegida.
object
240p, 360p, 480p, 720p, 1080p, 1440p, 2160p, o cualquier altura par de 144 a 2160 (“540p”, “576p”, “900p”): un cuadro 16:9 a su alrededor, con el bitrate máximo interpolado entre sus vecinas.
object
240p, 360p, 480p, 720p, 1080p, 1440p, 2160p, o cualquier altura par de 144 a 2160 (“540p”, “576p”, “900p”): un cuadro 16:9 a su alrededor, con el bitrate máximo interpolado entre sus vecinas.
El códec de video.
Calidad constante (CRF): menor es mejor y más pesado. 22 por defecto. Excluyente con bitrate.
Un techo en bps, no un bitrate fijo. Con quality, el CRF decide por debajo (las escenas sencillas quedan muy por debajo) y nunca se supera el bitrate de la fuente; con bitrate en vbr, hasta dónde puede subir. Por defecto: según la resolución (240p 400 Kbps … 2160p 15 Mbps); con vbr, 1,5 × bitrate.
Un bitrate objetivo en bps en vez de una calidad, respetado aunque la fuente tenga menos. Excluyente con quality.
Con bitrate: vbr (media; sube en las escenas complejas hasta max_bitrate, el valor por defecto) o cbr (constante, rellenado: televisión, publicidad, CDNs que lo exigen). AV1 solo admite vbr, sin max_bitrate.
Velocidad del codificador frente a compresión. veryfast por defecto.
Solo H.264. Por defecto: según la resolución.
contain: el cuadro gira con el video y no hay barras (un 720p vertical es 720×1280). pad: un cuadro 16:9 con barras. crop: un cuadro 16:9, recortado.
Una imagen en espejo, aplicada antes de escalar.
Una imagen superpuesta al video. Las variantes con marca de agua no se puntúan con quality_metrics.
object
La imagen (normalmente PNG con transparencia), en una URL https pública o prefirmada.
Si el archivo lleva las pistas de audio.
Solo el audio, como archivo MP3.
object
Bps.
Imágenes JPEG de momentos concretos. Sin width ni height, al tamaño del video.
object
Segundo del video.
Sprites de miniaturas y un índice WebVTT, para la vista previa sobre la barra del reproductor. 160×90 por defecto, con la forma del video.
object
Segundos entre miniaturas.
Cada pista elegida sale como AAC estéreo (el sonido envolvente se mezcla a estéreo).
object
Obliga a recodificar el audio en AAC a este bitrate (bps). Si se omite, el AAC-LC mono o estéreo se copia (más rápido, sin pérdida).
Una pista, por index o por language (exactamente uno de los dos).
object
La posición de la pista entre las pistas de su tipo de la fuente, desde 0.
La primera pista en este idioma (se aceptan es, spa y es-419).
El nombre que muestran los reproductores. Por defecto: el nombre del idioma en sí mismo (“Español”, “English”).
false: usarla si existe, sin hacer fallar el job si no.
Subtítulos de texto, entregados como WebVTT y dentro del streaming. Los forzados se marcan y se nombran así en su propio idioma.
object
Una pista, por index o por language (exactamente uno de los dos).
object
La posición de la pista entre las pistas de su tipo de la fuente, desde 0.
La primera pista en este idioma (se aceptan es, spa y es-419).
El nombre que muestran los reproductores. Por defecto: el nombre del idioma en sí mismo (“Español”, “English”).
false: usarla si existe, sin hacer fallar el job si no.
Para calidades mayores que la fuente: skip las omite (listadas en skipped del job); fail rechaza el job.
Puntuar la calidad percibida de cada variante (VMAF, 0–100) frente a la fuente, en muestras repartidas por el video. Añade unos segundos.
Enviar también aquí los eventos de este job (https, pública), además de los endpoints de la organización.
Hasta 10 pares de texto tuyos, que vuelven en el job y en sus webhooks.
object
El job que este reintenta o duplica.
object
Frecuencia de fotogramas constante de los resultados.
Bitrate total, en bits por segundo.
Cada pista de audio y de subtítulos del archivo: de donde eligen audio.tracks / subtitles.tracks.
Una pista de audio de una fuente.
object
Tal como viene etiquetado en el archivo (normalmente ISO 639-2: “spa”, “eng”); null si no tiene etiqueta.
Bits por segundo; null si el archivo no lo indica.
Una pista de subtítulos de una fuente.
object
Los subtítulos de texto se convierten a WebVTT; los de imagen (PGS, DVD), no.
Segundos procesados (el clip, o la fuente entera).
Todo lo que se está produciendo, cada cosa con su estado y su progreso.
Una cosa que produce un job, con su estado, su progreso y sus tiempos.
object
Tareas video y mp4: la calidad (1080p, o una altura personalizada como 540p).
Tareas poster y storyboard: su posición en la lista de la petición.
Tareas audio: copiado de la fuente tal cual (sin pérdida de calidad), o recodificado a AAC.
Tarea streaming: los manifiestos escritos sobre los segmentos compartidos.
Tareas audio: qué pista de salida (idioma) es, y su idioma y nombre tal como los muestran los reproductores.
Tarea subtitles: cuántas pistas de subtítulos se están produciendo.
Tareas import y upload: bytes recibidos hasta ahora, y el tamaño del archivo cuando se conoce.
0–100; null mientras corre sin un progreso medible.
Cuánto tardó cada parte de un job, y cuándo empezó y terminó cada etapa.
object
Esperando hueco en la concurrencia del plan.
Copiando una fuente dada por URL (antes de procesar; no cuenta en processing_seconds).
Desde el inicio del análisis hasta que los resultados están listos (sin la subida ni la cola). Un archivo procesado mientras aún se subía cuenta desde el final de la subida.
Segundos de contenido por segundo de proceso (p. ej. 30 = 30× tiempo real).
object
Cuándo empezó y terminó cada etapa (ISO 8601, null hasta que ocurre), para dibujarlas en un mismo eje de tiempo: con un archivo procesado mientras llega, el análisis y la transcodificación se solapan con la subida.
object
Correcciones aplicadas a la fuente para que los resultados se reproduzcan en todas partes.
object
object
object
object
size_bytes en cada resultado: lo que pesa publicado (null en jobs terminados antes de que se midieran los tamaños). Streaming: la carpeta entera, cada variante su video, audio_size_bytes el audio que comparten todas (HLS y DASH usan los mismos segmentos, contados una vez).
object
object
object
Idiomas de los resultados de streaming y MP4 (ISO 639-2), con el predeterminado marcado.
object
Archivos WebVTT, también listados en los manifiestos del streaming.
object
object
object
Todo lo publicado del job, y el original del que se hizo.
object
Pistas de audio o subtítulos pedidas que quedaron fuera: not_found (elección opcional), image_subtitles (no convertibles a WebVTT), too_many.
Una pista pedida que no salió, y por qué.
object
Respuestas
Sección titulada «Respuestas»Recibido.