diff --git a/app/pages/PageEnigma/Editor/api_manager.ts b/app/pages/PageEnigma/Editor/api_manager.ts index c2ad93875a..7a372d71c1 100644 --- a/app/pages/PageEnigma/Editor/api_manager.ts +++ b/app/pages/PageEnigma/Editor/api_manager.ts @@ -377,6 +377,7 @@ export class APIManager { use_upscaler: boolean = false, use_strength: number = 1.0, use_lipsync: boolean = false, + use_cinematic: boolean = false, ) { const uuid = uuidv4(); @@ -394,6 +395,7 @@ export class APIManager { use_upscaler: use_upscaler, use_strength: use_strength, use_lipsync: use_lipsync, + use_cinematic: use_cinematic, }; const json_data = JSON.stringify(data); diff --git a/app/pages/PageEnigma/Editor/editor.ts b/app/pages/PageEnigma/Editor/editor.ts index f763d109a6..59bbc3261f 100644 --- a/app/pages/PageEnigma/Editor/editor.ts +++ b/app/pages/PageEnigma/Editor/editor.ts @@ -236,6 +236,7 @@ class Editor { upscale: false, styleStrength: 1.0, lipSync: false, + cinematic: false, }; } getRenderDimensions() { diff --git a/app/pages/PageEnigma/Editor/video_generation.ts b/app/pages/PageEnigma/Editor/video_generation.ts index d6222f6a26..61241ceb7c 100644 --- a/app/pages/PageEnigma/Editor/video_generation.ts +++ b/app/pages/PageEnigma/Editor/video_generation.ts @@ -40,13 +40,17 @@ export class VideoGeneration { this.editor.render_width, this.editor.render_height, ); + this.editor.render_camera.aspect = this.editor.render_width / this.editor.render_height; + this.editor.render_camera.updateProjectionMatrix(); + this.editor.rawRenderer.render( this.editor.activeScene.scene, this.editor.render_camera, ); + const imgData = this.editor.rawRenderer.domElement.toDataURL(); const response = await fetch(imgData); // Fetch the data URL const blob = await response.blob(); // Convert to Blob @@ -273,11 +277,14 @@ export class VideoGeneration { this.editor.generation_options.upscale, this.editor.generation_options.styleStrength, this.editor.generation_options.lipSync, + this.editor.generation_options.cinematic, ) .catch((error) => { // TODO handle stylize error. console.log(error); }); + // Not sure if this is needed will double check TODO: MC + //this.editor.generating_preview = false; // {"success":true,"inference_job_token":"jinf_j3nbqbd15wqxb0xcks13qh3f3bz"} this.editor.updateLoad(100, "Done Check Your Media Tab On Profile."); diff --git a/app/pages/PageEnigma/comps/SidePanelTabs/itemTabs/StylizeTab/GenerateMovieButton.tsx b/app/pages/PageEnigma/comps/SidePanelTabs/itemTabs/StylizeTab/GenerateMovieButton.tsx index 2866cf6311..650dd79808 100644 --- a/app/pages/PageEnigma/comps/SidePanelTabs/itemTabs/StylizeTab/GenerateMovieButton.tsx +++ b/app/pages/PageEnigma/comps/SidePanelTabs/itemTabs/StylizeTab/GenerateMovieButton.tsx @@ -10,6 +10,7 @@ import { faceDetail, styleStrength, lipSync, + cinematic, } from "~/pages/PageEnigma/signals/stylizeTab"; import { useEffect, useRef } from "react"; @@ -55,6 +56,7 @@ export function GenerateMovieButton({ faceDetail.value, styleStrength.value, lipSync.value, + cinematic.value, ); Queue.publish({ queueName: QueueNames.TO_ENGINE, diff --git a/app/pages/PageEnigma/comps/SidePanelTabs/itemTabs/StylizeTab/StyleButtons.tsx b/app/pages/PageEnigma/comps/SidePanelTabs/itemTabs/StylizeTab/StyleButtons.tsx index 3a3304bdd9..d9fa40291a 100644 --- a/app/pages/PageEnigma/comps/SidePanelTabs/itemTabs/StylizeTab/StyleButtons.tsx +++ b/app/pages/PageEnigma/comps/SidePanelTabs/itemTabs/StylizeTab/StyleButtons.tsx @@ -16,6 +16,7 @@ import { styleStrength, upscale, lipSync, + cinematic, } from "~/pages/PageEnigma/signals/stylizeTab"; export function StyleButtons() { @@ -122,12 +123,35 @@ export function StyleButtons() { +