Dokumentacja API

VidioClient jest głównym punktem dostępu do interakcji z API VIDIO z poziomu Pythona. Użyj go do przesyłania plików, tworzenia zadań podsumowujących, sprawdzania statusu zadań, renderowania wyjść i czekania na zakończenie przetwarzania.

Dostęp do API jest obecnie dostępny dla planu Studio i wyżej.

Model klienta

VidioClient zapewnia prosty interfejs do pracy z API VIDIO. Po utworzeniu klienta z twoim kluczem API, możesz przesyłać pliki wejściowe, tworzyć zadania podsumowujące, sprawdzać status zadań, renderować wyjścia i czekać na zakończenie zadań.

Właściwości

api_keystring
Twój klucz API VIDIO używany do uwierzytelniania żądań.

Metody

KLASAVidioClient(api_key)

Zainicjalizuj klienta

Tworzy nową instancję VidioClient.

Parameters

api_keystring
Twój klucz API VIDIO.

Returns

Skonfigurowana instancja VidioClient.

python
from vidio import VidioClient import os client = VidioClient( api_key=os.getenv("VIDIO_API_KEY") )
METODAclient.upload(file_path)

Prześlij plik

Przesyła lokalny plik do VIDIO i zwraca wynik przesyłania zawierający klucz wejściowy.

Parameters

file_pathstring
Lokalna ścieżka do pliku, który chcesz przesłać.

Returns

Obiekt wyniku przesyłania zawierający `input_key`.

python
result = client.upload("/path/to/video.mp4") print(result.input_key)
METODAclient.create_highlight_reel(input_keys, video_category, output_length, aspect_ratio)

Utwórz podsumowanie

Tworzy zadanie podsumowujące z jednego lub więcej przesłanych plików wejściowych.

Parameters

input_keyslist[string]
Lista przesłanych kluczy plików zwróconych przez upload(). Kolejność kluczy wejściowych określa kolejność mediów w wyjściowym wideo.
video_categorystring
Kategoria wideo, taka jak ball-sports. Może to być podcast, ball-sports, non-ball-sports, beauty-product-demo, wedding, travel, others. Aby uzyskać najlepsze wyniki, określ kategorię, która najlepiej pasuje do twojej treści. Jeśli twoja treść nie pasuje do żadnej kategorii, użyj others.
output_lengthinteger
Żądana długość wyjścia w sekundach. Długość wyjścia powinna być mniejsza lub równa całkowitej długości wszystkich przesyłanych filmów połączonych.
aspect_ratiostring
Proporcje wyjścia, takie jak landscape, portrait lub square.
music_categorystring, optional
Wstępnie ustawiona kategoria muzyczna, która zostanie zastosowana w wyjściu. Obsługiwane wartości to corporate, romantic, sports, kids_and_comedy, ambient_and_nature, horror_and_suspense, documentary oraz trending_vlogs. Jeśli czas trwania wyjścia jest krótszy niż długość utworu, wybrany utwór będzie zapętlany, aby dopasować się do wyjścia.
głośność_muzykiinteger, optional
Głośność muzyki w tle od 0 do 100. Jeśli nie podano, wartością domyślną jest 100.
oryginalna_głośność_audiointeger, optional
Głośność oryginalnego źródła dźwięku od 0 do 100. Jeśli nie podano, wartością domyślną jest 100.

Returns

Obiekt zadania zawierający `job_id` i informacje o statusie.

python
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)
METODAclient.get_job(job_id)

Pobierz zadanie

Pobiera bieżący status zadania.

Parameters

job_idstring
Identyfikator zadania zwrócony, gdy zadanie podsumowujące zostało utworzone.

Returns

Obiekt zadania z najnowszym statusem.

Response fields

job_idstring
Identyfikator zadania.
statusstring
Aktualny status zadania, na przykład submitted, queued, processing, processed, rendering lub rendered.
outputslist[OutputResult]
Zwracane, gdy zadanie jest w pełni wyrenderowane i dane wyjściowe są dostępne z ostatniego podzadania.
startfloat | null
Czas rozpoczęcia segmentu wyjściowego, jeśli dostępny.
endfloat | null
Czas zakończenia segmentu wyjściowego, jeśli dostępny.
thumbnailstring | null
Ścieżka miniatury lub adres URL dla wyjścia.
durationfloat | null
Czas trwania wyjścia w sekundach.
fpsfloat | null
Liczba klatek na sekundę dla wyjścia.
overlayslist[OverlayResult]
Oczyszczone nakładki zawarte w wyjściu.
idinteger | null
Identyfikator nakładki.
fileIDstring | null
Identyfikator powiązanego pliku, jeśli dostępny.
originalFileNamestring | null
Oryginalna nazwa pliku wejściowego powiązana z nakładką, jeśli dostępna.
from_integer | float | null
Przesunięcie klatki, od którego zaczyna się nakładka.
contentstring | null
Zawartość nakładki, na przykład ścieżka miniatury lub identyfikator dźwięku.
durationInFramesinteger | null
Czas trwania nakładki w klatkach.
typestring | null
Typ nakładki, taki jak video lub sound.
srcstring | null
Adres URL źródła dla mediów nakładki.
videoStartTimeinteger | float | null
Czas rozpoczęcia wideo źródłowego, jeśli dotyczy.
python
job_status = client.get_job(job.job_id) print(job_status.status)
json
{ "job_id": "abc123", "status": "wyrenderowano", "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": "running-night-393139", "durationInFrames": 912, "type": "sound", "src": "https://..." } ], "fps": 59.94 } ] }
METODAclient.wait_for_job(job_id)

Czekaj na zadanie

Zarządza API, aż zadanie podsumowujące osiągnie stan zakończony.

Parameters

job_idstring
Identyfikator zadania, na które czekasz.

Returns

Ostateczny obiekt zadania zakończonego.

python
final_job = client.wait_for_job(job.job_id) print(final_job.status)
METODAclient.render(job_id)

Renderuj wyjście

Rozpoczyna renderowanie wideo wyjściowego dla zakończonego zadania podsumowującego.

Parameters

job_idstring
Identyfikator zakończonego zadania podsumowującego.
output_indexinteger, optional
Indeks elementu listy OutputResult, który ma zostać wyrenderowany. Domyślnie jest to 0. Zazwyczaj pierwszy wynik jest najlepszy.

Returns

Obiekt wyniku renderowania z statusem renderowania.

python
render_result = client.render( job_id=job.job_id ) print(render_result.status)
METODAclient.wait_for_render(job_id)

Czekaj na renderowanie

Zarządza, aż renderowanie zakończy się, a wyjście będzie gotowe.

Parameters

job_idstring
Identyfikator zadania powiązanego z renderowaniem.

Returns

Ostateczny obiekt wyniku renderowania.

python
final_render = client.wait_for_render(job.job_id) print(final_render.output_url)