API Referenca
VidioClient je glavni ulaz za interakciju sa VIDIO API-jem iz Pythona. Koristite ga za učitavanje datoteka, kreiranje poslova za naglašavanje, proveru statusa posla, renderovanje izlaza i čekanje da se obrada završi.
Model klijenta
VidioClient pruža jednostavno sučelje za rad sa VIDIO API-jem. Nakon što kreirate klijenta sa vašim API ključem, možete učitavati ulazne datoteke, kreirati poslove za naglašavanje, proveravati status posla, renderovati izlaze i čekati da poslovi završe.
Osobine
Metode
VidioClient(api_key)Inicijalizuj klijenta
Kreira novu instancu VidioClient-a.
Parameters
Returns
Konfigurisana instanca VidioClient-a.
from vidio import VidioClient
import os
client = VidioClient(
api_key=os.getenv("VIDIO_API_KEY")
)client.upload(file_path)Učitaj datoteku
Učitava lokalnu datoteku na VIDIO i vraća rezultat učitavanja koji sadrži ulazni ključ.
Parameters
Returns
Objekat rezultata učitavanja koji sadrži `input_key`.
result = client.upload("/path/to/video.mp4")
print(result.input_key)client.create_highlight_reel(input_keys, video_category, output_length, aspect_ratio)Kreiraj naglašavanje
Kreira posao za naglašavanje iz jedne ili više učitanih ulaznih datoteka.
Parameters
upload(). Redosled ulaznih ključeva određuje redosled medija u izlaznom videu.ball-sports. Može biti podcast, ball-sports, non-ball-sports, beauty-product-demo, wedding, travel, others. Za najbolje rezultate, navedite kategoriju koja se najviše podudara sa vašim sadržajem. Ako vaš sadržaj ne spada u nijednu kategoriju, koristite others.landscape, portrait, ili square.corporate, romantic, sports, kids_and_comedy, ambient_and_nature, horror_and_suspense, documentary i trending_vlogs. Ako je trajanje izlaza kraće od trajanja muzike, izabrana numera će se ponavljati da bi odgovarala izlazu.0 do 100. Ako nije navedeno, podrazumevana vrednost je 100.0 do 100. Ako nije navedeno, podrazumevana vrednost je 100.Returns
Objekat posla koji sadrži `job_id` i informacije o statusu.
job = client.create_highlight_reel(
input_keys=[result.input_key],
video_category="ball-sports",
output_length=30,
aspect_ratio="landscape",
)
print(job.job_id)
print(job.status)client.get_job(job_id)Dohvati posao
Dohvata trenutni status posla.
Parameters
Returns
Objekat posla sa najnovijim statusom.
Response fields
submitted, queued, processing, processed, rendering, ili rendered.video ili sound.job_status = client.get_job(job.job_id)
print(job_status.status){
"job_id": "abc123",
"status": "renderovano",
"outputs": [
{
"start": null,
"end": null,
"thumbnail": "out/...jpg",
"duration": 15.22,
"overlays": [
{
"id": 0,
"fileID": "file_123",
"from": 0,
"content": "https://...",
"durationInFrames": 284,
"type": "video",
"src": "https://...",
"videoStartTime": 5425
},
{
"id": 876361,
"from": 0,
"content": "trčanje-noć-393139",
"durationInFrames": 912,
"type": "sound",
"src": "https://..."
}
],
"fps": 59.94
}
]
}client.wait_for_job(job_id)Čekaj na posao
Proverava API dok posao za naglašavanje ne dosegne stanje završeno.
Parameters
Returns
Završeni objekat posla.
final_job = client.wait_for_job(job.job_id)
print(final_job.status)client.render(job_id)Renderuj izlaz
Pokreće renderovanje izlaznog videa za završeni posao naglašavanja.
Parameters
OutputResult koji treba prikazati. Podrazumevano je 0. Uopšteno, prvi izlaz je najbolji rezultat.Returns
Objekat rezultata renderovanja sa statusom renderovanja.
render_result = client.render(
job_id=job.job_id
)
print(render_result.status)client.wait_for_render(job_id)Čekaj na render
Proverava dok se render ne završi i izlaz ne bude spreman.
Parameters
Returns
Završeni objekat rezultata renderovanja.
final_render = client.wait_for_render(job.job_id)
print(final_render.output_url)