Google: Veo 3.1
Veo 3.1 er Googles videomodel til tekst- og billedbaserede scener med genereret lyd, styrede start- og slutbilleder samt referencematerialer. Dens produktionsprofil tilbyder klip på fire, seks eller otte sekunder ved 24 fps med outputmuligheder, der omfatter 720p, 1080p og 4K.
Om modellen
Denne beskrivelse dækker modellens funktioner. Tilgængelige input, output og indstillinger i Ailoot står nedenfor for den valgte metode.
Veo 3.1 er Googles videogenereringsmodel til at skabe en kort audiovisuel scene fra tekst eller en billedbaseret beskrivelse. Dens produktionsprofil understøtter tekst-til-video, billede-til-video og styret generering fra første og sidste billede med genereret lyd, materialereferencer og en separat arbejdsgang til fortsættelse. Brug den til at udvikle et filmisk koncept, en kort produktfortælling eller et visuelt segment med en defineret scene, handling og lytteoplevelse.
Beskriv først motivet og den synlige begivenhed. Fastlæg omgivelser, tidspunkt på dagen og lys, og definér derefter kameraets synsvinkel eller bevægelse og den ønskede visuelle stil. En original scenebeskrivelse kan vise en glasbeholder på en mørk studieoverflade med en langsom sideværts bevægelse, der afslører en refleksion, mens en blød omgivelseslyd ledsager afsløringen. Hver instruktion giver et synligt eller hørbart træk, der kan vurderes i det færdige resultat.
Googles promptramme behandler motiv, handling, scene, kamera og æstetik som separate dele af beskrivelsen. Brug de dele, der tjener optagelsen, frem for at tilføje alle tænkelige beskrivelser. Skriv anvisninger på engelsk til den dokumenterede promptprofil. Hvis scenen har flere handlinger, skal du angive deres sammenhæng og tilpasse dem til et kort klip, så en afsløring eller reaktion forbliver tydelig.
Et startbillede fastlægger det indledende udseende og kompositionen. Brug det, når figuren, produktet eller miljøet allerede findes som visuelt materiale, og beskriv den bevægelse, der skal udvikle sig derfra. Et sidste billede tilføjer en målkomposition for slutningen. Forbered start- og slutbilleder, der formidler en plausibel overgang og bevarer de detaljer, som identificerer hovedmotivet, og undersøg derefter bevægelsen mellem disse billeder efter generering.
Materialereferencer tjener et andet formål: de styrer en figurs eller genstands udseende i en nygenereret scene, mens start- og slutbilleder definerer specifikke øjeblikke i denne scene. Vælg referencer, der viser de vigtige visuelle træk, og gør hvert materiales rolle tydelig i prompten. Produktionsmodellens specifikation for referencebillede-til-video bruger output på otte sekunder til denne referencearbejdsgang, adskilt fra det almindelige valg af varighed ved tekstbaseret generering.
Producentens almindelige produktionsprofil genererer klip på fire, seks eller otte sekunder ved 24 billeder pr. sekund. Den angiver liggende 16:9 og stående 9:16, op til fire videooutput pr. prompt og outputopløsninger på 720p, 1080p og 4K. Outputvideoformatet er MP4. Den billedbaserede specifikation accepterer JPEG eller PNG, angiver et inputbilledmaksimum på 20 MB og understøtter inputkonfigurationer i 720p/1080p. Vælg outputprofil efter den ønskede placering, og hold billedkompositionen læsbar i denne størrelse.
Indbygget lyd kan ledsage den synlige scene. Angiv talte replikker, atmosfære og lydeffekter som dele af samme beskrivelse, og navngiv motivet eller begivenheden, der frembringer hver af dem. En dialoginstruktion og en kamerainstruktion besvarer forskellige spørgsmål: den ene fastlægger fremførelsen, den anden fastlægger, hvordan seeren oplever den visuelt. Hold ordene inden for klippets brugbare taletid, og gennemgå lyden for forståelighed og dens forhold til handlingen.
Til en fortsættelse tilbyder producenten en separat arbejdsgang til videoforlængelse. Begynd med et egnet genereret kildeklip, og beskriv den næste synlige begivenhed eller ændring i scenen. Bevar det oprindelige og det fortsatte segment, så deres samlingspunkt kan gennemgås for udseende, bevægelse og lyd. De normale valg for varighed og opløsning ved nygenerering bør ikke behandles som en universel kontrakt for enhver forlængelsesoperation.
En negativ beskrivelse kan fokusere udelukkelser på opgavens visuelle krav. Ved en serie produktvariationer skal du holde motiv og komposition stabile og samtidig ændre én kreativ retning, såsom belysning eller kameraafstand. Registrér prompten, referencerne og de valgte indstillinger sammen med resultatet. Det gør det muligt at sammenligne en nyttig kreativ forskel frem for en samling løsrevne genereringer.
Den almindelige Veo 3.1-produktionsprofil og Veo 3.1 Fast har forskellige profiler for outputopløsning. Fast angiver 720p og 1080p; almindelig 3.1 angiver også 4K. Hold den valgte udgave knyttet til resultatet uden ubemærket at erstatte en produktionsmodels identifikator med en ældre Preview-profil eller en anden Veo-generation. Både et motivs udseende og den understøttede operation afhænger af den valgte arbejdsgang.
Generering er en operation, hvis færdige resultat leverer videofiler til afspilning og senere redigering. Gem de returnerede filer sammen med deres kildebilleder, referencematerialer og beskrivelse, og bevar medsendte oplysninger om indholdets oprindelse. Undersøg hvert faktisk output for motivets udseende, handling, indramning, lyd og slutkomposition. Brug det valgte klip som en produktionsbyggesten med titler, overgange eller anden færdiggørelse tilføjet i den omgivende redigering.
Ailoot Ultra · Video POST /v1/videos google/veo-3.1
google/veo-3.1Start
Veo 3.1 er Googles videomodel til tekst- og billedbaserede scener med genereret lyd, styrede start- og slutbilleder samt referencematerialer. Dens produktionsprofil tilbyder klip på fire, seks eller otte sekunder ved 24 fps med outputmuligheder, der omfatter 720p, 1080p og 4K.
- Accepterede input
- Tekst
- Resultater
- Video
Tilgængelig i Ailoot · input og metoder
Ailoot Ultra · Video POST /v1/videos
- Inputtyper
text- Outputtyper
video- Outputformat
- mp4
- Antal output
- Op til 4 outputs
| Felt | Type | Krav | Værdier og grænser | Standard |
|---|---|---|---|---|
Feltmodel | Typestring | KravPåkrævet | Værdier og grænser google/veo-3.1 | Standard— |
Feltprompt | Typestring | KravPåkrævet | Værdier og grænser Maksimalt antal UTF-8-bytes: 10.000 Mindst ét tegn, der ikke er et blanktegn, kræves: Ja | Standard— |
Feltduration | Typeinteger | KravPåkrævet | Værdier og grænser 4, 6, 8 | Standard— |
Feltresolution | Typestring | KravPåkrævet | Værdier og grænser 720p | Standard— |
Feltaspect_ratio | Typestring | KravPåkrævet | Værdier og grænser 16:9, 9:16 | Standard— |
Feltgenerate_audio | Typeboolean | KravPåkrævet | Værdier og grænser false, true | Standard— |
Kombinationer af inputmaterialer
Tekst til video · Påkrævet: prompt
Metodeparametre og livscyklus
| Parameter | Kontrakt |
|---|---|
Parametercontent_type | Kontraktapplication/json |
Parameterrequired | Kontraktmodel, prompt, duration, resolution, aspect_ratio, generate_audio |
Parameteradditional_properties | Kontraktfalse |
Parameterparameters | Kontrakt{"name":"model","type":"string","required":true,"enum":["google/veo-3.1"]}, {"name":"prompt","type":"string","required":true,"non_whitespace":true,"max_utf8_bytes":10000}, {"name":"duration","type":"integer","required":true,"enum":[4,6,8]}, {"name":"resolution","type":"string","required":true,"enum":["720p"]}, {"name":"aspect_ratio","type":"string","required":true,"enum":["16:9","9:16"]}, {"name":"generate_audio","type":"boolean","required":true,"enum":[false,true]} |
Parametermaterial_types | Kontrakttext |
Metodealiaser: /v1/videos/generations, /videos, /videos/generations
Livscyklus: 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
Behold hele svaret og de oprindeligt returnerede ID’er.
Indsend aldrig en oprettelse med ukendt udfald igen.
Priser
Sådan beregnes det endelige beløb
De viste satser bruges til at anslå omkostningen før genereringen. Det endelige beløb beregnes ud fra den registrerede omkostning for den oprindelige generering. Den målte varighed af outputtet og de anslåede mængder er ikke den endelige fakturerbare mængde.
Tarifoplysninger tilføjer ikke anmodningsmuligheder. Understøttede parametre står ved den valgte metode.
- Hurtig tilstand
- Ikke angivet Når hurtig tilstand er valgt
- flex-tilstand
- Ikke angivet Når flex-tilstanden er valgt
- Maksimal ræsonneringsindsats
- Ikke angivet Når default-justeringen anvendes ved maksimal ræsonneringsindsats
Estimerede takster til sammenligning
Priser efter konfiguration
Knyt hver omkostning til de viste betingelser. Brug én takst for hver gruppe af alternative konfigurationer.
| Konfiguration | Takstplan | Forventet mængde | Generér lyd | Opløsning | Afregningsenhed | Afregningsbetingelser | Beløb |
|---|---|---|---|---|---|---|---|
| KonfigurationGrundpriser for tokens | TakstplanGrundtakst | Forventet mængde— | Generér lyd— | Opløsning— | Afregningsenhed— | Afregningsbetingelser— | Beløb Input · Inputtokens · Estimat kun til sammenligning — / 1K tokens Output · Outputtokens · Estimat kun til sammenligning — / 1K tokens Input · Cachelæsning · Estimat kun til sammenligning — / 1K tokens Input · Cacheskrivning · Estimat kun til sammenligning — / 1K tokens Input · Cacheskrivning, 1 time · Estimat kun til sammenligning — / 1K tokens |
| KonfigurationUltra | Takstplan— | Forventet mængdeØnsket konfiguration; kun et estimat. | Generér lydMed lyd | Opløsning720p | Afregningsenhedpr. sekund outputvideo | Afregningsbetingelser— | Beløb Output · Anslået sekund af outputvideo · Estimat kun til sammenligning $0.8 pr. sekund outputvideo Den viste sats anslår omkostningen før generering. Den endelige opkrævning beregnes ud fra den omkostning, der er registreret for den oprindelige generering. Videoens fysiske varighed er ikke den fakturerbare mængde. |
| KonfigurationVideopris | Takstplan— | Forventet mængde— | Generér lyd— | Opløsning— | Afregningsenhedpr. videosekund | Afregningsbetingelserlyd: with_audio; opløsning: 4k | Beløb Output · Videopris · Estimat kun til sammenligning $1.2 pr. videosekund |
| KonfigurationUltra | Takstplan— | Forventet mængdeØnsket konfiguration; kun et estimat. | Generér lydUden lyd | Opløsning720p | Afregningsenhedpr. sekund outputvideo | Afregningsbetingelser— | Beløb Output · Anslået sekund af outputvideo · Estimat kun til sammenligning $0.4 pr. sekund outputvideo Den viste sats anslår omkostningen før generering. Den endelige opkrævning beregnes ud fra den omkostning, der er registreret for den oprindelige generering. Videoens fysiske varighed er ikke den fakturerbare mængde. |
| KonfigurationVideopris | Takstplan— | Forventet mængde— | Generér lyd— | Opløsning— | Afregningsenhedpr. videosekund | Afregningsbetingelserlyd: without_audio; opløsning: 4k | Beløb Output · Videopris · Estimat kun til sammenligning $0.8 pr. videosekund |
| KonfigurationAnslået genereringsomkostning | Takstplan— | Forventet mængdeestimat for én generering | Generér lyd— | Opløsning— | Afregningsenhed— | Afregningsbetingelser— | Beløb Output · Anslået genereringsomkostning · Estimat kun til sammenligning $1.6 estimat før generering Dette estimat er hverken et ekstra gebyr eller en fast pris for den færdige generering. |
Ailoot reserverer et estimeret beløb før en anmodning. Efter resultatet afregnes det endelige beløb ud fra det målte forbrug. Ved streaming bruges den endelige forbrugsregistrering til afregningen. Sådan fungerer reservation og afregning →
Detaljer om referencetariffen
Referenceplaner på modelniveau ændrer ikke metodevalg, prisoverslag eller opkrævninger. Ved den aktive afregning anvendes taksterne for den valgte Ailoot-metode.
Prisreferencer for videokonfigurationer
Priser efter konfiguration
Knyt hver omkostning til de viste betingelser. Brug én takst for hver gruppe af alternative konfigurationer.
| Konfiguration | Afregningsbetingelser | Beløb |
|---|---|---|
| KonfigurationVideopris | Afregningsbetingelserlyd: with_audio | Beløb Output · Videopris $0.8 pr. videosekund Offentliggjort prisreference for den viste konfiguration. Den endelige afregning følger den konfiguration, der faktisk faktureres. |
| KonfigurationVideopris | Afregningsbetingelserlyd: with_audio; opløsning: 4k | Beløb Output · Videopris $1.2 pr. videosekund Offentliggjort prisreference for den viste konfiguration. Den endelige afregning følger den konfiguration, der faktisk faktureres. |
| KonfigurationVideopris | Afregningsbetingelserlyd: without_audio | Beløb Output · Videopris $0.4 pr. videosekund Offentliggjort prisreference for den viste konfiguration. Den endelige afregning følger den konfiguration, der faktisk faktureres. |
| KonfigurationVideopris | Afregningsbetingelserlyd: without_audio; opløsning: 4k | Beløb Output · Videopris $0.8 pr. videosekund Offentliggjort prisreference for den viste konfiguration. Den endelige afregning følger den konfiguration, der faktisk faktureres. |
Eksempelanmodninger
Ailoot Ultra · Video
set -eu
: "${AILOOT_API_KEY:?Set your Ailoot API key}"
python3 - <<'PY_REQUEST'
import json,os
from pathlib import Path
p=json.loads('{"model": "google/veo-3.1", "prompt": "a calm greenhouse", "duration": 6, "resolution": "720p", "aspect_ratio": "16:9", "generate_audio": true}')
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 \
-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,ensure_ascii=False,indent=2))
print('Keep the complete JSON and response headers; do not resubmit an unknown creation.')
PY_RESULT
Hent og gem resultater
Ailoot Ultra · Video
mp4
GET /v1/videos/{request_id}GET /v1/videos/generations/{request_id}GET /v1/videos/{request_id}/contentGET /v1/videos/generations/{request_id}/content
Kontrollér opgavestatus
set -eu
: "${AILOOT_API_KEY:?Set your Ailoot API key}"
python3 - <<'PY_STATUS_URL'
import json
from pathlib import Path
from urllib.parse import quote
r=json.loads(Path('result.json').read_text())
if not isinstance(r.get('id'),str) or not r['id']:raise SystemExit('Keep the original response and headers for reconciliation; no returned ID')
Path('status-url.txt').write_text('https://api.ailoot.ai/v1/videos/'+quote(r['id'],safe=''))
PY_STATUS_URL
curl --fail-with-body --silent --show-error "$(cat status-url.txt)" \
-H "Authorization: Bearer $AILOOT_API_KEY" -D status-headers.txt -o status.json
python3 - <<'PY_RESULT'
import json
from pathlib import Path
r=json.loads(Path('status.json').read_text())
print(json.dumps(r,ensure_ascii=False,indent=2))
print('Keep the complete JSON and response headers; do not resubmit an unknown creation.')
PY_RESULT
Læsning af andet indhold
set -eu
: "${AILOOT_API_KEY:?Set your Ailoot API key}"
export AILOOT_API_KEY
python3 - <<'PY_ASSETS'
import json,os,subprocess
from pathlib import Path
from urllib.parse import urljoin,urlsplit
r=json.loads(Path('status.json').read_text())
if r.get('status')!='completed':raise SystemExit('Keep the original ID and read its status; never recreate an unknown job')
if not isinstance(r.get('data'),list) or not r['data']:raise SystemExit('Keep the complete original status; no completed outputs supplied')
urls=[]
for i,u in enumerate(r.get('data',[])):
if not isinstance(u,str):raise SystemExit('Keep the original response; unexpected asset shape')
urls.append((str(i),u))
for label,path in urls:
u=urljoin('https://api.ailoot.ai',path);z=urlsplit(u)
if z.scheme!='https' or z.netloc!='api.ailoot.ai' or z.username or z.password:raise SystemExit('Use the actual returned Ailoot owned content URL')
target=Path('owned-'+label+'.bin')
subprocess.run(['curl','--fail-with-body','--silent','--show-error',u,'-H','Authorization: Bearer '+os.environ['AILOOT_API_KEY'],'-D',str(target)+'.headers','-o',str(target)],check=True)
print('All returned owned URLs saved; complete metadata, timing and usage remain in the JSON.')
PY_ASSETS
Behold alle færdige resultater
Gem hver færdig video eller returneret fil; hent hver faktisk returneret fil-URL.
Behold hver signeret URL i det færdige data[], som du ejer, og alle statusmetadata. Gem hvert output inklusive dets genererede lyd. Et gyldigt AAC-lydspor kan være til stede selv med generate_audio=false; behold hele den oprindelige MP4 inklusive denne lyd.
Hvis det oprindelige svar skal kontrolleres
Læs det eksisterende oprindelige job; indsend aldrig en afsendelse med ukendt udfald igen.
Maksimalt antal output: 4.
Svarfelter
| Felt | Type | Betydning |
|---|---|---|
Feltid | Typestring | Betydning— |
Feltobject | Typestring | Betydning— |
Feltmodel | Typestring | Betydning— |
Feltstatus | Typestring | Betydning— |
Feltdata[] | Typesigned content URL | Betydning— |
Feltcharge_pending_check | Typeboolean | Betydning— |
Felterror.code | Typestring | Betydning— |
Felterror.message | Typestring | Betydning— |
Feltoperation_id | Typestring | BetydningHTTP503 result_pending_check-svar for oprindelig status/indhold: samme oprindelige offentlige video-ID som id. |
Felterror.type | Typestring | Betydningserver_error ved HTTP503 result_pending_check. |
Fejl og næste trin
| Svar | Betingelse | Næste trin |
|---|---|---|
Svar400 · invalid_request_error | BetingelseLæsning af det rå forespørgselsindhold mislykkes, før videoprofilen fortolkes | Næste trinBehold det returnerede svar, og ret det ulæselige forespørgselsindhold. |
Svar422 · price_unavailable | BetingelseFortolkning af den præcise videoprofil mislykkes, eller den fuldt fortolkede profil har ikke et klargjort priskort, der matcher præcist | Næste trinBehold svaret; brug hele den præcise profil, der har adgang, og dens offentliggjorte priskort. Denne gren udføres før afsendelse til en udbyder. |
Svar409 · video_not_ready | BetingelseDet oprindelige resultatindhold er endnu ikke tilgængeligt | Næste trinForespørg på status med det oprindeligt returnerede ID, og overhold Retry-After. |
Svarserver_error | BetingelseDet returnerede svar angiver, at operationen eller resultatet skal kontrolleres | Næste trinGem det oprindeligt returnerede operations-/opgave-ID, anmodningens headere og svaret; fortsæt med de understøttede læseanmodninger for den oprindelige operation. Send ikke oprettelsesanmodningen igen. |
Svar503 · result_pending_check | BetingelseGET af oprindelig status/indhold: opgaven er ikke offentliggjort, det oprindelige job er ikke failed/cancelled/expired, og den lokale tilstand er unknown, eller det oprindelige jobs status er completed. | Næste trinBehold det oprindelige id og operation_id (samme offentlige video-ID), svaret og alle headere; læs kun den oprindelige status eller det oprindelige indhold. Send aldrig en ny forespørgsel om generering. |
Aliaser
Modelaliaser
Ailoot Ultra google/veo-3.1
Aliaser for metodestier
/v1/videos/generations, /videos, /videos/generations
Relaterede kalder-ID’er
FAQ · Google: Veo 3.1
- Hvilke input og resultater er tilgængelige?
POST /v1/videos·google/veo-3.1:text→video- Hvilke felter bruger anmodningen?
POST /v1/videos·google/veo-3.1:model,prompt,duration,resolution,aspect_ratio,generate_audio