modeli

happyhorse-1.1-r2v

Markdown · JSON

happyhorse-1.1-r2v

Model za ustvarjanje videa na podlagi referenčnih slik in besedilnega scenarija. Pomaga ohranjati videz likov, predmete in vizualni slog v novi sceni.

O modelu

Ta opis zajema zmožnosti modela. Vhodi, izhodi in možnosti, ki so na voljo v Ailoot, so spodaj navedeni za izbrano metodo.

HappyHorse-1.1-R2V ustvarja novo videosceno na podlagi referenčnih slik in besedilnega navodila. Alibaba model usmerja v ohranjanje prepoznavnih likov, objektov in vizualnega sloga pri ustvarjanju gibanja. Reference določajo vsebino in videz scene, besedilo pa opisuje, kako naj ti elementi medsebojno delujejo.

Vloge vizualnih vzorcev

Uporabite lahko od ene do devet slik. Te lahko določajo lik, predmet, okolje ali umetniško izvedbo. V opisu lahko navedete številko reference in konkreten objekt na njej, da vizualno gradivo povežete z ustreznim delom dogajanja. To je zlasti koristno, kadar je treba elemente več slik združiti v eno kompozicijo.

V nasprotju z načinom z začetnim kadrom reference tu služijo kot opora za vsebino nove scene. Besedilno navodilo je obvezno: videz objektov povezuje z dogajanjem, gibanjem kamere in celotno postavitvijo. Proizvajalec izpostavlja vizualno skladnost in filmsko gibanje; rezultat ostaja generirana vsebina in ne montaža izvirnih slik.

Sprejeti so formati JPEG, JPG, PNG in WEBP, vsak z velikostjo do 20 MB. Krajša stranica slike mora imeti najmanj 400 slikovnih pik; priporočeno je gradivo z ločljivostjo 720P ali višjo. Vhod v ta način sestavljajo prav slike in besedilo.

Trajanje, kader in zvok

Rezultat se shrani v MP4 s hitrostjo 24 sličic na sekundo. Trajanje določite kot celo število od 3 do 15 sekund. Izbirate lahko med ločljivostmi 480P, 720P in 1080P; podprto je ustvarjanje zvočne spremljave.

Na voljo so ležeči, pokončni in kvadratni kadri: 16:9, 9:16, 1:1, 4:3, 3:4, 4:5, 5:4, 9:21 in 21:9. Izbira formata pomaga vnaprej določiti kompozicijski prostor nove scene.

Besedilo je lahko v katerem koli jeziku. Omejitev znaša 5000 nekitajskih ali 2500 kitajskih znakov, presežni del pa se zavrže. Najpomembnejše vloge referenc, dogajanje in gibanje morajo biti opisani znotraj tega obsega. Začetno naključno seme lahko usmerja podobnost različic, ne zagotavlja pa natančne ponovitve posameznega posnetka.

Ailoot · Videoposnetki POST /v1/videos/generations happyhorse-1.1-r2v

happyhorse-1.1-r2v

Alibaba /happyhorse-1.1-r2v
ID modela
  • happyhorse-1.1-r2v
  • happyhorse-r2v
  • happyhorse-r2v-latest

Začetek

Model za ustvarjanje videa na podlagi referenčnih slik in besedilnega scenarija. Pomaga ohranjati videz likov, predmete in vizualni slog v novi sceni.

Dovoljeni vhodi
Besedilo · Slike
Rezultati
Video

Na voljo v Ailoot · vhodi in metode

Ailoot · Videoposnetki POST /v1/videos/generations
Vhod
text, image
Izhod
video
Izhodni format
mp4
PoljeVrstaZahtevaVrednosti in omejitvePrivzeto
PoljemodelVrstastringZahtevaObveznoVrednosti in omejitve
happyhorse-1.1-r2v
Privzeto—
PoljepromptVrstastringZahtevaObveznoVrednosti in omejitve
Najmanjša dolžina: 1
Privzeto—
PoljedurationVrstaintegerZahtevaIzbirnoVrednosti in omejitve
Najmanj: 3
Največ: 15
Enota: sekunde
Privzeto5
PoljeresolutionVrstastringZahtevaIzbirnoVrednosti in omejitve
480P, 720P, 1080P
Privzeto720P
PoljeratioVrstastringZahtevaIzbirnoVrednosti in omejitve
16:9, 9:16, 1:1, 4:3, 3:4, 4:5, 5:4, 9:21, 21:9
Privzeto16:9
Poljeimage_urlsVrstahttps_url|data_image_url[]ZahtevaObveznoVrednosti in omejitve
Najmanjše število elementov: 1
Največ elementov: 9
Največ dekodiranih bajtov: 20.971.520
Vrste MIME: image/jpeg, image/png, image/webp
Privzeto—
Kombinacije vhodnih gradiv

reference_images_to_video · Obvezno: prompt, image_urls

Parametri in življenjski cikel metode
ParameterSpecifikacija
Parametercontent_typeSpecifikacijaapplication/json
ParameterrequiredSpecifikacijamodel, prompt, image_urls
Parametermaterial_typesSpecifikacijatext, image
ParameteroptionalSpecifikacijaduration, resolution, ratio
Parameterduration_integer_rangeSpecifikacija3, 15
Parameterdefault_durationSpecifikacija5
ParameterresolutionSpecifikacija480P, 720P, 1080P
Parameterdefault_resolutionSpecifikacija720P
ParameterratioSpecifikacija16:9, 9:16, 1:1, 4:3, 3:4, 4:5, 5:4, 9:21, 21:9
Parameterratio_must_omitSpecifikacijafalse
Parameterimage_urlsSpecifikacija{"min_count":1,"max_count":9,"schemes":["https","data za rastrsko sliko v base64"],"max_data_image_bytes":20971520}

Življenjski cikel: submit_once_poll_original

GET /v1/videos/{request_id}

GET /v1/videos/generations/{request_id}

GET /v1/videos/{request_id}/content

GET /v1/videos/generations/{request_id}/content

Strukture metod in ID so natančno določeni; zmožnost ponudnika je ločena od sprejema zahteve.

Cenik

Cene metod Ailoot

Ailoot VideoposnetkiPOST /v1/videos/generations
Izhod
0,18 $ na sekundo pri 1080p
Izhod
0,07 $ na sekundo pri 480p
Izhod
0,14 $ na sekundo pri 720p

Ailoot pred zahtevo rezervira ocenjeni znesek. Po rezultatu obračuna končni strošek na podlagi izmerjene porabe. Obračun pretakanja uporablja končni zapis porabe. Kako delujeta rezervacija in obračun →

Primeri zahtev

Ailoot · Videoposnetki

Referenčna slika
set -eu
: "${AILOOT_API_KEY:?Set your Ailoot API key}"
: "${AILOOT_IMAGE_URLS_FILE:?Set a JSON file containing your actual reference-image URLs}"
export AILOOT_IMAGE_URLS_FILE
python3 - <<'PY_REQUEST'
import json,os
from pathlib import Path
p=json.loads('{"model": "happyhorse-1.1-r2v", "prompt": "The subject walks slowly toward the camera.", "duration": 5, "resolution": "720P"}')
from urllib.parse import urlsplit
f=Path(os.environ["AILOOT_IMAGE_URLS_FILE"])
if not f.is_file():raise SystemExit("Choose the actual reference URL JSON file")
urls=json.loads(f.read_text())
if not isinstance(urls,list) or not 1<=len(urls)<=9:raise SystemExit("Provide one to nine reference-image URLs")
for u in urls:
    z=urlsplit(u) if isinstance(u,str) else None
    if not z or z.scheme!="https" or not z.netloc or z.username or z.password:raise SystemExit("Each reference must be an actual HTTPS image URL")
p["image_urls"]=urls
p["ratio"]="16:9"
Path("request.json").write_text(json.dumps(p,ensure_ascii=False))
PY_REQUEST
curl --fail-with-body --silent --show-error https://api.ailoot.ai/v1/videos/generations \
  -H "Authorization: Bearer $AILOOT_API_KEY" -H 'Content-Type: application/json' \
  --data-binary @request.json -D response-headers.txt -o result.json
python3 - <<'PY_RESULT'
import json
from pathlib import Path
r=json.loads(Path("result.json").read_text())
print(json.dumps(r))
PY_RESULT

Prejmi in shrani rezultate

Ailoot · Videoposnetki

mp4

  • GET /v1/videos/{request_id}
  • GET /v1/videos/generations/{request_id}
  • GET /v1/videos/{request_id}/content
  • GET /v1/videos/generations/{request_id}/content
Preveri stanje opravila
GET stanje
set -eu
: "${AILOOT_API_KEY:?Set your Ailoot API key}"
: "${AILOOT_OPERATION_ID:?Set the actual Ailoot operation ID returned by creation}"
export AILOOT_OPERATION_ID
operation_id=$(python3 -c 'import os,urllib.parse;print(urllib.parse.quote(os.environ["AILOOT_OPERATION_ID"],safe=""))')
curl --fail-with-body --silent --show-error "https://api.ailoot.ai/v1/videos/generations/$operation_id" \
  -H "Authorization: Bearer $AILOOT_API_KEY" -o status.json
python3 - <<'PY_STATUS'
import json
from pathlib import Path
r=json.loads(Path("status.json").read_text())
print(json.dumps(r))
if r.get("status")=="completed":
    for x in r.get("data",[]):print(x)
PY_STATUS
Shrani vsa dokončana gradiva
GET vsa dokončana gradiva
set -eu
: "${AILOOT_API_KEY:?Set your Ailoot API key}"
: "${AILOOT_STATUS_FILE:?Set the actual completed status JSON file}"
export AILOOT_STATUS_FILE
python3 - <<'PY_REQUEST'
import json,os
from pathlib import Path
from urllib.parse import urlsplit,urljoin
f=Path(os.environ["AILOOT_STATUS_FILE"])
if not f.is_file():raise SystemExit("Choose the actual completed status file")
r=json.loads(f.read_text())
if r.get("status")!="completed" or not isinstance(r.get("data"),list) or not r["data"]:raise SystemExit("Wait for a completed status with asset paths")
urls=[]
for x in r["data"]:
    if not isinstance(x,str) or "\n" in x or "\r" in x:raise SystemExit("Invalid asset path")
    u=urljoin("https://api.ailoot.ai",x)
    z=urlsplit(u)
    if z.scheme!="https" or z.netloc!="api.ailoot.ai" or z.username or z.password:raise SystemExit("Use the actual Ailoot asset paths from status")
    urls.append(u)
Path("asset-urls.txt").write_text("\n".join(urls)+"\n")
PY_REQUEST
index=0
while IFS= read -r asset_url; do
  curl --fail-with-body --silent --show-error "$asset_url" \
    -H "Authorization: Bearer $AILOOT_API_KEY" -o "video-${index}.mp4"
  index=$((index + 1))
done < asset-urls.txt
Branje druge vsebine
GET vsebina
set -eu
: "${AILOOT_API_KEY:?Set your Ailoot API key}"
: "${AILOOT_OPERATION_ID:?Set the actual Ailoot operation ID returned by creation}"
export AILOOT_OPERATION_ID
operation_id=$(python3 -c 'import os,urllib.parse;print(urllib.parse.quote(os.environ["AILOOT_OPERATION_ID"],safe=""))')
curl --fail-with-body --silent --show-error "https://api.ailoot.ai/v1/videos/generations/$operation_id/content" \
  -H "Authorization: Bearer $AILOOT_API_KEY" -o video.mp4
Ohrani vse dokončane rezultate

Shranite vsak dokončan video ali vrnjeno datoteko; pridobite vsebino z vsake dejansko vrnjene URL gradiva.

Ohranite vsak vrnjeni element data/indeks izhoda. content_url je samo prvi; pridobite vsako dejansko pot vsebine/sredstvo. GET vsebine brez index ne pomeni vseh izhodov.

Če je treba preveriti izvirni odgovor

Berite obstoječe prvotno opravilo; neznane oddaje nikoli ne ponovite.

Polja odgovora
PoljeVrsta
PoljeidVrstastring
PoljeobjectVrstastring
PoljemodelVrstastring
PoljestatusVrstastring
Poljecontent_urlVrstasigned URL
Poljedata[]Vrstasigned URL
PoljeusageVrstaobject
Poljeresult_pending_checkVrstaboolean
Napake in naslednji koraki
OdgovorPogojNaslednji korak
Odgovor400 · invalid_request_errorPogojNeveljavna obvezna polja, predstavitev gradiva ali vrednost parametraNaslednji korakPred novo zahtevo za ustvarjanje popravite navedena polja.
Odgovor409 · video_not_readyPogojPrvotna vsebina rezultata še ni na voljoNaslednji korakPreverjajte prvotni vrnjeni ID in upoštevajte Retry-After.
Odgovorserver_errorPogojVrnjeni odgovor navaja, da je treba operacijo ali rezultat preveritiNaslednji korakShranite izvirni vrnjeni ID operacije/opravila, glave zahteve in odgovor; nadaljujte s podprtimi branji te izvirne operacije. Zahteve za ustvarjanje ne pošiljajte znova.

Druga imena

Druga imena modelov

Ailoot happyhorse-1.1-r2v, happyhorse-r2v, happyhorse-r2v-latest

Druga imena poti metod

Uporabite zgoraj navedene poti metod.

Povezani ID-ji za klic

happyhorse-1.1-r2v, happyhorse-r2v, happyhorse-r2v-latest

Ailoot · Videoposnetki POST /v1/videos/generations happyhorse-r2v

happyhorse-r2v

Alibaba /happyhorse-r2v
ID modela
  • happyhorse-1.1-r2v
  • happyhorse-r2v
  • happyhorse-r2v-latest

Začetek

Model za ustvarjanje videa na podlagi referenčnih slik in besedilnega scenarija. Pomaga ohranjati videz likov, predmete in vizualni slog v novi sceni.

Dovoljeni vhodi
Besedilo · Slike
Rezultati
Video

Na voljo v Ailoot · vhodi in metode

Ailoot · Videoposnetki POST /v1/videos/generations
Vhod
text, image
Izhod
video
Izhodni format
mp4
PoljeVrstaZahtevaVrednosti in omejitvePrivzeto
PoljemodelVrstastringZahtevaObveznoVrednosti in omejitve
happyhorse-r2v
Privzeto—
PoljepromptVrstastringZahtevaObveznoVrednosti in omejitve
Najmanjša dolžina: 1
Privzeto—
PoljedurationVrstaintegerZahtevaIzbirnoVrednosti in omejitve
Najmanj: 3
Največ: 15
Enota: sekunde
Privzeto5
PoljeresolutionVrstastringZahtevaIzbirnoVrednosti in omejitve
480P, 720P, 1080P
Privzeto720P
PoljeratioVrstastringZahtevaIzbirnoVrednosti in omejitve
16:9, 9:16, 1:1, 4:3, 3:4, 4:5, 5:4, 9:21, 21:9
Privzeto16:9
Poljeimage_urlsVrstahttps_url|data_image_url[]ZahtevaObveznoVrednosti in omejitve
Najmanjše število elementov: 1
Največ elementov: 9
Največ dekodiranih bajtov: 20.971.520
Vrste MIME: image/jpeg, image/png, image/webp
Privzeto—
Kombinacije vhodnih gradiv

reference_images_to_video · Obvezno: prompt, image_urls

Parametri in življenjski cikel metode
ParameterSpecifikacija
Parametermaterial_typesSpecifikacijatext, image
ParameterrequiredSpecifikacijanull
Parameteroptional_controlsSpecifikacijanull

Življenjski cikel: submit_once_poll_original

GET /v1/videos/{request_id}

GET /v1/videos/generations/{request_id}

GET /v1/videos/{request_id}/content

GET /v1/videos/generations/{request_id}/content

Strukture metod in ID so natančno določeni; zmožnost ponudnika je ločena od sprejema zahteve.

Cenik

Cene metod Ailoot

Ailoot VideoposnetkiPOST /v1/videos/generations
Izhod
0,18 $ na sekundo pri 1080p
Izhod
0,07 $ na sekundo pri 480p
Izhod
0,14 $ na sekundo pri 720p

Ailoot pred zahtevo rezervira ocenjeni znesek. Po rezultatu obračuna končni strošek na podlagi izmerjene porabe. Obračun pretakanja uporablja končni zapis porabe. Kako delujeta rezervacija in obračun →

Primeri zahtev

Ailoot · Videoposnetki

Referenčna slika
set -eu
: "${AILOOT_API_KEY:?Set your Ailoot API key}"
: "${AILOOT_IMAGE_URLS_FILE:?Set a JSON file containing your actual reference-image URLs}"
export AILOOT_IMAGE_URLS_FILE
python3 - <<'PY_REQUEST'
import json,os
from pathlib import Path
p=json.loads('{"model": "happyhorse-r2v", "prompt": "The subject walks slowly toward the camera.", "duration": 5, "resolution": "720P"}')
from urllib.parse import urlsplit
f=Path(os.environ["AILOOT_IMAGE_URLS_FILE"])
if not f.is_file():raise SystemExit("Choose the actual reference URL JSON file")
urls=json.loads(f.read_text())
if not isinstance(urls,list) or not 1<=len(urls)<=9:raise SystemExit("Provide one to nine reference-image URLs")
for u in urls:
    z=urlsplit(u) if isinstance(u,str) else None
    if not z or z.scheme!="https" or not z.netloc or z.username or z.password:raise SystemExit("Each reference must be an actual HTTPS image URL")
p["image_urls"]=urls
p["ratio"]="16:9"
Path("request.json").write_text(json.dumps(p,ensure_ascii=False))
PY_REQUEST
curl --fail-with-body --silent --show-error https://api.ailoot.ai/v1/videos/generations \
  -H "Authorization: Bearer $AILOOT_API_KEY" -H 'Content-Type: application/json' \
  --data-binary @request.json -D response-headers.txt -o result.json
python3 - <<'PY_RESULT'
import json
from pathlib import Path
r=json.loads(Path("result.json").read_text())
print(json.dumps(r))
PY_RESULT

Prejmi in shrani rezultate

Ailoot · Videoposnetki

mp4

  • GET /v1/videos/{request_id}
  • GET /v1/videos/generations/{request_id}
  • GET /v1/videos/{request_id}/content
  • GET /v1/videos/generations/{request_id}/content
Preveri stanje opravila
GET stanje
set -eu
: "${AILOOT_API_KEY:?Set your Ailoot API key}"
: "${AILOOT_OPERATION_ID:?Set the actual Ailoot operation ID returned by creation}"
export AILOOT_OPERATION_ID
operation_id=$(python3 -c 'import os,urllib.parse;print(urllib.parse.quote(os.environ["AILOOT_OPERATION_ID"],safe=""))')
curl --fail-with-body --silent --show-error "https://api.ailoot.ai/v1/videos/generations/$operation_id" \
  -H "Authorization: Bearer $AILOOT_API_KEY" -o status.json
python3 - <<'PY_STATUS'
import json
from pathlib import Path
r=json.loads(Path("status.json").read_text())
print(json.dumps(r))
if r.get("status")=="completed":
    for x in r.get("data",[]):print(x)
PY_STATUS
Shrani vsa dokončana gradiva
GET vsa dokončana gradiva
set -eu
: "${AILOOT_API_KEY:?Set your Ailoot API key}"
: "${AILOOT_STATUS_FILE:?Set the actual completed status JSON file}"
export AILOOT_STATUS_FILE
python3 - <<'PY_REQUEST'
import json,os
from pathlib import Path
from urllib.parse import urlsplit,urljoin
f=Path(os.environ["AILOOT_STATUS_FILE"])
if not f.is_file():raise SystemExit("Choose the actual completed status file")
r=json.loads(f.read_text())
if r.get("status")!="completed" or not isinstance(r.get("data"),list) or not r["data"]:raise SystemExit("Wait for a completed status with asset paths")
urls=[]
for x in r["data"]:
    if not isinstance(x,str) or "\n" in x or "\r" in x:raise SystemExit("Invalid asset path")
    u=urljoin("https://api.ailoot.ai",x)
    z=urlsplit(u)
    if z.scheme!="https" or z.netloc!="api.ailoot.ai" or z.username or z.password:raise SystemExit("Use the actual Ailoot asset paths from status")
    urls.append(u)
Path("asset-urls.txt").write_text("\n".join(urls)+"\n")
PY_REQUEST
index=0
while IFS= read -r asset_url; do
  curl --fail-with-body --silent --show-error "$asset_url" \
    -H "Authorization: Bearer $AILOOT_API_KEY" -o "video-${index}.mp4"
  index=$((index + 1))
done < asset-urls.txt
Branje druge vsebine
GET vsebina
set -eu
: "${AILOOT_API_KEY:?Set your Ailoot API key}"
: "${AILOOT_OPERATION_ID:?Set the actual Ailoot operation ID returned by creation}"
export AILOOT_OPERATION_ID
operation_id=$(python3 -c 'import os,urllib.parse;print(urllib.parse.quote(os.environ["AILOOT_OPERATION_ID"],safe=""))')
curl --fail-with-body --silent --show-error "https://api.ailoot.ai/v1/videos/generations/$operation_id/content" \
  -H "Authorization: Bearer $AILOOT_API_KEY" -o video.mp4
Ohrani vse dokončane rezultate

Shranite vsak dokončan video ali vrnjeno datoteko; pridobite vsebino z vsake dejansko vrnjene URL gradiva.

Ohranite vsak vrnjeni element data/indeks izhoda. content_url je samo prvi; pridobite vsako dejansko pot vsebine/sredstvo. GET vsebine brez index ne pomeni vseh izhodov.

Če je treba preveriti izvirni odgovor

Berite obstoječe prvotno opravilo; neznane oddaje nikoli ne ponovite.

Polja odgovora
PoljeVrsta
PoljeidVrstastring
PoljeobjectVrstastring
PoljemodelVrstastring
PoljestatusVrstastring
Poljecontent_urlVrstasigned URL
Poljedata[]Vrstasigned URL
PoljeusageVrstaobject
Poljeresult_pending_checkVrstaboolean
Napake in naslednji koraki
OdgovorPogojNaslednji korak
Odgovor400 · invalid_request_errorPogojNeveljavna obvezna polja, predstavitev gradiva ali vrednost parametraNaslednji korakPred novo zahtevo za ustvarjanje popravite navedena polja.
Odgovor409 · video_not_readyPogojPrvotna vsebina rezultata še ni na voljoNaslednji korakPreverjajte prvotni vrnjeni ID in upoštevajte Retry-After.
Odgovorserver_errorPogojVrnjeni odgovor navaja, da je treba operacijo ali rezultat preveritiNaslednji korakShranite izvirni vrnjeni ID operacije/opravila, glave zahteve in odgovor; nadaljujte s podprtimi branji te izvirne operacije. Zahteve za ustvarjanje ne pošiljajte znova.

Druga imena

Druga imena modelov

Ailoot happyhorse-1.1-r2v, happyhorse-r2v, happyhorse-r2v-latest

Druga imena poti metod

Uporabite zgoraj navedene poti metod.

Povezani ID-ji za klic

happyhorse-1.1-r2v, happyhorse-r2v, happyhorse-r2v-latest

Ailoot · Videoposnetki POST /v1/videos/generations happyhorse-r2v-latest

happyhorse-r2v-latest

Alibaba /happyhorse-r2v-latest
ID modela
  • happyhorse-1.1-r2v
  • happyhorse-r2v
  • happyhorse-r2v-latest

Začetek

Model za ustvarjanje videa na podlagi referenčnih slik in besedilnega scenarija. Pomaga ohranjati videz likov, predmete in vizualni slog v novi sceni.

Dovoljeni vhodi
Besedilo · Slike
Rezultati
Video

Na voljo v Ailoot · vhodi in metode

Ailoot · Videoposnetki POST /v1/videos/generations
Vhod
text, image
Izhod
video
Izhodni format
mp4
PoljeVrstaZahtevaVrednosti in omejitvePrivzeto
PoljemodelVrstastringZahtevaObveznoVrednosti in omejitve
happyhorse-r2v-latest
Privzeto—
PoljepromptVrstastringZahtevaObveznoVrednosti in omejitve
Najmanjša dolžina: 1
Privzeto—
PoljedurationVrstaintegerZahtevaIzbirnoVrednosti in omejitve
Najmanj: 3
Največ: 15
Enota: sekunde
Privzeto5
PoljeresolutionVrstastringZahtevaIzbirnoVrednosti in omejitve
480P, 720P, 1080P
Privzeto720P
PoljeratioVrstastringZahtevaIzbirnoVrednosti in omejitve
16:9, 9:16, 1:1, 4:3, 3:4, 4:5, 5:4, 9:21, 21:9
Privzeto16:9
Poljeimage_urlsVrstahttps_url|data_image_url[]ZahtevaObveznoVrednosti in omejitve
Najmanjše število elementov: 1
Največ elementov: 9
Največ dekodiranih bajtov: 20.971.520
Vrste MIME: image/jpeg, image/png, image/webp
Privzeto—
Kombinacije vhodnih gradiv

reference_images_to_video · Obvezno: prompt, image_urls

Parametri in življenjski cikel metode
ParameterSpecifikacija
Parametermaterial_typesSpecifikacijatext, image
ParameterrequiredSpecifikacijanull
Parameteroptional_controlsSpecifikacijanull

Življenjski cikel: submit_once_poll_original

GET /v1/videos/{request_id}

GET /v1/videos/generations/{request_id}

GET /v1/videos/{request_id}/content

GET /v1/videos/generations/{request_id}/content

Strukture metod in ID so natančno določeni; zmožnost ponudnika je ločena od sprejema zahteve.

Cenik

Cene metod Ailoot

Ailoot VideoposnetkiPOST /v1/videos/generations
Izhod
0,18 $ na sekundo pri 1080p
Izhod
0,07 $ na sekundo pri 480p
Izhod
0,14 $ na sekundo pri 720p

Ailoot pred zahtevo rezervira ocenjeni znesek. Po rezultatu obračuna končni strošek na podlagi izmerjene porabe. Obračun pretakanja uporablja končni zapis porabe. Kako delujeta rezervacija in obračun →

Primeri zahtev

Ailoot · Videoposnetki

Referenčna slika
set -eu
: "${AILOOT_API_KEY:?Set your Ailoot API key}"
: "${AILOOT_IMAGE_URLS_FILE:?Set a JSON file containing your actual reference-image URLs}"
export AILOOT_IMAGE_URLS_FILE
python3 - <<'PY_REQUEST'
import json,os
from pathlib import Path
p=json.loads('{"model": "happyhorse-r2v-latest", "prompt": "The subject walks slowly toward the camera.", "duration": 5, "resolution": "720P"}')
from urllib.parse import urlsplit
f=Path(os.environ["AILOOT_IMAGE_URLS_FILE"])
if not f.is_file():raise SystemExit("Choose the actual reference URL JSON file")
urls=json.loads(f.read_text())
if not isinstance(urls,list) or not 1<=len(urls)<=9:raise SystemExit("Provide one to nine reference-image URLs")
for u in urls:
    z=urlsplit(u) if isinstance(u,str) else None
    if not z or z.scheme!="https" or not z.netloc or z.username or z.password:raise SystemExit("Each reference must be an actual HTTPS image URL")
p["image_urls"]=urls
p["ratio"]="16:9"
Path("request.json").write_text(json.dumps(p,ensure_ascii=False))
PY_REQUEST
curl --fail-with-body --silent --show-error https://api.ailoot.ai/v1/videos/generations \
  -H "Authorization: Bearer $AILOOT_API_KEY" -H 'Content-Type: application/json' \
  --data-binary @request.json -D response-headers.txt -o result.json
python3 - <<'PY_RESULT'
import json
from pathlib import Path
r=json.loads(Path("result.json").read_text())
print(json.dumps(r))
PY_RESULT

Prejmi in shrani rezultate

Ailoot · Videoposnetki

mp4

  • GET /v1/videos/{request_id}
  • GET /v1/videos/generations/{request_id}
  • GET /v1/videos/{request_id}/content
  • GET /v1/videos/generations/{request_id}/content
Preveri stanje opravila
GET stanje
set -eu
: "${AILOOT_API_KEY:?Set your Ailoot API key}"
: "${AILOOT_OPERATION_ID:?Set the actual Ailoot operation ID returned by creation}"
export AILOOT_OPERATION_ID
operation_id=$(python3 -c 'import os,urllib.parse;print(urllib.parse.quote(os.environ["AILOOT_OPERATION_ID"],safe=""))')
curl --fail-with-body --silent --show-error "https://api.ailoot.ai/v1/videos/generations/$operation_id" \
  -H "Authorization: Bearer $AILOOT_API_KEY" -o status.json
python3 - <<'PY_STATUS'
import json
from pathlib import Path
r=json.loads(Path("status.json").read_text())
print(json.dumps(r))
if r.get("status")=="completed":
    for x in r.get("data",[]):print(x)
PY_STATUS
Shrani vsa dokončana gradiva
GET vsa dokončana gradiva
set -eu
: "${AILOOT_API_KEY:?Set your Ailoot API key}"
: "${AILOOT_STATUS_FILE:?Set the actual completed status JSON file}"
export AILOOT_STATUS_FILE
python3 - <<'PY_REQUEST'
import json,os
from pathlib import Path
from urllib.parse import urlsplit,urljoin
f=Path(os.environ["AILOOT_STATUS_FILE"])
if not f.is_file():raise SystemExit("Choose the actual completed status file")
r=json.loads(f.read_text())
if r.get("status")!="completed" or not isinstance(r.get("data"),list) or not r["data"]:raise SystemExit("Wait for a completed status with asset paths")
urls=[]
for x in r["data"]:
    if not isinstance(x,str) or "\n" in x or "\r" in x:raise SystemExit("Invalid asset path")
    u=urljoin("https://api.ailoot.ai",x)
    z=urlsplit(u)
    if z.scheme!="https" or z.netloc!="api.ailoot.ai" or z.username or z.password:raise SystemExit("Use the actual Ailoot asset paths from status")
    urls.append(u)
Path("asset-urls.txt").write_text("\n".join(urls)+"\n")
PY_REQUEST
index=0
while IFS= read -r asset_url; do
  curl --fail-with-body --silent --show-error "$asset_url" \
    -H "Authorization: Bearer $AILOOT_API_KEY" -o "video-${index}.mp4"
  index=$((index + 1))
done < asset-urls.txt
Branje druge vsebine
GET vsebina
set -eu
: "${AILOOT_API_KEY:?Set your Ailoot API key}"
: "${AILOOT_OPERATION_ID:?Set the actual Ailoot operation ID returned by creation}"
export AILOOT_OPERATION_ID
operation_id=$(python3 -c 'import os,urllib.parse;print(urllib.parse.quote(os.environ["AILOOT_OPERATION_ID"],safe=""))')
curl --fail-with-body --silent --show-error "https://api.ailoot.ai/v1/videos/generations/$operation_id/content" \
  -H "Authorization: Bearer $AILOOT_API_KEY" -o video.mp4
Ohrani vse dokončane rezultate

Shranite vsak dokončan video ali vrnjeno datoteko; pridobite vsebino z vsake dejansko vrnjene URL gradiva.

Ohranite vsak vrnjeni element data/indeks izhoda. content_url je samo prvi; pridobite vsako dejansko pot vsebine/sredstvo. GET vsebine brez index ne pomeni vseh izhodov.

Če je treba preveriti izvirni odgovor

Berite obstoječe prvotno opravilo; neznane oddaje nikoli ne ponovite.

Polja odgovora
PoljeVrsta
PoljeidVrstastring
PoljeobjectVrstastring
PoljemodelVrstastring
PoljestatusVrstastring
Poljecontent_urlVrstasigned URL
Poljedata[]Vrstasigned URL
PoljeusageVrstaobject
Poljeresult_pending_checkVrstaboolean
Napake in naslednji koraki
OdgovorPogojNaslednji korak
Odgovor400 · invalid_request_errorPogojNeveljavna obvezna polja, predstavitev gradiva ali vrednost parametraNaslednji korakPred novo zahtevo za ustvarjanje popravite navedena polja.
Odgovor409 · video_not_readyPogojPrvotna vsebina rezultata še ni na voljoNaslednji korakPreverjajte prvotni vrnjeni ID in upoštevajte Retry-After.
Odgovorserver_errorPogojVrnjeni odgovor navaja, da je treba operacijo ali rezultat preveritiNaslednji korakShranite izvirni vrnjeni ID operacije/opravila, glave zahteve in odgovor; nadaljujte s podprtimi branji te izvirne operacije. Zahteve za ustvarjanje ne pošiljajte znova.

Druga imena

Druga imena modelov

Ailoot happyhorse-1.1-r2v, happyhorse-r2v, happyhorse-r2v-latest

Druga imena poti metod

Uporabite zgoraj navedene poti metod.

Povezani ID-ji za klic

happyhorse-1.1-r2v, happyhorse-r2v, happyhorse-r2v-latest

FAQ · happyhorse-1.1-r2v
Kateri vhodi in rezultati so na voljo?

POST /v1/videos/generations · happyhorse-1.1-r2v: text, image → video

POST /v1/videos/generations · happyhorse-r2v: text, image → video

POST /v1/videos/generations · happyhorse-r2v-latest: text, image → video

Katera polja uporablja zahteva?

POST /v1/videos/generations · happyhorse-1.1-r2v: model, prompt, duration, resolution, ratio, image_urls

POST /v1/videos/generations · happyhorse-r2v: model, prompt, duration, resolution, ratio, image_urls

POST /v1/videos/generations · happyhorse-r2v-latest: model, prompt, duration, resolution, ratio, image_urls

Katere omejitve veljajo?

POST /v1/videos/generations · happyhorse-1.1-r2v: duration.minimum: 3; duration.maximum: 15

POST /v1/videos/generations · happyhorse-r2v: duration.minimum: 3; duration.maximum: 15

POST /v1/videos/generations · happyhorse-r2v-latest: duration.minimum: 3; duration.maximum: 15

Več podrobnosti

Ailoot povežite s Claude Code, OpenCode, Hermes ali svojo aplikacijo.

Podjetje in njegov portfelj projektov

Podjetje in njegov portfelj projektov: milijoni strank; mesečna prodaja v milijardah.

Žetone kupujte s popustom.

Naročniški popust za redno delo. Promocijske kode prinesejo do 50% popusta na nakup žetonov.

Naročnina
Za redne zahteve izberite paket s popustom.
Promocijska koda do 50%
Kodo vnesite ob nakupu. Cena se preračuna po veljavni akciji.
Poraba v zgodovini
Za vsako zahtevo se shranijo model, žetoni in znesek.

Izberite naročnino · Oglejte si cene modelov

API povežite z izdelkom, ki ga prodajate.

SaaS, aplikacije in boti po ponudbi in licenčni pogodbi Ailoot. Za nadaljnjo prodajo zaprosite za preprodajno licenco.

Komercialna aplikacija
Ustvarjanje besedila, slik, videa in zvoka vključite v plačljive funkcije svoje storitve.
Licenca za preprodajalca
Pošljite opis projekta in shemo dostopa. Zahtevajte pisne pogoje uporabe in nadaljnje prodaje.
Dokumenti na strani
Ponudba, licenčna pogodba in politika obdelave podatkov so dostopne pred povezavo.

Zaprosite za preprodajno licenco · Ponudba in licenčna pogodba