- Cuándo Wan 2.7 VideoEdit es la herramienta adecuada
- Endpoint verificado y flujo de trabajo
- Paso 1: Obtén una clave API de Novita AI
- Paso 2: Comprende la forma de la solicitud
- Paso 3: Envía tu primera solicitud de VideoEdit
- Paso 4: Consulta el endpoint de resultado de la tarea
- Parámetros clave que realmente deberías considerar
- Límites documentados y restricciones prácticas
- Ejemplo en Python: Envío y consulta
- Ejemplo en cURL con consulta en shell
- Precios, créditos y qué verificar antes de estimar costos
- Errores comunes de integración
- ¿Qué endpoint de Wan 2.7 deberías elegir?
- Preguntas frecuentes
- Artículos recomendados
Wan 2.7 VideoEdit en Novita AI es el endpoint adecuado cuando ya tienes un metraje y deseas que el modelo lo reestilice o reescriba la escena sin reconstruir el movimiento desde cero. Envías un video de origen a POST https://api.novita.ai/v3/async/wan2.7-videoedit, obtienes un task_id y luego consultas GET /v3/async/task-result hasta que el clip editado esté listo. Esta guía muestra la forma exacta de la solicitud, cuándo agregar imágenes de referencia y los detalles de implementación que importan antes de integrarlo en producción.
Para una comparación más amplia de modos, consulta Wan 2.7 en Novita AI: Texto a Video vs Imagen a Video vs Referencia a Video.
Cuándo Wan 2.7 VideoEdit es la herramienta adecuada
Usa Wan 2.7 VideoEdit cuando el tiempo y el movimiento de la cámara en tu clip de origen ya sean suficientemente buenos, y desees que la IA cambie lo que ve el espectador en lugar de cómo está planeada la toma.
Usos típicos:
- Tienes un clip de acción real y deseas convertirlo en un render anime, cinematográfico o estilizado.
- Necesitas cambiar vestuario, entorno, utilería o atmósfera conservando el arco de movimiento original.
- Deseas aplicar una transformación guiada por indicaciones al metraje y, opcionalmente, basar el aspecto en una imagen de referencia.
No es el endpoint adecuado cuando:
- Necesitas movimiento completamente nuevo solo a partir de texto. Usa Wan 2.7 T2V en su lugar.
- Deseas animar una imagen estática. Usa Wan 2.7 I2V en su lugar.
- Necesitas interpretación de múltiples personajes con espacios de referencia con nombre en una escena generada. Usa Wan 2.7 R2V en su lugar.
Esa distinción es importante porque VideoEdit comienza a partir de un clip de entrada. Si el movimiento original es incorrecto, el modelo no corregirá la coreografía por ti.
Endpoint verificado y flujo de trabajo
Wan 2.7 VideoEdit en Novita AI utiliza un endpoint de envío y el endpoint compartido de resultados asíncronos:
| Campo | Valor |
|---|---|
| Endpoint de envío | POST https://api.novita.ai/v3/async/wan2.7-videoedit |
| Consulta de resultados | GET https://api.novita.ai/v3/async/task-result?task_id=<id> |
| Cabecera de autenticación | Authorization: Bearer $NOVITA_API_KEY |
| Tipo de contenido | application/json |
| Documentación oficial | Referencia de API de Wan 2.7 VideoEdit |
La API es asíncrona. Una llamada de envío exitosa devuelve un task_id, no la URL del video terminado. Tu aplicación debe persistir ese ID de tarea y construir lógica de consulta o de trabajo en segundo plano a su alrededor.
Paso 1: Obtén una clave API de Novita AI
Crea una clave desde gestión de claves de Novita AI y mantenla en una variable de entorno:
export NOVITA_API_KEY="tu_clave_api_aqui"
No codifiques la clave en el código del navegador, aplicaciones móviles o archivos de configuración verificados.
Paso 2: Comprende la forma de la solicitud
Wan 2.7 VideoEdit utiliza un cuerpo JSON plano. La solicitud no anida campos bajo input o parameters.
Como mínimo, envía:
video_urlprompt
Los campos opcionales documentados que normalmente te importarán primero son:
reference_image_urlpara una referencia de aspecto/estiloresolutiondurationaudio_settingprompt_extendseed
Paso 3: Envía tu primera solicitud de VideoEdit
Esta es la solicitud práctica más pequeña:
curl -s -X POST https://api.novita.ai/v3/async/wan2.7-videoedit \
-H "Authorization: Bearer $NOVITA_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"video_url": "https://example.com/source-clip.mp4",
"prompt": "Convierte esta escena de pasillo de oficina en un pasillo cyberpunk de neón, conserva el movimiento de la caminata y la trayectoria de la cámara",
"resolution": "720P",
"duration": 5
}'
Respuesta esperada:
{
"task_id": "abc123..."
}
No se garantiza nada más en el momento del envío. Trata la solicitud como un paso de encolado de trabajo, no como una respuesta de edición síncrona.
Paso 4: Consulta el endpoint de resultado de la tarea
Usa el task_id devuelto con la API de resultado de tarea compartida:
curl -s "https://api.novita.ai/v3/async/task-result?task_id=abc123..." \
-H "Authorization: Bearer $NOVITA_API_KEY"
"
Construye alrededor de estos estados:
| Estado | Significado |
|---|---|
| `TASK_STATUS_QUEUED` | Aceptado y esperando ejecución |
| `TASK_STATUS_PROCESSING` | La edición está en progreso |
| `TASK_STATUS_SUCCEED` | El video editado está listo |
| `TASK_STATUS_FAILED` | La tarea falló; inspecciona el cuerpo de la respuesta |
Cuando la tarea tiene éxito, la respuesta incluye un array `videos` con la URL del video editado y su TTL. Descarga o mueve ese activo rápidamente en lugar de tratar la URL alojada como almacenamiento permanente.
## Paso 5: Agrega una imagen de referencia cuando necesites un control visual más preciso
`reference_image_url` es opcional, pero cambia el comportamiento de edición de maneras útiles.
Úsalo cuando:
- Desees que el clip final siga un aspecto, vestuario o paleta de colores de personaje específicos.
- Desees dirigir la salida hacia una dirección artística específica en lugar de dejarlo todo a la indicación de texto.
- El movimiento del video de origen sea correcto, pero la identidad de la escena sea demasiado vaga solo con texto.
Ejemplo de solicitud con una imagen de referencia:
```bash
curl -s -X POST https://api.novita.ai/v3/async/wan2.7-videoedit \
-H "Authorization: Bearer $NOVITA_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"video_url": "https://example.com/source-clip.mp4",
"reference_image_url": "https://example.com/reference-look.png",
"prompt": "Transforma al intérprete en el aspecto y la paleta de colores de la imagen de referencia manteniendo el mismo ritmo de baile",
"resolution": "1080P",
"duration": 6,
"audio_setting": "auto"
}'
Si tu resultado sigue desviándose, la solución habitual no es una indicación más larga. Es una indicación más precisa junto con una mejor imagen de referencia.
Parámetros clave que realmente deberías considerar
| Parámetro | Tipo | Obligatorio | Qué hace |
|---|---|---|---|
video_url |
string | Sí | Video de origen a editar |
prompt |
string | Sí | Describe la transformación objetivo |
reference_image_url |
string | No | Imagen de referencia para anclar el aspecto y el estilo |
resolution |
string | No | Resolución de salida, los valores documentados incluyen 720P y 1080P |
duration |
integer | No | Duración de salida objetivo en segundos; 0 mantiene la duración completa del video de entrada |
audio_setting |
string | No | Controla el comportamiento de generación de audio |
prompt_extend |
boolean | No | Permite que el modelo expanda indicaciones cortas automáticamente |
seed |
integer | No | Mejora la reproducibilidad entre reintentos |
Consulta la referencia oficial de parámetros antes de asumir valores por defecto. Los campos de los modelos de video cambian más a menudo que los de los modelos de texto, y es fácil equivocarse con las restricciones de salida si confías en la memoria.
Límites documentados y restricciones prácticas
A fecha del 29 de julio de 2026, los documentos oficiales de Novita para Wan 2.7 VideoEdit documentan estos límites:
- Resoluciones compatibles:
720Py1080P durationpor defecto es0, lo que significa la duración completa del video de entrada; el rango documentado de duración explícita de salida es de 2 a 10 segundos cuando se establece- Formatos de video de entrada:
mp4ymov - Límite de tamaño de video de entrada: hasta 100 MB
- Formatos de imagen de referencia:
jpg,jpeg,png,webp - Límite de tamaño de imagen de referencia: hasta 20 MB
- Formato de video de salida:
mp4
Estas restricciones son fáciles de pasar por alto cuando estás construyendo un pipeline multimedia genérico. El fallo de integración más común es enviar un archivo de origen más largo o más grande de lo que el endpoint acepta.
Dos implicaciones prácticas:
- Si deseas que el clip editado conserve la longitud de origen, omite
durationo establécelo en0en lugar de forzar un recorte de 2 a 10 segundos. - Si estás probando indicaciones rápidamente, usa
720Pprimero y pasa a1080Psolo cuando la transformación esté funcionando.
Ejemplo en Python: Envío y consulta
import os
import time
import requests
API_KEY = os.environ["NOVITA_API_KEY"]
BASE_URL = "https://api.novita.ai"
HEADERS = {
"Authorization": f"Bearer {API_KEY}",
"Content-Type": "application/json",
}
def submit_video_edit(
video_url: str,
prompt: str,
reference_image_url: str | None = None,
resolution: str = "720P",
duration: int = 0,
audio_setting: str = "auto",
prompt_extend: bool = True,
seed: int | None = None,
) -> str:
payload = {
"video_url": video_url,
"prompt": prompt,
"resolution": resolution,
"duration": duration,
"audio_setting": audio_setting,
"prompt_extend": prompt_extend,
}
if reference_image_url:
payload["reference_image_url"] = reference_image_url
if seed is not None:
payload["seed"] = seed
resp = requests.post(
f"{BASE_URL}/v3/async/wan2.7-videoedit",
headers=HEADERS,
json=payload,
timeout=60,
)
resp.raise_for_status()
return resp.json()["task_id"]
def poll_result(task_id: str, interval: int = 5, timeout: int = 300) -> dict:
deadline = time.time() + timeout
while time.time() < deadline:
resp = requests.get(
f"{BASE_URL}/v3/async/task-result",
headers=HEADERS,
params={"task_id": task_id},
timeout=60,
)
resp.raise_for_status()
data = resp.json()
status = data.get("task", {}).get("status")
if status == "TASK_STATUS_SUCCEED":
return data
if status == "TASK_STATUS_FAILED":
reason = data.get("task", {}).get("reason", "unknown")
raise RuntimeError(f"Task {task_id} failed: {reason}")
time.sleep(interval)
raise TimeoutError(f"Task {task_id} did not complete within {timeout}s")
if __name__ == "__main__":
task_id = submit_video_edit(
video_url="https://example.com/source-clip.mp4",
prompt="Cambia la escena callejera por una ciudad retrofuturista lluviosa de noche, conserva el plano secuencia original",
reference_image_url="https://example.com/reference-frame.png",
resolution="720P",
duration=0,
seed=42,
)
print(f"Submitted task: {task_id}")
result = poll_result(task_id)
video = result["videos"][0]
print("Edited video URL:", video["video_url"])
print("URL TTL:", video["video_url_ttl"])
Ejemplo en cURL con consulta en shell
TASK_ID=$(curl -s -X POST https://api.novita.ai/v3/async/wan2.7-videoedit \
-H "Authorization: Bearer $NOVITA_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"video_url": "https://example.com/source-clip.mp4",
"prompt": "Convierte el clip en una escena urbana anime dibujada a mano, conserva el movimiento de carrera",
"resolution": "720P",
"duration": 0,
"prompt_extend": true
}' | jq -r '.task_id')
while true; do
RESULT=$(curl -s "https://api.novita.ai/v3/async/task-result?task_id=$TASK_ID" \
-H "Authorization: Bearer $NOVITA_API_KEY")
STATUS=$(echo "$RESULT" | jq -r '.task.status')
if [ "$STATUS" = "TASK_STATUS_SUCCEED" ]; then
echo "$RESULT" | jq -r '.videos[0].video_url'
break
fi
if [ "$STATUS" = "TASK_STATUS_FAILED" ]; then
echo "$RESULT"
break
fi
sleep 5
done
Si estás integrando desde un servicio backend, envuelve este bucle de consulta en un worker en lugar de mantener abierta una solicitud de usuario durante toda la ventana de generación.
Precios, créditos y qué verificar antes de estimar costos
Novita AI expone los precios de los modelos de video en sus páginas de modelos y precios, pero esos números pueden cambiar. Para Wan 2.7 VideoEdit, verifica las tarifas actuales directamente desde la página de precios de Novita AI y la entrada del modelo vinculada desde los documentos oficiales antes de publicar estimaciones de costos para el cliente.
Para la planificación de ingeniería, la suposición más segura es:
- El costo escala con la configuración del clip generado, no solo con una tarifa fija por solicitud.
- Las ejecuciones en
1080Pson la línea base incorrecta para la iteración. - Los clips más cortos son más fáciles de validar y más baratos de depurar.
Si estás construyendo herramientas internas, trata la consulta de precios como una preocupación de configuración, no como una constante integrada en el código.
Errores comunes de integración
Enviar subidas sin procesar en lugar de una URL accesible. La forma de solicitud documentada espera entradas multimedia basadas en URL. Asegúrate de que tu clip de origen ya esté disponible en una URL estable a la que tu servidor pueda hacer referencia.
Usar VideoEdit para cambios de movimiento. VideoEdit es un endpoint de transformación, no un endpoint de coreografía. Si el movimiento original es incorrecto, regenéralo con T2V o I2V.
Confundir los límites del video de origen y de la imagen de referencia. El video de origen es el activo más grande: mp4/mov, hasta 100 MB. El límite más pequeño de 20 MB se aplica a reference_image_url, no a video_url.
Consultar con demasiada frecuencia. Golpear el endpoint de resultado de tarea cada segundo es innecesario para trabajos de video de varios segundos. Un intervalo de 5 a 10 segundos suele ser un mejor punto de partida.
Ignorar el TTL de la URL. La URL del resultado es temporal. Persiste el activo rápidamente si el clip editado es importante para etapas posteriores.
Omitir la especificidad de la indicación. “Hazlo mejor” no es una indicación de edición. Describe el estilo objetivo, el entorno, el tratamiento del sujeto y qué movimiento debe permanecer sin cambios.
¿Qué endpoint de Wan 2.7 deberías elegir?
Usa esta regla rápida:
- Elige VideoEdit cuando ya tengas un video de origen.
- Elige I2V cuando tengas una imagen de origen o desees continuar desde un flujo de trabajo liderado por imágenes.
- Elige T2V cuando solo tengas texto.
- Elige R2V cuando la consistencia de identidad y el control de personajes de referencia importen más que editar un clip existente.
Esa separación es lo que mantiene tu integración simple. Los equipos a menudo usan en exceso texto a video para trabajos que en realidad son problemas de edición basados en indicaciones.
Si estás organizando la orquestación alrededor de este endpoint, compara Inicio rápido de Macaron V1 Tall en Novita AI y Qwen3.8-Max en Novita AI para anclajes de modelos de mayor peso.
Preguntas frecuentes
¿Cuál es el endpoint de Novita AI para Wan 2.7 VideoEdit?
POST https://api.novita.ai/v3/async/wan2.7-videoedit. Devuelve un task_id, luego consultas GET https://api.novita.ai/v3/async/task-result?task_id=<id> para la finalización.
¿Puedo proporcionar una imagen de referencia junto con el video de origen?
Sí. La forma de solicitud documentada admite un reference_image_url opcional junto con video_url y prompt, lo cual es útil para dirigir el aspecto final con mayor precisión.
¿Qué longitud de video admite Wan 2.7 VideoEdit en Novita AI?
Según lo documentado el 29 de julio de 2026, duration por defecto es 0, lo que significa la duración completa del video de entrada. Si estableces explícitamente duration, el rango documentado es de 2 a 10 segundos.
¿Wan 2.7 VideoEdit acepta videos de origen grandes?
Sí, dentro del límite documentado. Los documentos oficiales enumeran entrada mp4/mov de hasta 100 MB. El límite separado de 20 MB se aplica a la imagen de referencia opcional.
¿Debería usar Wan 2.7 VideoEdit o Wan 2.7 I2V?
Usa VideoEdit si ya tienes un clip y deseas transformarlo. Usa I2V si tu punto de partida es una imagen estática o un flujo de trabajo liderado por imágenes.
