API Справка
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": "ночной-бег-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)