diff --git a/src/netlify_configs/fakeyou.com/_redirects b/src/netlify_configs/fakeyou.com/_redirects
index 5463d6f42a..defe252af4 100644
--- a/src/netlify_configs/fakeyou.com/_redirects
+++ b/src/netlify_configs/fakeyou.com/_redirects
@@ -35,6 +35,7 @@
/contribute* /website/index.html 200
/creator-onboarding* /website/index.html 200
/dashboard* /website/index.html 200
+/dev* /website/index.html 200
/dev-media-input /website/index.html 200
/edit-cover-image* /website/index.html 200
/engine-compositor* /website/index.html 200
diff --git a/src/website/packages/fakeyou.com/public/images/ai-tools/ca_video_poster.jpg b/src/website/packages/fakeyou.com/public/images/ai-tools/ca_video_poster.jpg
new file mode 100644
index 0000000000..288a75ade6
Binary files /dev/null and b/src/website/packages/fakeyou.com/public/images/ai-tools/ca_video_poster.jpg differ
diff --git a/src/website/packages/fakeyou.com/public/images/ai-tools/vcomp_video_poster.jpg b/src/website/packages/fakeyou.com/public/images/ai-tools/vcomp_video_poster.jpg
new file mode 100644
index 0000000000..7a8a8937a5
Binary files /dev/null and b/src/website/packages/fakeyou.com/public/images/ai-tools/vcomp_video_poster.jpg differ
diff --git a/src/website/packages/fakeyou.com/public/images/ai-tools/vcomp_video_poster_2.jpg b/src/website/packages/fakeyou.com/public/images/ai-tools/vcomp_video_poster_2.jpg
new file mode 100644
index 0000000000..56463dd892
Binary files /dev/null and b/src/website/packages/fakeyou.com/public/images/ai-tools/vcomp_video_poster_2.jpg differ
diff --git a/src/website/packages/fakeyou.com/public/videos/ai-tools/ca_video.mp4 b/src/website/packages/fakeyou.com/public/videos/ai-tools/ca_video.mp4
new file mode 100644
index 0000000000..5f5c4451c5
Binary files /dev/null and b/src/website/packages/fakeyou.com/public/videos/ai-tools/ca_video.mp4 differ
diff --git a/src/website/packages/fakeyou.com/public/videos/ai-tools/vcomp_video.mp4 b/src/website/packages/fakeyou.com/public/videos/ai-tools/vcomp_video.mp4
new file mode 100644
index 0000000000..2348c7edc8
Binary files /dev/null and b/src/website/packages/fakeyou.com/public/videos/ai-tools/vcomp_video.mp4 differ
diff --git a/src/website/packages/fakeyou.com/public/videos/ai-tools/vcomp_video_2.mp4 b/src/website/packages/fakeyou.com/public/videos/ai-tools/vcomp_video_2.mp4
new file mode 100644
index 0000000000..72200255c9
Binary files /dev/null and b/src/website/packages/fakeyou.com/public/videos/ai-tools/vcomp_video_2.mp4 differ
diff --git a/src/website/packages/fakeyou.com/src/components/marketing/AITools/AITools.tsx b/src/website/packages/fakeyou.com/src/components/marketing/AITools/AITools.tsx
index 0c8cdc97ea..43d9ac4535 100644
--- a/src/website/packages/fakeyou.com/src/components/marketing/AITools/AITools.tsx
+++ b/src/website/packages/fakeyou.com/src/components/marketing/AITools/AITools.tsx
@@ -23,6 +23,7 @@ export default function AITools() {
icon: any;
label: string;
};
+ videoPosition?: "top" | "center";
};
let items: Item[] = [
@@ -107,6 +108,37 @@ export default function AITools() {
});
}
+ // Test Page
+ if (currentPath.includes("/dev/tools")) {
+ items.push(
+ {
+ to: "/",
+ title: "Video Compositor",
+ text: "Compose videos and images with AI",
+ videoSrc: "/videos/ai-tools/vcomp_video.mp4",
+ videoPosterSrc: "/images/ai-tools/vcomp_video_poster.jpg",
+ imgAlt: "Video Compositor",
+ },
+ {
+ to: "/",
+ title: "Video Compositor",
+ text: "Compose videos and images with AI",
+ videoSrc: "/videos/ai-tools/vcomp_video_2.mp4",
+ videoPosterSrc: "/images/ai-tools/vcomp_video_poster_2.jpg",
+ imgAlt: "Video Compositor",
+ videoPosition: "top",
+ },
+ {
+ to: "/",
+ title: "Webcam Acting",
+ text: "Act as your character through your camera",
+ videoSrc: "/videos/ai-tools/ca_video.mp4",
+ videoPosterSrc: "/images/ai-tools/ca_video_poster.jpg",
+ imgAlt: "Video Compositor",
+ }
+ );
+ }
+
if (currentPath.includes("/tts")) {
items = items.filter(item => item.to !== "/tts");
}
diff --git a/src/website/packages/fakeyou.com/src/components/marketing/AITools/AIToolsRow.tsx b/src/website/packages/fakeyou.com/src/components/marketing/AITools/AIToolsRow.tsx
index a40401514a..9612eadf96 100644
--- a/src/website/packages/fakeyou.com/src/components/marketing/AITools/AIToolsRow.tsx
+++ b/src/website/packages/fakeyou.com/src/components/marketing/AITools/AIToolsRow.tsx
@@ -20,6 +20,7 @@ interface AIToolsItemProps {
videoSrc?: string;
videoPosterSrc?: string;
externalLink?: string;
+ videoPosition?: "top" | "center";
}
export function AIToolsItem({
@@ -32,6 +33,7 @@ export function AIToolsItem({
videoSrc,
videoPosterSrc,
externalLink,
+ videoPosition = "center",
}: AIToolsItemProps) {
const [isPlaying, setIsPlaying] = useState(false);
const [showPoster, setShowPoster] = useState(true);
@@ -158,6 +160,7 @@ export function AIToolsItem({
style={{
borderTopLeftRadius: "0.5rem",
borderTopRightRadius: "0.5rem",
+ objectPosition: videoPosition,
}}
onEnded={handleVideoEnded}
>
diff --git a/src/website/packages/fakeyou.com/src/v2/view/PageContainer.tsx b/src/website/packages/fakeyou.com/src/v2/view/PageContainer.tsx
index b3d929075f..706460e8a9 100644
--- a/src/website/packages/fakeyou.com/src/v2/view/PageContainer.tsx
+++ b/src/website/packages/fakeyou.com/src/v2/view/PageContainer.tsx
@@ -134,6 +134,7 @@ import { UploadNewTtsModelPage } from "./pages/upload/UploadNewTtsModelPage";
import LivePortrait from "./pages/live_portrait/LivePortrait";
import { BetaLipSyncForm } from "./pages/beta_lipsync/BetaLipSyncForm";
import { BetaLipSyncPage } from "./pages/beta_lipsync/BetaLipSyncPage";
+import { ToolsTestPage } from "./pages/tools_test/ToolsTestPage";
interface Props {
sessionWrapper: SessionWrapper;
@@ -1001,6 +1002,11 @@ class PageContainer extends React.Component<
+ {/* test page for tools */}
+
+
+
+
)}
- {canAccessStudio() && (
-
- )}
+
{canAccessStudio() &&
mediaFile?.maybe_scene_source_media_file_token && (