curl -X POST https://render-api.chillin.online/render/v1 \
-H "Accept: application/json" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_API_KEY" \
-d @request.jsonหมายเหตุ: คำขอการเรนเดอร์ของเราจะถูกประมวลผลแบบอะซิงโครนัส หลังจากส่งคำขอ คุณจะได้รับการตอบกลับทันทีที่มี
render_idซึ่งสามารถใช้เพื่อตรวจสอบสถานะและผลลัพธ์การเรนเดอร์
| ทรัพย์สิน | ประเภท | จำเป็น | ตัวอย่าง | ช่วงค่า | คำอธิบาย |
|---|---|---|---|---|---|
| compositeWidth | number | true | 1920 | 720 - 3840 | ความกว้างของคอมโพสิต |
| compositeHeight | number | true | 1080 | 720 - 3840 | ความสูงของคอมโพสิต |
| fps | number | true | 30 | 15 - 60 | อัตราเฟรมของคอมโพสิต |
| projectData | object | true | - | - | ข้อมูลโครงการ สามารถส่งออกจากตัวแก้ไข |
| camera | object | false | - | - | การกำหนดค่ากล้องที่ไม่บังคับสำหรับฉาก 3D ควบคุมโหมดการฉายและมุมมอง |
หมายเหตุ:
compositeWidthและcompositeHeightอาจแตกต่างจากwidthและheightที่ระบุในprojectDataอย่างไรก็ตาม อัตราส่วนของcompositeWidthต่อcompositeHeightจะต้องคงที่กับอัตราส่วนของprojectData.widthต่อprojectData.height
การออกแบบนี้ช่วยให้สามารถส่งออกโครงการวิดีโอเดียวกันในความละเอียดที่แตกต่างกันในขณะที่ยังคงรักษาอัตราส่วนเดิม
วัตถุ camera ที่ไม่บังคับควบคุมวิธีการที่องค์ประกอบ 3D ถูกฉาย:
mode (string) - โหมดการฉาย: "perspective" (ค่าเริ่มต้น) หรือ "orthographic" โหมด perspective จะให้การย่อส่วนตามความลึก; orthographic จะรักษาเส้นขนานview (string) - ชื่อมุมมองกล้องที่ตั้งไว้ล่วงหน้า (เช่น "front", "top", "right", "isometric"). เมื่อระบุ กล้องจะถูกวางในตำแหน่งที่ตรงกับมุมที่ตั้งไว้ล่วงหน้าหากไม่มี
cameraถูกระบุ จะใช้มุมมองด้านหน้าของ perspective เป็นค่าเริ่มต้น
{
"compositeWidth": 1920,
"compositeHeight": 1080,
"fps": 30,
"projectData": {
"type": "",
"width": 1920,
"height": 1080,
"fill": "#000000",
"view": [
{
"id": "8ecf7475-2c6c-47f9-827b-a09c7913f4c0",
"type": "Image",
"start": 0,
"duration": 5,
"trackIndex": 0,
"x": -570.0335392757963,
"y": -170.90659033307685,
"blendMode": "normal",
"anchorX": 1302,
"anchorY": 2312,
"rotation": 0,
"scaleX": 0.23356401384083045,
"scaleY": 0.23356401384083045,
"alpha": 1,
"skewX": 0,
"skewY": 0,
"keyframes": [],
"externalUrl": "https://images.pexels.com/photos/30465303/pexels-photo-30465303.jpeg",
"ext": "jpeg"
}
],
"audio": [],
"effect": [],
"transition": [],
"version": 0,
"duration": 5
}
};
{
"code": 0,
"data": {
"message": "Async render request submitted successfully",
"render_id": 105586,
"status": "processing"
},
"msg": "success"
}
{
"code": 2004,
"data": {},
"msg": "invalid project data: invalid view array: view item 0: missing required field: id"
}
นี่คือรหัสที่ส่งกลับโดย API การเรนเดอร์แบบอะซิงโครนัส:
projectData ไม่ใช่วัตถุ JSON ที่ถูกต้องduration จำเป็นต้องมีแต่ขาดหายไปduration มีอยู่แต่ไม่อยู่ในรูปแบบที่ถูกต้องหากคุณพบรหัสข้อผิดพลาดที่ไม่ได้ระบุ โปรดติดต่อฝ่ายสนับสนุนที่ [email protected]
หลังจากส่งคำขอการเรนเดอร์แบบอะซิงโครนัส คุณสามารถใช้ render_id เพื่อตรวจสอบสถานะและผลลัพธ์การเรนเดอร์
curl -X POST https://render-api.chillin.online/render/result \
-H "Accept: application/json" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_API_KEY" \
-d '{"render_id": 100000}'| ทรัพย์สิน | ประเภท | จำเป็น | ตัวอย่าง | ช่วงค่า | คำอธิบาย |
|---|---|---|---|---|---|
| render_id | number | true | 100000 | - | รหัสการเรนเดอร์ที่ส่งกลับจากคำขอการเรนเดอร์เริ่มต้น |
{
"code": 0,
"data": {
"render": {
"create_at": "2025-06-27T12:37:21.684337Z",
"json_url": "https://cloud.chillin.online/project_xxx.json?verify=xxx",
"render_id": 105549,
"state": "success",
"video_url": "https://cloud.chillin.online/video_xxx.mp4?verify=xxx"
}
},
"msg": "success"
}
ฟิลด์ state ในการตอบกลับสามารถมีค่าดังต่อไปนี้:
ใช้จุดสิ้นสุดนี้เพื่อลบไฟล์วิดีโอที่เรนเดอร์แล้วและ JSON ของโครงการสำหรับงานที่เสร็จสมบูรณ์อย่างถาวร
curl -X POST https://render-api.chillin.online/render/delete-files \
-H "Accept: application/json" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_API_KEY" \
-d '{"render_id": 100000}'| ทรัพย์สิน | ประเภท | จำเป็น | ตัวอย่าง | ช่วงค่า | คำอธิบาย |
|---|---|---|---|---|---|
| render_id | number | true | 100000 | - | รหัสการเรนเดอร์ที่คุณต้องการลบออก สามารถลบได้เฉพาะการเรนเดอร์ในสถานะสำเร็จเท่านั้น |
{
"code": 0,
"data": {
"message": "Render files deleted"
},
"msg": "success"
}