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.
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
Metody
VidioClient(api_key)Zainicjalizuj klienta
Tworzy nową instancję VidioClient.
Parameters
Returns
Skonfigurowana instancja VidioClient.
from vidio import VidioClient
import os
client = VidioClient(
api_key=os.getenv("VIDIO_API_KEY")
)client.upload(file_path)Prześlij plik
Przesyła lokalny plik do VIDIO i zwraca wynik przesyłania zawierający klucz wejściowy.
Parameters
Returns
Obiekt wyniku przesyłania zawierający `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)Utwórz podsumowanie
Tworzy zadanie podsumowujące z jednego lub więcej przesłanych plików wejściowych.
Parameters
upload(). Kolejność kluczy wejściowych determinuje kolejność materiałów w wideo wyjściowym.ball-sports. Może to być podcast, ball-sports, non-ball-sports, beauty-product-demo, wedding, travel, others. Dla najlepszych wyników wybierz kategorię, która najbardziej odpowiada Twoim treściom. Jeśli Twoje treści nie pasują do żadnej kategorii, użyj others.cut_method to ai-cut; niewymagana, gdy cut_method to no-cut. Długość wyjściowa powinna być mniejsza lub równa całkowitej długości wszystkich przesłanych wideo.landscape, portrait lub square.ai-cut i no-cut. Domyślnie ai-cut.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ż czas trwania utworu, wybrany utwór będzie zapętlany, aby dopasować go do wyjścia.0 do 100. Jeśli nie podano, domyślnie 100.0 do 100. Jeśli nie podano, domyślnie 100.Returns
Obiekt zadania zawierający `job_id` i informacje o statusie.
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)Pobierz zadanie
Pobiera bieżący status zadania.
Parameters
Returns
Obiekt zadania z najnowszym statusem.
Response fields
submitted, queued, processing, processed, rendering lub rendered.video lub sound.job_status = client.get_job(job.job_id)
print(job_status.status){
"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
}
]
}client.wait_for_job(job_id)Czekaj na zadanie
Zarządza API, aż zadanie podsumowujące osiągnie stan zakończony.
Parameters
Returns
Ostateczny obiekt zadania zakończonego.
final_job = client.wait_for_job(job.job_id)
print(final_job.status)client.render(job_id)Renderuj wyjście
Rozpoczyna renderowanie wideo wyjściowego dla zakończonego zadania podsumowującego.
Parameters
OutputResult, który ma zostać wyrenderowany. Domyślnie jest to 0. Zazwyczaj pierwszy wynik jest najlepszy.Returns
Obiekt wyniku renderowania z statusem renderowania.
render_result = client.render(
job_id=job.job_id
)
print(render_result.status)client.wait_for_render(job_id)Czekaj na renderowanie
Zarządza, aż renderowanie zakończy się, a wyjście będzie gotowe.
Parameters
Returns
Ostateczny obiekt wyniku renderowania.
final_render = client.wait_for_render(job.job_id)
print(final_render.output_url)