Music Video 1.0 zamienia piosenkę w teledysk. Wysyłasz plik MP3 o długości od 10 do 300 sekund i od 1 do 7 obrazów pokazujących postać lub styl, a model tworzy wideo zsynchronizowane z utworem. Długość filmu odpowiada długości piosenki. Masz 5 proporcji (1:1, 16:9, 9:16, 4:3, 3:4) i rozdzielczość 540P, 720P lub 1080P. Prompt jest opcjonalny i mieści do 3000 znaków, a pole title pozwala nadać utworowi etykietę. Własną muzykę z tekstem stworzysz w Mureka V9.
Do czego się nadaje
- Teledysk do singla wydawanego w serwisach streamingowych
- Pionowa wersja 9:16 utworu na rolki i TikToka
- Wizualizer do piosenki na YouTube
- Klip do utworu wygenerowanego wcześniej przez AI
Jak pisać prompty
- Referencje dobierz spójnie: ta sama postać lub ta sama paleta na wszystkich zdjęciach.
- W prompcie opisz klimat i miejsca akcji, a rytm zostaw modelowi.
- Styl sprawdź na wyciętym fragmencie piosenki (min. 10 s) w 540P, a dopiero potem generuj całość w 1080P.
- Pamiętaj, że rozliczenie idzie za sekundę, więc pięciominutowy utwór kosztuje odpowiednio więcej.
FAQ
Ile kosztuje teledysk z Music Video 1.0?
Stawka to od 0,636 zł za sekundę, z VAT, a długość wyniku równa się długości piosenki. Nieudane generacje nie są płatne.
Jak długa może być piosenka?
Od 10 do 300 sekund, w formacie MP3, podana jako adres w audio_url.
Czy mogę użyć teledysku komercyjnie?
Wynik jest Twój w granicach prawa i warunków producenta modelu. Musisz mieć prawa do samej piosenki i do zdjęć. Zacznij w Studio albo przez API.
Jak wywołać Music Video 1.0 przez API
curl https://jantaris.com/v1/generate?wait=60 \
-H "Authorization: Bearer $JANTARIS_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "music-video-1.0",
"input": {
"prompt": "A slow dolly shot through a neon-lit night market in the rain, reflections on wet asphalt, cinematic",
"aspect_ratio": "16:9",
"resolution": "540P",
"audio_url": "https://example.com/input.mp3"
}
}'import os, time, requests
API = "https://jantaris.com/v1"
H = {"Authorization": f"Bearer {os.environ['JANTARIS_API_KEY']}"}
task = requests.post(f"{API}/generate", headers=H, json={
"model": "music-video-1.0",
"input": {
"prompt": "A slow dolly shot through a neon-lit night market in the rain, reflections on wet asphalt, cinematic",
"aspect_ratio": "16:9",
"resolution": "540P",
"audio_url": "https://example.com/input.mp3"
}
}).json()
while task["status"] in ("queued", "running"):
time.sleep(3)
task = requests.get(f"{API}/tasks/{task['id']}", headers=H).json()
print(task["status"], task["cost"], [o["url"] for o in task["output"]])const API = "https://jantaris.com/v1";
const headers = { Authorization: `Bearer ${process.env.JANTARIS_API_KEY}`, "Content-Type": "application/json" };
let task = await (await fetch(`${API}/generate`, {
method: "POST",
headers,
body: JSON.stringify({
"model": "music-video-1.0",
"input": {
"prompt": "A slow dolly shot through a neon-lit night market in the rain, reflections on wet asphalt, cinematic",
"aspect_ratio": "16:9",
"resolution": "540P",
"audio_url": "https://example.com/input.mp3"
}
}),
})).json();
while (task.status === "queued" || task.status === "running") {
await new Promise((r) => setTimeout(r, 3000));
task = await (await fetch(`${API}/tasks/${task.id}`, { headers })).json();
}
console.log(task.status, task.cost, task.output.map((o) => o.url));
Parametry
| Parametr | Typ | Dozwolone | Domyślnie |
|---|---|---|---|
prompt * | string | ≤ 3000 znaków | |
title | string | ||
aspect_ratio | string | 1:1 16:9 9:16 4:3 3:4 | 16:9 |
resolution | string | 540P 720P 1080P | 540P |
image_urls | array | maks. 7 | |
audio_url * | string |
Ten sam schemat zwraca GET /v1/models/music-video-1.0.









