API Referentie

De VidioClient is het belangrijkste toegangspunt voor interactie met de VIDIO API vanuit Python. Gebruik het om bestanden te uploaden, banen voor het maken van hoogtepunten te creëren, de status van banen te controleren, uitvoer te renderen en te wachten tot de verwerking is voltooid.

API-toegang is momenteel beschikbaar voor het Studio-plan en hoger.

Het clientmodel

De VidioClient biedt een eenvoudige interface voor het werken met de VIDIO API. Nadat je een client hebt aangemaakt met je API-sleutel, kun je invoerbestanden uploaden, banen voor het maken van hoogtepunten creëren, de status van banen opvragen, uitvoer renderen en wachten tot banen zijn voltooid.

Eigenschappen

api_keystring
Jouw VIDIO API-sleutel die wordt gebruikt om verzoeken te authenticeren.

Methoden

KLASVidioClient(api_key)

Client initialiseren

Maakt een nieuwe VidioClient-instantie aan.

Parameters

api_keystring
Jouw VIDIO API-sleutel.

Returns

Een geconfigureerde VidioClient-instantie.

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

Bestand uploaden

Uploadt een lokaal bestand naar VIDIO en retourneert een uploadresultaat met de invoersleutel.

Parameters

file_pathstring
Het lokale pad naar het bestand dat je wilt uploaden.

Returns

Een uploadresultaatobject met `input_key`.

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

Creëer hoogtepunten muur

Maakt een hoogtepuntenbaan aan van een of meer geüploade invoerbestanden.

Parameters

input_keyslist[string]
Een lijst met geüploade bestandskeys die door upload() worden geretourneerd. De volgorde van de input keys bepaalt de volgorde van de media in de uitvoervideo.
video_categorystring
Videocategorie zoals ball-sports. Het kan podcast, ball-sports, non-ball-sports, beauty-product-demo, wedding, travel, others zijn. Voor het beste resultaat geef je de categorie op die het meest overeenkomt met je inhoud. Als je inhoud in geen enkele categorie past, gebruik dan others.
output_lengthinteger, optional
Gewenste uitvoerlengte in seconden. Verplicht wanneer cut_method ai-cut is; niet vereist wanneer cut_method no-cut is. De uitvoerlengte mag niet groter zijn dan de totale lengte van alle inputvideo's samen.
aspect_ratiostring
Uitvoerbeeldverhouding zoals landscape, portrait of square.
cut_methodstring, optional
Bepaalt hoe bronvideo's worden geknipt voordat ze worden gerenderd. Ondersteunde waarden zijn ai-cut en no-cut. Standaard is ai-cut.
music_categorystring, optional
Voorinstelling voor muziekcategorie die op de uitvoer wordt toegepast. Ondersteunde waarden zijn corporate, romantic, sports, kids_and_comedy, ambient_and_nature, horror_and_suspense, documentary en trending_vlogs. Als de uitvoerduur korter is dan de duur van de muziek, zal het geselecteerde nummer herhalen om in de uitvoer te passen.
music_volumeinteger, optional
Volume van de achtergrondmuziek van 0 tot 100. Als niet opgegeven, is de standaard 100.
original_audio_volumeinteger, optional
Volume van de originele bron-audio van 0 tot 100. Als niet opgegeven, is de standaard 100.

Returns

Een baanobject met `job_id` en statusinformatie.

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

Krijg baan

Haal de huidige status van een baan op.

Parameters

job_idstring
De job-ID die is geretourneerd wanneer de hoogtepuntenbaan werd aangemaakt.

Returns

Een baanobject met de nieuwste status.

Response fields

job_idstring
De job-ID.
statusstring
De huidige jobstatus, zoals submitted, queued, processing, processed, rendering of rendered.
outputslist[OutputResult]
Wordt geretourneerd wanneer de job volledig gerenderd is en uitvoerdata beschikbaar zijn van de laatste sub-job.
startfloat | null
Starttijd van het uitvoersegment, indien beschikbaar.
endfloat | null
Eindtijd van het uitvoersegment, indien beschikbaar.
thumbnailstring | null
Pad of URL van de miniatuur voor de uitvoer.
durationfloat | null
Duur van de uitvoer in seconden.
fpsfloat | null
Frames per seconde voor de uitvoer.
overlayslist[OverlayResult]
Gezuiverde overlays opgenomen in de uitvoer.
idinteger | null
Overlay-ID.
fileIDstring | null
Bijbehorend bestand-ID, indien beschikbaar.
originalFileNamestring | null
Originele naam van het invoerbestand dat aan de overlay is gekoppeld, indien beschikbaar.
from_integer | float | null
Frame-offset waar de overlay begint.
contentstring | null
Inhoud van de overlay, bijvoorbeeld een pad naar een miniatuur of een geluids-ID.
durationInFramesinteger | null
Duur van de overlay in frames.
typestring | null
Overlaytype, zoals video of sound.
srcstring | null
Bron-URL voor de overlay-media.
videoStartTimeinteger | float | null
Starttijd van de bronvideo, indien van toepassing.
python
job_status = client.get_job(job.job_id) print(job_status.status)
json
{ "job_id": "abc123", "status": "gerenderd", "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": "hardlopen-nacht-393139", "durationInFrames": 912, "type": "sound", "src": "https://..." } ], "fps": 59.94 } ] }
METHODEclient.wait_for_job(job_id)

Wacht op baan

Vraagt de API totdat de hoogtepuntenbaan een voltooide staat bereikt.

Parameters

job_idstring
De job-ID om op te wachten.

Returns

Het definitieve voltooide baanobject.

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

Render uitvoer

Start met het renderen van een uitvoervideo voor een voltooide hoogtepuntenbaan.

Parameters

job_idstring
De voltooide hoogtepuntenbaan-ID.
output_indexinteger, optional
De index van de OutputResult-lijst die moet worden weergegeven. Standaard is 0. Over het algemeen is de eerste uitvoer het beste resultaat.

Returns

Een renderresultaatobject met renderstatus.

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

Wacht op render

Vraagt totdat de render is voltooid en de uitvoer gereed is.

Parameters

job_idstring
De job-ID die wordt geassocieerd met de render.

Returns

Het definitieve renderresultaatobject.

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