API-Referenz
Der VidioClient ist der Hauptzugangspunkt zur Interaktion mit der VIDIO API von Python aus. Verwenden Sie ihn, um Dateien hochzuladen, Jobs für Highlight-Reels zu erstellen, den Jobstatus zu überprüfen, Ausgaben zu rendern und auf den Abschluss der Verarbeitung zu warten.
Das Kundenmodell
Der VidioClient bietet eine einfache Schnittstelle für die Arbeit mit der VIDIO API. Nachdem Sie einen Client mit Ihrem API-Schlüssel erstellt haben, können Sie Eingabedateien hochladen, Jobs für Highlight-Reels erstellen, den Status von Jobs abfragen, Ausgaben rendern und auf den Abschluss von Jobs warten.
Eigenschaften
Methoden
VidioClient(api_key)Client initialisieren
Erstellt eine neue Instanz von VidioClient.
Parameters
Returns
Eine konfigurierte VidioClient-Instanz.
from vidio import VidioClient
import os
client = VidioClient(
api_key=os.getenv("VIDIO_API_KEY")
)client.upload(file_path)Datei hochladen
Lädt eine lokale Datei zu VIDIO hoch und gibt ein Upload-Ergebnis mit dem Eingabeschlüssel zurück.
Parameters
Returns
Ein Upload-Ergebnisobjekt, das `input_key` enthält.
result = client.upload("/path/to/video.mp4")
print(result.input_key)client.create_highlight_reel(input_keys, video_category, output_length, aspect_ratio)Highlight-Reel erstellen
Erstellt einen Job für ein Highlight-Reel aus einer oder mehreren hochgeladenen Eingabedateien.
Parameters
upload() zurückgegeben werden. Die Reihenfolge der Eingabeschlüssel bestimmt die Reihenfolge der Medien im Ausgabevideo.ball-sports. Es kann podcast, ball-sports, non-ball-sports, beauty-product-demo, wedding, travel oder others sein. Für beste Ergebnisse geben Sie die Kategorie an, die Ihrem Inhalt am nächsten kommt. Wenn Ihr Inhalt in keine Kategorie passt, verwenden Sie others.cut_method ai-cut ist; nicht erforderlich, wenn cut_method no-cut ist. Die Ausgabelänge sollte kleiner oder gleich der Gesamtlänge aller Eingabevideos sein.landscape, portrait oder square.ai-cut und no-cut. Standardmäßig ai-cut.corporate, romantic, sports, kids_and_comedy, ambient_and_nature, horror_and_suspense, documentary und trending_vlogs. Ist die Ausgabelänge kürzer als die Musikdauer, wird der ausgewählte Track wiederholt, um die Ausgabe zu füllen.0 bis 100. Wird kein Wert angegeben, beträgt der Standard 100.0 bis 100. Wird kein Wert angegeben, beträgt der Standard 100.Returns
Ein Jobobjekt, das `job_id` und Statusinformationen enthält.
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)Job abrufen
Holt den aktuellen Status eines Jobs ab.
Parameters
Returns
Ein Jobobjekt mit dem neuesten Status.
Response fields
submitted, queued, processing, processed, rendering oder rendered.video oder sound.job_status = client.get_job(job.job_id)
print(job_status.status){
"job_id": "abc123",
"status": "gerendert",
"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)Auf Job warten
Fragt die API ab, bis der Job für das Highlight-Reel einen abgeschlossenen Status erreicht.
Parameters
Returns
Das endgültige abgeschlossene Jobobjekt.
final_job = client.wait_for_job(job.job_id)
print(final_job.status)client.render(job_id)Ausgabe rendern
Startet das Rendern eines Ausgabevideos für einen abgeschlossenen Job für das Highlight-Reel.
Parameters
OutputResult-Liste, der gerendert werden soll. Der Standard ist 0. Im Allgemeinen ist die erste Ausgabe das beste Ergebnis.Returns
Ein Render-Ergebnisobjekt mit dem Renderstatus.
render_result = client.render(
job_id=job.job_id
)
print(render_result.status)client.wait_for_render(job_id)Auf Render warten
Fragt, bis das Rendern abgeschlossen ist und die Ausgabe bereit ist.
Parameters
Returns
Das endgültige Render-Ergebnisobjekt.
final_render = client.wait_for_render(job.job_id)
print(final_render.output_url)