เอกสารอ้างอิง API

VidioClient เป็นจุดเริ่มต้นหลักสำหรับการโต้ตอบกับ API VIDIO จาก Python ใช้ในการอัพโหลดไฟล์ สร้างงานไฮไลท์ รีล ตรวจสอบสถานะงาน เรนเดอร์ผลลัพธ์ และรอให้การประมวลผลเสร็จสิ้น.

การเข้าถึง API ขณะนี้มีให้สำหรับแผน Studio และสูงกว่า.

โมเดลไคลเอนต์

VidioClient มีอินเทอร์เฟซที่เรียบง่ายสำหรับการทำงานกับ API VIDIO หลังจากสร้างไคลเอนต์ด้วย API คีย์ของคุณ คุณสามารถอัพโหลดไฟล์นำเข้า สร้างงานไฮไลท์รีล ตรวจสอบสถานะงาน เรนเดอร์ผลลัพธ์ และรอให้งานเสร็จสิ้น.

คุณสมบัติ

api_keystring
API คีย์ VIDIO ของคุณที่ใช้ในการยืนยันคำขอ.

เมธอด

CLASSVidioClient(api_key)

เริ่มต้นไคลเอนต์

สร้างอินสแตนซ์ใหม่ของ VidioClient.

Parameters

api_keystring
API คีย์ VIDIO ของคุณ.

Returns

อินสแตนซ์ VidioClient ที่กำหนดค่า.

python
from vidio import VidioClient import os client = VidioClient( api_key=os.getenv("VIDIO_API_KEY") )
METHODclient.upload(file_path)

อัพโหลดไฟล์

อัพโหลดไฟล์ท้องถิ่นไปยัง VIDIO และส่งกลับผลลัพธ์การอัพโหลดที่มีคีย์นำเข้า.

Parameters

file_pathstring
เส้นทางท้องถิ่นไปยังไฟล์ที่คุณต้องการอัพโหลด.

Returns

วัตถุผลลัพธ์การอัพโหลดที่มี `input_key`.

python
result = client.upload("/path/to/video.mp4") print(result.input_key)
METHODclient.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)
METHODclient.get_job(job_id)

รับงาน

ดึงสถานะปัจจุบันของงาน.

Parameters

job_idstring
หมายเลขงานที่ส่งคืนเมื่อสร้างงานไฮไลท์รีล.

Returns

วัตถุงานที่มีสถานะล่าสุด.

Response fields

job_idstring
ID ของงาน.
statusstring
สถานะปัจจุบันของงาน เช่น submitted, queued, processing, processed, rendering, หรือ rendered.
outputslist[OutputResult]
จะถูกส่งกลับเมื่อการเรนเดอร์งานเสร็จสมบูรณ์และข้อมูลเอาต์พุตจากงานย่อยสุดท้ายพร้อมใช้งาน.
startfloat | null
เวลาเริ่มของส่วนเอาต์พุต หากมี.
endfloat | null
เวลาสิ้นสุดของส่วนเอาต์พุต หากมี.
thumbnailstring | null
เส้นทางหรือ URL ของภาพขนาดย่อสำหรับเอาต์พุต.
durationfloat | null
ระยะเวลาเอาต์พุตเป็นวินาที.
fpsfloat | null
เฟรมต่อวินาทีของเอาต์พุต.
overlayslist[OverlayResult]
overlays ที่ผ่านการทำความสะอาดและรวมอยู่ในเอาต์พุต.
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)
เจเอสโอเอ็น
{ "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 } ] }
METHODclient.wait_for_job(job_id)

รองาน

ตรวจสอบ API จนกว่างานไฮไลท์รีลจะถึงสถานะเสร็จสมบูรณ์.

Parameters

job_idstring
หมายเลขงานที่ต้องรอ.

Returns

วัตถุงานสุดท้ายที่เสร็จสมบูรณ์.

python
final_job = client.wait_for_job(job.job_id) print(final_job.status)
METHODclient.render(job_id)

เรนเดอร์ผลลัพธ์

เริ่มการเรนเดอร์วิดีโอผลลัพธ์สำหรับงานไฮไลท์รีลที่เสร็จสมบูรณ์.

Parameters

job_idstring
หมายเลขงานไฮไลท์รีลที่เสร็จสมบูรณ์.
output_indexinteger, optional
ดัชนีของรายการ OutputResult ที่จะแสดง. ค่าเริ่มต้นคือ 0. โดยทั่วไปเอาต์พุตตัวแรกเป็นผลลัพธ์ที่ดีที่สุด.

Returns

วัตถุผลลัพธ์การเรนเดอร์ที่มีสถานะการเรนเดอร์.

python
render_result = client.render( job_id=job.job_id ) print(render_result.status)
METHODclient.wait_for_render(job_id)

รอการเรนเดอร์

ตรวจสอบจนกว่าการเรนเดอร์จะเสร็จสิ้นและผลลัพธ์พร้อม.

Parameters

job_idstring
หมายเลขงานที่เกี่ยวข้องกับการเรนเดอร์.

Returns

วัตถุผลลัพธ์การเรนเดอร์สุดท้าย.

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