---
title: "VideoGenerationModel"
sidebar_label: "VideoGenerationModel"
description: "Kotlin binding reference: VideoGenerationModel."
---

<!-- Generated by tools/api_reference/generate_api_docs.py. Do not edit. -->

//[clika-runtime](../../../index.md)/[io.clika.modelverse](../index.md)/[VideoGenerationModel](index.md)

# VideoGenerationModel

[common]\
class [VideoGenerationModel](index.md) : [PreTrainedModel](../PreTrainedModel/index.md)

A video-generation model: a prompt in, a clip out (the `text-to-video` kind), its frames each as the RGBA pixels an Android bitmap takes, with the clip's sound where the family answers one.

Open it with [open](Companion/open.md) from a checkpoint the model library's video-generation families claim (a family that declares a clip out of text). Hand it a prompt with [generate](generate.md); the clip arrives through the listener on the model's own worker thread, one request at a time per model. [close](close.md) frees the weights.

## Types

| Name | Summary |
|---|---|
| [Companion](Companion/index.md) | [common]<br>object [Companion](Companion/index.md) |

## Properties

| Name | Summary |
|---|---|
| [capabilities](capabilities.md) | [common]<br>val [capabilities](capabilities.md): [Capabilities](../Capabilities/index.md)<br>What the model takes and gives, read when it opened: [Capabilities.defaultImageWidth](../Capabilities/defaultImageWidth.md), [Capabilities.defaultImageHeight](../Capabilities/defaultImageHeight.md), [Capabilities.defaultFrames](../Capabilities/defaultFrames.md) and [Capabilities.defaultFps](../Capabilities/defaultFps.md) are what a request of zeros takes. |
| [config](config.md) | [common]<br>open override val [config](config.md): [PretrainedConfig](../PretrainedConfig/index.md)<br>The checkpoint's identity, read when the model opened. |

## Functions

| Name | Summary |
|---|---|
| [close](close.md) | [common]<br>open fun [close](close.md)()<br>Free the model. A running request is canceled first and the call waits for it to return; called from inside a listener callback, the free runs right after that callback's request ends instead. Idempotent. |
| [generate](generate.md) | [common]<br>fun [generate](generate.md)(prompt: [String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html), options: [VideoGenerationOptions](../VideoGenerationOptions/index.md) = VideoGenerationOptions(), listener: [VideoGenerationListener](../VideoGenerationListener/index.md)): [VideoGenerationHandle](../VideoGenerationHandle/index.md)<br>Generate a clip for [prompt](generate.md) under [options](generate.md). Returns at once; the worker runs the request and calls [listener](generate.md) on its thread: [VideoGenerationListener.onVideo](../VideoGenerationListener/onVideo.md) with the clip and the seed the model drew, then [VideoGenerationListener.onDone](../VideoGenerationListener/onDone.md) with the [VideoGenerationReport](../VideoGenerationReport/index.md). A knob left at its zero keeps the model's own default; the family's laws on the frame count and the size apply. |
| [residency](residency.md) | [common]<br>open override fun [residency](residency.md)(): [ResidencyReport](../ResidencyReport/index.md)<br>What the model holds on each device right now ([ResidencyReport](../ResidencyReport/index.md)); a closed model refuses with [ModelverseException](../ModelverseException/index.md). |