API Справка

VidioClient е основната точка за взаимодействие с VIDIO API от Python. Използвайте го за качване на файлове, създаване на работни места за акценти, проверка на статус на работа, рендериране на изходи и изчакване на завършването на обработката.

Достъпът до API в момента е наличен за план Studio и по-висок.

Моделът на клиента

VidioClient предоставя прост интерфейс за работа с VIDIO API. След като създадете клиент с вашия API ключ, можете да качвате входни файлове, да създавате работни места за акценти, да проверявате статуса на работа, да рендерирате изходи и да изчаквате завършването на работите.

Свойства

api_keystring
Вашият VIDIO API ключ, използван за удостоверяване на заявки.

Методи

КЛАСVidioClient(api_key)

Инициализиране на клиента

Създава нова инстанция на VidioClient.

Parameters

api_keystring
Вашият VIDIO API ключ.

Returns

Конфигурирана инстанция на VidioClient.

python
from vidio import VidioClient import os client = VidioClient( api_key=os.getenv("VIDIO_API_KEY") )
МЕТОДclient.upload(file_path)

Качване на файл

Качва локален файл в VIDIO и връща резултат от качването, съдържащ ключа на входа.

Parameters

file_pathstring
Локалният път до файла, който искате да качите.

Returns

Обект с резултат от качването, съдържащ `input_key`.

python
result = client.upload("/path/to/video.mp4") print(result.input_key)
МЕТОДclient.create_highlight_reel(input_keys, video_category, output_length, aspect_ratio)

Създаване на работа за акценти

Създава работа за акценти от един или повече качени входни файлове.

Parameters

input_keyslist[string]
Списък на ключовете на качените файлове, върнати от upload(). Поръчката на входните ключове определя поръчката на медиа в изходното видео.
video_categorystring
Категория на видеото, като ball-sports. Може да бъде podcast, ball-sports, non-ball-sports, beauty-product-demo, wedding, travel, others. За най-добри резултати, задайте категорията, която най-добре отговаря на вашето съдържание. Ако съдържанието ви не попада в никаква категория, използвайте others.
output_lengthinteger
Желаната дължина на изхода в секунди. Дължината на изхода трябва да бъде по-малка или равна на общата дължина на всички входни видеа комбинирани.
aspect_ratiostring
Изходно аспектно съотношение, като landscape, portrait или square.
музикална_категорияstring, optional
Предварително зададена музикална категория, която да бъде приложена към изхода. Поддържаните стойности са corporate, romantic, sports, kids_and_comedy, ambient_and_nature, horror_and_suspense, documentary и trending_vlogs. Ако продължителността на изхода е по-кратка от продължителността на музиката, избраната песен ще се възпроизвежда на повторение, за да пасне на изхода.
music_volumeinteger, optional
Громкост на фоновата музика от 0 до 100. Ако не е зададено, по подразбиране е 100.
original_audio_volumeinteger, optional
Оригиналното ниво на звука на източника от 0 до 100. Ако не е посочено, по подразбиране е 100.

Returns

Обект на работа, съдържащ `job_id` и информация за статус.

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)
МЕТОДclient.get_job(job_id)

Получаване на работа

Извлича текущия статус на работа.

Parameters

job_idstring
ID на работата, върната при създаването на работата за акценти.

Returns

Обект на работа с последния статус.

Response fields

job_idstring
Идентификатор на задачата.
statusstring
Текущият статус на задачата, например submitted, queued, processing, processed, rendering или rendered.
outputslist[OutputResult]
Връща се, когато задачата е напълно рендирана и изходните данни от последния подзадачен процес са налични.
startfloat | null
Начално време на изходния сегмент, ако е налично.
endfloat | null
Крайно време на изходния сегмент, ако е налично.
thumbnailstring | null
Път или URL до миниатюра на изхода.
durationfloat | null
Продължителност на изхода в секунди.
fpsfloat | null
Кадри в секунда за изхода.
overlayslist[OverlayResult]
Санитизирани наслагвания, включени в изхода.
idinteger | null
Идентификатор на наслагването.
fileIDstring | null
Свързан идентификатор на файл, ако е наличен.
originalFileNamestring | null
Оригиналното име на входния файл, свързано с наслагването, ако е налично.
from_integer | float | null
Кадрово отместване, при което започва наслагването.
contentstring | null
Стойност на съдържанието на наслагването, като път до миниатюра или идентификатор на звук.
durationInFramesinteger | null
Продължителност на наслагването в кадри.
typestring | null
Тип на наслагването, като например video или sound.
srcstring | null
URL на източника за медията на наслагването.
videoStartTimeinteger | float | null
Начално време на източното видео, когато е приложимо.
python
job_status = client.get_job(job.job_id) print(job_status.status)
json
{ "job_id": "abc123", "status": "рендерирано", "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)

Изчакване на работа

Проверява API, докато работата за акценти не достигне завършено състояние.

Parameters

job_idstring
ID на работата, за която да изчаквате.

Returns

Краен обект на завършена работа.

python
final_job = client.wait_for_job(job.job_id) print(final_job.status)
МЕТОДclient.render(job_id)

Рендериране на изход

Започва рендериране на изходно видео за завършена работа за акценти.

Parameters

job_idstring
ID на завършената работа за акценти.
output_indexinteger, optional
Индексът на списъка OutputResult, който да се визуализира. По подразбиране е 0. Обикновено първият резултат е най-добрият.

Returns

Обект на резултат от рендериране с статус на рендериране.

python
render_result = client.render( job_id=job.job_id ) print(render_result.status)
МЕТОДclient.wait_for_render(job_id)

Изчакване на рендер

Проверява, докато рендерът не завърши и изходът е готов.

Parameters

job_idstring
ID на работата, свързана с рендерирането.

Returns

Краен обект на резултат от рендерирането.

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