De Chillin Render API stelt je in staat om de videoinhoud en parameters die gerenderd moeten worden op te geven door een JSON-structuur zoals hieronder te definiëren.
Ga naar Render Console om Render API-tegoeden te krijgen en je Render API-sleutel te genereren
Stuur een POST-verzoek naar de Render API-eindpunt met je API-sleutel:
1curl -X POST https://render-api.chillin.online/render/v1 \
2-H "Accept: application/json" \
3-H "Content-Type: application/json" \
4-H "Authorization: Bearer YOUR_API_KEY" \
5-d @request.json1{
2"compositeWidth": 1920,
3"compositeHeight": 1080,
4"fps": 30,
5"projectData": {
6 "type": "",
7 "width": 1920,
8 "height": 1080,
9 "fill": "#000000",
10 "view": [
11 {
12 "id": "bba95c7f-652b-4380-b166-6bece989f527",
13 "type": "Image",
14 "start": 0,
15 "duration": 5,
16 "trackIndex": 0,
17 "x": 0,
18 "y": 0,
19 "width": 3629,
20 "height": 5444,
21 "blendMode": "normal",
22 "anchorX": 1814.5,
23 "anchorY": 2722,
24 "rotation": 0,
25 "scaleX": 0.19838354151359294,
26 "scaleY": 0.19838354151359294,
27 "alpha": 1,
28 "skewX": 0,
29 "skewY": 0,
30 "hidden": false,
31 "locked": false,
32 "keyframes": [],
33 "externalUrl": "https://images.pexels.com/photos/33189512/pexels-photo-33189512.jpeg",
34 "ext": "jpeg"
35 }
36 ],
37 "audio": [],
38 "effect": [],
39 "transition": [],
40 "version": 0,
41 "duration": 5
42}
43};
44De API werkt in asynchrone modus en retourneert een reactie zoals deze:
1{
2"code": 0,
3"data": {
4 "message": "Async render request submitted successfully",
5 "render_id": 100000,
6 "status": "processing"
7},
8"msg": "success"
9}
10Alle JSON-objecten bevatten een video projectobject, dat de samengestelde breedte, samengestelde hoogte en resolutie van de video specificeert.
Het projectobject bevat de basisparameters voor het renderen van de video, zoals breedte, hoogte, duur, achtergrondkleur en meer.
Het project bevat ook een of meer elementen, waarbij elk element een videocomponent vertegenwoordigt, zoals een video, afbeelding, tekst, vorm, audio of effect.
Elk element bevat specifieke parameters voor de component, zoals positie, grootte, kleur, inhoud, enzovoort.
1{
2"compositeWidth": 1920,
3"compositeHeight": 1080,
4"fps": 30,
5"projectData": {
6 "type": "",
7 "width": 1920,
8 "height": 1080,
9 "fill": "#000000",
10 "view": [
11 {
12 "id": "8ecf7475-2c6c-47f9-827b-a09c7913f4c0",
13 "type": "Image",
14 "start": 0,
15 "duration": 5,
16 "trackIndex": 0,
17 "x": -570.0335392757963,
18 "y": -170.90659033307685,
19 "blendMode": "normal",
20 "anchorX": 1302,
21 "anchorY": 2312,
22 "rotation": 0,
23 "scaleX": 0.23356401384083045,
24 "scaleY": 0.23356401384083045,
25 "alpha": 1,
26 "skewX": 0,
27 "skewY": 0,
28 "keyframes": [],
29 "externalUrl": "https://images.pexels.com/photos/30465303/pexels-photo-30465303.jpeg",
30 "ext": "jpeg"
31 }
32 ],
33 "audio": [],
34 "effect": [],
35 "transition": [],
36 "version": 0,
37 "duration": 5
38}
39};
40De renderengine ondersteunt zowel 2D- als 3D-elementen. Terwijl het canvas is gedefinieerd met breedte en hoogte in pixels, gebruikt de engine een perspectiefcamera voor 3D-rendering:
rotationX, rotationY en rotation (Z-as).Dit ontwerp maakt naadloos mengen van 2D- en 3D-elementen in hetzelfde project mogelijk. Traditionele 2D-elementen (met z=0) worden precies zoals voorheen gerenderd, terwijl 3D-elementen kunnen worden gepositioneerd en gedraaid in driedimensionale ruimte.
Hier is een eenvoudig voorbeeld van een 3D kubus element:
1{
2"id": "3d-cube-001",
3"type": "3D",
4"start": 0,
5"duration": 5,
6"trackIndex": 0,
7"x": 960,
8"y": 540,
9"z": 0,
10"width": 200,
11"height": 200,
12"anchorX": 100,
13"anchorY": 100,
14"rotation": 0,
15"rotationX": 30,
16"rotationY": 45,
17"scaleX": 1,
18"scaleY": 1,
19"scaleZ": 1,
20"alpha": 1,
21"ext": "geometry",
22"geometryType": "cube",
23"nodeCategory": "basic",
24"geometryColor": "#4A90E2"
25}
26Belangrijke verschillen van 2D-elementen:
type: "3D" identificeert dit als een 3D-elementz, rotationX, rotationY en scaleZ stellen 3D-transformaties in staatgeometryType specificeert de 3D-vorm (kubus, bol, cilinder, enz.)geometryColor stelt de basiskleur van de 3D-geometrie inVoor meer details over 3D-elementen, zie de 3D Element documentatie.
Je verzoek JSON moet strikt voldoen aan het JSON-schema dat in dit document is gedefinieerd. Je kunt de overeenkomstige verzoek JSON testen en genereren in de Chillin Video Editor.