modeli

Runway: Gen-4.5

Markdown · JSON

Runway: Gen-4.5

Runway Gen-4.5 ustvarja videe iz opisa prizora ali slike z navodili za gibanje. Njegovi 2–10-sekundni posnetki, izrecna navodila za kamero ter ločene možnosti kompozicije za ustvarjanje iz besedila in slike podpirajo filmske zasnove, dopolnilne kadre B-roll in animirane vizualne prizore.

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.

Runway Gen-4.5 je model za ustvarjanje videa z načinoma ustvarjanja iz besedila in slike. Sledi lahko opisu kompozicije prizora, dogajanja z motivom, koreografije kamere in zaporedja dogodkov. Uporaben rezultat je kratek ustvarjen kader, ki ga lahko pregledate, shranite ali sestavite z drugimi posnetki.

Izberite vhodni način za kader

Ustvarjanje iz besedila se začne s pisnim opisom prizora. Vključite tako vidno vsebino kot gibanje: motiv, okolje, osvetlitev, kadriranje, dogajanje in vedenje kamere. Ta način je uporaben za nov prizor, dopolnilni kader B-roll, posnetek ozadja ali vizualno zasnovo, kjer začetni sličici ni treba reproducirati priložene slike.

Ustvarjanje iz slike se začne s sliko, ki deluje kot prva sličica. Ta slika zagotovi kompozicijo, motiv, osvetlitev in slog. Pisni poziv osredotočite na to, kaj naj se zgodi zatem: dejanje motiva, gibanje v okolju, premik kamere in razvoj kadra.

Pripravite jasno sliko, na kateri so pomembne podrobnosti že vidne. Zamegljeni obrazi, roke ali drugi artefakti lahko po animiranju postanejo opaznejši. Referenca, ki z nakazanim prahom ali zameglitvijo gibanja sugerira hitro premikanje, je lahko tudi v nasprotju s pozivom, ki zahteva mirujoč motiv.

Vizualno podobo in gibanje opišite neposredno

Uporabljajte jasen naravni jezik in pozitivne opise predvidenega rezultata. Opis za ustvarjanje iz besedila lahko najprej navede pogled kamere, motiv in dogajanje, nato pa doda obdelavo prizora. Podroben opis je uporaben, kadar ima kader opredeljene zahteve; preprostejši dopušča več raziskovanja. Idealno število besed ne more nadomestiti jasnosti.

Opišite denimo bližnji pogled na medeninasto namizno svetilko, ko se prižge, nato pa počasen premik kamere, ki razkrije beležnico ob njej. Pri ustvarjanju iz besedila navedite vidne materiale in svetlobo. Če priložena slika že določa te podrobnosti, se lahko poziv za ustvarjanje iz slike osredotoči na spremembo svetlobe in razkritje s kamero.

Izogibajte se nasprotujočim si navodilom. Nepremičen pogled s subtilnim gibanjem motiva se razlikuje od energičnega spremljevalnega kadra z ročno kamero. Dodajte podrobnosti, ki določajo uporaben kader, namesto dolgega seznama nepovezanih vizualnih slogov.

Izrazi za kamero in zaporedno dogajanje

Proizvajalčev vodič za kamero razlikuje med kadriranjem, koti, gibanjem in ostrino. Bližnji plan spremeni, kaj zapolni kader, nizek kot spremeni perspektivo, panoramski zasuk obrne pogled kamere, spremljevalni premik pa sledi motivu. Navodilo za prenos ostrine premakne ostrino med vidnimi motivi. Navedite, kaj naj bo vidno ali se razkrije med razvojem gibanja.

Zaporedni pozivi lahko dogodke izrazijo v običajnem jeziku ali s približnimi časovnimi oznakami. Te usmerjajo vrstni red in približen časovni potek; ne zagotavljajo izvedbe, natančne do sličice. Zahtevanim dejanjem namenite dovolj časa, da se naravno odvijejo v izbrani dolžini posnetka.

Pri statičnem kadru opišite gibanje znotraj kadra in poudarite predvideno mirujočo kamero. Proizvajalec opozarja, da so povsem negibni pogledi lahko zahtevni, zlasti pri nekaterih širokih ali uvodnih kadrih. Majhne neželene premike preverite v dejanskem rezultatu, namesto da bi predpostavili, da jih izraz za statično kamero onemogoči.

Dolžina, mere in hitrost sličic

Gen-4.5 podpira dolžine posnetkov od 2 do 10 sekund. Daljša izbira lahko sprejme več urejenih dejanj, kratka reakcija ali razkritje pa lahko uporabi krajši kader. Dokumentirani izhod je 720p, s 24 ali 25 sličicami na sekundo v proizvajalčevem postopku ustvarjanja.

Specifikacija ustvarjanja iz besedila navaja razmerje 16:9 pri 1280 × 720 pikslov. Ustvarjanje iz slike dodatno navaja 9:16 pri 720 × 1280, 1:1 pri 960 × 960, 4:3 pri 1104 × 832, 3:4 pri 832 × 1104 in 21:9 pri 1584 × 672. Način in dejanske mere obravnavajte skupaj, namesto da bi predpostavili, da oba vhodna načina ponujata isti nabor razmerij stranic.

Razmerje slike lahko določi privzeto kompozicijo, njegova sprememba pa lahko obreže vhod. Pred ocenjevanjem gibanja preverite postavitev motiva: pravilno dejanje ni uporabno, če je pomemben del izvorne slike odrezan.

Daljše zaporedje sestavite iz končnih kadrov

Pri delu na podlagi slike proizvajalec opisuje nadaljevanje zaporedja z uporabo zadnje sličice končnega posnetka kot slikovnega vhoda za novo ustvarjanje. Posnetke nato združite v urejevalniku videa, v montaži pa uredite skupno sličico in časovni potek. To je zaporedje ločenih kadrov, ne eno ustvarjanje z neomejeno dolžino.

Shranite končno sličico in pripadajoči opis, da se naslednji kader začne iz predvidenega vizualnega stanja. V združenih posnetkih preverite neprekinjenost, vključno z videzom motiva, smerjo kamere in prehodom med posnetki.

Shranite in preglejte produkcijsko gradivo

Po ustvarjanju preglejte celoten posnetek in shranite končni izhod. Proizvajalčev postopek ponuja tudi ločene možnosti povečevanja ločljivosti in produkcijskega izvoza, kot sta ProRes ali zaporedje PNG. To so dodatne možnosti postopka; izvorne mere ustvarjanja ostajajo ločene od pozneje povečanega rezultata.

Gen-4.5 uporabite za filmske zasnove, animirane vizualne ideje, dopolnilne kadre B-roll in razvoj kratkih prizorov. Skupaj hranite poziv, uporabljeno vhodno sliko, dolžino, način in vrnjeni posnetek. Preverite vrstni red dejanj, vedenje kamere, podrobnosti motiva, neželene reze in predvideno kadriranje, nato kader ciljno popravite.

Ailoot Ultra · Video POST /v1/videos runway/gen-4.5

runway/gen-4.5

Runway /runway/gen-4.5

Začetek

Runway Gen-4.5 ustvarja videe iz opisa prizora ali slike z navodili za gibanje. Njegovi 2–10-sekundni posnetki, izrecna navodila za kamero ter ločene možnosti kompozicije za ustvarjanje iz besedila in slike podpirajo filmske zasnove, dopolnilne kadre B-roll in animirane vizualne prizore.

Dovoljeni vhodi
Besedilo · Slike
Rezultati
Video

Na voljo v Ailoot · vhodi in metode

Ailoot Ultra · Video POST /v1/videos
Vhod
text, image
Izhod
video
Izhodni format
izvirni bajti MP4; brez normalizacije ali prekodiranja
PoljeVrstaZahtevaVrednosti in omejitvePrivzeto
PoljemodelVrstastringZahtevaObveznoVrednosti in omejitve
runway/gen-4.5
Privzeto—
PoljepromptVrstastringZahtevaObveznoVrednosti in omejitvePrivzeto—
PoljedurationVrstaintegerZahtevaObveznoVrednosti in omejitve
2, 3, 4, 5, 6, 7, 8, 9, 10
Najmanj: 1
Največ: 600
Privzeto—
PoljeresolutionVrstastringZahtevaIzbirnoVrednosti in omejitve
720p
Privzeto—
Poljeaspect_ratioVrstastringZahtevaIzbirnoVrednosti in omejitve
16:9, 9:16
Privzeto—
Poljegenerate_audioVrstabooleanZahtevaIzbirnoVrednosti in omejitve
false
Privzeto—
Poljeframe_imagesVrstaarrayZahtevaIzbirnoVrednosti in omejitve
Najmanjše število elementov: 1
Največ elementov: 1
Vhodna vsebina: Polje objektov sličic. Vsak objekt vsebuje type=image_url, image_url z url in frame_type. Uporabite URL slike HTTPS in nastavite frame_type na first_frame. Vsaka vloga sličice se lahko pojavi največ enkrat.
Natančni ključi: type, image_url, frame_type
Pogoji: Ti ključi opisujejo vsak objekt sličice; image_url vsebuje samo url. Pri zahtevi samo z besedilom izpustite frame_images.
Privzeto—
Poljeinput_referencesVrstaarrayZahtevaIzbirnoVrednosti in omejitvePrivzeto—
PoljesizeVrstastringZahtevaIzbirnoVrednosti in omejitve
1280x720, 720x1280
Vzorec: ^[1-9][0-9]*x[1-9][0-9]*$
Privzeto—
PoljeseedVrstaintegerZahtevaIzbirnoVrednosti in omejitve
Najmanj: −9.223.372.036.854.775.808
Največ: 9.223.372.036.854.775.807
Privzeto—
Poljecallback_urlVrstastringZahtevaIzbirnoVrednosti in omejitve
Vzorec: ^https://
Privzeto—
Poljesession_idVrstastringZahtevaIzbirnoVrednosti in omejitvePrivzeto—
PoljetraceVrstaobjectZahtevaIzbirnoVrednosti in omejitvePrivzeto—
PoljeuserVrstastringZahtevaIzbirnoVrednosti in omejitvePrivzeto—
Kombinacije vhodnih gradiv

Iz besedila v video · Pisni poziv. · Obvezno: model, prompt, duration

Podajte prompt kot besedilo in duration v celih sekundah. Izberite podprto ločljivost; dodajte razmerje stranic ali uporabite navedeno velikost.

model: Vrsta: string · runway/gen-4.5

prompt: Vrsta: string · Največ bajtov UTF-8: 10.000 · Zahtevan je vsaj en znak, ki ni beli znak: Da

Iz slike v video · Pisni poziv in slika prve sličice. · Obvezno: model, prompt, duration, frame_images

frame_images je polje. Vsak objekt sličice vsebuje type, image_url in frame_type; image_url vsebuje url. Nastavite type na image_url. Uporabite first_frame. Vsaka vloga sličice se lahko pojavi največ enkrat. Za vsako sličico podajte javni URL slike HTTPS. Izberite podprto ločljivost; dodajte razmerje stranic ali uporabite navedeno velikost.

Natančni ključi: type, image_url, frame_type

model: Vrsta: string · runway/gen-4.5

prompt: Vrsta: string · Največ bajtov UTF-8: 10.000 · Zahtevan je vsaj en znak, ki ni beli znak: Da

Parametri in življenjski cikel metode
ParameterSpecifikacija
Parametercontent_typeSpecifikacijaapplication/json
ParameterrequiredSpecifikacijamodel, prompt, duration
Parametermaterial_typesSpecifikacijatext, image
Parameteradditional_propertiesSpecifikacijafalse
Parameteroptional_controlsSpecifikacijaresolution, aspect_ratio, generate_audio, frame_images, input_references, size, seed, callback_url, session_id, trace, user

Življenjski cikel: submit_once_poll_original

GET /v1/videos/{public_id}

GET /v1/videos/{public_id}/content

Cenik

Kako se izračuna končni strošek

Prikazane cene so namenjene oceni stroškov pred generiranjem. Končni znesek se izračuna na podlagi stroška, zabeleženega za izvirno generiranje. Izmerjeno trajanje izhoda in napovedane količine niso končna obračunska količina.

Tarifni podatki ne dodajajo možnosti zahteve. Podprti parametri so navedeni pri izbrani metodi.

Hitri način
Ni navedeno Ko je izbran hitri način
Način flex
Ni navedeno Ko je izbran način flex
Najvišja raven razmišljanja
Ni navedeno Ko najvišja raven razmišljanja uporablja privzeto prilagoditev (default)

Ocenjene cene za primerjavo

Cene po nastavitvah

Vsak strošek povežite s prikazanimi pogoji. Za vsak nabor alternativnih nastavitev uporabite eno ceno.

NastavitevCenovna lestvicaPredvidena količinaObračunska enotaObračunski pogojiStrošek
NastavitevOsnovne cene žetonovCenovna lestvicaOsnovna cenaPredvidena količina—Obračunska enota—Obračunski pogoji—Strošek
Vhod · Vhodni žetoni · Ocena samo za primerjavo — / 1K žetonov
Izhod · Izhodni žetoni · Ocena samo za primerjavo — / 1K žetonov
Vhod · Branje predpomnilnika · Ocena samo za primerjavo — / 1K žetonov
Vhod · Zapis v predpomnilnik · Ocena samo za primerjavo — / 1K žetonov
Vhod · Zapis v predpomnilnik, 1 ura · Ocena samo za primerjavo — / 1K žetonov
NastavitevCena videaCenovna lestvica—Predvidena količina—Obračunska enotana sekundo videaObračunski pogojiV tem cenovnem ključu ni naveden noben dodaten pogoj.Strošek
Izhod · Cena videa · Ocena samo za primerjavo $0.24 na sekundo videa
NastavitevOcenjeni strošek ustvarjanjaCenovna lestvica—Predvidena količinaocena za eno generiranjeObračunska enota—Obračunski pogoji—Strošek
Izhod · Ocenjeni stroški ustvarjanja · Ocena samo za primerjavo $0.48 ocena pred ustvarjanjem

Ta ocena ni dodatno plačilo ali fiksna cena za dokončano generiranje.

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 →

Podrobnosti referenčne tarife

Referenčne lestvice modela ne spreminjajo izbire metode, ocen cen ali stroškov. Veljavni stroški uporabljajo cene izbrane metode Ailoot.

Cenovne reference konfiguracij videa

Cene po nastavitvah

NastavitevObračunski pogojiStrošek
NastavitevCena videaObračunski pogojiV tem cenovnem ključu ni naveden noben dodaten pogoj.Strošek
Izhod · Cena videa $0.24 na sekundo videa

Objavljena referenčna cena za prikazano konfiguracijo. Končni zneski sledijo dejansko obračunani konfiguraciji.

Primeri zahtev

Ailoot Ultra · Video

curl · ustvarite videoposnetek
set -eu
: "${AILOOT_API_KEY:?Set your Ailoot API key}"
python3 - <<'PY_REQUEST'
from pathlib import Path
Path('request.json').write_text('{"aspect_ratio":"16:9","duration":8,"model":"runway/gen-4.5","prompt":"A serene mountain landscape at sunset","resolution":"720p"}', encoding='utf-8')
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

Prejmi in shrani rezultate

Ailoot Ultra · Video

podpisani URL-ji vsebine v vaši lasti

  • GET /v1/videos/{public_id}
  • GET /v1/videos/{public_id}/content
Preveri stanje opravila
GET stanje izvirne operacije
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
Branje druge vsebine
Shrani vsak dokončan izhod, ki vam pripada
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
Ohrani vse dokončane rezultate

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

Ohranite vsak dejanski izhod v vaši lasti in njegove vrnjene izmerjene metapodatke.

Če je treba preveriti izvirni odgovor

503 result_pending_check + prvotni id + X-Should-Retry:false; prvotne zahteve nikoli ne ponovite

Polja odgovora
PoljeVrstaPomen
PoljeindexVrstaintegerPomenPoložaj tega videa na seznamu izhodov, štet od nič.
Poljecontent_urlVrstastringPomenPodpisani URL HTTPS za prenos tega dokončanega videa.
Poljesha256Vrstastring | nullPomenIzvleček SHA-256 izvirnih video bajtov; null, če ni na voljo.
Poljesize_bytesVrstainteger | nullPomenVelikost izvirne video datoteke v bajtih; null, če ni na voljo.
Poljeduration_msVrstainteger | nullPomenIzmerjeno trajanje videa v milisekundah; null, če ni na voljo.
PoljewidthVrstainteger | nullPomenŠirina videa v slikovnih pikah; null, če ni na voljo.
PoljeheightVrstainteger | nullPomenVišina videa v slikovnih pikah; null, če ni na voljo.
Poljevideo_codecVrstastring | nullPomenIdentifikator video kodeka; null, če ni zabeležen.
Poljehas_audioVrstaboolean | nullPomenAli video vsebuje zvočno sled; null, če ni izmerjeno.
Poljeaudio_codecVrstastring | nullPomenIdentifikator zvočnega kodeka; null, kadar identifikator ni zabeležen.
Napake in naslednji koraki
OdgovorPogojNaslednji korak
Odgovor404 · not_found_errorPogojDostop do videa ni na voljo ali ta ID videa ni bil najden.Naslednji korakPreverite dostop do videa. Za obstoječi video uporabite njegov prvotni javni ID in isti ključ API.
Odgovor401 · authentication_errorPogojKljuč API se ne ujema z overjenim računom.Naslednji korakPred oddajo preverite svoj ključ API in dostop do računa.
Odgovor400 · invalid_request_errorPogojZahteve ni bilo mogoče prebrati ali je indeks prenosa neveljaven.Naslednji korakPopravite telo zahteve. Pri prenosu izberite indeks izhoda, ki ga je vrnilo prvotno opravilo.
Odgovor422 · price_unavailablePogojIzbrane video konfiguracije ni mogoče ovrednotiti.Naslednji korakIzberite podprto konfiguracijo videa in izpolnite njene obvezne možnosti, preden oddate popravljeno zahtevo.
Odgovor422 · invalid_request_errorPogojVideo vhod ali prvotno nadaljevalno opravilo ni veljavno.Naslednji korakUporabite veljavne vhode HTTPS. Za nadaljevanje uporabite javni ID svojega dokončanega prvotnega videa z istim ključem API.
Odgovor402 · billing_errorPogojRazpoložljivo dobroimetje ali omejitve ne omogočajo rezervacije.Naslednji korakPreden pošljete novo zahtevo, preverite razpoložljivo dobroimetje in omejitve.
Odgovor503 · server_errorPogojPreverjanje videa, shramba ali dostop do storitve začasno ni na voljo.Naslednji korakPočakajte, da bo storitev na voljo. Če že imate ID videa, preverite to prvotno opravilo, namesto da ustvarite novo generacijo.
Odgovor503 · result_pending_checkPogojPrvotni video rezultat in zaračunani znesek je treba preveriti.Naslednji korakOhranite vrnjeni ID videa in preverjajte to opravilo. Med preverjanjem ne pošljite nadomestne zahteve za ustvarjanje.
Odgovor503 · owned_result_unavailablePogojPrenos obstoječega videa začasno ni na voljo.Naslednji korakPozneje preverite isto video opravilo in prenesite njegov obstoječi izhod. Novo ustvarjanje ustvari ločeno operacijo.
Odgovor409 · video_not_readyPogojVideo vsebina ni objavljena.Naslednji korakPreverite stanje prvotnega opravila. Prenesite, ko sporoči completed; če sporoči failed, upoštevajte njegovo obvestilo o preverjanju zaračunanega zneska.

Druga imena

Druga imena modelov

Ailoot Ultra runway/gen-4.5

Druga imena poti metod

Uporabite zgoraj navedene poti metod.

Povezani ID-ji za klic

runway/gen-4.5

FAQ · Runway: Gen-4.5
Kateri vhodi in rezultati so na voljo?

POST /v1/videos · runway/gen-4.5: text, image → video

Katera polja uporablja zahteva?

POST /v1/videos · runway/gen-4.5: model, prompt, duration, resolution, aspect_ratio, generate_audio, frame_images, input_references, size, seed, callback_url, session_id, trace, user

Katere omejitve veljajo?

POST /v1/videos · runway/gen-4.5: duration.minimum: 1; duration.maximum: 600; frame_images.max_items: 1; frame_images.min_items: 1; seed.minimum: -9223372036854775808; seed.maximum: 9223372036854775807

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