Bắt đầu với VIDIO API
Sử dụng VIDIO API để tải lên video thô, tạo các đoạn video nổi bật và lập trình kết xuất video cuối cùng.
Tổng quan
VIDIO API cho phép bạn tự động biến video thô thành các đoạn video nổi bật. Quy trình làm việc rất đơn giản: tải lên → tạo → kết xuất.
Đặt khóa API của bạn
Tạo khóa API của bạn trên trang dành cho nhà phát triển và lưu trữ nó một cách an toàn dưới dạng biến môi trường.
Cài đặt FFmpeg
Để tải lên phương tiện, cài đặt FFmpeg để kích hoạt phát hiện phương tiện tự động.
Cài đặt SDK Python
VIDIO API hiện hỗ trợ Python. Cài đặt SDK chính thức và dotenv để bắt đầu.
Tạo đoạn video nổi bật đầu tiên của bạn
Tải lên một video, tạo một công việc đoạn video nổi bật, chờ xử lý và kết xuất đầu ra cuối cùng.
from vidio import VidioClient
import os
from dotenv import load_dotenv
load_dotenv()
client = VidioClient(api_key=os.getenv("VIDIO_API_KEY"))
# 1. Upload inputs
u1 = client.upload("clip1.mp4")
u2 = client.upload("clip2.mp4")
u3 = client.upload("cover.jpg")
# 2. Create highlight reel
job = client.create_highlight_reel(
input_keys=[u1.input_key, u2.input_key, u3.input_key],
video_category="ball-sports",
output_length=30,
aspect_ratio="portrait"
)
# 3. Wait for processing
job = client.wait_for_job(job.job_id)
# 4. Render output
job = client.render(job.job_id)
job = client.wait_for_render(job.job_id)
print(job.output_url)Ghép các video lại với nhau
cut_method="no-cut" khi bạn muốn ghép các clip lại mà không cắt tỉa bằng AI. Ở chế độ này, output_length là không bắt buộc.Tải các clip của bạn lên, tạo một bản tổng hợp (highlight reel) với cut_method="no-cut" để giữ nguyên từng clip như ban đầu, sau đó kết xuất (render) kết quả đã ghép.
from vidio import VidioClient
import os
from dotenv import load_dotenv
load_dotenv()
client = VidioClient(api_key=os.getenv("VIDIO_API_KEY"))
# 1. Upload inputs
u1 = client.upload("clip1.mp4")
u2 = client.upload("clip2.mp4")
u3 = client.upload("cover.jpg")
# 2. Stitch videos together
job = client.create_highlight_reel(
input_keys=[u1.input_key, u2.input_key, u3.input_key],
aspect_ratio="landscape",
cut_method="no-cut"
)
# 3. Wait for processing
job = client.wait_for_job(job.job_id)
# 4. Render output
job = client.render(job.job_id)
job = client.wait_for_render(job.job_id)
print(job.output_url)