API 参考
VidioClient 是用于从 Python 与 VIDIO API 进行交互的主要入口点。使用它上传文件、创建精彩片段工作、检查工作状态、渲染输出,并等待处理完成。
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。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
一个具有最新状态的工作对象。
python
job_status = client.get_job(job.job_id)
print(job_status.status)方法
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。
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)