information from video models

This commit is contained in:
Brandon Thomas committed 2026-03-24 01:30:30 -04:00
1 parent 35cee6732e
commit 68e4c5fb9b
6 files changed
+41 -6

No files matched your search

@@ -33,6 +33,7 @@ use mysql_queries::queries::prompts::insert_prompt::{insert_prompt, InsertPrompt
use sqlx::Acquire;
use tokens::tokens::generic_inference_jobs::InferenceJobToken;
use utoipa::ToSchema;
use enums::common::generation::common_aspect_ratio::CommonAspectRatio;
use enums::common::generation::common_generation_mode::CommonGenerationMode;
/// Kling 1.6 Pro Image to Video
@@ -223,7 +224,11 @@ pub async fn generate_kling_1_6_pro_video_handler(
maybe_negative_prompt: None,
maybe_other_args: None,
maybe_generation_mode: Some(CommonGenerationMode::Keyframe), // TODO: This endpoint only supports keyframes for now
maybe_aspect_ratio: None,
maybe_aspect_ratio: request.aspect_ratio.as_ref().map(|ar| match ar {
GenerateKling16ProAspectRatio::Square => CommonAspectRatio::Square,
GenerateKling16ProAspectRatio::WideSixteenNine => CommonAspectRatio::WideSixteenByNine,
GenerateKling16ProAspectRatio::TallNineSixteen => CommonAspectRatio::TallNineBySixteen,
}),
maybe_resolution: None,
maybe_batch_count: None,
maybe_generate_audio: None,
@@ -30,6 +30,7 @@ use mysql_queries::queries::prompts::insert_prompt::{insert_prompt, InsertPrompt
use sqlx::Acquire;
use tokens::tokens::generic_inference_jobs::InferenceJobToken;
use utoipa::ToSchema;
use enums::common::generation::common_aspect_ratio::CommonAspectRatio;
use enums::common::generation::common_generation_mode::CommonGenerationMode;
/// Kling 2.1 Master Image to Video
@@ -210,7 +211,11 @@ pub async fn generate_kling_2_1_master_video_handler(
maybe_negative_prompt: None,
maybe_other_args: None,
maybe_generation_mode: Some(CommonGenerationMode::Keyframe), // TODO: This endpoint only supports keyframes for now
maybe_aspect_ratio: None,
maybe_aspect_ratio: request.aspect_ratio.as_ref().map(|ar| match ar {
GenerateKling21MasterAspectRatio::Square => CommonAspectRatio::Square,
GenerateKling21MasterAspectRatio::WideSixteenNine => CommonAspectRatio::WideSixteenByNine,
GenerateKling21MasterAspectRatio::TallNineSixteen => CommonAspectRatio::TallNineBySixteen,
}),
maybe_resolution: None,
maybe_batch_count: None,
maybe_generate_audio: None,
@@ -35,6 +35,7 @@ use mysql_queries::queries::prompts::insert_prompt::{insert_prompt, InsertPrompt
use sqlx::Acquire;
use tokens::tokens::generic_inference_jobs::InferenceJobToken;
use utoipa::ToSchema;
use enums::common::generation::common_aspect_ratio::CommonAspectRatio;
use enums::common::generation::common_generation_mode::CommonGenerationMode;
/// Kling 2.1 Pro Image to Video
@@ -225,7 +226,11 @@ pub async fn generate_kling_2_1_pro_video_handler(
maybe_negative_prompt: None,
maybe_other_args: None,
maybe_generation_mode: Some(CommonGenerationMode::Keyframe), // TODO: This endpoint only supports keyframes for now
maybe_aspect_ratio: None,
maybe_aspect_ratio: request.aspect_ratio.as_ref().map(|ar| match ar {
GenerateKling21ProAspectRatio::Square => CommonAspectRatio::Square,
GenerateKling21ProAspectRatio::WideSixteenNine => CommonAspectRatio::WideSixteenByNine,
GenerateKling21ProAspectRatio::TallNineSixteen => CommonAspectRatio::TallNineBySixteen,
}),
maybe_resolution: None,
maybe_batch_count: None,
maybe_generate_audio: None,
@@ -20,6 +20,7 @@ use enums::by_table::prompts::prompt_type::PromptType;
use enums::common::generation_provider::GenerationProvider;
use enums::common::generation::common_model_type::CommonModelType;
use enums::common::visibility::Visibility;
use enums::common::generation::common_aspect_ratio::CommonAspectRatio;
use enums::common::generation::common_generation_mode::CommonGenerationMode;
use fal_client::requests::traits::fal_request_cost_calculator_trait::FalRequestCostCalculator;
use fal_client::requests::webhook::video::image::enqueue_seedance_1_lite_image_to_video_webhook::Seedance1LiteDuration;
@@ -240,7 +241,15 @@ pub async fn generate_seedance_1_0_lite_image_to_video_handler(
maybe_negative_prompt: None,
maybe_other_args: None,
maybe_generation_mode: Some(CommonGenerationMode::Keyframe), // TODO: This endpoint only supports keyframes for now
maybe_aspect_ratio: None,
maybe_aspect_ratio: request.aspect_ratio.as_ref().map(|ar| match ar {
GenerateSeedance10LiteAspectRatio::Auto => CommonAspectRatio::Auto,
GenerateSeedance10LiteAspectRatio::TwentyOneByNine => CommonAspectRatio::WideTwentyOneByNine,
GenerateSeedance10LiteAspectRatio::SixteenByNine => CommonAspectRatio::WideSixteenByNine,
GenerateSeedance10LiteAspectRatio::FourByThree => CommonAspectRatio::WideFourByThree,
GenerateSeedance10LiteAspectRatio::Square => CommonAspectRatio::Square,
GenerateSeedance10LiteAspectRatio::ThreeByFour => CommonAspectRatio::TallThreeByFour,
GenerateSeedance10LiteAspectRatio::NineBySixteen => CommonAspectRatio::TallNineBySixteen,
}),
maybe_resolution: None,
maybe_batch_count: None,
maybe_generate_audio: None,
@@ -20,6 +20,7 @@ use enums::by_table::prompts::prompt_type::PromptType;
use enums::common::generation_provider::GenerationProvider;
use enums::common::generation::common_model_type::CommonModelType;
use enums::common::visibility::Visibility;
use enums::common::generation::common_aspect_ratio::CommonAspectRatio;
use enums::common::generation::common_generation_mode::CommonGenerationMode;
use fal_client::requests::traits::fal_request_cost_calculator_trait::FalRequestCostCalculator;
use fal_client::requests::webhook::video::image::enqueue_veo_2_image_to_video_webhook::enqueue_veo_2_image_to_video_webhook;
@@ -221,7 +222,12 @@ pub async fn generate_veo_2_image_to_video_handler(
maybe_negative_prompt: None,
maybe_other_args: None,
maybe_generation_mode: Some(CommonGenerationMode::Keyframe), // TODO: This endpoint only supports keyframes for now
maybe_aspect_ratio: None,
maybe_aspect_ratio: request.aspect_ratio.as_ref().map(|ar| match ar {
GenerateVeo2AspectRatio::Auto => CommonAspectRatio::Auto,
GenerateVeo2AspectRatio::AutoPreferPortrait => CommonAspectRatio::Auto,
GenerateVeo2AspectRatio::WideSixteenNine => CommonAspectRatio::WideSixteenByNine,
GenerateVeo2AspectRatio::TallNineSixteen => CommonAspectRatio::TallNineBySixteen,
}),
maybe_resolution: None,
maybe_batch_count: None,
maybe_generate_audio: None,
@@ -17,6 +17,7 @@ use enums::by_table::prompts::prompt_type::PromptType;
use enums::common::generation_provider::GenerationProvider;
use enums::common::generation::common_model_type::CommonModelType;
use enums::common::visibility::Visibility;
use enums::common::generation::common_aspect_ratio::CommonAspectRatio;
use enums::common::generation::common_generation_mode::CommonGenerationMode;
use fal_client::requests::traits::fal_request_cost_calculator_trait::FalRequestCostCalculator;
use fal_client::requests::webhook::video::image::enqueue_veo_3_image_to_video_webhook::{enqueue_veo_3_image_to_video_webhook, Veo3Args, Veo3AspectRatio, Veo3Duration, Veo3Resolution};
@@ -222,7 +223,11 @@ pub async fn generate_veo_3_image_to_video_handler(
maybe_negative_prompt: None,
maybe_other_args: None,
maybe_generation_mode: Some(CommonGenerationMode::Keyframe), // TODO: This endpoint only supports keyframes for now
maybe_aspect_ratio: None,
maybe_aspect_ratio: request.aspect_ratio.as_ref().map(|ar| match ar {
GenerateVeo3AspectRatio::WideSixteenNine => CommonAspectRatio::WideSixteenByNine,
GenerateVeo3AspectRatio::TallNineSixteen => CommonAspectRatio::TallNineBySixteen,
GenerateVeo3AspectRatio::Square => CommonAspectRatio::Square,
}),
maybe_resolution: None,
maybe_batch_count: None,
maybe_generate_audio: Some(generate_audio),