
Rendervid Template System - JSON-maler, Variabler, Animasjoner og Overganger
Komplett guide til Rendervid template system. Lær hvordan du lager JSON-videomaler, bruker dynamiske variabler med {{variable}} syntaks, konfigurerer 40+ animas...

Utforsk alle Rendervid-komponenter: 8 innebygde lagtyper (tekst, bilde, video, form, lyd, gruppe, lottie, tilpasset), ferdigbygde React-komponenter, den visuelle malredigereren og videospilleren. Lag tilpassede komponenter med full React-støtte.
Rendervid er bygget på en komponentbasert arkitektur som gjør videoskapelse modulær, utvidbar og utviklervennlig. Hvert element i en Rendervid-mal er et lag, og hvert lag har en spesifikk type som bestemmer hvordan det rendres. Med 8 innebygde lagtyper, et voksende bibliotek av ferdigbygde React-komponenter, en visuell malredigerer og en frittstående spiller, gir Rendervid deg alt du trenger for å produsere profesjonelt videoinnhold programmatisk.
Denne siden dekker hele komponentøkosystemet: fra primitive lagtyper som tekst og form, gjennom lyd- og videoavspilling, til fullstendig tilpassede React-komponenter som låser opp ubegrensede kreative muligheter. Enten du bygger et enkelt tittelkort eller en kompleks datadrevet animasjon, er forståelse av disse komponentene grunnlaget.
Hvert lag i en Rendervid-mal er definert som et JSON-objekt med et type-felt. Typen bestemmer tilgjengelige egenskaper og renderingsadferd. Nedenfor er en detaljert referanse for hver av de 8 innebygde lagtypene.
text-laget er den mest funksjonsrike primitiven i Rendervid. Det rendrer stilisert tekst med full kontroll over typografi, justering, farge, effekter og animasjon.
Typografiегenskaper:
| Egenskap | Beskrivelse | Eksempel |
|---|---|---|
fontSize | Skriftstørrelse i piksler | 48 |
fontFamily | Skriftfamilienavn | "Inter" |
fontWeight | Vekt fra 100 til 900 | 700 |
fontStyle | Normal eller kursiv | "italic" |
Rendervid leveres med 100+ Google Fonts innebygd. Du kan bruke hvilken som helst av dem ved å spesifisere fontFamily-egenskapen uten å måtte laste eksterne stilark.
Justeringsegenskaper:
| Egenskap | Verdier | Standard |
|---|---|---|
textAlign | left, center, right, justify | left |
verticalAlign | top, middle, bottom | top |
Styling og effekter:
color og backgroundColor for grunnleggende fargingtextShadow for skyggertextStroke for omrisset teksttextDecoration for understreking, gjennomstrekingtextTransform for store bokstaver, små bokstaver, kapitaliseringmaxLines med automatisk ellipse-avkorting{
"type": "text",
"text": "Velkommen til Rendervid",
"x": 100,
"y": 200,
"width": 800,
"height": 100,
"fontSize": 64,
"fontFamily": "Montserrat",
"fontWeight": 700,
"color": "#FFFFFF",
"textAlign": "center",
"verticalAlign": "middle",
"textShadow": "2px 2px 8px rgba(0,0,0,0.5)"
}
For avanserte tekstanimasjoner som skrivemaskineffekten, kombiner tekstlaget med nøkkelbilde-animasjoner eller bruk den dedikerte TypewriterEffect-komponenten .
image-laget viser raster- og vektorbilder med fleksible størrelsesanpassings- og beskjæringsalternativer.
Nøkkelегenskaper:
| Egenskap | Beskrivelse | Verdier |
|---|---|---|
source | URL til bildefilen | Hvilken som helst gyldig URL |
fit | Hvordan bildet fyller sine grenser | cover, contain, fill, none |
position | Beskjæringsankerpunkt | CSS-stil object-position, f.eks. "center top" |
Støttede formater: PNG, JPEG, WebP, SVG, GIF
{
"type": "image",
"source": "https://example.com/hero-banner.png",
"x": 0,
"y": 0,
"width": 1920,
"height": 1080,
"fit": "cover",
"position": "center center"
}
fit-egenskapen fungerer som CSS object-fit:
video-laget bygger inn videoklipp i komposisjonen din med full avspillingskontroll.
Nøkkelегenskaper:
| Egenskap | Beskrivelse | Standard |
|---|---|---|
source | URL til videofilen | påkrevd |
startTime | Forskyvning inn i kildevideoen (sekunder) | 0 |
playbackRate | Hastighetsmultiplikator | 1 |
muted | Om lyden er dempet | false |
loop | Løkke videoklippet | false |
{
"type": "video",
"source": "https://cdn.example.com/background-clip.mp4",
"x": 0,
"y": 0,
"width": 1920,
"height": 1080,
"startTime": 5.0,
"playbackRate": 1.0,
"muted": true,
"loop": true
}
Bruk startTime for å hoppe over introer eller gå til et spesifikt punkt i kildematerialet. Kombiner med playbackRate for sakte film (0.5) eller tidslapse (2.0) effekter.
shape-laget tegner vektorformer med fyllinger, streker, gradienter og avrundede hjørner.
Formtyper:
| Type | Beskrivelse |
|---|---|
rectangle | Grunnleggende rektangel med valgfri borderRadius |
ellipse | Sirkel eller oval |
polygon | Regulær polygon med konfigurerbare sider |
star | Stjerneform med konfigurerbare punkter |
path | Tilpassede SVG-stidata |
Stylingegenskaper:
fill – ensfarget eller gradientstroke – kantfargestrokeWidth – kanttykkelseborderRadius – avrundede hjørner for rektanglerlinear og radial gradientfyllinger{
"type": "shape",
"shapeType": "rectangle",
"x": 100,
"y": 100,
"width": 400,
"height": 300,
"borderRadius": 16,
"fill": {
"type": "linear",
"colors": ["#6366F1", "#8B5CF6"],
"angle": 135
},
"stroke": "#FFFFFF",
"strokeWidth": 2
}
For tilpassede former, bruk path-typen med standard SVG-stidata:
{
"type": "shape",
"shapeType": "path",
"path": "M10 80 C 40 10, 65 10, 95 80 S 150 150, 180 80",
"fill": "#EC4899",
"stroke": "none"
}
audio-laget legger til lydspor i komposisjonen din med volumkontroll, fading og en full effektkjede.
Nøkkelегenskaper:
| Egenskap | Beskrivelse | Standard |
|---|---|---|
source | URL til lydfilen | påkrevd |
volume | Volumnivå (0 til 1) | 1 |
fadeIn | Fade-in varighet i sekunder | 0 |
fadeOut | Fade-out varighet i sekunder | 0 |
Lydeffektkjede:
Rendervid inkluderer en innebygd effektbehandlingspipeline. Tilgjengelige effekter:
{
"type": "audio",
"source": "https://cdn.example.com/background-music.mp3",
"volume": 0.7,
"fadeIn": 2.0,
"fadeOut": 3.0,
"effects": [
{ "type": "highpass", "frequency": 200 },
{ "type": "compressor", "threshold": -24, "ratio": 4 },
{ "type": "reverb", "wet": 0.3, "decay": 2.5 },
{ "type": "gain", "value": 0.8 }
],
"pan": -0.3
}
Effektene behandles i rekkefølge, slik at du kan bygge sofistikerte lydbehandlingskjeder. Bruk pan-verdier fra -1 (helt til venstre) til 1 (helt til høyre) for stereoposisjonering.
group-laget er en beholder som inneholder underordnede lag. Transformasjoner som brukes på gruppen påvirker alle barn, noe som gjør det enkelt å flytte, skalere, rotere eller animere komplekse flerlagskomposisjoner som en enkelt enhet.
Nøkkelегenskaper:
| Egenskap | Beskrivelse |
|---|---|
children | Array av underordnede lagobjekter |
{
"type": "group",
"x": 200,
"y": 150,
"rotation": 5,
"opacity": 0.9,
"children": [
{
"type": "shape",
"shapeType": "rectangle",
"x": 0,
"y": 0,
"width": 500,
"height": 300,
"fill": "#1E293B",
"borderRadius": 12
},
{
"type": "text",
"text": "Korttittel",
"x": 24,
"y": 24,
"fontSize": 28,
"fontWeight": 600,
"color": "#F8FAFC"
},
{
"type": "text",
"text": "Støttende beskrivelsestekst kommer her.",
"x": 24,
"y": 64,
"fontSize": 16,
"color": "#94A3B8"
}
]
}
Grupper er uvurderlige for å organisere komplekse maler. Bruk dem til å lage gjenbrukbare kortoppsett, lower-thirds, overlegg og andre sammensatte elementer. Barnkoordinatene er relative til gruppens posisjon.
lottie-laget rendrer Lottie-animasjoner eksportert fra After Effects, Figma eller andre animasjonsverktøy.
Nøkkelегenskaper:
| Egenskap | Beskrivelse | Standard |
|---|---|---|
source | URL til Lottie JSON-filen | påkrevd |
speed | Avspillingshastighet multiplikator | 1 |
direction | 1 for forover, -1 for bakover | 1 |
loop | Om animasjonen går i løkke | false |
startFrame | Første bilde å spille | 0 |
endFrame | Siste bilde å spille | siste bilde |
{
"type": "lottie",
"source": "https://cdn.example.com/loading-spinner.json",
"x": 860,
"y": 440,
"width": 200,
"height": 200,
"speed": 1.5,
"loop": true,
"startFrame": 0,
"endFrame": 60
}
Lottie-lag er ideelle for å legge til polerte bevegelsesgrafikk, ikoner, lasteindikatorer og merkevareanimasjoner uten å skrive bilde-for-bilde kode. startFrame- og endFrame-egenskapene lar deg trimme animasjonen til å spille bare et spesifikt segment.
custom-laget er den kraftigste lagtypen i Rendervid. Det lar deg skrive vilkårlige React-komponenter som rendrer bilde-for-bilde, og gir deg full kontroll over den visuelle utdataen.
Det finnes tre distribusjonstyper for tilpassede komponenter:
Bygg inn JavaScript-kode direkte i JSON-malen din. Best for små, selvstendige komponenter.
{
"type": "custom",
"deployment": {
"type": "inline",
"code": "function Component({ frame, fps, sceneDuration, layerSize, props }) { const progress = frame / (fps * sceneDuration); const size = 50 + progress * 100; return React.createElement('div', { style: { width: size, height: size, borderRadius: '50%', backgroundColor: props.color || '#6366F1', display: 'flex', alignItems: 'center', justifyContent: 'center' } }); }"
},
"props": {
"color": "#EC4899"
}
}
Last en komponent fra en ekstern URL som en CDN. Best for gjenbrukbare komponenter delt på tvers av maler.
{
"type": "custom",
"deployment": {
"type": "url",
"url": "https://cdn.example.com/components/animated-counter.js"
},
"props": {
"startValue": 0,
"endValue": 1000,
"prefix": "$",
"color": "#10B981"
}
}
Bruk en forhåndsregistrert komponent etter navn. Best for komponenter fra @rendervid/components-pakken eller tilpassede registre.
{
"type": "custom",
"deployment": {
"type": "reference",
"name": "AnimatedLineChart"
},
"props": {
"data": [10, 25, 40, 35, 60, 80, 72, 95],
"lineColor": "#6366F1",
"gradientOpacity": 0.3
}
}
Hver tilpasset komponent mottar et standard sett med props:
| Prop | Type | Beskrivelse |
|---|---|---|
frame | number | Gjeldende bildenummer (0-indeksert) |
fps | number | Bilder per sekund av komposisjonen |
sceneDuration | number | Varighet av gjeldende scene i sekunder |
layerSize | { width, height } | Pikseldimensjoner av laget |
props | object | Eventuelle tilpassede props definert i malen |
Tilpassede komponenter støtter også skjemavalidering for props, for å sikre at maler sender riktige datatyper og påkrevde felt til hver komponent.
@rendervid/components-pakken leveres med et sett produksjonsklare komponenter du kan bruke umiddelbart i malene dine.
Rendrer animerte linjediagrammer med glatte gradientfyllinger, konfigurerbare datapunkter, akseetiketter og animerte inntegneffekter. Ideell for datadrevet videoinnhold som rapporter, dashbord og presentasjoner.
Nøkkel-props: data, lineColor, gradientOpacity, strokeWidth, labels, animationStyle
Skaper en fascinerende nordlys (aurora borealis) effekt ved bruk av lagdelte gradienter og flytende bevegelse. Perfekt for atmosfæriske bakgrunner, introsekvenser og omgivende visuelle elementer.
Nøkkel-props: colors, speed, intensity, blur
Genererer flytende bølgeanimasjoner med konfigurerbare farger, amplituder og frekvenser. Bruk den til stilige bakgrunner, musikkvisualisatorer eller havatematisk innhold.
Nøkkel-props: waveCount, colors, amplitude, frequency, speed
Tilbyr 17 profesjonelle overgangstyper for å bevege seg mellom scener. Inkluderer wipes, fades, zooms, slides og mer. Hver overgang er bildenøyaktig og konfigurerbar.
Nøkkel-props: transitionType, duration, direction, easing
Rendrer tegn-for-tegn tekstavdekking med blinkende markør. Støtter konfigurerbar skrivehastighet, markørstil og forsinkelse mellom ord. Flott for kodedemoer, chatsimulasjoner og dramatiske tekstavdekninger.
Nøkkel-props: text, typingSpeed, cursorChar, cursorBlinkRate, startDelay
Å bygge dine egne tilpassede komponenter er der Rendervid virkelig skinner. Enhver visuell effekt du kan lage med JavaScript og CSS kan bli en Rendervid-komponent.
En Rendervid tilpasset komponent er en standard JavaScript-funksjon som mottar props og returnerer et React-element. Nøkkelforskjellen fra typiske React-komponenter er at rendering er bildestyrt i stedet for hendelsesstyrt.
function MyComponent({ frame, fps, sceneDuration, layerSize, props }) {
// Beregn animasjonsfremgang (0 til 1)
const totalFrames = fps * sceneDuration;
const progress = frame / totalFrames;
// Bruk fremgang til å drive animasjoner
const opacity = Math.min(progress * 2, 1);
const scale = 0.5 + progress * 0.5;
return React.createElement("div", {
style: {
width: layerSize.width,
height: layerSize.height,
opacity: opacity,
transform: `scale(${scale})`,
display: "flex",
alignItems: "center",
justifyContent: "center",
color: props.color || "#FFFFFF",
fontSize: props.fontSize || 48,
fontWeight: 700,
},
}, props.text || "Hei, Rendervid!");
}
Hver tilpasset komponent mottar disse standard props:
fps for totalt bildeantall.width og height i piksler, som matcher lagdimensjonene definert i malen.Siden Rendervid-komponenter kjører i et renderingsmiljø, bruker de React.createElement() i stedet for JSX. Mønsteret er enkelt:
// JSX ekvivalent: <div className="container"><span>Hei</span></div>
React.createElement("div", { className: "container" },
React.createElement("span", null, "Hei")
);
Du kan definere et skjema for komponentens props for å validere data ved mallastingstid:
MyComponent.schema = {
text: { type: "string", required: true },
color: { type: "string", default: "#FFFFFF" },
fontSize: { type: "number", default: 48, min: 8, max: 200 },
animate: { type: "boolean", default: true },
};
En partikkelsystemkomponent som simulerer 150+ partikler med fysikk:
function ParticleExplosion({ frame, fps, sceneDuration, layerSize, props }) {
const particleCount = props.particleCount || 150;
const gravity = props.gravity || 0.5;
const time = frame / fps;
const particles = [];
for (let i = 0; i < particleCount; i++) {
const angle = (i / particleCount) * Math.PI * 2;
const speed = 2 + Math.random() * 4;
const x = layerSize.width / 2 + Math.cos(angle) * speed * time * 60;
const y = layerSize.height / 2 + Math.sin(angle) * speed * time * 60
+ gravity * time * time * 100;
const opacity = Math.max(0, 1 - time / sceneDuration);
const size = 3 + Math.random() * 5;
particles.push(
React.createElement("div", {
key: i,
style: {
position: "absolute",
left: x,
top: y,
width: size,
height: size,
borderRadius: "50%",
backgroundColor: props.color || "#F59E0B",
opacity: opacity,
},
})
);
}
return React.createElement("div", {
style: {
position: "relative",
width: layerSize.width,
height: layerSize.height,
overflow: "hidden",
},
}, ...particles);
}
En talltellingsanimasjon som interpolerer mellom start- og sluttverdier:
function AnimatedCounter({ frame, fps, sceneDuration, layerSize, props }) {
const progress = Math.min(frame / (fps * sceneDuration), 1);
const eased = 1 - Math.pow(1 - progress, 3); // ease-out cubic
const value = Math.round(
props.startValue + (props.endValue - props.startValue) * eased
);
const formatted = value.toLocaleString();
return React.createElement("div", {
style: {
width: layerSize.width,
height: layerSize.height,
display: "flex",
alignItems: "center",
justifyContent: "center",
fontSize: props.fontSize || 72,
fontWeight: 800,
color: props.color || "#FFFFFF",
fontFamily: "Inter, sans-serif",
},
}, (props.prefix || "") + formatted + (props.suffix || ""));
}
For mer om hvordan tilpassede komponenter passer inn i den bredere malstrukturen, se Malsystem-dokumentasjonen .
@rendervid/editor-pakken tilbyr en fullverdig visuell malredigerer, som gjør det mulig for både ikke-utviklere og utviklere å bygge Rendervid-maler uten å skrive JSON for hånd.
Editoren har en flersporet tidslinje der hvert lag er representert som en blokk som kan dras, endres i størrelse og reposisjoneres. Juster starttider, varigheter og lagrekkefølge visuelt. Zoom inn for bildenivå-presisjon eller zoom ut for en oversikt på høyt nivå.
Et dedikert panel lister alle lag i komposisjonen med dra-og-slipp omorganisering, synlighetsvekslinger, låsekontroller og gruppering. Legg til nye lag fra en komponentpalett som inkluderer alle 8 innebygde typer og eventuelle registrerte tilpassede komponenter.
Velg et hvilket som helst lag for å se og redigere egenskapene i et strukturert skjema. Egenskapspanelet tilpasser seg lagtypen og viser bare relevante felt. Fargevelgere, glidebrytere, rullegardinmenyer og tekstinntastinger gjør det enkelt å justere hver detalj. Endringer reflekteres umiddelbart i forhåndsvisningen.
Hver endring registreres i en historikkstabel med full angre- og gjør om-støtte. Naviger gjennom redigeringshistorikken din med selvtillit, vel vitende om at du alltid kan gå tilbake til en tidligere tilstand.
Editoren inkluderer en innebygd Player-komponent som rendrer malen i sanntid mens du gjør endringer. Forhåndsvis hele komposisjonen når som helst under redigering uten å måtte eksportere eller rendre.
@rendervid/player-pakken tilbyr en frittstående React-komponent for forhåndsvisning av Rendervid-maler i nettleseren.
Installer og bygg inn spilleren i hvilken som helst React-applikasjon:
import { Player } from "@rendervid/player";
function Preview({ template }) {
return (
<Player
template={template}
width={1920}
height={1080}
onComplete={() => console.log("Avspilling fullført")}
/>
);
}
Spilleren støtter innebygde tastaturkontroller for effektiv forhåndsvisning:
| Snarvei | Handling |
|---|---|
Space | Spill av / Pause |
Venstre pil | Gå ett bilde tilbake |
Høyre pil | Gå ett bilde frem |
M | Demp / Opphev demping av lyd |
Juster avspillingshastighet fra 0.25x (kvart hastighet) til 4x (firedobbel hastighet). Sakte film-avspilling er nyttig for å gjennomgå animasjoner bilde for bilde, mens hurtigspol hjelper med å skanne gjennom lengre komposisjoner.
Spilleren eksponerer callbacks for programmatisk kontroll:
| Callback | Beskrivelse |
|---|---|
onComplete | Utløses når avspillingen når slutten |
onFrameChange | Utløses på hvert bilde med gjeldende bildenummer |
onPlayStateChange | Utløses når avspill/pause-tilstand endres |
Bruk disse callbacks til å synkronisere spilleren med eksterne UI-elementer, analyser eller interaktive opplevelser.
Disse eksempel tilpassede komponentene demonstrerer rekkevidden av hva som er mulig med Renderivids tilpassede lagtype. Hver enkelt er bygget ved bruk av samme React.createElement()-mønster beskrevet ovenfor.
Et fysikkbasert partikkelsystem med 150+ partikler, konfigurerbar tyngdekraft, farge og eksplosjonsradius. Partikler spawner fra et sentralt punkt og buer utover med realistisk bevegelse.

Lydreaktive bølgemønstre som reagerer på frekvensdata. Flere bølgelag med konfigurerbar amplitude, frekvens og farge skaper en dynamisk, organisk visuell.

Lysende tekst med animerte neonlyseffekter, inkludert flimring, puls og fargesykling. Tilpassbar glød-radius, farger og animasjonshastighet.

Et sci-fi-inspirert holografisk brukergrensesnitt med skannelinjer, datautlesninger, rutenettoverlegg og animerte UI-elementer. Ideell for teknologitematiske videoer og futuristiske introer.

En maskinvareakselerert CSS 3D-kube med teksturerte flater og jevn rotasjon. Bruker CSS perspective og transform3d for effektiv 3D-rendering uten WebGL.

En flerkartdashbord-komponent med animerte stolpediagrammer, linjediagrammer og statistikktellere. Datadrevet og konfigurerbar for rapporter, presentasjoner og datafortelling.

Ytterligere tilpassede komponenteksempler inkluderer:
Rendervid støtter 8 innebygde lagtyper: tekst (rik typografi med 100+ fonter), bilde (med cover/contain/fill-moduser), video (med avspillingskontroll), form (rektangler, ellipser, polygoner, stjerner, SVG-stier), lyd (med mikseffekter), gruppe (for nøsting av lag), lottie (for Lottie-animasjoner), og tilpasset (for React-komponenter).
Tilpassede komponenter kan distribueres på tre måter: inline (JavaScript-kode direkte i JSON-malen), URL-basert (lastet fra en CDN), eller som forhåndsregistrerte referanser. Hver komponent mottar frame, fps, sceneDuration, og layerSize props pluss eventuelle tilpassede props du definerer. Komponenter bruker React.createElement() for rendering.
Rendervid inkluderer flere ferdigbygde komponenter i @rendervid/components-pakken: AnimatedLineChart for datavisualisering, AuroraBackground for nordlyseffekter, WaveBackground for flytende animasjoner, SceneTransition for 17 profesjonelle overganger, og TypewriterEffect for tegn-for-tegn tekstavdekking.
Ja, @rendervid/editor-pakken tilbyr en fullstendig visuell malredigerer med tidslinjebasert redigering, lagstyring, et egenskapspanel for redigering av lagegenskaper, angre/gjør om-historikk, og sanntidsforhåndsvisning. @rendervid/player-pakken tilbyr en frittstående spillerkomponent for forhåndsvisning av maler.
Absolutt. Du kan skrive tilpassede React-komponenter som rendrer bilde-for-bilde animasjoner. Komponenter mottar gjeldende bildenummer, fps, scenelengde og lagstørrelse, noe som gir deg full kontroll over prosedyreanimasjoner, fysikksimuleringer, datavisualiseringer, partikkelsystemer og mer.
Vi hjelper bedrifter som din med å utvikle smarte chatboter, MCP-servere, AI-verktøy eller andre typer AI-automatisering for å erstatte mennesker i repeterende oppgaver i organisasjonen din.

Komplett guide til Rendervid template system. Lær hvordan du lager JSON-videomaler, bruker dynamiske variabler med {{variable}} syntaks, konfigurerer 40+ animas...

Distribuer Rendervid hvor som helst: nettleserbasert rendering for forhåndsvisninger, Node.js for server-side batch-prosessering, eller sky-rendering på AWS Lam...

Oppdag Rendervid, det gratis åpen kildekode-alternativet til Remotion for programmatisk videogenerering. AI-først design med MCP-integrasjon, JSON-maler, skygje...