Calcular recorte de video según la relación de aspecto
Reencuadrar un video para otro formato de pantalla empieza con una pregunta precisa: ¿qué rectángulo centrado conserva la mayor área posible y, a la vez, coincide con la relación de aspecto de destino?
Ejecutar — gratis
Esta calculadora recibe el ancho y el alto en píxeles del video original y una relación como 9:16, 1:1 o 16:9. Devuelve el origen y las dimensiones del recorte sin cargar, decodificar, redimensionar ni modificar el video. Puede pasar esa geometría directamente a un flujo de edición, un comando de transcodificación, un proceso multimedia o una interfaz de vista previa.
Convierta un fotograma original en el mayor recorte compatible
Introduzca el ancho y el alto en píxeles del video decodificado y, después, indique la relación de destino como ancho frente a alto, con dos puntos entre ambos valores. Por ejemplo, 1920 por 1080 describe un fotograma horizontal habitual, mientras que 9:16 solicita un resultado vertical apropiado para videos breves en dispositivos móviles. La calculadora compara la relación original con la solicitada y conserva la dimensión que ya limita el ajuste. Si el original es demasiado ancho, mantiene toda la altura y reduce el ancho. Si es demasiado alto, mantiene todo el ancho y reduce la altura. Así obtiene el mayor rectángulo que cabe dentro del fotograma sin estirar, añadir relleno ni superar sus bordes. Los valores x e y ubican la esquina superior izquierda; width y height indican el tamaño. En conjunto, forman un cuadro de recorte completo para cada fotograma de un video con resolución constante. No se necesitan datos multimedia, pues solo interviene la geometría del fotograma.
Interprete las coordenadas centradas y los píxeles fraccionarios
Un recorte centrado elimina la misma cantidad de los bordes opuestos. Cuando un original horizontal debe estrecharse, x equivale a la mitad del área horizontal descartada e y permanece en cero. Cuando el fotograma debe reducir su altura, y equivale a la mitad del área vertical descartada y x queda en cero. Algunas combinaciones de dimensiones y relaciones producen coordenadas o tamaños fraccionarios. Es deliberado: el centro matemático exacto o la relación solicitada pueden caer entre límites físicos de píxeles. La geometría decimal evita imponer silenciosamente una regla de redondeo que quizá no coincida con su codificador, biblioteca gráfica o aplicación de edición. Los valores se normalizan a nueve decimales para que las solicitudes repetidas sean estables y el ruido de coma flotante no llegue a manifiestos ni pruebas. Si la herramienta de destino solo acepta enteros, aplique su política documentada de redondeo al integrarla y compruebe las dimensiones codificadas finales.
Use el recorte con seguridad en flujos de producción de video
Considere la respuesta como geometría reutilizable, no como un video transformado. Envíe x, y, width y height a la etapa de recorte de su transcodificador, editor no lineal, renderizador canvas, generador de miniaturas o servicio multimedia. Confirme que la herramienta receptora usa el origen en la esquina superior izquierda, con x hacia la derecha e y hacia abajo, que es la convención empleada aquí. Lea el ancho y el alto del flujo de video realmente decodificado, no del nombre del archivo, la ventana del reproductor ni un registro obsoleto. Las grabaciones de teléfonos pueden incluir metadatos de orientación; decida si su proceso aplica esa rotación antes o después del recorte y use dimensiones de la misma etapa. El analizador solo acepta dos componentes numéricos positivos y finitos separados por dos puntos. Rechaza errores, otros separadores, ceros, negativos y texto adicional, en vez de adivinarlos. En lotes automatizados, ese rigor evita producir numerosos resultados mal encuadrados.
Qué puede hacer con ella
Reencuadre video horizontal para canales verticales
Calcule la mayor región centrada 9:16 antes de codificar versiones específicas para cada plataforma a partir de un original horizontal.
Uniforme el encuadre de miniaturas de video
Use un cálculo determinista para vistas previas y miniaturas que deben llenar un reproductor fijo sin añadir relleno.
Valide una configuración de transcodificación automática
Previsualice las coordenadas desde los metadatos originales y rechace relaciones defectuosas antes de procesar el contenido multimedia.
Preguntas frecuentes
¿Esta herramienta carga o modifica el video?
No. Solo usa el ancho, el alto y la relación para devolver geometría; no recibe, decodifica, almacena ni transforma contenido multimedia.
¿Cuánto cuesta el cálculo?
El precio de la API es $0.002 por solicitud. El mismo cálculo determinista también puede ejecutarse en el navegador.
¿Qué sintaxis de relación de aspecto se admite?
Use dos números positivos separados por dos puntos, como 9:16, 16:9, 1:1 o 1.85:1. Otros separadores y el texto adicional no son válidos.
¿Por qué puede contener valores decimales?
El centro o la relación exactos pueden quedar entre píxeles. La geometría decimal conserva el mayor recorte centrado sin imponer un redondeo.
¿Puede el recorte superar el fotograma original?
No. Una dimensión del recorte siempre coincide con la dimensión original correspondiente y la otra se reduce para ajustarse a la relación solicitada.
Para desarrolladores — acceso por API
Todo lo de esta página está disponible por programación. Esta sección es para equipos que quieren integrarlo en sus sistemas; el resto puede usar la herramienta de arriba sin más.
Endpoint de API
¿Prefiere automatizarlo? Un POST autenticado crea la tarea; el resultado llega por webhook o enlace firmado. La misma capacidad también se ejecuta aquí en la web, por email y desde Telegram — y pronto también desde nuestra app.
Llámela desde su stack
curl -X POST https://api.kit.forhosting.com/video/aspect-ratio-crop \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"width":1920,"height":1080,"ratio":"9:16"}'const res = await fetch("https://api.kit.forhosting.com/video/aspect-ratio-crop", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"width": 1920,
"height": 1080,
"ratio": "9:16"
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/video/aspect-ratio-crop",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"width": 1920,
"height": 1080,
"ratio": "9:16"
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/video/aspect-ratio-crop", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"width":1920,"height":1080,"ratio":"9:16"}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"width":1920,"height":1080,"ratio":"9:16"}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/video/aspect-ratio-crop", body)
req.Header.Set("Authorization", "Bearer "+os.Getenv("KIT_KEY"))
req.Header.Set("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)Ejemplo de solicitud
{
"width": 1920,
"height": 1080,
"ratio": "9:16"
}Ejemplo de respuesta
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "video.aspect_ratio_crop",
"status": "queued",
"_links": {
"result": "/tasks/tsk_…/result"
}
}La API es asíncrona: la llamada devuelve un task_id al instante y el resultado llega por webhook. El polling está limitado a 1 req/s por tarea.
Precio
Precio publicado — sin tokens ni créditos inventados. Una tarea fallida no se cobra.
Límites
max_mb | 500 |
max_minutes | 60 |
max_megapixels | 3.9 |
Errores
| HTTP | Código | Significado |
|---|---|---|
401 | unauthorized | API key ausente o inválida. |
402 | insufficient_balance | El saldo no cubre el precio de la tarea. |
404 | unknown_type | El tipo de tarea no existe. |
429 | rate_limited | Demasiadas peticiones. Use el webhook en vez de sondear. |