Reference to Video te permite fijar la apariencia de personajes, objetos y escenas para que tus vídeos generados por IA se mantengan visualmente consistentes. En lugar de esperar que el modelo interprete tu prompt correctamente, proporcionas anclajes visuales — imágenes de referencia que le dicen al modelo exactamente cómo se ve tu sujeto.
Esta función está disponible en los modelos Kling O3 y Grok Imagine R2V en Venice Video Studio. Cada familia de modelos usa un enfoque diferente para las imágenes de referencia — consulta las secciones específicas del modelo a continuación.
Cuándo usar Reference to Video
Usa Reference to Video cuando necesites:
- Consistencia de personaje — la misma persona o personaje en varias tomas
- Precisión del producto — un producto real que debe verse idéntico al original
- Continuidad de escena — un entorno o fondo específico entre generaciones
- Escenas multi-personaje — varios personajes distintos interactuando sin mezclarse
Para text-to-video o image-to-video simples donde la consistencia no es crítica, los modelos estándar funcionan bien sin referencias.
Modelos disponibles
| Modelo | Enfoque | Mejor para |
|---|
| Kling O3 Pro R2V | Elementos + imágenes de escena | Escenas multi-personaje complejas con control preciso de identidad |
| Kling O3 Standard R2V | Elementos + imágenes de escena | Iteración más rápida en escenas basadas en elementos |
| Grok Imagine R2V | Imágenes de referencia planas | Generación rápida basada en referencias con hasta 7 imágenes |
Kling O3 usa un enfoque estructurado con Elementos (anclas de identidad de personaje con imágenes frontal + de referencia) e Imágenes de Escena. Grok Imagine R2V toma un enfoque más simple — subes imágenes de referencia directamente y las referencias en tu prompt con @Image1, @Image2, etc.
Kling O3 Reference to Video
Conceptos básicos
Kling O3 Reference to Video usa tres tipos de entrada visual que trabajan juntas:
| Entrada | Obligatorio | Propósito | Cómo referenciar en el prompt |
|---|
| Elements | Al menos una entrada visual* | Fija la identidad de un personaje u objeto | @Element1, @Element2, etc. |
| Imágenes de referencia de escena | Al menos una entrada visual* | Establece el entorno, estilo y ambiente | @Image1, @Image2, etc. |
| Frame inicial | Al menos una entrada visual* | Controla el primer frame del vídeo | N/A (se establece al subir) |
| Frame final | No | Controla el último frame del vídeo | N/A (se establece al subir) |
*Se requiere al menos uno de: frame inicial, elementos o imágenes de referencia de escena.
Elements
Un Element es un personaje u objeto que quieres mantener visualmente estable a lo largo del vídeo. Cada elemento consta de:
- Imagen frontal (obligatoria por elemento) — una foto clara y frontal del sujeto. Es el ancla principal de identidad. Piénsalo como la “foto de pasaporte” de tu personaje o producto.
- Imágenes de referencia (1–3, opcionales) — ángulos adicionales del mismo sujeto (vista lateral, ángulo de 45 grados, espalda). Ayudan al modelo a entender al sujeto en el espacio 3D. Si no se proporcionan, la imagen frontal se usa automáticamente como referencia.
Puedes añadir hasta 7 elementos por generación (limitado por el total combinado). Refiérete a ellos en tu prompt usando @Element1, @Element2, etc.
Imágenes de referencia de escena
Las referencias de escena definen el “escenario” donde tiene lugar la acción. Influyen en:
- Iluminación y paleta de colores
- Detalles de arquitectura y entorno
- Estilo visual general y atmósfera
Puedes añadir hasta 4 imágenes de escena. Refiérete a ellas como @Image1, @Image2, etc. en tu prompt.
Limitaciones
El número total de imágenes en todos los tipos de entrada está limitado:
| Límite | Valor |
|---|
| Mínimo requerido | Al menos 1 entrada visual (frame inicial, elemento o imagen de escena) |
| Total combinado (primer frame + último frame + elementos + imágenes de escena) | 7 máximo |
| Elementos (sin frame inicial/final) | 7 máximo |
| Elementos (con frame inicial o final) | 3 máximo |
| Imágenes de referencia de escena | 4 máximo |
| Imágenes de referencia por elemento | 1–3 |
Escenarios de ejemplo:
- 7 elementos + 0 imágenes de escena = 7 ✓ (sin frames)
- 5 elementos + 2 imágenes de escena = 7 ✓ (sin frames)
- Primer frame (1) + 3 elementos + 3 imágenes de escena = 7 ✓
- Primer frame (1) + último frame (1) + 3 elementos + 2 imágenes de escena = 7 ✓
- Primer frame (1) + 4 elementos = ✗ (máx. 3 elementos con frame)
- Primer frame (1) + último frame (1) + 4 elementos = ✗ (máx. 3 elementos con frames)
Cada elemento requiere una imagen frontal. Si no proporcionas imágenes de referencia para un elemento, la imagen frontal se usa automáticamente como referencia.
Modo multi-toma
El modo multi-toma te permite dividir una sola generación en varias escenas, cada una con su propio prompt y duración. Los elementos y las referencias de escena se mantienen en todas las tomas, manteniendo la consistencia. La duración total entre todas las tomas no puede exceder 15 segundos.
Guía paso a paso (Video Studio)
1. Abre Video Studio y selecciona el modelo
Ve a venice.ai/video. En el Model Browser de la izquierda, selecciona uno de los modelos Kling O3 Reference to Video:
- Kling O3 Pro R2V — mayor calidad, tiempo de generación más largo (~6 min)
- Kling O3 Standard R2V — más rápido, más rentable para iteración
2. Añade entradas visuales (al menos una obligatoria)
Debes proporcionar al menos una entrada visual para generar un vídeo: un frame inicial, un elemento o una imagen de referencia de escena. En el Input Panel verás la sección Elements. Haz clic en Add Element para crear un elemento para personajes u objetos que quieras mantener visualmente consistentes.
Para cada elemento:
- Haz clic en el tile Frontal para subir una imagen clara y frontal de tu personaje u objeto
- Opcionalmente haz clic en Add bajo Reference Images para subir ángulos adicionales (1–3)
Repite para personajes u objetos adicionales (hasta 7 elementos en total, o 3 si usas frames inicial/final).
El total combinado de primer frame, último frame, elementos e imágenes de escena no puede exceder 7. Consulta Limitaciones para detalles.
Mejores imágenes de referencia: usa fotos bien iluminadas con un fondo limpio. Proporciona vistas de frente, lateral y de 45 grados para el bloqueo de identidad más fuerte. Asegúrate de que todas las imágenes de referencia compartan el mismo estilo visual (no mezcles fotorrealista y anime).
3. Añade imágenes de referencia de escena (opcional)
Debajo de la sección Elements verás Scene Reference Images. Sube imágenes que definan el entorno que quieres — una ubicación específica, configuración de iluminación o estilo artístico.
Estas se etiquetan automáticamente como @Image1, @Image2, etc.
4. Sube un frame inicial (opcional)
Si quieres controlar el primer frame exacto de tu vídeo, cambia al tipo de entrada Image y sube un frame inicial. También puedes opcionalmente establecer un frame final.
5. Escribe tu prompt
En el campo de prompt, describe la acción que quieres mientras haces referencia a tus elementos e imágenes de escena usando las etiquetas @:
@Element1 walks through the streets of @Image1, looking up at the buildings.
The camera slowly tracks from behind, revealing the city skyline.
Para escenas multi-personaje:
@Element1 and @Element2 enter the cafe in @Image1 from opposite sides.
@Element1 waves and walks toward @Element2, who is sitting at a corner table.
6. Configura los ajustes
Abre Video Settings para ajustar:
| Ajuste | Opciones | Predeterminado |
|---|
| Duración | 3s – 15s | 5s |
| Aspect Ratio | 16:9, 9:16, 1:1 | 16:9 |
| Generar audio | On/Off | Off |
La generación de audio añade efectos de sonido nativos, diálogo y audio ambiental sincronizados con el vídeo. Aumenta el coste aproximadamente un 25 %.
7. Genera
Haz clic en Generate Video. Kling O3 normalmente tarda 4–6 minutos según el nivel del modelo y la duración. Puedes encolar varias generaciones y explorar los resultados en la Video Gallery.
Storyboard multi-toma
Para secuencias narrativas, usa el modo multi-toma para definir escenas separadas dentro de una sola generación.
- En el área de prompt, haz clic en Add Shot para crear tomas adicionales
- Escribe un prompt separado para cada toma
- Establece la duración de cada toma (3–15s cada una, total ≤ 15s)
Los elementos y referencias de escena persisten en todas las tomas automáticamente:
Shot 1 (5s): @Element1 stands at the edge of @Image1, looking out at the horizon.
Slow camera push forward.
Shot 2 (5s): Close-up of @Element1's face as they turn toward the camera.
Soft natural lighting, shallow depth of field.
Shot 3 (5s): @Element1 walks away from camera into the distance.
Wide cinematic shot, golden hour lighting.
La duración total multi-toma no puede exceder 15 segundos. Por ejemplo, tres tomas de 5 segundos = 15s máximo.
Consejos de prompting
Estructura tu prompt
Sigue este patrón para resultados fiables:
[sujeto con etiqueta @Element] + [acción] + [entorno con etiqueta @Image] + [movimiento de cámara] + [iluminación/estilo]
Ejemplo:
@Element1 hops happily across the candy ground of @Image1, stops to look at a
giant lollipop, tilts its head curiously. Cinematic tracking shot, soft warm lighting.
Mantén los prompts entre 50–150 palabras
Los prompts más cortos carecen de detalle. Los prompts más largos introducen contradicciones. Apunta al punto óptimo.
Usa lenguaje de cámara simple
El modelo responde mejor a direcciones de cámara sencillas:
| Usa | Evita |
|---|
slow camera push forward | dolly zoom with rack focus transition |
tracking shot from behind | complex handheld parallax movement |
close-up | extreme macro with tilt-shift bokeh |
wide cinematic shot | anamorphic ultra-wide establishing crane shot |
Usa vocabulario consistente
Si describes un personaje con “una chaqueta roja” en un prompt, no cambies a “abrigo carmesí” en el siguiente. El modelo trata palabras diferentes como intenciones diferentes.
Coloca las instrucciones de cámara al principio
Pon la dirección de la cámara cerca del principio del prompt para resultados más fiables:
Cinematic tracking shot of @Element1 walking through @Image1, leaves
blowing in the wind, golden afternoon light.
Precios de Kling O3
Los modelos Kling O3 Reference to Video usan precios basados en duración:
| Modelo | Por segundo (sin audio) | Por segundo (con audio) |
|---|
| Kling O3 Pro R2V | $0.112 | $0.140 |
| Kling O3 Standard R2V | $0.112 | $0.140 |
Ejemplo: un vídeo de 10 segundos con audio = 10 × 0.14=∗∗1.40**
Usa la API de cotización de vídeo para el precio exacto antes de generar.
Uso de la API de Kling O3
Kling O3 Reference to Video también está disponible vía la API de Venice. Consulta la API de cola de vídeo para detalles completos.
Python
import requests
response = requests.post(
"https://api.venice.ai/api/v1/video/queue",
headers={"Authorization": "Bearer YOUR_API_KEY"},
json={
"model": "kling-o3-pro-reference-to-video",
"prompt": "@Element1 walks through @Image1, camera tracking from behind",
"duration": "8",
"aspect_ratio": "16:9",
"audio": True,
"elements": [
{
"frontal_image_url": "https://example.com/character-front.jpg",
"reference_image_urls": [
"https://example.com/character-side.jpg",
"https://example.com/character-angle.jpg"
]
}
],
"image_urls": [
"https://example.com/scene-background.jpg"
]
}
)
queue_id = response.json()["id"]
Node.js
const response = await fetch("https://api.venice.ai/api/v1/video/queue", {
method: "POST",
headers: {
"Authorization": "Bearer YOUR_API_KEY",
"Content-Type": "application/json"
},
body: JSON.stringify({
model: "kling-o3-pro-reference-to-video",
prompt: "@Element1 walks through @Image1, camera tracking from behind",
duration: "8",
aspect_ratio: "16:9",
audio: true,
elements: [
{
frontal_image_url: "https://example.com/character-front.jpg",
reference_image_urls: [
"https://example.com/character-side.jpg",
"https://example.com/character-angle.jpg"
]
}
],
image_urls: [
"https://example.com/scene-background.jpg"
]
})
});
const { id: queueId } = await response.json();
cURL
curl https://api.venice.ai/api/v1/video/queue \
-H "Authorization: Bearer $VENICE_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "kling-o3-pro-reference-to-video",
"prompt": "@Element1 walks through @Image1, camera tracking from behind",
"duration": "8",
"aspect_ratio": "16:9",
"audio": true,
"elements": [
{
"frontal_image_url": "https://example.com/character-front.jpg",
"reference_image_urls": [
"https://example.com/character-side.jpg",
"https://example.com/character-angle.jpg"
]
}
],
"image_urls": [
"https://example.com/scene-background.jpg"
]
}'
Schema de elemento
Cada elemento del array elements acepta:
| Campo | Tipo | Obligatorio | Descripción |
|---|
frontal_image_url | string | Sí | URL de imagen frontal clara |
reference_image_urls | string[] | No | URLs de ángulos adicionales (1–3). Si se omite, la imagen frontal se usa como referencia. |
La API también admite video_url para elementos basados en vídeo, pero esto no está disponible actualmente en la UI de Video Studio.
Resolución de problemas de Kling O3
| Problema | Causa probable | Solución |
|---|
| Botón Generate desactivado | No se proporcionaron entradas visuales | Añade al menos una entrada visual: frame inicial, elemento o imagen de referencia de escena |
| Error “Number of images exceeds the limit” | Demasiadas entradas combinadas | El total de primer frame + último frame + elementos + imágenes de escena debe ser ≤ 7 |
| La cara del personaje cambia entre tomas | Imagen frontal diferente o ausente | Usa la misma imagen frontal de forma consistente, mantén la descripción idéntica |
| El movimiento de cámara parece aleatorio | Instrucciones de cámara múltiples o conflictivas | Usa una única instrucción de cámara, ponla al principio del prompt |
| El estilo cambia entre generaciones | Referencias de escena inconsistentes o estilos mezclados | Reutiliza las mismas imágenes de escena, mantén las palabras clave de estilo consistentes |
| Los elementos se mezclan en escenas multi-personaje | Instrucciones espaciales vagas | Sé explícito sobre la posición de cada elemento: “primer plano izquierda”, “entrando por la derecha” |
| El fondo se ve distorsionado | Imagen de referencia de escena desordenada o compleja | Usa imágenes de referencia de escena limpias y de alta calidad |
| El movimiento se ve antinatural | Demasiadas acciones en un prompt | Simplifica la acción, usa duración más corta, una acción por toma |
Prueba con un clip de 3–5 segundos antes de comprometerte con duraciones más largas. Los clips más cortos mantienen mejor consistencia y te permiten iterar más rápido.
Grok Imagine Reference to Video
Grok Imagine R2V toma un enfoque más simple que Kling O3. En lugar de Elements estructurados con separación de imagen frontal/referencia, subes imágenes de referencia planas y las refieres directamente en tu prompt usando @Image1, @Image2, etc. El modelo incorpora esos sujetos al vídeo generado.
Cómo funciona
- Sube 1–7 imágenes de referencia — fotos de personajes, objetos o escenas que quieras en el vídeo
- Escribe un prompt que describa el vídeo, usando
@Image1, @Image2, etc. para referenciar imágenes específicas
- El modelo genera un vídeo incorporando esas referencias
Si no incluyes etiquetas @Image en tu prompt, todas las imágenes subidas se referencian automáticamente.
Ajustes
| Ajuste | Opciones | Predeterminado |
|---|
| Aspect Ratio | 16:9, 4:3, 3:2, 1:1, 2:3, 3:4, 9:16 | 16:9 |
| Resolución | 480p, 720p | 480p |
| Duración | 5s, 8s, 10s | 8s |
Grok Imagine R2V no admite generación de audio, modo multi-toma ni Elements. Para esas funciones, usa Kling O3 R2V.
Guía paso a paso (Video Studio)
1. Selecciona el modelo
Ve a venice.ai/video. En el Model Browser, selecciona Grok Imagine R2V.
2. Sube imágenes de referencia
Haz clic en References en la barra de herramientas de entrada (o usa el menú +) para abrir el panel de imágenes de referencia. Sube 1–7 imágenes de los personajes, objetos o escenas que quieras en el vídeo.
Cada imagen se etiqueta automáticamente como @Image1, @Image2, etc. en el orden en que las subes (de izquierda a derecha).
3. Escribe tu prompt
Describe el vídeo que quieres. Usa etiquetas @Image para referenciar imágenes específicas:
@Image1 and @Image2 walking together through a sunlit park,
camera slowly tracking alongside them, warm afternoon light.
Escribe @ en el campo de prompt para ver un menú de autocompletado de las referencias de imagen disponibles.
Si omites las etiquetas @Image por completo, el backend antepone automáticamente referencias a todas las imágenes subidas. Esto es útil cuando quieres que se usen todas las imágenes sin especificar cuál es cuál.
4. Configura los ajustes y genera
Abre Video Settings para ajustar aspect ratio, resolución y duración. Haz clic en Generate Video.
Precios de Grok Imagine R2V
Grok Imagine R2V usa precios basados en duración y resolución:
| Resolución | Por segundo |
|---|
| 480p | ~$0.063 |
| 720p | ~$0.088 |
Ejemplo: un vídeo de 8 segundos a 480p = 8 × 0.063=∗∗ 0.50**
Grok Imagine cobra una tarifa de moderación de contenido por los vídeos generados, incluso si el vídeo es rechazado. Esto se refleja en el coste de créditos mostrado antes de generar.
Uso de la API de Grok Imagine R2V
Python
import requests
response = requests.post(
"https://api.venice.ai/api/v1/video/queue",
headers={"Authorization": "Bearer YOUR_API_KEY"},
json={
"model": "grok-imagine-reference-to-video",
"prompt": "@Image1 and @Image2 walking through a park, cinematic tracking shot",
"duration": "8",
"aspect_ratio": "16:9",
"referenceImageUrls": [
"https://example.com/character-a.jpg",
"https://example.com/character-b.jpg"
]
}
)
queue_id = response.json()["id"]
Node.js
const response = await fetch("https://api.venice.ai/api/v1/video/queue", {
method: "POST",
headers: {
"Authorization": "Bearer YOUR_API_KEY",
"Content-Type": "application/json"
},
body: JSON.stringify({
model: "grok-imagine-reference-to-video",
prompt: "@Image1 and @Image2 walking through a park, cinematic tracking shot",
duration: "8",
aspect_ratio: "16:9",
referenceImageUrls: [
"https://example.com/character-a.jpg",
"https://example.com/character-b.jpg"
]
})
});
const { id: queueId } = await response.json();
cURL
curl https://api.venice.ai/api/v1/video/queue \
-H "Authorization: Bearer $VENICE_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "grok-imagine-reference-to-video",
"prompt": "@Image1 and @Image2 walking through a park, cinematic tracking shot",
"duration": "8",
"aspect_ratio": "16:9",
"referenceImageUrls": [
"https://example.com/character-a.jpg",
"https://example.com/character-b.jpg"
]
}'
Parámetros de la API
| Campo | Tipo | Obligatorio | Descripción |
|---|
model | string | Sí | Debe ser grok-imagine-reference-to-video |
prompt | string | Sí | Prompt de texto con referencias opcionales @Image1, @Image2 |
referenceImageUrls | string[] | Sí | 1–7 URLs de imagen o data URLs |
duration | string | No | "5", "8" (predeterminado) o "10" |
aspect_ratio | string | No | p. ej., "16:9" (predeterminado), "9:16", "1:1" |
resolution | string | No | "480p" (predeterminado) o "720p" |
Grok Imagine R2V no usa los campos elements, image_urls ni imageUrl. Todas las imágenes de referencia se pasan vía referenceImageUrls.
Resolución de problemas de Grok Imagine R2V
| Problema | Causa probable | Solución |
|---|
| Botón Generate desactivado | No se subieron imágenes de referencia | Sube al menos 1 imagen de referencia |
| Error “At least one reference image is required” | referenceImageUrls está vacío o ausente | Proporciona al menos una URL de imagen en referenceImageUrls |
Imagen incorrecta asociada a la etiqueta @Image | El orden de las imágenes no coincide con las etiquetas | @Image1 corresponde a la primera imagen en tu orden de subida (de izquierda a derecha). Reordena las subidas si es necesario. |
| El sujeto no aparece en el vídeo | Demasiadas referencias sin etiquetas explícitas | Usa etiquetas @Image en tu prompt para ser explícito sobre qué imágenes usar |
| Salida de baja calidad | Usando resolución 480p | Prueba 720p para mayor calidad (cuesta más) |
| El vídeo es demasiado corto | La duración predeterminada es 8s | Establece duración en "10" para vídeos más largos |