@remotion/promo-pages 4.0.434 → 4.0.435
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/Homepage.js +111 -28
- package/dist/Users/jonathanburger/remotion/packages/promo-pages/dist/Homepage.js +111 -28
- package/dist/Users/jonathanburger/remotion/packages/promo-pages/dist/design.js +1 -1
- package/dist/Users/jonathanburger/remotion/packages/promo-pages/dist/experts/experts-data.js +69 -18
- package/dist/Users/jonathanburger/remotion/packages/promo-pages/dist/experts.js +70 -19
- package/dist/Users/jonathanburger/remotion/packages/promo-pages/dist/homepage/Pricing.js +1 -1
- package/dist/Users/jonathanburger/remotion/packages/promo-pages/dist/prompts/PromptsGallery.js +1 -1
- package/dist/Users/jonathanburger/remotion/packages/promo-pages/dist/prompts/PromptsShow.js +1 -1
- package/dist/Users/jonathanburger/remotion/packages/promo-pages/dist/prompts/PromptsSubmit.js +1 -1
- package/dist/Users/jonathanburger/remotion/packages/promo-pages/dist/template-modal-content.js +1 -1
- package/dist/Users/jonathanburger/remotion/packages/promo-pages/dist/templates.js +3 -1
- package/dist/cn.d.ts +2 -0
- package/dist/cn.js +5 -0
- package/dist/components/3DEngine/ButtonDemo.d.ts +2 -0
- package/dist/components/3DEngine/ButtonDemo.js +43 -0
- package/dist/components/3DEngine/Faces.d.ts +5 -0
- package/dist/components/3DEngine/Faces.js +7 -0
- package/dist/components/3DEngine/Outer.d.ts +8 -0
- package/dist/components/3DEngine/Outer.js +56 -0
- package/dist/components/3DEngine/Switch.d.ts +4 -0
- package/dist/components/3DEngine/Switch.js +4 -0
- package/dist/components/3DEngine/get-child-node-from.d.ts +1 -0
- package/dist/components/3DEngine/get-child-node-from.js +14 -0
- package/dist/components/3DEngine/hover-transforms.d.ts +9 -0
- package/dist/components/3DEngine/hover-transforms.js +177 -0
- package/dist/components/BackButton.d.ts +6 -0
- package/dist/components/BackButton.js +9 -0
- package/dist/components/CommandCopyButton.d.ts +5 -0
- package/dist/components/CommandCopyButton.js +4 -0
- package/dist/components/Homepage.d.ts +6 -0
- package/dist/components/Homepage.js +20 -0
- package/dist/components/ManageTeamMembers.d.ts +2 -0
- package/dist/components/ManageTeamMembers.js +42 -0
- package/dist/components/Spinner.d.ts +3 -0
- package/dist/components/Spinner.js +4 -0
- package/dist/components/TeamPicture.d.ts +1 -0
- package/dist/components/TeamPicture.js +4 -0
- package/dist/components/design.d.ts +1 -0
- package/dist/components/design.js +33 -0
- package/dist/components/experts/ExpertsPage.d.ts +11 -0
- package/dist/components/experts/ExpertsPage.js +50 -0
- package/dist/components/experts/experts-data.d.ts +15 -0
- package/dist/components/experts/experts-data.js +263 -0
- package/dist/components/experts/experts-icons.d.ts +7 -0
- package/dist/components/experts/experts-icons.js +36 -0
- package/dist/components/experts.d.ts +3 -0
- package/dist/components/experts.js +2 -0
- package/dist/components/homepage/BackgroundAnimation.d.ts +2 -0
- package/dist/components/homepage/BackgroundAnimation.js +66 -0
- package/dist/components/homepage/ChooseTemplate.d.ts +2 -0
- package/dist/components/homepage/ChooseTemplate.js +25 -0
- package/dist/components/homepage/CommunityStats.d.ts +3 -0
- package/dist/components/homepage/CommunityStats.js +6 -0
- package/dist/components/homepage/CommunityStatsItems.d.ts +7 -0
- package/dist/components/homepage/CommunityStatsItems.js +58 -0
- package/dist/components/homepage/Demo/Card.d.ts +15 -0
- package/dist/components/homepage/Demo/Card.js +174 -0
- package/dist/components/homepage/Demo/Cards.d.ts +15 -0
- package/dist/components/homepage/Demo/Cards.js +57 -0
- package/dist/components/homepage/Demo/Comp.d.ts +38 -0
- package/dist/components/homepage/Demo/Comp.js +72 -0
- package/dist/components/homepage/Demo/CurrentCountry.d.ts +9 -0
- package/dist/components/homepage/Demo/CurrentCountry.js +48 -0
- package/dist/components/homepage/Demo/DemoError.d.ts +2 -0
- package/dist/components/homepage/Demo/DemoError.js +10 -0
- package/dist/components/homepage/Demo/DemoErrorIcon.d.ts +2 -0
- package/dist/components/homepage/Demo/DemoErrorIcon.js +16 -0
- package/dist/components/homepage/Demo/DemoRender.d.ts +33 -0
- package/dist/components/homepage/Demo/DemoRender.js +107 -0
- package/dist/components/homepage/Demo/DigitWheel.d.ts +9 -0
- package/dist/components/homepage/Demo/DigitWheel.js +94 -0
- package/dist/components/homepage/Demo/DisplayedEmoji.d.ts +5 -0
- package/dist/components/homepage/Demo/DisplayedEmoji.js +59 -0
- package/dist/components/homepage/Demo/DoneCheckmark.d.ts +2 -0
- package/dist/components/homepage/Demo/DoneCheckmark.js +20 -0
- package/dist/components/homepage/Demo/DownloadNudge.d.ts +2 -0
- package/dist/components/homepage/Demo/DownloadNudge.js +27 -0
- package/dist/components/homepage/Demo/DragAndDropNudge.d.ts +3 -0
- package/dist/components/homepage/Demo/DragAndDropNudge.js +26 -0
- package/dist/components/homepage/Demo/EmojiCard.d.ts +10 -0
- package/dist/components/homepage/Demo/EmojiCard.js +120 -0
- package/dist/components/homepage/Demo/Minus.d.ts +5 -0
- package/dist/components/homepage/Demo/Minus.js +11 -0
- package/dist/components/homepage/Demo/PlayPauseButton.d.ts +5 -0
- package/dist/components/homepage/Demo/PlayPauseButton.js +47 -0
- package/dist/components/homepage/Demo/PlayerControls.d.ts +8 -0
- package/dist/components/homepage/Demo/PlayerControls.js +15 -0
- package/dist/components/homepage/Demo/PlayerSeekBar.d.ts +11 -0
- package/dist/components/homepage/Demo/PlayerSeekBar.js +216 -0
- package/dist/components/homepage/Demo/PlayerVolume.d.ts +5 -0
- package/dist/components/homepage/Demo/PlayerVolume.js +53 -0
- package/dist/components/homepage/Demo/Progress.d.ts +4 -0
- package/dist/components/homepage/Demo/Progress.js +14 -0
- package/dist/components/homepage/Demo/Spinner.d.ts +5 -0
- package/dist/components/homepage/Demo/Spinner.js +37 -0
- package/dist/components/homepage/Demo/Switcher.d.ts +6 -0
- package/dist/components/homepage/Demo/Switcher.js +25 -0
- package/dist/components/homepage/Demo/Temperature.d.ts +6 -0
- package/dist/components/homepage/Demo/Temperature.js +21 -0
- package/dist/components/homepage/Demo/TemperatureNumber.d.ts +5 -0
- package/dist/components/homepage/Demo/TemperatureNumber.js +36 -0
- package/dist/components/homepage/Demo/ThemeNudge.d.ts +3 -0
- package/dist/components/homepage/Demo/ThemeNudge.js +35 -0
- package/dist/components/homepage/Demo/TimeDisplay.d.ts +6 -0
- package/dist/components/homepage/Demo/TimeDisplay.js +27 -0
- package/dist/components/homepage/Demo/TrendingRepos.d.ts +6 -0
- package/dist/components/homepage/Demo/TrendingRepos.js +65 -0
- package/dist/components/homepage/Demo/icons.d.ts +10 -0
- package/dist/components/homepage/Demo/icons.js +22 -0
- package/dist/components/homepage/Demo/index.d.ts +2 -0
- package/dist/components/homepage/Demo/index.js +95 -0
- package/dist/components/homepage/Demo/math.d.ts +10 -0
- package/dist/components/homepage/Demo/math.js +29 -0
- package/dist/components/homepage/Demo/types.d.ts +6 -0
- package/dist/components/homepage/Demo/types.js +0 -0
- package/dist/components/homepage/EditorStarterSection.d.ts +3 -0
- package/dist/components/homepage/EditorStarterSection.js +8 -0
- package/dist/components/homepage/EvaluateRemotion.d.ts +3 -0
- package/dist/components/homepage/EvaluateRemotion.js +21 -0
- package/dist/components/homepage/FreePricing.d.ts +4 -0
- package/dist/components/homepage/FreePricing.js +134 -0
- package/dist/components/homepage/GetStartedStrip.d.ts +2 -0
- package/dist/components/homepage/GetStartedStrip.js +14 -0
- package/dist/components/homepage/GitHubButton.d.ts +2 -0
- package/dist/components/homepage/GitHubButton.js +7 -0
- package/dist/components/homepage/IconForTemplate.d.ts +6 -0
- package/dist/components/homepage/IconForTemplate.js +101 -0
- package/dist/components/homepage/IfYouKnowReact.d.ts +3 -0
- package/dist/components/homepage/IfYouKnowReact.js +23 -0
- package/dist/components/homepage/InfoTooltip.d.ts +6 -0
- package/dist/components/homepage/InfoTooltip.js +6 -0
- package/dist/components/homepage/MoreTemplatesButton.d.ts +2 -0
- package/dist/components/homepage/MoreTemplatesButton.js +11 -0
- package/dist/components/homepage/MuxVideo.d.ts +7 -0
- package/dist/components/homepage/MuxVideo.js +45 -0
- package/dist/components/homepage/NewsletterButton.d.ts +2 -0
- package/dist/components/homepage/NewsletterButton.js +38 -0
- package/dist/components/homepage/ParameterizeAndEdit.d.ts +2 -0
- package/dist/components/homepage/ParameterizeAndEdit.js +22 -0
- package/dist/components/homepage/Pricing.d.ts +2 -0
- package/dist/components/homepage/Pricing.js +15 -0
- package/dist/components/homepage/PricingBulletPoint.d.ts +6 -0
- package/dist/components/homepage/PricingBulletPoint.js +19 -0
- package/dist/components/homepage/RealMp4Videos.d.ts +2 -0
- package/dist/components/homepage/RealMp4Videos.js +41 -0
- package/dist/components/homepage/Spacer.d.ts +2 -0
- package/dist/components/homepage/Spacer.js +4 -0
- package/dist/components/homepage/TemplateIcon.d.ts +5 -0
- package/dist/components/homepage/TemplateIcon.js +24 -0
- package/dist/components/homepage/TextInput.d.ts +7 -0
- package/dist/components/homepage/TextInput.js +34 -0
- package/dist/components/homepage/TrustedByBanner.d.ts +2 -0
- package/dist/components/homepage/TrustedByBanner.js +27 -0
- package/dist/components/homepage/VideoApps.d.ts +4 -0
- package/dist/components/homepage/VideoApps.js +72 -0
- package/dist/components/homepage/VideoAppsShowcase.d.ts +3 -0
- package/dist/components/homepage/VideoAppsShowcase.js +139 -0
- package/dist/components/homepage/VideoAppsTitle.d.ts +4 -0
- package/dist/components/homepage/VideoAppsTitle.js +4 -0
- package/dist/components/homepage/VideoPlayerWithControls.d.ts +20 -0
- package/dist/components/homepage/VideoPlayerWithControls.js +105 -0
- package/dist/components/homepage/WriteInReact.d.ts +2 -0
- package/dist/components/homepage/WriteInReact.js +10 -0
- package/dist/components/homepage/YouAreHere.d.ts +2 -0
- package/dist/components/homepage/YouAreHere.js +23 -0
- package/dist/components/homepage/layout/Button.d.ts +22 -0
- package/dist/components/homepage/layout/Button.js +30 -0
- package/dist/components/homepage/layout/colors.d.ts +13 -0
- package/dist/components/homepage/layout/colors.js +14 -0
- package/dist/components/homepage/layout/use-color-mode.d.ts +21 -0
- package/dist/components/homepage/layout/use-color-mode.js +22 -0
- package/dist/components/homepage/layout/use-el-size.d.ts +5 -0
- package/dist/components/homepage/layout/use-el-size.js +40 -0
- package/dist/components/homepage/layout/use-mobile-layout.d.ts +1 -0
- package/dist/components/homepage/layout/use-mobile-layout.js +6 -0
- package/dist/components/icons/blank.d.ts +3 -0
- package/dist/components/icons/blank.js +4 -0
- package/dist/components/icons/brain.d.ts +2 -0
- package/dist/components/icons/brain.js +4 -0
- package/dist/components/icons/clone.d.ts +2 -0
- package/dist/components/icons/clone.js +2 -0
- package/dist/components/icons/code-hike.d.ts +3 -0
- package/dist/components/icons/code-hike.js +4 -0
- package/dist/components/icons/cubes.d.ts +3 -0
- package/dist/components/icons/cubes.js +4 -0
- package/dist/components/icons/editor.d.ts +3 -0
- package/dist/components/icons/editor.js +4 -0
- package/dist/components/icons/js.d.ts +3 -0
- package/dist/components/icons/js.js +4 -0
- package/dist/components/icons/music.d.ts +2 -0
- package/dist/components/icons/music.js +4 -0
- package/dist/components/icons/next.d.ts +4 -0
- package/dist/components/icons/next.js +4 -0
- package/dist/components/icons/overlay.d.ts +3 -0
- package/dist/components/icons/overlay.js +4 -0
- package/dist/components/icons/prompt-to-video.d.ts +2 -0
- package/dist/components/icons/prompt-to-video.js +4 -0
- package/dist/components/icons/recorder.d.ts +3 -0
- package/dist/components/icons/recorder.js +4 -0
- package/dist/components/icons/remix.d.ts +3 -0
- package/dist/components/icons/remix.js +4 -0
- package/dist/components/icons/render-server.d.ts +3 -0
- package/dist/components/icons/render-server.js +4 -0
- package/dist/components/icons/skia.d.ts +3 -0
- package/dist/components/icons/skia.js +4 -0
- package/dist/components/icons/stargazer.d.ts +3 -0
- package/dist/components/icons/stargazer.js +4 -0
- package/dist/components/icons/still.d.ts +3 -0
- package/dist/components/icons/still.js +4 -0
- package/dist/components/icons/tailwind.d.ts +3 -0
- package/dist/components/icons/tailwind.js +4 -0
- package/dist/components/icons/tiktok.d.ts +3 -0
- package/dist/components/icons/tiktok.js +4 -0
- package/dist/components/icons/timeline.d.ts +3 -0
- package/dist/components/icons/timeline.js +4 -0
- package/dist/components/icons/ts.d.ts +3 -0
- package/dist/components/icons/ts.js +4 -0
- package/dist/components/icons/undo.d.ts +3 -0
- package/dist/components/icons/undo.js +2 -0
- package/dist/components/icons/vercel.d.ts +4 -0
- package/dist/components/icons/vercel.js +4 -0
- package/dist/components/icons/waveform.d.ts +3 -0
- package/dist/components/icons/waveform.js +4 -0
- package/dist/components/prompts/CardLikeButton.d.ts +5 -0
- package/dist/components/prompts/CardLikeButton.js +49 -0
- package/dist/components/prompts/ClipboardIcon.d.ts +5 -0
- package/dist/components/prompts/ClipboardIcon.js +4 -0
- package/dist/components/prompts/CopyPromptButton.d.ts +4 -0
- package/dist/components/prompts/CopyPromptButton.js +13 -0
- package/dist/components/prompts/LikeButton.d.ts +5 -0
- package/dist/components/prompts/LikeButton.js +49 -0
- package/dist/components/prompts/MuxPlayer.d.ts +8 -0
- package/dist/components/prompts/MuxPlayer.js +21 -0
- package/dist/components/prompts/NewBackButton.d.ts +5 -0
- package/dist/components/prompts/NewBackButton.js +8 -0
- package/dist/components/prompts/Page.d.ts +8 -0
- package/dist/components/prompts/Page.js +7 -0
- package/dist/components/prompts/PromptsGallery.d.ts +7 -0
- package/dist/components/prompts/PromptsGallery.js +60 -0
- package/dist/components/prompts/PromptsShow.d.ts +5 -0
- package/dist/components/prompts/PromptsShow.js +17 -0
- package/dist/components/prompts/PromptsSubmit.d.ts +2 -0
- package/dist/components/prompts/PromptsSubmit.js +173 -0
- package/dist/components/prompts/config.d.ts +1 -0
- package/dist/components/prompts/config.js +1 -0
- package/dist/components/prompts/prompt-helpers.d.ts +8 -0
- package/dist/components/prompts/prompt-helpers.js +76 -0
- package/dist/components/prompts/prompt-types.d.ts +14 -0
- package/dist/components/prompts/prompt-types.js +0 -0
- package/dist/components/prompts/use-heart-animation.d.ts +5 -0
- package/dist/components/prompts/use-heart-animation.js +29 -0
- package/dist/components/team/TeamCards.d.ts +6 -0
- package/dist/components/team/TeamCards.js +19 -0
- package/dist/components/team/TitleTeamCards.d.ts +2 -0
- package/dist/components/team/TitleTeamCards.js +6 -0
- package/dist/components/team.d.ts +3 -0
- package/dist/components/team.js +14 -0
- package/dist/components/template-modal-content.d.ts +5 -0
- package/dist/components/template-modal-content.js +73 -0
- package/dist/components/templates.d.ts +2 -0
- package/dist/components/templates.js +27 -0
- package/dist/design.js +1 -1
- package/dist/experts/experts-data.js +69 -18
- package/dist/experts.js +70 -19
- package/dist/helpers/mobile-layout.d.ts +1 -0
- package/dist/helpers/mobile-layout.js +6 -0
- package/dist/helpers/use-el-size.d.ts +5 -0
- package/dist/helpers/use-el-size.js +40 -0
- package/dist/homepage/Pricing.js +1 -1
- package/dist/main.d.ts +1 -0
- package/dist/main.js +6 -0
- package/dist/prompts/PromptsGallery.js +1 -1
- package/dist/prompts/PromptsShow.js +1 -1
- package/dist/prompts/PromptsSubmit.js +1 -1
- package/dist/prompts-show.d.ts +1 -0
- package/dist/prompts-show.js +20 -0
- package/dist/prompts-submit.d.ts +1 -0
- package/dist/prompts-submit.js +6 -0
- package/dist/prompts.d.ts +1 -0
- package/dist/prompts.js +6 -0
- package/dist/team.d.ts +1 -0
- package/dist/template-modal-content.js +1 -1
- package/dist/templates.js +3 -1
- package/package.json +13 -13
package/dist/Homepage.js
CHANGED
|
@@ -547,29 +547,80 @@ var experts = [
|
|
|
547
547
|
x: null,
|
|
548
548
|
github: "sambowenhughes",
|
|
549
549
|
linkedin: "in/sambowenhughes/",
|
|
550
|
-
email: "
|
|
551
|
-
videocall: "https://calendly.com/
|
|
550
|
+
email: "sam@reactvideoeditor.com",
|
|
551
|
+
videocall: "https://calendly.com/reactvideoeditor/30min",
|
|
552
552
|
since: new Date("2025-06-03").getTime(),
|
|
553
553
|
description: /* @__PURE__ */ jsxs("div", {
|
|
554
554
|
children: [
|
|
555
|
-
|
|
556
|
-
|
|
557
|
-
|
|
558
|
-
|
|
559
|
-
|
|
560
|
-
|
|
555
|
+
/* @__PURE__ */ jsxs("p", {
|
|
556
|
+
children: [
|
|
557
|
+
"Experienced engineer with 10+ years building advanced software products. Creator of",
|
|
558
|
+
" ",
|
|
559
|
+
/* @__PURE__ */ jsx("a", {
|
|
560
|
+
target: "_blank",
|
|
561
|
+
href: "https://reactvideoeditor.com",
|
|
562
|
+
children: "React Video Editor"
|
|
563
|
+
}),
|
|
564
|
+
"and",
|
|
565
|
+
" ",
|
|
566
|
+
/* @__PURE__ */ jsx("a", {
|
|
567
|
+
target: "_blank",
|
|
568
|
+
href: "https://clippkit.com",
|
|
569
|
+
children: "Clippkit"
|
|
570
|
+
}),
|
|
571
|
+
"."
|
|
572
|
+
]
|
|
561
573
|
}),
|
|
562
|
-
|
|
563
|
-
|
|
564
|
-
|
|
565
|
-
|
|
566
|
-
|
|
567
|
-
|
|
568
|
-
|
|
574
|
+
/* @__PURE__ */ jsxs("p", {
|
|
575
|
+
children: [
|
|
576
|
+
"I work with companies building products with",
|
|
577
|
+
" ",
|
|
578
|
+
/* @__PURE__ */ jsx("strong", {
|
|
579
|
+
children: "Remotion at their core"
|
|
580
|
+
}),
|
|
581
|
+
". Custom video editors, automated video generation tools, and scalable rendering pipelines."
|
|
582
|
+
]
|
|
569
583
|
}),
|
|
570
|
-
"
|
|
571
|
-
|
|
572
|
-
|
|
584
|
+
/* @__PURE__ */ jsxs("ul", {
|
|
585
|
+
children: [
|
|
586
|
+
/* @__PURE__ */ jsxs("li", {
|
|
587
|
+
children: [
|
|
588
|
+
/* @__PURE__ */ jsx("strong", {
|
|
589
|
+
children: "Custom video editors"
|
|
590
|
+
}),
|
|
591
|
+
" built with Remotion"
|
|
592
|
+
]
|
|
593
|
+
}),
|
|
594
|
+
/* @__PURE__ */ jsxs("li", {
|
|
595
|
+
children: [
|
|
596
|
+
/* @__PURE__ */ jsx("strong", {
|
|
597
|
+
children: "Automated video generation"
|
|
598
|
+
}),
|
|
599
|
+
" systems"
|
|
600
|
+
]
|
|
601
|
+
}),
|
|
602
|
+
/* @__PURE__ */ jsxs("li", {
|
|
603
|
+
children: [
|
|
604
|
+
/* @__PURE__ */ jsx("strong", {
|
|
605
|
+
children: "Rendering infrastructure"
|
|
606
|
+
}),
|
|
607
|
+
" and media pipelines"
|
|
608
|
+
]
|
|
609
|
+
}),
|
|
610
|
+
/* @__PURE__ */ jsx("li", {
|
|
611
|
+
children: /* @__PURE__ */ jsx("strong", {
|
|
612
|
+
children: "UI/UX and full-stack product development"
|
|
613
|
+
})
|
|
614
|
+
})
|
|
615
|
+
]
|
|
616
|
+
}),
|
|
617
|
+
/* @__PURE__ */ jsxs("p", {
|
|
618
|
+
children: [
|
|
619
|
+
"If you",
|
|
620
|
+
"'",
|
|
621
|
+
"re building software around video, or just need a reliable engineering partner who moves fast and builds things right, feel free to reach out."
|
|
622
|
+
]
|
|
623
|
+
})
|
|
573
624
|
]
|
|
574
625
|
})
|
|
575
626
|
},
|
|
@@ -952,7 +1003,7 @@ var useIsPlayer = () => {
|
|
|
952
1003
|
function truthy(value) {
|
|
953
1004
|
return Boolean(value);
|
|
954
1005
|
}
|
|
955
|
-
var VERSION = "4.0.
|
|
1006
|
+
var VERSION = "4.0.435";
|
|
956
1007
|
var checkMultipleRemotionVersions = () => {
|
|
957
1008
|
if (typeof globalThis === "undefined") {
|
|
958
1009
|
return;
|
|
@@ -23181,7 +23232,7 @@ var GitHubStars = () => {
|
|
|
23181
23232
|
width: "45px"
|
|
23182
23233
|
}),
|
|
23183
23234
|
/* @__PURE__ */ jsx50(StatItemContent, {
|
|
23184
|
-
content: "
|
|
23235
|
+
content: "39k",
|
|
23185
23236
|
width: "80px",
|
|
23186
23237
|
fontSize: "2.5rem",
|
|
23187
23238
|
fontWeight: "bold"
|
|
@@ -26553,7 +26604,7 @@ var PlayerUI = ({
|
|
|
26553
26604
|
throw new TypeError(`setVolume() got a number that is NaN. Volume must be between 0 and 1.`);
|
|
26554
26605
|
}
|
|
26555
26606
|
if (vol < 0 || vol > 1) {
|
|
26556
|
-
throw new TypeError(`setVolume() got a number that is out of range. Must be between 0 and 1, got ${
|
|
26607
|
+
throw new TypeError(`setVolume() got a number that is out of range. Must be between 0 and 1, got ${vol}`);
|
|
26557
26608
|
}
|
|
26558
26609
|
setMediaVolume(vol);
|
|
26559
26610
|
},
|
|
@@ -34721,7 +34772,7 @@ import {
|
|
|
34721
34772
|
import { BufferTarget, StreamTarget } from "mediabunny";
|
|
34722
34773
|
|
|
34723
34774
|
// ../core/dist/esm/version.mjs
|
|
34724
|
-
var VERSION2 = "4.0.
|
|
34775
|
+
var VERSION2 = "4.0.435";
|
|
34725
34776
|
|
|
34726
34777
|
// ../web-renderer/dist/esm/index.mjs
|
|
34727
34778
|
import { AudioSample, VideoSample } from "mediabunny";
|
|
@@ -38406,6 +38457,7 @@ var createWebFsTarget = async () => {
|
|
|
38406
38457
|
const close = () => writable.close();
|
|
38407
38458
|
return { stream, getBlob, close };
|
|
38408
38459
|
};
|
|
38460
|
+
var MAX_RECENT_FRAME_TIMINGS = 150;
|
|
38409
38461
|
var internalRenderMediaOnWeb = async ({
|
|
38410
38462
|
composition,
|
|
38411
38463
|
inputProps,
|
|
@@ -38541,6 +38593,10 @@ var internalRenderMediaOnWeb = async ({
|
|
|
38541
38593
|
}) : null, 0);
|
|
38542
38594
|
const totalFrames = realFrameRange[1] - realFrameRange[0] + 1;
|
|
38543
38595
|
const durationInSeconds = totalFrames / resolved.fps;
|
|
38596
|
+
const renderStart = Date.now();
|
|
38597
|
+
let doneIn = null;
|
|
38598
|
+
let renderEstimatedTime = 0;
|
|
38599
|
+
const recentFrameTimings = [];
|
|
38544
38600
|
if (videoSampleSource) {
|
|
38545
38601
|
outputWithCleanup.output.addVideoTrack(videoSampleSource.videoSampleSource, {
|
|
38546
38602
|
maximumPacketCount: Math.ceil(totalFrames * 1.33)
|
|
@@ -38560,10 +38616,21 @@ var internalRenderMediaOnWeb = async ({
|
|
|
38560
38616
|
if (signal?.aborted) {
|
|
38561
38617
|
throw new Error("renderMediaOnWeb() was cancelled");
|
|
38562
38618
|
}
|
|
38619
|
+
let timeOfLastFrame = Date.now();
|
|
38563
38620
|
const progress = {
|
|
38564
38621
|
renderedFrames: 0,
|
|
38565
38622
|
encodedFrames: 0
|
|
38566
38623
|
};
|
|
38624
|
+
const getProgressPayload = () => {
|
|
38625
|
+
const overallProgress = Math.round((70 * progress.renderedFrames + 30 * progress.encodedFrames) / totalFrames) / 100;
|
|
38626
|
+
return {
|
|
38627
|
+
renderedFrames: progress.renderedFrames,
|
|
38628
|
+
encodedFrames: progress.encodedFrames,
|
|
38629
|
+
doneIn,
|
|
38630
|
+
renderEstimatedTime,
|
|
38631
|
+
progress: overallProgress
|
|
38632
|
+
};
|
|
38633
|
+
};
|
|
38567
38634
|
for (let frame = realFrameRange[0];frame <= realFrameRange[1]; frame++) {
|
|
38568
38635
|
if (signal?.aborted) {
|
|
38569
38636
|
throw new Error("renderMediaOnWeb() was cancelled");
|
|
@@ -38617,8 +38684,19 @@ var internalRenderMediaOnWeb = async ({
|
|
|
38617
38684
|
});
|
|
38618
38685
|
}
|
|
38619
38686
|
}
|
|
38687
|
+
const now = Date.now();
|
|
38688
|
+
const timeToRenderInMilliseconds = now - timeOfLastFrame;
|
|
38689
|
+
timeOfLastFrame = now;
|
|
38620
38690
|
progress.renderedFrames++;
|
|
38621
|
-
|
|
38691
|
+
recentFrameTimings.push(timeToRenderInMilliseconds);
|
|
38692
|
+
if (recentFrameTimings.length > MAX_RECENT_FRAME_TIMINGS) {
|
|
38693
|
+
recentFrameTimings.shift();
|
|
38694
|
+
}
|
|
38695
|
+
const recentTimingsSum = recentFrameTimings.reduce((sum, time) => sum + time, 0);
|
|
38696
|
+
const newAverage = recentTimingsSum / recentFrameTimings.length;
|
|
38697
|
+
const remainingFrames = totalFrames - progress.renderedFrames;
|
|
38698
|
+
renderEstimatedTime = Math.round(remainingFrames * newAverage);
|
|
38699
|
+
throttledOnProgress?.(getProgressPayload());
|
|
38622
38700
|
const audioCombineStart = performance.now();
|
|
38623
38701
|
const assets = collectAssets.current.collectAssets();
|
|
38624
38702
|
if (onArtifact) {
|
|
@@ -38645,12 +38723,15 @@ var internalRenderMediaOnWeb = async ({
|
|
|
38645
38723
|
await Promise.all(encodingPromises);
|
|
38646
38724
|
internalState.addAddSampleTime(performance.now() - addSampleStart);
|
|
38647
38725
|
progress.encodedFrames++;
|
|
38648
|
-
|
|
38726
|
+
if (progress.encodedFrames === totalFrames) {
|
|
38727
|
+
doneIn = Date.now() - renderStart;
|
|
38728
|
+
}
|
|
38729
|
+
throttledOnProgress?.(getProgressPayload());
|
|
38649
38730
|
if (signal?.aborted) {
|
|
38650
38731
|
throw new Error("renderMediaOnWeb() was cancelled");
|
|
38651
38732
|
}
|
|
38652
38733
|
}
|
|
38653
|
-
onProgress?.(
|
|
38734
|
+
onProgress?.(getProgressPayload());
|
|
38654
38735
|
videoSampleSource?.videoSampleSource.close();
|
|
38655
38736
|
audioSampleSource?.audioSampleSource.close();
|
|
38656
38737
|
await outputWithCleanup.output.finalize();
|
|
@@ -38977,10 +39058,10 @@ var RenderButton = ({ renderData, onError, playerRef }) => {
|
|
|
38977
39058
|
muted: typeof AudioEncoder === "undefined",
|
|
38978
39059
|
scale: 1,
|
|
38979
39060
|
inputProps,
|
|
38980
|
-
onProgress: ({
|
|
39061
|
+
onProgress: ({ progress }) => {
|
|
38981
39062
|
setState({
|
|
38982
39063
|
type: "progress",
|
|
38983
|
-
progress
|
|
39064
|
+
progress
|
|
38984
39065
|
});
|
|
38985
39066
|
}
|
|
38986
39067
|
});
|
|
@@ -41042,6 +41123,7 @@ var listOfRemotionPackages = [
|
|
|
41042
41123
|
"@remotion/astro-example",
|
|
41043
41124
|
"@remotion/babel-loader",
|
|
41044
41125
|
"@remotion/bugs",
|
|
41126
|
+
"@remotion/brand",
|
|
41045
41127
|
"@remotion/bundler",
|
|
41046
41128
|
"@remotion/cli",
|
|
41047
41129
|
"@remotion/cloudrun",
|
|
@@ -41120,6 +41202,7 @@ var listOfRemotionPackages = [
|
|
|
41120
41202
|
"@remotion/web-renderer",
|
|
41121
41203
|
"@remotion/design",
|
|
41122
41204
|
"@remotion/light-leaks",
|
|
41205
|
+
"@remotion/starburst",
|
|
41123
41206
|
"@remotion/vercel",
|
|
41124
41207
|
"@remotion/sfx"
|
|
41125
41208
|
];
|
|
@@ -42334,7 +42417,7 @@ var GithubButton = () => {
|
|
|
42334
42417
|
" ",
|
|
42335
42418
|
/* @__PURE__ */ jsx161("div", {
|
|
42336
42419
|
className: "text-xs inline-block ml-2 leading-none mt-[3px] self-center",
|
|
42337
|
-
children: "
|
|
42420
|
+
children: "39k"
|
|
42338
42421
|
})
|
|
42339
42422
|
]
|
|
42340
42423
|
});
|
|
@@ -547,29 +547,80 @@ var experts = [
|
|
|
547
547
|
x: null,
|
|
548
548
|
github: "sambowenhughes",
|
|
549
549
|
linkedin: "in/sambowenhughes/",
|
|
550
|
-
email: "
|
|
551
|
-
videocall: "https://calendly.com/
|
|
550
|
+
email: "sam@reactvideoeditor.com",
|
|
551
|
+
videocall: "https://calendly.com/reactvideoeditor/30min",
|
|
552
552
|
since: new Date("2025-06-03").getTime(),
|
|
553
553
|
description: /* @__PURE__ */ jsxs("div", {
|
|
554
554
|
children: [
|
|
555
|
-
|
|
556
|
-
|
|
557
|
-
|
|
558
|
-
|
|
559
|
-
|
|
560
|
-
|
|
555
|
+
/* @__PURE__ */ jsxs("p", {
|
|
556
|
+
children: [
|
|
557
|
+
"Experienced engineer with 10+ years building advanced software products. Creator of",
|
|
558
|
+
" ",
|
|
559
|
+
/* @__PURE__ */ jsx("a", {
|
|
560
|
+
target: "_blank",
|
|
561
|
+
href: "https://reactvideoeditor.com",
|
|
562
|
+
children: "React Video Editor"
|
|
563
|
+
}),
|
|
564
|
+
"and",
|
|
565
|
+
" ",
|
|
566
|
+
/* @__PURE__ */ jsx("a", {
|
|
567
|
+
target: "_blank",
|
|
568
|
+
href: "https://clippkit.com",
|
|
569
|
+
children: "Clippkit"
|
|
570
|
+
}),
|
|
571
|
+
"."
|
|
572
|
+
]
|
|
561
573
|
}),
|
|
562
|
-
|
|
563
|
-
|
|
564
|
-
|
|
565
|
-
|
|
566
|
-
|
|
567
|
-
|
|
568
|
-
|
|
574
|
+
/* @__PURE__ */ jsxs("p", {
|
|
575
|
+
children: [
|
|
576
|
+
"I work with companies building products with",
|
|
577
|
+
" ",
|
|
578
|
+
/* @__PURE__ */ jsx("strong", {
|
|
579
|
+
children: "Remotion at their core"
|
|
580
|
+
}),
|
|
581
|
+
". Custom video editors, automated video generation tools, and scalable rendering pipelines."
|
|
582
|
+
]
|
|
569
583
|
}),
|
|
570
|
-
"
|
|
571
|
-
|
|
572
|
-
|
|
584
|
+
/* @__PURE__ */ jsxs("ul", {
|
|
585
|
+
children: [
|
|
586
|
+
/* @__PURE__ */ jsxs("li", {
|
|
587
|
+
children: [
|
|
588
|
+
/* @__PURE__ */ jsx("strong", {
|
|
589
|
+
children: "Custom video editors"
|
|
590
|
+
}),
|
|
591
|
+
" built with Remotion"
|
|
592
|
+
]
|
|
593
|
+
}),
|
|
594
|
+
/* @__PURE__ */ jsxs("li", {
|
|
595
|
+
children: [
|
|
596
|
+
/* @__PURE__ */ jsx("strong", {
|
|
597
|
+
children: "Automated video generation"
|
|
598
|
+
}),
|
|
599
|
+
" systems"
|
|
600
|
+
]
|
|
601
|
+
}),
|
|
602
|
+
/* @__PURE__ */ jsxs("li", {
|
|
603
|
+
children: [
|
|
604
|
+
/* @__PURE__ */ jsx("strong", {
|
|
605
|
+
children: "Rendering infrastructure"
|
|
606
|
+
}),
|
|
607
|
+
" and media pipelines"
|
|
608
|
+
]
|
|
609
|
+
}),
|
|
610
|
+
/* @__PURE__ */ jsx("li", {
|
|
611
|
+
children: /* @__PURE__ */ jsx("strong", {
|
|
612
|
+
children: "UI/UX and full-stack product development"
|
|
613
|
+
})
|
|
614
|
+
})
|
|
615
|
+
]
|
|
616
|
+
}),
|
|
617
|
+
/* @__PURE__ */ jsxs("p", {
|
|
618
|
+
children: [
|
|
619
|
+
"If you",
|
|
620
|
+
"'",
|
|
621
|
+
"re building software around video, or just need a reliable engineering partner who moves fast and builds things right, feel free to reach out."
|
|
622
|
+
]
|
|
623
|
+
})
|
|
573
624
|
]
|
|
574
625
|
})
|
|
575
626
|
},
|
|
@@ -952,7 +1003,7 @@ var useIsPlayer = () => {
|
|
|
952
1003
|
function truthy(value) {
|
|
953
1004
|
return Boolean(value);
|
|
954
1005
|
}
|
|
955
|
-
var VERSION = "4.0.
|
|
1006
|
+
var VERSION = "4.0.435";
|
|
956
1007
|
var checkMultipleRemotionVersions = () => {
|
|
957
1008
|
if (typeof globalThis === "undefined") {
|
|
958
1009
|
return;
|
|
@@ -23181,7 +23232,7 @@ var GitHubStars = () => {
|
|
|
23181
23232
|
width: "45px"
|
|
23182
23233
|
}),
|
|
23183
23234
|
/* @__PURE__ */ jsx50(StatItemContent, {
|
|
23184
|
-
content: "
|
|
23235
|
+
content: "39k",
|
|
23185
23236
|
width: "80px",
|
|
23186
23237
|
fontSize: "2.5rem",
|
|
23187
23238
|
fontWeight: "bold"
|
|
@@ -26553,7 +26604,7 @@ var PlayerUI = ({
|
|
|
26553
26604
|
throw new TypeError(`setVolume() got a number that is NaN. Volume must be between 0 and 1.`);
|
|
26554
26605
|
}
|
|
26555
26606
|
if (vol < 0 || vol > 1) {
|
|
26556
|
-
throw new TypeError(`setVolume() got a number that is out of range. Must be between 0 and 1, got ${
|
|
26607
|
+
throw new TypeError(`setVolume() got a number that is out of range. Must be between 0 and 1, got ${vol}`);
|
|
26557
26608
|
}
|
|
26558
26609
|
setMediaVolume(vol);
|
|
26559
26610
|
},
|
|
@@ -34721,7 +34772,7 @@ import {
|
|
|
34721
34772
|
import { BufferTarget, StreamTarget } from "mediabunny";
|
|
34722
34773
|
|
|
34723
34774
|
// ../core/dist/esm/version.mjs
|
|
34724
|
-
var VERSION2 = "4.0.
|
|
34775
|
+
var VERSION2 = "4.0.435";
|
|
34725
34776
|
|
|
34726
34777
|
// ../web-renderer/dist/esm/index.mjs
|
|
34727
34778
|
import { AudioSample, VideoSample } from "mediabunny";
|
|
@@ -38406,6 +38457,7 @@ var createWebFsTarget = async () => {
|
|
|
38406
38457
|
const close = () => writable.close();
|
|
38407
38458
|
return { stream, getBlob, close };
|
|
38408
38459
|
};
|
|
38460
|
+
var MAX_RECENT_FRAME_TIMINGS = 150;
|
|
38409
38461
|
var internalRenderMediaOnWeb = async ({
|
|
38410
38462
|
composition,
|
|
38411
38463
|
inputProps,
|
|
@@ -38541,6 +38593,10 @@ var internalRenderMediaOnWeb = async ({
|
|
|
38541
38593
|
}) : null, 0);
|
|
38542
38594
|
const totalFrames = realFrameRange[1] - realFrameRange[0] + 1;
|
|
38543
38595
|
const durationInSeconds = totalFrames / resolved.fps;
|
|
38596
|
+
const renderStart = Date.now();
|
|
38597
|
+
let doneIn = null;
|
|
38598
|
+
let renderEstimatedTime = 0;
|
|
38599
|
+
const recentFrameTimings = [];
|
|
38544
38600
|
if (videoSampleSource) {
|
|
38545
38601
|
outputWithCleanup.output.addVideoTrack(videoSampleSource.videoSampleSource, {
|
|
38546
38602
|
maximumPacketCount: Math.ceil(totalFrames * 1.33)
|
|
@@ -38560,10 +38616,21 @@ var internalRenderMediaOnWeb = async ({
|
|
|
38560
38616
|
if (signal?.aborted) {
|
|
38561
38617
|
throw new Error("renderMediaOnWeb() was cancelled");
|
|
38562
38618
|
}
|
|
38619
|
+
let timeOfLastFrame = Date.now();
|
|
38563
38620
|
const progress = {
|
|
38564
38621
|
renderedFrames: 0,
|
|
38565
38622
|
encodedFrames: 0
|
|
38566
38623
|
};
|
|
38624
|
+
const getProgressPayload = () => {
|
|
38625
|
+
const overallProgress = Math.round((70 * progress.renderedFrames + 30 * progress.encodedFrames) / totalFrames) / 100;
|
|
38626
|
+
return {
|
|
38627
|
+
renderedFrames: progress.renderedFrames,
|
|
38628
|
+
encodedFrames: progress.encodedFrames,
|
|
38629
|
+
doneIn,
|
|
38630
|
+
renderEstimatedTime,
|
|
38631
|
+
progress: overallProgress
|
|
38632
|
+
};
|
|
38633
|
+
};
|
|
38567
38634
|
for (let frame = realFrameRange[0];frame <= realFrameRange[1]; frame++) {
|
|
38568
38635
|
if (signal?.aborted) {
|
|
38569
38636
|
throw new Error("renderMediaOnWeb() was cancelled");
|
|
@@ -38617,8 +38684,19 @@ var internalRenderMediaOnWeb = async ({
|
|
|
38617
38684
|
});
|
|
38618
38685
|
}
|
|
38619
38686
|
}
|
|
38687
|
+
const now = Date.now();
|
|
38688
|
+
const timeToRenderInMilliseconds = now - timeOfLastFrame;
|
|
38689
|
+
timeOfLastFrame = now;
|
|
38620
38690
|
progress.renderedFrames++;
|
|
38621
|
-
|
|
38691
|
+
recentFrameTimings.push(timeToRenderInMilliseconds);
|
|
38692
|
+
if (recentFrameTimings.length > MAX_RECENT_FRAME_TIMINGS) {
|
|
38693
|
+
recentFrameTimings.shift();
|
|
38694
|
+
}
|
|
38695
|
+
const recentTimingsSum = recentFrameTimings.reduce((sum, time) => sum + time, 0);
|
|
38696
|
+
const newAverage = recentTimingsSum / recentFrameTimings.length;
|
|
38697
|
+
const remainingFrames = totalFrames - progress.renderedFrames;
|
|
38698
|
+
renderEstimatedTime = Math.round(remainingFrames * newAverage);
|
|
38699
|
+
throttledOnProgress?.(getProgressPayload());
|
|
38622
38700
|
const audioCombineStart = performance.now();
|
|
38623
38701
|
const assets = collectAssets.current.collectAssets();
|
|
38624
38702
|
if (onArtifact) {
|
|
@@ -38645,12 +38723,15 @@ var internalRenderMediaOnWeb = async ({
|
|
|
38645
38723
|
await Promise.all(encodingPromises);
|
|
38646
38724
|
internalState.addAddSampleTime(performance.now() - addSampleStart);
|
|
38647
38725
|
progress.encodedFrames++;
|
|
38648
|
-
|
|
38726
|
+
if (progress.encodedFrames === totalFrames) {
|
|
38727
|
+
doneIn = Date.now() - renderStart;
|
|
38728
|
+
}
|
|
38729
|
+
throttledOnProgress?.(getProgressPayload());
|
|
38649
38730
|
if (signal?.aborted) {
|
|
38650
38731
|
throw new Error("renderMediaOnWeb() was cancelled");
|
|
38651
38732
|
}
|
|
38652
38733
|
}
|
|
38653
|
-
onProgress?.(
|
|
38734
|
+
onProgress?.(getProgressPayload());
|
|
38654
38735
|
videoSampleSource?.videoSampleSource.close();
|
|
38655
38736
|
audioSampleSource?.audioSampleSource.close();
|
|
38656
38737
|
await outputWithCleanup.output.finalize();
|
|
@@ -38977,10 +39058,10 @@ var RenderButton = ({ renderData, onError, playerRef }) => {
|
|
|
38977
39058
|
muted: typeof AudioEncoder === "undefined",
|
|
38978
39059
|
scale: 1,
|
|
38979
39060
|
inputProps,
|
|
38980
|
-
onProgress: ({
|
|
39061
|
+
onProgress: ({ progress }) => {
|
|
38981
39062
|
setState({
|
|
38982
39063
|
type: "progress",
|
|
38983
|
-
progress
|
|
39064
|
+
progress
|
|
38984
39065
|
});
|
|
38985
39066
|
}
|
|
38986
39067
|
});
|
|
@@ -41042,6 +41123,7 @@ var listOfRemotionPackages = [
|
|
|
41042
41123
|
"@remotion/astro-example",
|
|
41043
41124
|
"@remotion/babel-loader",
|
|
41044
41125
|
"@remotion/bugs",
|
|
41126
|
+
"@remotion/brand",
|
|
41045
41127
|
"@remotion/bundler",
|
|
41046
41128
|
"@remotion/cli",
|
|
41047
41129
|
"@remotion/cloudrun",
|
|
@@ -41120,6 +41202,7 @@ var listOfRemotionPackages = [
|
|
|
41120
41202
|
"@remotion/web-renderer",
|
|
41121
41203
|
"@remotion/design",
|
|
41122
41204
|
"@remotion/light-leaks",
|
|
41205
|
+
"@remotion/starburst",
|
|
41123
41206
|
"@remotion/vercel",
|
|
41124
41207
|
"@remotion/sfx"
|
|
41125
41208
|
];
|
|
@@ -42334,7 +42417,7 @@ var GithubButton = () => {
|
|
|
42334
42417
|
" ",
|
|
42335
42418
|
/* @__PURE__ */ jsx161("div", {
|
|
42336
42419
|
className: "text-xs inline-block ml-2 leading-none mt-[3px] self-center",
|
|
42337
|
-
children: "
|
|
42420
|
+
children: "39k"
|
|
42338
42421
|
})
|
|
42339
42422
|
]
|
|
42340
42423
|
});
|
|
@@ -5977,7 +5977,7 @@ var useIsPlayer = () => {
|
|
|
5977
5977
|
function truthy2(value) {
|
|
5978
5978
|
return Boolean(value);
|
|
5979
5979
|
}
|
|
5980
|
-
var VERSION = "4.0.
|
|
5980
|
+
var VERSION = "4.0.435";
|
|
5981
5981
|
var checkMultipleRemotionVersions = () => {
|
|
5982
5982
|
if (typeof globalThis === "undefined") {
|
|
5983
5983
|
return;
|
package/dist/Users/jonathanburger/remotion/packages/promo-pages/dist/experts/experts-data.js
CHANGED
|
@@ -547,29 +547,80 @@ var experts = [
|
|
|
547
547
|
x: null,
|
|
548
548
|
github: "sambowenhughes",
|
|
549
549
|
linkedin: "in/sambowenhughes/",
|
|
550
|
-
email: "
|
|
551
|
-
videocall: "https://calendly.com/
|
|
550
|
+
email: "sam@reactvideoeditor.com",
|
|
551
|
+
videocall: "https://calendly.com/reactvideoeditor/30min",
|
|
552
552
|
since: new Date("2025-06-03").getTime(),
|
|
553
553
|
description: /* @__PURE__ */ jsxs("div", {
|
|
554
554
|
children: [
|
|
555
|
-
|
|
556
|
-
|
|
557
|
-
|
|
558
|
-
|
|
559
|
-
|
|
560
|
-
|
|
555
|
+
/* @__PURE__ */ jsxs("p", {
|
|
556
|
+
children: [
|
|
557
|
+
"Experienced engineer with 10+ years building advanced software products. Creator of",
|
|
558
|
+
" ",
|
|
559
|
+
/* @__PURE__ */ jsx("a", {
|
|
560
|
+
target: "_blank",
|
|
561
|
+
href: "https://reactvideoeditor.com",
|
|
562
|
+
children: "React Video Editor"
|
|
563
|
+
}),
|
|
564
|
+
"and",
|
|
565
|
+
" ",
|
|
566
|
+
/* @__PURE__ */ jsx("a", {
|
|
567
|
+
target: "_blank",
|
|
568
|
+
href: "https://clippkit.com",
|
|
569
|
+
children: "Clippkit"
|
|
570
|
+
}),
|
|
571
|
+
"."
|
|
572
|
+
]
|
|
561
573
|
}),
|
|
562
|
-
|
|
563
|
-
|
|
564
|
-
|
|
565
|
-
|
|
566
|
-
|
|
567
|
-
|
|
568
|
-
|
|
574
|
+
/* @__PURE__ */ jsxs("p", {
|
|
575
|
+
children: [
|
|
576
|
+
"I work with companies building products with",
|
|
577
|
+
" ",
|
|
578
|
+
/* @__PURE__ */ jsx("strong", {
|
|
579
|
+
children: "Remotion at their core"
|
|
580
|
+
}),
|
|
581
|
+
". Custom video editors, automated video generation tools, and scalable rendering pipelines."
|
|
582
|
+
]
|
|
569
583
|
}),
|
|
570
|
-
"
|
|
571
|
-
|
|
572
|
-
|
|
584
|
+
/* @__PURE__ */ jsxs("ul", {
|
|
585
|
+
children: [
|
|
586
|
+
/* @__PURE__ */ jsxs("li", {
|
|
587
|
+
children: [
|
|
588
|
+
/* @__PURE__ */ jsx("strong", {
|
|
589
|
+
children: "Custom video editors"
|
|
590
|
+
}),
|
|
591
|
+
" built with Remotion"
|
|
592
|
+
]
|
|
593
|
+
}),
|
|
594
|
+
/* @__PURE__ */ jsxs("li", {
|
|
595
|
+
children: [
|
|
596
|
+
/* @__PURE__ */ jsx("strong", {
|
|
597
|
+
children: "Automated video generation"
|
|
598
|
+
}),
|
|
599
|
+
" systems"
|
|
600
|
+
]
|
|
601
|
+
}),
|
|
602
|
+
/* @__PURE__ */ jsxs("li", {
|
|
603
|
+
children: [
|
|
604
|
+
/* @__PURE__ */ jsx("strong", {
|
|
605
|
+
children: "Rendering infrastructure"
|
|
606
|
+
}),
|
|
607
|
+
" and media pipelines"
|
|
608
|
+
]
|
|
609
|
+
}),
|
|
610
|
+
/* @__PURE__ */ jsx("li", {
|
|
611
|
+
children: /* @__PURE__ */ jsx("strong", {
|
|
612
|
+
children: "UI/UX and full-stack product development"
|
|
613
|
+
})
|
|
614
|
+
})
|
|
615
|
+
]
|
|
616
|
+
}),
|
|
617
|
+
/* @__PURE__ */ jsxs("p", {
|
|
618
|
+
children: [
|
|
619
|
+
"If you",
|
|
620
|
+
"'",
|
|
621
|
+
"re building software around video, or just need a reliable engineering partner who moves fast and builds things right, feel free to reach out."
|
|
622
|
+
]
|
|
623
|
+
})
|
|
573
624
|
]
|
|
574
625
|
})
|
|
575
626
|
},
|