API Reference
VidioClient є основною точкою входу для взаємодії з VIDIO API з Python. Використовуйте його для завантаження файлів, створення завдань для монтажу, перевірки статусу завдань, рендерингу виходу та очікування завершення обробки.
Модель клієнта
Клас VidioClient надає простий інтерфейс для роботи з VIDIO API. Після створення клієнта з вашим API ключем, ви можете завантажити вхідні файли, створити завдання для монтажу, перевіряти статус завдань, рендерити вихідні дані та очікувати завершення завдань.
Властивості
Методи
VidioClient(api_key)Ініціалізувати клієнта
Створює новий екземпляр VidioClient.
Parameters
Returns
Конфігурований екземпляр VidioClient.
from vidio import VidioClient
import os
client = VidioClient(
api_key=os.getenv("VIDIO_API_KEY")
)client.upload(file_path)Завантажити файл
Завантажує локальний файл до VIDIO та повертає результат завантаження, що містить ключ вхідних даних.
Parameters
Returns
Об'єкт результату завантаження, що містить `input_key`.
result = client.upload("/path/to/video.mp4")
print(result.input_key)client.create_highlight_reel(input_keys, video_category, output_length, aspect_ratio)Створити завдання для монтажу
Створює завдання для монтажу з одного або кількох завантажених вхідних файлів.
Parameters
upload(). Порядок ключів вхідних даних визначає порядок медіа у вихідному відео.ball-sports. Це може бути podcast, ball-sports, non-ball-sports, beauty-product-demo, wedding, travel, others. Для найкращих результатів вкажіть категорію, яка найбільше відповідає вашому контенту. Якщо ваш контент не підходить жодній категорії, використовуйте others.landscape, portrait або square.corporate, romantic, sports, kids_and_comedy, ambient_and_nature, horror_and_suspense, documentary та trending_vlogs. Якщо тривалість виходу коротша за тривалість музики, вибрана доріжка буде зациклена, щоб відповідати тривалості виходу.0 до 100. Якщо не вказано, значення за замовчуванням — 100.0 до 100. Якщо не вказано, значення за замовчуванням - 100.Returns
Об'єкт завдання, що містить `job_id` та інформацію про статус.
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
Returns
Об'єкт завдання з останнім статусом.
Response fields
submitted, queued, processing, processed, rendering або rendered.video або sound.job_status = client.get_job(job.job_id)
print(job_status.status){
"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
Returns
Остаточний завершений об'єкт завдання.
final_job = client.wait_for_job(job.job_id)
print(final_job.status)client.render(job_id)Рендерити вихід
Починає рендеринг відео виходу для завершеного завдання для монтажу.
Parameters
OutputResult, який потрібно відобразити. За замовчуванням - 0. Як правило, перший результат є найкращим.Returns
Об'єкт результату рендерингу зі статусом рендерингу.
render_result = client.render(
job_id=job.job_id
)
print(render_result.status)client.wait_for_render(job_id)Чекати на рендер
Опитує, поки рендер не завершиться і вихід не буде готовий.
Parameters
Returns
Остаточний об'єкт результату рендеру.
final_render = client.wait_for_render(job.job_id)
print(final_render.output_url)