Video Generation
Elftia's video generation feature supports using AI to generate short videos from text descriptions or reference images. It integrates several major video generation providers and uses an asynchronous polling model to handle the time-consuming video rendering process.
Use Cases
- Generate short video clips from text descriptions
- Convert static images into dynamic video (image-to-video)
- Quickly generate creative video for social media or presentations
- Compare generation results across different providers
Supported Providers
| Provider | Highlights | API type |
|---|---|---|
| Kling AI | High-quality video generation; supports multiple resolutions | Async API |
| OpenAI (Sora) | OpenAI's video generation model | Async API |
| Replicate | Open-source model hosting platform with a wide model selection | Async API |
| VolcEngine | Volcengine video generation service | Async API |
| Wan | Wan video generation | Async API |
| Custom (Unified) | Third-party services compatible with the unified interface | Async API |
Configuring a Provider
Steps
- Open Settings > Media Providers > Video
- Select a provider
- Enter the API Key (some providers also require an Access Key or other authentication)
- (Optional) Customize the API endpoint
- Select a default model
- Save and enable
Provider Configuration Table
| Setting | Description | Required |
|---|---|---|
| API Key | The provider's API key | Yes |
| API endpoint | Custom API address | No (defaults to official address) |
| Default model | The default video model to use | No |
| Enabled | Whether this provider is enabled | Yes |
Generating Video
Steps
- Select the video generation feature
- Choose a provider and model
- Enter a text prompt describing the video
- (Optional) Upload a reference image (image-to-video mode)
- Configure generation parameters
- Click Generate
- Wait for the async task to complete
Generation Parameters
Parameters vary by provider; common parameters include:
| Parameter | Description | Notes |
|---|---|---|
| Prompt | Text description of the video content | Required |
| Reference image | Image used as the starting frame of the video | Optional; image-to-video mode |
| Duration | Video length in seconds | Depends on provider |
| Resolution | Video resolution | e.g. 720p, 1080p |
| FPS | Frames per second | Depends on provider |
Asynchronous Polling Model
Because video generation typically takes a significant amount of time (tens of seconds to several minutes), Elftia uses an asynchronous polling mechanism:
Submit generation request → Receive task ID → Poll status periodically → Task complete → Download video
Behavior
- Submit request — Sends a generation request to the provider API and receives a task ID
- Poll status — The system automatically queries the task status at regular intervals (typically every 5–10 seconds)
- Task complete — When the status changes to complete, the generated video file is downloaded automatically
- Display result — The video is shown in the UI and can be played back
While waiting, the UI shows the current task status and estimated time remaining (if the provider supports this).
Automatic Retries
When a temporary error occurs during generation, the system retries automatically:
| Setting | Description | Default |
|---|---|---|
| Retry count | Maximum retries after a failure | 2 |
| Retry interval | Uses exponential backoff | Starts at 1 second |
Global Video Settings
| Setting | Description | Default |
|---|---|---|
| Concurrency | Number of simultaneous video generation tasks | 1 |
| Retry count | Automatic retries when generation fails | 2 |
These parameters can be adjusted in Settings > Media Providers > Video > Global Settings.
Provider Selection Guide
| Need | Recommended provider |
|---|---|
| High-quality commercial video | Kling AI |
| OpenAI ecosystem integration | OpenAI (Sora) |
| Flexible open-source model selection | Replicate |
| Stable access within China | VolcEngine |
Frequently Asked Questions
| Question | Solution |
|---|---|
| Task stays in "waiting" indefinitely | Video generation takes time — please be patient. High-quality models may take several minutes |
| Generation fails with a timeout error | The provider may be under high load — try again later |
| Video won't play | Check whether the video format is supported by your system; try an external player |
| API key verification failed | Confirm the API key is correct and the account has sufficient quota |
| Custom provider is not compatible | Confirm the API interface conforms to the unified interface spec (Unified format) |
Related Links
- Media Generation Overview — Overview of all media types
- Image Generation — Generating images with AI
- Music Generation — Creating music with AI