API Referansı

VidioClient, Python'dan VIDIO API'si ile etkileşimde bulunmak için ana giriş noktasıdır. Dosyaları yüklemek, vurgulu video işleri oluşturmak, iş durumunu kontrol etmek, çıktı render etmek ve işlemenin tamamlanmasını beklemek için kullanın.

API erişimi şu anda Studio planı ve üzeri için mevcuttur.

İstemci modeli

VidioClient VIDIO API ile çalışmak için basit bir arayüz sağlar. API anahtarınız ile bir istemci oluşturduktan sonra, giriş dosyalarını yükleyebilir, vurgulu video işlerini oluşturabilir, iş durumunu kontrol edebilir, çıktı render edebilir ve işlerin tamamlanmasını bekleyebilirsiniz.

Özellikler

api_keystring
İstekleri kimlik doğrulamak için kullanılan VIDIO API anahtarınız.

Yöntemler

SınıfVidioClient(api_key)

İstemciyi Başlat

Yeni bir VidioClient örneği oluşturur.

Parameters

api_keystring
VIDIO API anahtarınız.

Returns

Yapılandırılmış bir VidioClient örneği.

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

Dosya Yükle

Bir yerel dosyayı VIDIO'ya yükler ve giriş anahtarını içeren bir yükleme sonucu döner.

Parameters

file_pathstring
Yüklemek istediğiniz dosyanın yerel yolu.

Returns

input_key içeren bir yükleme sonucu nesnesi.

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

Vurgulu Videoyu Oluştur

Bir veya daha fazla yüklenmiş giriş dosyasından bir vurgulu video işi oluşturur.

Parameters

input_keyslist[string]
upload() tarafından döndürülen yüklenmiş dosya anahtarlarının bir listesi. Giriş anahtarlarının sırası, çıktı videodaki medyanın sırasını belirler.
video_categorystring
ball-sports gibi video kategorisi. podcast, ball-sports, non-ball-sports, beauty-product-demo, wedding, travel, others olabilir. En iyi sonuçlar için, içeriğinize en uygun olan kategoriyi belirtin. İçeriğiniz hiçbir kategoriye uymuyorsa, others kullanın.
output_lengthinteger
İstenilen çıktı uzunluğu saniye cinsinden. Çıktı uzunluğu, yüklenen tüm videoların toplam uzunluğundan küçük veya ona eşit olmalıdır.
aspect_ratiostring
landscape, portrait veya square gibi çıktı en boy oranı.
müzik_kategorisistring, optional
Çıkışa uygulanacak ön ayarlı müzik kategorisi. Desteklenen değerler corporate, romantic, sports, kids_and_comedy, ambient_and_nature, horror_and_suspense, documentary ve trending_vlogs. Eğer çıkış süresi müzik süresinden daha kısaysa, seçilen parça çıkış süresine uyması için döngüye alınacaktır.
music_volumeinteger, optional
Arka plan müziği ses düzeyi 0 ile 100 arasında. Sağlanmazsa, varsayılan 100'dür.
orijinal_ses_hacmiinteger, optional
Orijinal kaynak ses düzeyi 0 ile 100 arasındadır. Sağlanmazsa varsayılan 100'dür.

Returns

`job_id` ve durum bilgilerini içeren bir iş nesnesi.

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)
Yöntemclient.get_job(job_id)

İşi Getir

Bir işin mevcut durumunu alır.

Parameters

job_idstring
Vurgulu video işi oluşturulduğunda döndürülen iş ID'si.

Returns

En son durumla bir iş nesnesi.

Response fields

job_idstring
İş kimliği.
statusstring
Geçerli iş durumu, örneğin submitted, queued, processing, processed, rendering veya rendered.
outputslist[OutputResult]
İş tamamen oluşturulduğunda ve son alt işten çıktı verileri kullanılabilir olduğunda döndürülür.
startfloat | null
Çıktı segmentinin başlangıç zamanı, mevcutsa.
endfloat | null
Çıktı segmentinin bitiş zamanı, mevcutsa.
thumbnailstring | null
Çıktı için küçük resim yolu veya URL'si.
durationfloat | null
Çıktının süresi (saniye cinsinden).
fpsfloat | null
Çıktının saniyedeki kare sayısı.
overlayslist[OverlayResult]
Çıktıya dahil edilen temizlenmiş bindirmeler.
idinteger | null
Bindirme kimliği.
fileIDstring | null
İlgili dosya kimliği, mevcutsa.
originalFileNamestring | null
Bindirmeyle ilişkili orijinal girdi dosyası adı, mevcutsa.
from_integer | float | null
Bindirmenin başladığı kare ofseti.
contentstring | null
Örneğin küçük resim yolu veya ses tanımlayıcısı gibi bindirme içerik değeri.
durationInFramesinteger | null
Bindirmenin kare cinsinden süresi.
typestring | null
Bindirme türü, örneğin video veya sound.
srcstring | null
Bindirme medyası için kaynak URL'si.
videoStartTimeinteger | float | null
Uygulanabiliyorsa kaynak videonun başlangıç zamanı.
python
job_status = client.get_job(job.job_id) print(job_status.status)
json
{ "job_id": "abc123", "status": "renderlandı", "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": "koşan-gece-393139", "durationInFrames": 912, "type": "sound", "src": "https://..." } ], "fps": 59.94 } ] }
Yöntemclient.wait_for_job(job_id)

İşi Bekle

Vurgulu video işi tamamlanana kadar API'yi sorgular.

Parameters

job_idstring
Beklemek için iş ID'si.

Returns

Son tamamlanmış iş nesnesi.

python
final_job = client.wait_for_job(job.job_id) print(final_job.status)
Yöntemclient.render(job_id)

Çıktıyı Render Et

Tamamlanan bir vurgulu video işi için bir çıktı videosu render etmeye başlar.

Parameters

job_idstring
Tamamlanan vurgulu video işi ID'si.
output_indexinteger, optional
Görüntülenecek OutputResult listesinin indeksi. Varsayılan 0'dır. Genel olarak, ilk çıktı en iyi sonuçtur.

Returns

Render durumu ile bir render sonucu nesnesi.

python
render_result = client.render( job_id=job.job_id ) print(render_result.status)
Yöntemclient.wait_for_render(job_id)

Render için Bekle

Render bitene kadar sorgular ve çıktı hazır olana kadar bekler.

Parameters

job_idstring
Render ile ilişkili iş ID'si.

Returns

Son render sonucu nesnesi.

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