Magma — SOTA Video

1M context, highest quality video generation with Mixture of Models (MoM).

Duce — High Performance

Fast multimodal generation with SOTA music and broad media capabilities.

Text to Video

Generate a video from a text description.
curl --request POST \
  --url https://geoff.ai/api/v1/video/generate \
  --header 'Authorization: Bearer YOUR_API_KEY' \
  --header 'Content-Type: application/json' \
  --data '{
    "prompt": "A serene sunset over a calm ocean, cinematic quality",
    "duration": 5,
    "resolution": "1080p"
  }'

Checking Generation Status

Video generation is asynchronous. Poll the task status:
import requests
import time

# Create task
response = requests.post(
    "https://geoff.ai/api/v1/video/generate",
    headers={"Authorization": "Bearer YOUR_API_KEY"},
    json={"prompt": "A serene sunset over a calm ocean", "duration": 5},
)
task_id = response.json()["data"]["task_id"]

# Poll status
while True:
    status = requests.get(
        f"https://geoff.ai/api/v1/video/status/{task_id}",
        headers={"Authorization": "Bearer YOUR_API_KEY"},
    ).json()

    if status["data"]["status"] == "completed":
        video_url = status["data"]["download_url"]
        break
    time.sleep(5)

# Download
video = requests.get(
    f"https://geoff.ai/api/v1/video/download/{task_id}",
    headers={"Authorization": "Bearer YOUR_API_KEY"},
)
with open("output.mp4", "wb") as f:
    f.write(video.content)