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.

Der API-Zugang ist derzeit für den Studio-Plan und höher verfügbar.

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

api_keystring
Ihr VIDIO API-Schlüssel, der zur Authentifizierung von Anfragen verwendet wird.

Methoden

KLASSEVidioClient(api_key)

Client initialisieren

Erstellt eine neue Instanz von VidioClient.

Parameters

api_keystring
Ihr VIDIO API-Schlüssel.

Returns

Eine konfigurierte VidioClient-Instanz.

python
from vidio import VidioClient import os client = VidioClient( api_key=os.getenv("VIDIO_API_KEY") )
METHODclient.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

file_pathstring
Der lokale Pfad zur Datei, die Sie hochladen möchten.

Returns

Ein Upload-Ergebnisobjekt, das `input_key` enthält.

python
result = client.upload("/path/to/video.mp4") print(result.input_key)
METHODclient.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

input_keyslist[string]
Eine Liste von hochgeladenen Datei-Schlüsseln, die von upload() zurückgegeben wurden. Die Reihenfolge der Eingabeschlüssel bestimmt die Reihenfolge der Medien im Ausgabevideo.
video_categorystring
Videokategorie wie ball-sports. Es kann podcast, ball-sports, non-ball-sports, beauty-product-demo, wedding, travel, others sein. Für die besten Ergebnisse geben Sie die Kategorie an, die Ihrem Inhalt am nächsten kommt. Wenn Ihr Inhalt nicht in eine Kategorie passt, verwenden Sie others.
output_lengthinteger
Gewünschte Ausgabelänge in Sekunden. Die Ausgabelänge sollte kleiner oder gleich der Gesamtlänge aller zusammengefassten Eingabevideos sein.
aspect_ratiostring
Ausgabe-Seitenverhältnis wie landscape, portrait oder square.
music_categorystring, optional
Voreingestellte Musikkategorie, die auf die Ausgabe angewendet wird. Unterstützte Werte sind corporate, romantic, sports, kids_and_comedy, ambient_and_nature, horror_and_suspense, documentary und trending_vlogs. Wenn die Ausgabedauer kürzer ist als die Musikdauer, wird der ausgewählte Titel wiederholt abgespielt, um die Ausgabe zu füllen.
musik_lautstärkeinteger, optional
Lautstärke der Hintergrundmusik von 0 bis 100. Falls nicht angegeben, ist der Standardwert 100.
ursprüngliche_audio_lautstärkeinteger, optional
Ursprüngliche Lautstärke der Audioquelle von 0 bis 100. Wenn nicht angegeben, ist der Standardwert 100.

Returns

Ein Jobobjekt, das `job_id` und Statusinformationen enthält.

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

Job abrufen

Holt den aktuellen Status eines Jobs ab.

Parameters

job_idstring
Die Job-ID, die zurückgegeben wurde, als der Job für das Highlight-Reel erstellt wurde.

Returns

Ein Jobobjekt mit dem neuesten Status.

Response fields

job_idstring
Die Job-ID.
statusstring
Der aktuelle Job-Status, z. B. submitted, queued, processing, processed, rendering oder rendered.
outputslist[OutputResult]
Wird zurückgegeben, wenn der Job vollständig gerendert wurde und Ausgabedaten vom letzten Unterauftrag verfügbar sind.
startfloat | null
Startzeit des Ausgabeabschnitts, falls verfügbar.
endfloat | null
Endzeit des Ausgabeabschnitts, falls verfügbar.
thumbnailstring | null
Pfad oder URL des Vorschaubilds für die Ausgabe.
durationfloat | null
Dauer der Ausgabe in Sekunden.
fpsfloat | null
Frames pro Sekunde für die Ausgabe.
overlayslist[OverlayResult]
Bereinigte Overlays, die in der Ausgabe enthalten sind.
idinteger | null
Overlay-ID.
fileIDstring | null
Zugehörige Datei-ID, falls verfügbar.
originalFileNamestring | null
Originaler Dateiname der Eingabedatei, die dem Overlay zugeordnet ist, falls verfügbar.
from_integer | float | null
Frame-Offset, an dem das Overlay beginnt.
contentstring | null
Overlay-Inhaltswert, z. B. ein Pfad zum Vorschaubild oder eine Soundkennung.
durationInFramesinteger | null
Overlay-Dauer in Frames.
typestring | null
Overlay-Typ, z. B. video oder sound.
srcstring | null
Quell-URL für das Overlay-Medium.
videoStartTimeinteger | float | null
Startzeit des Quellvideos, falls zutreffend.
python
job_status = client.get_job(job.job_id) print(job_status.status)
json
{ "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 } ] }
METHODclient.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

job_idstring
Die Job-ID, auf die gewartet werden soll.

Returns

Das endgültige abgeschlossene Jobobjekt.

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

Ausgabe rendern

Startet das Rendern eines Ausgabevideos für einen abgeschlossenen Job für das Highlight-Reel.

Parameters

job_idstring
Die Job-ID des abgeschlossenen Jobs für das Highlight-Reel.
output_indexinteger, optional
Der Index der 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.

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

Auf Render warten

Fragt, bis das Rendern abgeschlossen ist und die Ausgabe bereit ist.

Parameters

job_idstring
Die Job-ID, die mit dem Rendern verknüpft ist.

Returns

Das endgültige Render-Ergebnisobjekt.

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