omnivideo_sdk 0.1.0
omnivideo_sdk: ^0.1.0 copied to clipboard
Omni Video Dart SDK — generate video and image content with the Gemini Omni Video series of models.
omnivideo_sdk (Dart / Flutter) #
Dart client for Omni Video — generate video and image content with the Gemini Omni Video series of models.
Omni Video hosts the Gemini Omni Video family (seedance-2 for text/image → video, gpt-image-2 and nano-banana-2 for text/image → image) behind one simple REST API.
Install #
dart pub add omnivideo_sdk
# Or in Flutter:
flutter pub add omnivideo_sdk
Get an API key #
Sign in at https://omnivideo.net/, open the account page, then create an sk-… token.
export OMNIVIDEO_API_KEY=sk-xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
Quick start #
import 'package:omnivideo_sdk/omnivideo_sdk.dart';
Future<void> main() async {
final client = OmniVideo(); // reads OMNIVIDEO_API_KEY
final task = await client.run(
modelId: 'seedance-2',
prompt: 'a serene zen garden at sunrise, ultra detailed',
aspectRatio: '16:9',
);
print(task.outputUrl); // video_url or image_url
client.close();
}
Lower level: create + poll #
final client = OmniVideo(apiKey: 'sk-...');
var task = await client.createTask(
modelId: 'gpt-image-2',
prompt: 'cyberpunk corgi, neon rim light',
aspectRatio: '1:1',
);
while (!task.isDone) {
await Future.delayed(const Duration(seconds: 3));
task = await client.getTask(task.taskId);
}
print(task.imageUrl);
Models #
modelId |
Modality | Output |
|---|---|---|
seedance-2 |
text/image → video | videoUrl |
gpt-image-2 |
text/image → image | imageUrl |
nano-banana-2 |
text/image → image | imageUrl |
See the live model list and pricing on omnivideo.net.
API #
OmniVideo({apiKey, baseUrl, httpClient, timeout})— constructor; readsOMNIVIDEO_API_KEYifapiKeyis null.client.createTask({modelId, prompt, imageUrls?, aspectRatio?}) → Future<Task>client.getTask(taskId) → Future<Task>client.run({modelId, prompt, imageUrls?, aspectRatio?, pollInterval, maxWait}) → Future<Task>Task:taskId,taskStatus(TaskStatus.queued|running|success|failed),imageUrl,videoUrl,credits,outputUrl,isDone.- Errors are
OmniVideoExceptionwith optionalcode(business) andstatus(HTTP).
Links #
- Website & account: https://omnivideo.net/
- API docs: https://omnivideo.net/api-docs
License #
MIT