From d1b79dd69e7be169708fe3438b8eaba1669e83bc Mon Sep 17 00:00:00 2001 From: Brandon Thomas Date: Tue, 26 May 2026 10:23:44 -0400 Subject: [PATCH] remove old handlers --- .../artcraft/handle_artcraft_kling_1p6_pro.rs | 78 ------------------ .../handle_artcraft_kling_2p1_master.rs | 77 ------------------ .../artcraft/handle_artcraft_kling_2p1_pro.rs | 77 ------------------ .../handle_artcraft_kling_2p5_turbo_pro.rs | 77 ------------------ .../artcraft/handle_artcraft_kling_2p6_pro.rs | 79 ------------------ .../handle_artcraft_seedance_1_lite.rs | 73 ----------------- .../artcraft/handle_artcraft_sora2.rs | 79 ------------------ .../artcraft/handle_artcraft_sora2_pro.rs | 78 ------------------ .../artcraft/handle_artcraft_veo2.rs | 76 ----------------- .../artcraft/handle_artcraft_veo3.rs | 78 ------------------ .../artcraft/handle_artcraft_veo3_fast.rs | 73 ----------------- .../artcraft/handle_artcraft_veo3p1.rs | 81 ------------------- .../artcraft/handle_artcraft_veo3p1_fast.rs | 81 ------------------- .../generate/generate_video/artcraft/mod.rs | 15 +--- 14 files changed, 1 insertion(+), 1021 deletions(-) delete mode 100644 crates/desktop/artcraft/src/core/commands/generate/generate_video/artcraft/handle_artcraft_kling_1p6_pro.rs delete mode 100644 crates/desktop/artcraft/src/core/commands/generate/generate_video/artcraft/handle_artcraft_kling_2p1_master.rs delete mode 100644 crates/desktop/artcraft/src/core/commands/generate/generate_video/artcraft/handle_artcraft_kling_2p1_pro.rs delete mode 100644 crates/desktop/artcraft/src/core/commands/generate/generate_video/artcraft/handle_artcraft_kling_2p5_turbo_pro.rs delete mode 100644 crates/desktop/artcraft/src/core/commands/generate/generate_video/artcraft/handle_artcraft_kling_2p6_pro.rs delete mode 100644 crates/desktop/artcraft/src/core/commands/generate/generate_video/artcraft/handle_artcraft_seedance_1_lite.rs delete mode 100644 crates/desktop/artcraft/src/core/commands/generate/generate_video/artcraft/handle_artcraft_sora2.rs delete mode 100644 crates/desktop/artcraft/src/core/commands/generate/generate_video/artcraft/handle_artcraft_sora2_pro.rs delete mode 100644 crates/desktop/artcraft/src/core/commands/generate/generate_video/artcraft/handle_artcraft_veo2.rs delete mode 100644 crates/desktop/artcraft/src/core/commands/generate/generate_video/artcraft/handle_artcraft_veo3.rs delete mode 100644 crates/desktop/artcraft/src/core/commands/generate/generate_video/artcraft/handle_artcraft_veo3_fast.rs delete mode 100644 crates/desktop/artcraft/src/core/commands/generate/generate_video/artcraft/handle_artcraft_veo3p1.rs delete mode 100644 crates/desktop/artcraft/src/core/commands/generate/generate_video/artcraft/handle_artcraft_veo3p1_fast.rs diff --git a/crates/desktop/artcraft/src/core/commands/generate/generate_video/artcraft/handle_artcraft_kling_1p6_pro.rs b/crates/desktop/artcraft/src/core/commands/generate/generate_video/artcraft/handle_artcraft_kling_1p6_pro.rs deleted file mode 100644 index 8de4402c60..0000000000 --- a/crates/desktop/artcraft/src/core/commands/generate/generate_video/artcraft/handle_artcraft_kling_1p6_pro.rs +++ /dev/null @@ -1,78 +0,0 @@ -use crate::core::commands::enqueue::generate_error::GenerateError; -use crate::core::commands::generate::generate_video::artcraft::get_storyteller_creds_or_error::get_storyteller_creds_or_error; -use crate::core::commands::generate::generate_video::request::{TauriGenerateVideoRequest, SoraOrientation}; -use crate::core::commands::enqueue::task_enqueue_success::TaskEnqueueSuccess; -use crate::core::events::basic_sendable_event_trait::BasicSendableEvent; -use crate::core::events::functional_events::show_provider_login_modal_event::ShowProviderLoginModalEvent; -use crate::core::events::generation_events::common::{GenerationAction, GenerationModel}; -use crate::core::events::generation_events::generation_enqueue_failure_event::GenerationEnqueueFailureEvent; -use crate::core::state::app_env_configs::app_env_configs::AppEnvConfigs; -use crate::core::state::data_dir::app_data_root::AppDataRoot; -use crate::services::sora::state::sora_credential_manager::SoraCredentialManager; -use crate::services::sora::state::sora_task_queue::SoraTaskQueue; -use crate::services::sora::utils::upload_images_to_sora::{upload_images_to_sora, UploadImagesToSoraArgs, UploadImagesToSoraResult}; -use crate::services::storyteller::state::storyteller_credential_manager::StorytellerCredentialManager; -use artcraft_api_defs::generate::video::generate_kling_1_6_pro_image_to_video::{GenerateKling16ProAspectRatio, GenerateKling16ProDuration, GenerateKling16ProImageToVideoRequest}; -use enums::common::generation_provider::GenerationProvider; -use enums::tauri::tasks::task_type::TaskType; -use uuid_utils::uuid::generate_random_uuid; -use log::{error, info}; -use artcraft_client::credentials::storyteller_credential_set::StorytellerCredentialSet; -use artcraft_client::endpoints::generate::video::generate_kling_16_pro_image_to_video::generate_kling_16_pro_image_to_video; -use artcraft_client::endpoints::generate::video::generate_kling_21_pro_image_to_video::generate_kling_21_pro_image_to_video; -use artcraft_client::endpoints::generate::video::multi_function::kling_2p5_turbo_pro_multi_function_video_gen::kling_2p5_turbo_pro_multi_function_video_gen; -use artcraft_client::endpoints::generate::video::multi_function::sora_2_multi_function_video_gen::sora_2_multi_function_video_gen; -use tauri::AppHandle; -use tokens::tokens::media_files::MediaFileToken; - -pub (super) async fn handle_artcraft_kling_1p6_pro( - request: &TauriGenerateVideoRequest, - app_env_configs: &AppEnvConfigs, - creds: &StorytellerCredentialSet, -) -> Result { - - let uuid_idempotency_token = generate_random_uuid(); - - // TODO: Fix this parameter - let aspect_ratio = match request.sora_orientation { - Some(SoraOrientation::Portrait) => GenerateKling16ProAspectRatio::TallNineSixteen, - Some(SoraOrientation::Landscape) => GenerateKling16ProAspectRatio::WideSixteenNine, - None => GenerateKling16ProAspectRatio::WideSixteenNine, - }; - - let request = GenerateKling16ProImageToVideoRequest { - uuid_idempotency_token, - prompt: request.prompt.clone(), - media_file_token: request.image_media_token.clone(), - end_frame_image_media_token: request.end_frame_image_media_token.clone(), - aspect_ratio: Some(aspect_ratio), - duration: Some(GenerateKling16ProDuration::TenSeconds), // TODO: Parameterize - }; - - let result = generate_kling_16_pro_image_to_video( - &app_env_configs.storyteller_host, - Some(&creds), - request, - ).await; - - let job_token = match result { - Ok(enqueued) => { - info!("Successfully enqueued."); - enqueued.inference_job_token - } - Err(err) => { - error!("Failed to enqueue: {:?}", err); - return Err(GenerateError::from(err)); - } - }; - - Ok(TaskEnqueueSuccess { - task_type: TaskType::VideoGeneration, - model: Some(GenerationModel::Kling1_6), - provider: GenerationProvider::Artcraft, - provider_job_id: Some(job_token.to_string()), - maybe_queue_status_url: None, - maybe_prompt_token: None, - maybe_queue_response_url: None, - }) -} diff --git a/crates/desktop/artcraft/src/core/commands/generate/generate_video/artcraft/handle_artcraft_kling_2p1_master.rs b/crates/desktop/artcraft/src/core/commands/generate/generate_video/artcraft/handle_artcraft_kling_2p1_master.rs deleted file mode 100644 index 12a63181e8..0000000000 --- a/crates/desktop/artcraft/src/core/commands/generate/generate_video/artcraft/handle_artcraft_kling_2p1_master.rs +++ /dev/null @@ -1,77 +0,0 @@ -use crate::core::commands::enqueue::generate_error::GenerateError; -use crate::core::commands::generate::generate_video::artcraft::get_storyteller_creds_or_error::get_storyteller_creds_or_error; -use crate::core::commands::generate::generate_video::request::{TauriGenerateVideoRequest, SoraOrientation}; -use crate::core::commands::enqueue::task_enqueue_success::TaskEnqueueSuccess; -use crate::core::events::basic_sendable_event_trait::BasicSendableEvent; -use crate::core::events::functional_events::show_provider_login_modal_event::ShowProviderLoginModalEvent; -use crate::core::events::generation_events::common::{GenerationAction, GenerationModel}; -use crate::core::events::generation_events::generation_enqueue_failure_event::GenerationEnqueueFailureEvent; -use crate::core::state::app_env_configs::app_env_configs::AppEnvConfigs; -use crate::core::state::data_dir::app_data_root::AppDataRoot; -use crate::services::sora::state::sora_credential_manager::SoraCredentialManager; -use crate::services::sora::state::sora_task_queue::SoraTaskQueue; -use crate::services::sora::utils::upload_images_to_sora::{upload_images_to_sora, UploadImagesToSoraArgs, UploadImagesToSoraResult}; -use crate::services::storyteller::state::storyteller_credential_manager::StorytellerCredentialManager; -use artcraft_api_defs::generate::video::generate_kling_2_1_master_image_to_video::{GenerateKling21MasterAspectRatio, GenerateKling21MasterDuration, GenerateKling21MasterImageToVideoRequest}; -use enums::common::generation_provider::GenerationProvider; -use enums::tauri::tasks::task_type::TaskType; -use uuid_utils::uuid::generate_random_uuid; -use log::{error, info}; -use artcraft_client::credentials::storyteller_credential_set::StorytellerCredentialSet; -use artcraft_client::endpoints::generate::video::generate_kling_21_master_image_to_video::generate_kling_21_master_image_to_video; -use artcraft_client::endpoints::generate::video::generate_kling_21_pro_image_to_video::generate_kling_21_pro_image_to_video; -use artcraft_client::endpoints::generate::video::multi_function::kling_2p5_turbo_pro_multi_function_video_gen::kling_2p5_turbo_pro_multi_function_video_gen; -use artcraft_client::endpoints::generate::video::multi_function::sora_2_multi_function_video_gen::sora_2_multi_function_video_gen; -use tauri::AppHandle; -use tokens::tokens::media_files::MediaFileToken; - -pub (super) async fn handle_artcraft_kling_2p1_master( - request: &TauriGenerateVideoRequest, - app_env_configs: &AppEnvConfigs, - creds: &StorytellerCredentialSet, -) -> Result { - - let uuid_idempotency_token = generate_random_uuid(); - - // TODO: Fix this parameter - let aspect_ratio = match request.sora_orientation { - Some(SoraOrientation::Portrait) => GenerateKling21MasterAspectRatio::TallNineSixteen, - Some(SoraOrientation::Landscape) => GenerateKling21MasterAspectRatio::WideSixteenNine, - None => GenerateKling21MasterAspectRatio::WideSixteenNine, - }; - - let request = GenerateKling21MasterImageToVideoRequest { - uuid_idempotency_token, - prompt: request.prompt.clone(), - media_file_token: request.image_media_token.clone(), - aspect_ratio: Some(aspect_ratio), - duration: Some(GenerateKling21MasterDuration::TenSeconds), // TODO: Parameterize - }; - - let result = generate_kling_21_master_image_to_video( - &app_env_configs.storyteller_host, - Some(&creds), - request, - ).await; - - let job_token = match result { - Ok(enqueued) => { - info!("Successfully enqueued."); - enqueued.inference_job_token - } - Err(err) => { - error!("Failed to enqueue: {:?}", err); - return Err(GenerateError::from(err)); - } - }; - - Ok(TaskEnqueueSuccess { - task_type: TaskType::VideoGeneration, - model: Some(GenerationModel::Kling21Master), - provider: GenerationProvider::Artcraft, - provider_job_id: Some(job_token.to_string()), - maybe_queue_status_url: None, - maybe_prompt_token: None, - maybe_queue_response_url: None, - }) -} diff --git a/crates/desktop/artcraft/src/core/commands/generate/generate_video/artcraft/handle_artcraft_kling_2p1_pro.rs b/crates/desktop/artcraft/src/core/commands/generate/generate_video/artcraft/handle_artcraft_kling_2p1_pro.rs deleted file mode 100644 index fb5a30043c..0000000000 --- a/crates/desktop/artcraft/src/core/commands/generate/generate_video/artcraft/handle_artcraft_kling_2p1_pro.rs +++ /dev/null @@ -1,77 +0,0 @@ -use crate::core::commands::enqueue::generate_error::GenerateError; -use crate::core::commands::generate::generate_video::artcraft::get_storyteller_creds_or_error::get_storyteller_creds_or_error; -use crate::core::commands::generate::generate_video::request::{TauriGenerateVideoRequest, SoraOrientation}; -use crate::core::commands::enqueue::task_enqueue_success::TaskEnqueueSuccess; -use crate::core::events::basic_sendable_event_trait::BasicSendableEvent; -use crate::core::events::functional_events::show_provider_login_modal_event::ShowProviderLoginModalEvent; -use crate::core::events::generation_events::common::{GenerationAction, GenerationModel}; -use crate::core::events::generation_events::generation_enqueue_failure_event::GenerationEnqueueFailureEvent; -use crate::core::state::app_env_configs::app_env_configs::AppEnvConfigs; -use crate::core::state::data_dir::app_data_root::AppDataRoot; -use crate::services::sora::state::sora_credential_manager::SoraCredentialManager; -use crate::services::sora::state::sora_task_queue::SoraTaskQueue; -use crate::services::sora::utils::upload_images_to_sora::{upload_images_to_sora, UploadImagesToSoraArgs, UploadImagesToSoraResult}; -use crate::services::storyteller::state::storyteller_credential_manager::StorytellerCredentialManager; -use artcraft_api_defs::generate::video::generate_kling_2_1_pro_image_to_video::{GenerateKling21ProAspectRatio, GenerateKling21ProDuration, GenerateKling21ProImageToVideoRequest}; -use enums::common::generation_provider::GenerationProvider; -use enums::tauri::tasks::task_type::TaskType; -use uuid_utils::uuid::generate_random_uuid; -use log::{error, info}; -use artcraft_client::credentials::storyteller_credential_set::StorytellerCredentialSet; -use artcraft_client::endpoints::generate::video::generate_kling_21_pro_image_to_video::generate_kling_21_pro_image_to_video; -use artcraft_client::endpoints::generate::video::multi_function::kling_2p5_turbo_pro_multi_function_video_gen::kling_2p5_turbo_pro_multi_function_video_gen; -use artcraft_client::endpoints::generate::video::multi_function::sora_2_multi_function_video_gen::sora_2_multi_function_video_gen; -use tauri::AppHandle; -use tokens::tokens::media_files::MediaFileToken; - -pub (super) async fn handle_artcraft_kling_2p1_pro( - request: &TauriGenerateVideoRequest, - app_env_configs: &AppEnvConfigs, - creds: &StorytellerCredentialSet, -) -> Result { - - let uuid_idempotency_token = generate_random_uuid(); - - // TODO: Fix this parameter - let aspect_ratio = match request.sora_orientation { - Some(SoraOrientation::Portrait) => GenerateKling21ProAspectRatio::TallNineSixteen, - Some(SoraOrientation::Landscape) => GenerateKling21ProAspectRatio::WideSixteenNine, - None => GenerateKling21ProAspectRatio::WideSixteenNine, - }; - - let request = GenerateKling21ProImageToVideoRequest { - uuid_idempotency_token, - prompt: request.prompt.clone(), - media_file_token: request.image_media_token.clone(), - end_frame_image_media_token: request.end_frame_image_media_token.clone(), - aspect_ratio: Some(aspect_ratio), - duration: Some(GenerateKling21ProDuration::TenSeconds), // TODO: Parameterize - }; - - let result = generate_kling_21_pro_image_to_video( - &app_env_configs.storyteller_host, - Some(&creds), - request, - ).await; - - let job_token = match result { - Ok(enqueued) => { - info!("Successfully enqueued."); - enqueued.inference_job_token - } - Err(err) => { - error!("Failed to enqueue: {:?}", err); - return Err(GenerateError::from(err)); - } - }; - - Ok(TaskEnqueueSuccess { - task_type: TaskType::VideoGeneration, - model: Some(GenerationModel::Kling21Pro), - provider: GenerationProvider::Artcraft, - provider_job_id: Some(job_token.to_string()), - maybe_queue_status_url: None, - maybe_prompt_token: None, - maybe_queue_response_url: None, - }) -} diff --git a/crates/desktop/artcraft/src/core/commands/generate/generate_video/artcraft/handle_artcraft_kling_2p5_turbo_pro.rs b/crates/desktop/artcraft/src/core/commands/generate/generate_video/artcraft/handle_artcraft_kling_2p5_turbo_pro.rs deleted file mode 100644 index 1475b3fb15..0000000000 --- a/crates/desktop/artcraft/src/core/commands/generate/generate_video/artcraft/handle_artcraft_kling_2p5_turbo_pro.rs +++ /dev/null @@ -1,77 +0,0 @@ -use crate::core::commands::enqueue::generate_error::GenerateError; -use crate::core::commands::generate::generate_video::artcraft::get_storyteller_creds_or_error::get_storyteller_creds_or_error; -use crate::core::commands::generate::generate_video::request::{TauriGenerateVideoRequest, SoraOrientation}; -use crate::core::commands::enqueue::task_enqueue_success::TaskEnqueueSuccess; -use crate::core::events::basic_sendable_event_trait::BasicSendableEvent; -use crate::core::events::functional_events::show_provider_login_modal_event::ShowProviderLoginModalEvent; -use crate::core::events::generation_events::common::{GenerationAction, GenerationModel}; -use crate::core::events::generation_events::generation_enqueue_failure_event::GenerationEnqueueFailureEvent; -use crate::core::state::app_env_configs::app_env_configs::AppEnvConfigs; -use crate::core::state::data_dir::app_data_root::AppDataRoot; -use crate::services::sora::state::sora_credential_manager::SoraCredentialManager; -use crate::services::sora::state::sora_task_queue::SoraTaskQueue; -use crate::services::sora::utils::upload_images_to_sora::{upload_images_to_sora, UploadImagesToSoraArgs, UploadImagesToSoraResult}; -use crate::services::storyteller::state::storyteller_credential_manager::StorytellerCredentialManager; -use artcraft_api_defs::generate::video::multi_function::kling_2_5_turbo_multi_function_video_gen::{Kling2p5TurboProMultiFunctionVideoGenAspectRatio, Kling2p5TurboProMultiFunctionVideoGenDuration, Kling2p5TurboProMultiFunctionVideoGenRequest}; -use enums::common::generation_provider::GenerationProvider; -use enums::tauri::tasks::task_type::TaskType; -use uuid_utils::uuid::generate_random_uuid; -use log::{error, info}; -use artcraft_client::credentials::storyteller_credential_set::StorytellerCredentialSet; -use artcraft_client::endpoints::generate::video::multi_function::kling_2p5_turbo_pro_multi_function_video_gen::kling_2p5_turbo_pro_multi_function_video_gen; -use artcraft_client::endpoints::generate::video::multi_function::sora_2_multi_function_video_gen::sora_2_multi_function_video_gen; -use tauri::AppHandle; -use tokens::tokens::media_files::MediaFileToken; - -pub (super) async fn handle_artcraft_kling_2p5_turbo_pro( - request: &TauriGenerateVideoRequest, - app_env_configs: &AppEnvConfigs, - creds: &StorytellerCredentialSet, -) -> Result { - - let uuid_idempotency_token = generate_random_uuid(); - - // TODO: Fix this parameter - let aspect_ratio = match request.sora_orientation { - Some(SoraOrientation::Portrait) => Kling2p5TurboProMultiFunctionVideoGenAspectRatio::NineBySixteen, - Some(SoraOrientation::Landscape) => Kling2p5TurboProMultiFunctionVideoGenAspectRatio::SixteenByNine, - None => Kling2p5TurboProMultiFunctionVideoGenAspectRatio::SixteenByNine, - }; - - let request = Kling2p5TurboProMultiFunctionVideoGenRequest { - uuid_idempotency_token, - prompt: request.prompt.clone(), - negative_prompt: None, // TODO: Parameterize - start_frame_image_media_token: request.image_media_token.clone(), - end_frame_image_media_token: request.end_frame_image_media_token.clone(), - aspect_ratio: Some(aspect_ratio), - duration: Some(Kling2p5TurboProMultiFunctionVideoGenDuration::TenSeconds), // TODO: Parameterize - }; - - let result = kling_2p5_turbo_pro_multi_function_video_gen( - &app_env_configs.storyteller_host, - Some(&creds), - request, - ).await; - - let job_token = match result { - Ok(enqueued) => { - info!("Successfully enqueued."); - enqueued.inference_job_token - } - Err(err) => { - error!("Failed to enqueue: {:?}", err); - return Err(GenerateError::from(err)); - } - }; - - Ok(TaskEnqueueSuccess { - task_type: TaskType::VideoGeneration, - model: Some(GenerationModel::Kling2p5TurboPro), - provider: GenerationProvider::Artcraft, - provider_job_id: Some(job_token.to_string()), - maybe_queue_status_url: None, - maybe_prompt_token: None, - maybe_queue_response_url: None, - }) -} diff --git a/crates/desktop/artcraft/src/core/commands/generate/generate_video/artcraft/handle_artcraft_kling_2p6_pro.rs b/crates/desktop/artcraft/src/core/commands/generate/generate_video/artcraft/handle_artcraft_kling_2p6_pro.rs deleted file mode 100644 index 0c3eb64a38..0000000000 --- a/crates/desktop/artcraft/src/core/commands/generate/generate_video/artcraft/handle_artcraft_kling_2p6_pro.rs +++ /dev/null @@ -1,79 +0,0 @@ -use crate::core::commands::enqueue::generate_error::GenerateError; -use crate::core::commands::generate::generate_video::artcraft::get_storyteller_creds_or_error::get_storyteller_creds_or_error; -use crate::core::commands::generate::generate_video::request::{TauriGenerateVideoRequest, SoraOrientation}; -use crate::core::commands::enqueue::task_enqueue_success::TaskEnqueueSuccess; -use crate::core::events::basic_sendable_event_trait::BasicSendableEvent; -use crate::core::events::functional_events::show_provider_login_modal_event::ShowProviderLoginModalEvent; -use crate::core::events::generation_events::common::{GenerationAction, GenerationModel}; -use crate::core::events::generation_events::generation_enqueue_failure_event::GenerationEnqueueFailureEvent; -use crate::core::state::app_env_configs::app_env_configs::AppEnvConfigs; -use crate::core::state::data_dir::app_data_root::AppDataRoot; -use crate::services::sora::state::sora_credential_manager::SoraCredentialManager; -use crate::services::sora::state::sora_task_queue::SoraTaskQueue; -use crate::services::sora::utils::upload_images_to_sora::{upload_images_to_sora, UploadImagesToSoraArgs, UploadImagesToSoraResult}; -use crate::services::storyteller::state::storyteller_credential_manager::StorytellerCredentialManager; -use artcraft_api_defs::generate::video::generate_kling_1_6_pro_image_to_video::{GenerateKling16ProAspectRatio, GenerateKling16ProImageToVideoRequest}; -use artcraft_api_defs::generate::video::multi_function::kling_2_6_multi_function_video_gen::{Kling2p6ProMultiFunctionVideoGenAspectRatio, Kling2p6ProMultiFunctionVideoGenDuration, Kling2p6ProMultiFunctionVideoGenRequest}; -use enums::common::generation_provider::GenerationProvider; -use enums::tauri::tasks::task_type::TaskType; -use uuid_utils::uuid::generate_random_uuid; -use log::{error, info}; -use artcraft_client::credentials::storyteller_credential_set::StorytellerCredentialSet; -use artcraft_client::endpoints::generate::video::generate_kling_16_pro_image_to_video::generate_kling_16_pro_image_to_video; -use artcraft_client::endpoints::generate::video::multi_function::kling_2p6_pro_multi_function_video_gen::kling_2p6_pro_multi_function_video_gen; -use artcraft_client::endpoints::generate::video::multi_function::sora_2_multi_function_video_gen::sora_2_multi_function_video_gen; -use tauri::AppHandle; -use tokens::tokens::media_files::MediaFileToken; - -pub (super) async fn handle_artcraft_kling_2p6_pro( - request: &TauriGenerateVideoRequest, - app_env_configs: &AppEnvConfigs, - creds: &StorytellerCredentialSet, -) -> Result { - - let uuid_idempotency_token = generate_random_uuid(); - - // TODO: Fix this parameter - let aspect_ratio = match request.sora_orientation { - Some(SoraOrientation::Portrait) => Kling2p6ProMultiFunctionVideoGenAspectRatio::NineBySixteen, - Some(SoraOrientation::Landscape) => Kling2p6ProMultiFunctionVideoGenAspectRatio::SixteenByNine, - None => Kling2p6ProMultiFunctionVideoGenAspectRatio::SixteenByNine, - }; - - let request = Kling2p6ProMultiFunctionVideoGenRequest { - uuid_idempotency_token, - prompt: request.prompt.clone(), - negative_prompt: None, // TODO: Parameterize - start_frame_image_media_token: request.image_media_token.clone(), - aspect_ratio: Some(aspect_ratio), - duration: Some(Kling2p6ProMultiFunctionVideoGenDuration::TenSeconds), // TODO: Parameterize - generate_audio: request.generate_audio, - }; - - let result = kling_2p6_pro_multi_function_video_gen( - &app_env_configs.storyteller_host, - Some(&creds), - request, - ).await; - - let job_token = match result { - Ok(enqueued) => { - info!("Successfully enqueued."); - enqueued.inference_job_token - } - Err(err) => { - error!("Failed to enqueue: {:?}", err); - return Err(GenerateError::from(err)); - } - }; - - Ok(TaskEnqueueSuccess { - task_type: TaskType::VideoGeneration, - model: Some(GenerationModel::Kling2p6Pro), - provider: GenerationProvider::Artcraft, - provider_job_id: Some(job_token.to_string()), - maybe_queue_status_url: None, - maybe_prompt_token: None, - maybe_queue_response_url: None, - }) -} diff --git a/crates/desktop/artcraft/src/core/commands/generate/generate_video/artcraft/handle_artcraft_seedance_1_lite.rs b/crates/desktop/artcraft/src/core/commands/generate/generate_video/artcraft/handle_artcraft_seedance_1_lite.rs deleted file mode 100644 index 3c9826af47..0000000000 --- a/crates/desktop/artcraft/src/core/commands/generate/generate_video/artcraft/handle_artcraft_seedance_1_lite.rs +++ /dev/null @@ -1,73 +0,0 @@ -use crate::core::commands::enqueue::generate_error::GenerateError; -use crate::core::commands::generate::generate_video::artcraft::get_storyteller_creds_or_error::get_storyteller_creds_or_error; -use crate::core::commands::generate::generate_video::request::{TauriGenerateVideoRequest, SoraOrientation}; -use crate::core::commands::enqueue::task_enqueue_success::TaskEnqueueSuccess; -use crate::core::events::basic_sendable_event_trait::BasicSendableEvent; -use crate::core::events::functional_events::show_provider_login_modal_event::ShowProviderLoginModalEvent; -use crate::core::events::generation_events::common::{GenerationAction, GenerationModel}; -use crate::core::events::generation_events::generation_enqueue_failure_event::GenerationEnqueueFailureEvent; -use crate::core::state::app_env_configs::app_env_configs::AppEnvConfigs; -use crate::core::state::data_dir::app_data_root::AppDataRoot; -use crate::services::sora::state::sora_credential_manager::SoraCredentialManager; -use crate::services::sora::state::sora_task_queue::SoraTaskQueue; -use crate::services::sora::utils::upload_images_to_sora::{upload_images_to_sora, UploadImagesToSoraArgs, UploadImagesToSoraResult}; -use crate::services::storyteller::state::storyteller_credential_manager::StorytellerCredentialManager; -use artcraft_api_defs::generate::video::generate_seedance_1_0_lite_image_to_video::{GenerateSeedance10LiteDuration, GenerateSeedance10LiteImageToVideoRequest, GenerateSeedance10LiteResolution}; -use enums::common::generation_provider::GenerationProvider; -use enums::tauri::tasks::task_type::TaskType; -use uuid_utils::uuid::generate_random_uuid; -use log::{error, info}; -use artcraft_client::credentials::storyteller_credential_set::StorytellerCredentialSet; -use artcraft_client::endpoints::generate::video::generate_kling_16_pro_image_to_video::generate_kling_16_pro_image_to_video; -use artcraft_client::endpoints::generate::video::generate_kling_21_pro_image_to_video::generate_kling_21_pro_image_to_video; -use artcraft_client::endpoints::generate::video::generate_seedance_1_0_lite_image_to_video::generate_seedance_1_0_lite_image_to_video; -use artcraft_client::endpoints::generate::video::multi_function::kling_2p5_turbo_pro_multi_function_video_gen::kling_2p5_turbo_pro_multi_function_video_gen; -use artcraft_client::endpoints::generate::video::multi_function::sora_2_multi_function_video_gen::sora_2_multi_function_video_gen; -use tauri::AppHandle; -use tokens::tokens::media_files::MediaFileToken; - -pub (super) async fn handle_artcraft_seedance_1_lite( - request: &TauriGenerateVideoRequest, - app_env_configs: &AppEnvConfigs, - creds: &StorytellerCredentialSet, -) -> Result { - - let uuid_idempotency_token = generate_random_uuid(); - - let request = GenerateSeedance10LiteImageToVideoRequest { - uuid_idempotency_token, - prompt: request.prompt.clone(), - media_file_token: request.image_media_token.clone(), - end_frame_image_media_token: request.end_frame_image_media_token.clone(), - duration: Some(GenerateSeedance10LiteDuration::TenSeconds), // TODO: Parameterize - resolution: Some(GenerateSeedance10LiteResolution::SevenTwentyP), // TODO: Parameterize - aspect_ratio: None, // TODO: Parameterize - }; - - let result = generate_seedance_1_0_lite_image_to_video( - &app_env_configs.storyteller_host, - Some(&creds), - request, - ).await; - - let job_token = match result { - Ok(enqueued) => { - info!("Successfully enqueued."); - enqueued.inference_job_token - } - Err(err) => { - error!("Failed to enqueue: {:?}", err); - return Err(GenerateError::from(err)); - } - }; - - Ok(TaskEnqueueSuccess { - task_type: TaskType::VideoGeneration, - model: Some(GenerationModel::Kling1_6), - provider: GenerationProvider::Artcraft, - provider_job_id: Some(job_token.to_string()), - maybe_queue_status_url: None, - maybe_prompt_token: None, - maybe_queue_response_url: None, - }) -} diff --git a/crates/desktop/artcraft/src/core/commands/generate/generate_video/artcraft/handle_artcraft_sora2.rs b/crates/desktop/artcraft/src/core/commands/generate/generate_video/artcraft/handle_artcraft_sora2.rs deleted file mode 100644 index 846fad6d7d..0000000000 --- a/crates/desktop/artcraft/src/core/commands/generate/generate_video/artcraft/handle_artcraft_sora2.rs +++ /dev/null @@ -1,79 +0,0 @@ -use crate::core::commands::enqueue::generate_error::GenerateError; -use crate::core::commands::generate::generate_video::artcraft::get_storyteller_creds_or_error::get_storyteller_creds_or_error; -use crate::core::commands::generate::generate_video::request::{TauriGenerateVideoRequest, SoraOrientation}; -use crate::core::commands::enqueue::task_enqueue_success::TaskEnqueueSuccess; -use crate::core::events::basic_sendable_event_trait::BasicSendableEvent; -use crate::core::events::functional_events::show_provider_login_modal_event::ShowProviderLoginModalEvent; -use crate::core::events::generation_events::common::{GenerationAction, GenerationModel}; -use crate::core::events::generation_events::generation_enqueue_failure_event::GenerationEnqueueFailureEvent; -use crate::core::state::app_env_configs::app_env_configs::AppEnvConfigs; -use crate::core::state::data_dir::app_data_root::AppDataRoot; -use crate::services::sora::state::sora_credential_manager::SoraCredentialManager; -use crate::services::sora::state::sora_task_queue::SoraTaskQueue; -use crate::services::sora::utils::upload_images_to_sora::{upload_images_to_sora, UploadImagesToSoraArgs, UploadImagesToSoraResult}; -use crate::services::storyteller::state::storyteller_credential_manager::StorytellerCredentialManager; -use artcraft_api_defs::generate::video::generate_kling_1_6_pro_image_to_video::{GenerateKling16ProAspectRatio, GenerateKling16ProImageToVideoRequest}; -use artcraft_api_defs::generate::video::multi_function::sora_2_multi_function_video_gen::{Sora2MultiFunctionVideoGenAspectRatio, Sora2MultiFunctionVideoGenDuration, Sora2MultiFunctionVideoGenRequest, Sora2MultiFunctionVideoGenResolution}; -use enums::common::generation_provider::GenerationProvider; -use enums::tauri::tasks::task_type::TaskType; -use uuid_utils::uuid::generate_random_uuid; -use log::{error, info}; -use openai_sora_client::recipes::generate_sora2_video::generate_sora2_video_with_session_auto_renew::generate_sora2_video_with_session_auto_renew; -use openai_sora_client::recipes::list_sora2_drafts::list_sora2_drafts_with_session_auto_renew::list_sora2_drafts_with_session_auto_renew; -use openai_sora_client::requests::generate_sora2_video::generate_sora2_video::{GenerateSora2VideoArgs, Orientation}; -use artcraft_client::credentials::storyteller_credential_set::StorytellerCredentialSet; -use artcraft_client::endpoints::generate::video::generate_kling_16_pro_image_to_video::generate_kling_16_pro_image_to_video; -use artcraft_client::endpoints::generate::video::multi_function::sora_2_multi_function_video_gen::sora_2_multi_function_video_gen; -use tauri::AppHandle; -use tokens::tokens::media_files::MediaFileToken; - -pub (super) async fn handle_artcraft_sora2( - request: &TauriGenerateVideoRequest, - app_env_configs: &AppEnvConfigs, - creds: &StorytellerCredentialSet, -) -> Result { - - let uuid_idempotency_token = generate_random_uuid(); - - let aspect_ratio = match request.sora_orientation { - Some(SoraOrientation::Portrait) => Sora2MultiFunctionVideoGenAspectRatio::NineBySixteen, - Some(SoraOrientation::Landscape) => Sora2MultiFunctionVideoGenAspectRatio::SixteenByNine, - None => Sora2MultiFunctionVideoGenAspectRatio::SixteenByNine, - }; - - let request = Sora2MultiFunctionVideoGenRequest { - uuid_idempotency_token, - prompt: request.prompt.clone(), - image_media_token: request.image_media_token.clone(), - aspect_ratio: Some(aspect_ratio), - resolution: Some(Sora2MultiFunctionVideoGenResolution::SevenTwentyP), // TODO: Parameterize - duration: Some(Sora2MultiFunctionVideoGenDuration::TwelveSeconds), // TODO: Parameterize - }; - - let result = sora_2_multi_function_video_gen( - &app_env_configs.storyteller_host, - Some(&creds), - request, - ).await; - - let job_token = match result { - Ok(enqueued) => { - info!("Successfully enqueued."); - enqueued.inference_job_token - } - Err(err) => { - error!("Failed to enqueue: {:?}", err); - return Err(GenerateError::from(err)); - } - }; - - Ok(TaskEnqueueSuccess { - task_type: TaskType::VideoGeneration, - model: Some(GenerationModel::Sora2), - provider: GenerationProvider::Artcraft, - provider_job_id: Some(job_token.to_string()), - maybe_queue_status_url: None, - maybe_prompt_token: None, - maybe_queue_response_url: None, - }) -} diff --git a/crates/desktop/artcraft/src/core/commands/generate/generate_video/artcraft/handle_artcraft_sora2_pro.rs b/crates/desktop/artcraft/src/core/commands/generate/generate_video/artcraft/handle_artcraft_sora2_pro.rs deleted file mode 100644 index 8d2393837a..0000000000 --- a/crates/desktop/artcraft/src/core/commands/generate/generate_video/artcraft/handle_artcraft_sora2_pro.rs +++ /dev/null @@ -1,78 +0,0 @@ -use crate::core::commands::enqueue::generate_error::GenerateError; -use crate::core::commands::generate::generate_video::artcraft::get_storyteller_creds_or_error::get_storyteller_creds_or_error; -use crate::core::commands::generate::generate_video::request::{TauriGenerateVideoRequest, SoraOrientation}; -use crate::core::commands::enqueue::task_enqueue_success::TaskEnqueueSuccess; -use crate::core::events::basic_sendable_event_trait::BasicSendableEvent; -use crate::core::events::functional_events::show_provider_login_modal_event::ShowProviderLoginModalEvent; -use crate::core::events::generation_events::common::{GenerationAction, GenerationModel}; -use crate::core::events::generation_events::generation_enqueue_failure_event::GenerationEnqueueFailureEvent; -use crate::core::state::app_env_configs::app_env_configs::AppEnvConfigs; -use crate::core::state::data_dir::app_data_root::AppDataRoot; -use crate::services::sora::state::sora_credential_manager::SoraCredentialManager; -use crate::services::sora::state::sora_task_queue::SoraTaskQueue; -use crate::services::sora::utils::upload_images_to_sora::{upload_images_to_sora, UploadImagesToSoraArgs, UploadImagesToSoraResult}; -use crate::services::storyteller::state::storyteller_credential_manager::StorytellerCredentialManager; -use artcraft_api_defs::generate::video::multi_function::sora_2_pro_multi_function_video_gen::{Sora2ProMultiFunctionVideoGenAspectRatio, Sora2ProMultiFunctionVideoGenDuration, Sora2ProMultiFunctionVideoGenRequest, Sora2ProMultiFunctionVideoGenResolution}; -use enums::common::generation_provider::GenerationProvider; -use enums::tauri::tasks::task_type::TaskType; -use uuid_utils::uuid::generate_random_uuid; -use log::{error, info}; -use openai_sora_client::recipes::generate_sora2_video::generate_sora2_video_with_session_auto_renew::generate_sora2_video_with_session_auto_renew; -use openai_sora_client::recipes::list_sora2_drafts::list_sora2_drafts_with_session_auto_renew::list_sora2_drafts_with_session_auto_renew; -use artcraft_client::endpoints::generate::video::generate_kling_16_pro_image_to_video::generate_kling_16_pro_image_to_video; -use artcraft_client::endpoints::generate::video::multi_function::sora_2_multi_function_video_gen::sora_2_multi_function_video_gen; -use artcraft_client::endpoints::generate::video::multi_function::sora_2_pro_multi_function_video_gen::sora_2_pro_multi_function_video_gen; -use tauri::AppHandle; -use artcraft_client::credentials::storyteller_credential_set::StorytellerCredentialSet; -use tokens::tokens::media_files::MediaFileToken; - -pub (super) async fn handle_artcraft_sora2_pro( - request: &TauriGenerateVideoRequest, - app_env_configs: &AppEnvConfigs, - creds: &StorytellerCredentialSet, -) -> Result { - - let uuid_idempotency_token = generate_random_uuid(); - - let aspect_ratio = match request.sora_orientation { - Some(SoraOrientation::Portrait) => Sora2ProMultiFunctionVideoGenAspectRatio::NineBySixteen, - Some(SoraOrientation::Landscape) => Sora2ProMultiFunctionVideoGenAspectRatio::SixteenByNine, - None => Sora2ProMultiFunctionVideoGenAspectRatio::SixteenByNine, - }; - - let request = Sora2ProMultiFunctionVideoGenRequest { - uuid_idempotency_token, - prompt: request.prompt.clone(), - image_media_token: request.image_media_token.clone(), - aspect_ratio: Some(aspect_ratio), - resolution: Some(Sora2ProMultiFunctionVideoGenResolution::TenEightyP), // TODO: Parameterize - duration: Some(Sora2ProMultiFunctionVideoGenDuration::TwelveSeconds), // TODO: Parameterize - }; - - let result = sora_2_pro_multi_function_video_gen( - &app_env_configs.storyteller_host, - Some(&creds), - request, - ).await; - - let job_token = match result { - Ok(enqueued) => { - info!("Successfully enqueued."); - enqueued.inference_job_token - } - Err(err) => { - error!("Failed to enqueue: {:?}", err); - return Err(GenerateError::from(err)); - } - }; - - Ok(TaskEnqueueSuccess { - task_type: TaskType::VideoGeneration, - model: Some(GenerationModel::Sora2Pro), - provider: GenerationProvider::Artcraft, - provider_job_id: Some(job_token.to_string()), - maybe_queue_status_url: None, - maybe_prompt_token: None, - maybe_queue_response_url: None, - }) -} diff --git a/crates/desktop/artcraft/src/core/commands/generate/generate_video/artcraft/handle_artcraft_veo2.rs b/crates/desktop/artcraft/src/core/commands/generate/generate_video/artcraft/handle_artcraft_veo2.rs deleted file mode 100644 index 7793995946..0000000000 --- a/crates/desktop/artcraft/src/core/commands/generate/generate_video/artcraft/handle_artcraft_veo2.rs +++ /dev/null @@ -1,76 +0,0 @@ -use crate::core::commands::enqueue::generate_error::GenerateError; -use crate::core::commands::generate::generate_video::artcraft::get_storyteller_creds_or_error::get_storyteller_creds_or_error; -use crate::core::commands::generate::generate_video::request::{TauriGenerateVideoRequest, SoraOrientation}; -use crate::core::commands::enqueue::task_enqueue_success::TaskEnqueueSuccess; -use crate::core::events::basic_sendable_event_trait::BasicSendableEvent; -use crate::core::events::functional_events::show_provider_login_modal_event::ShowProviderLoginModalEvent; -use crate::core::events::generation_events::common::{GenerationAction, GenerationModel}; -use crate::core::events::generation_events::generation_enqueue_failure_event::GenerationEnqueueFailureEvent; -use crate::core::state::app_env_configs::app_env_configs::AppEnvConfigs; -use crate::core::state::data_dir::app_data_root::AppDataRoot; -use crate::services::sora::state::sora_credential_manager::SoraCredentialManager; -use crate::services::sora::state::sora_task_queue::SoraTaskQueue; -use crate::services::sora::utils::upload_images_to_sora::{upload_images_to_sora, UploadImagesToSoraArgs, UploadImagesToSoraResult}; -use crate::services::storyteller::state::storyteller_credential_manager::StorytellerCredentialManager; -use artcraft_api_defs::generate::video::generate_veo_2_image_to_video::{GenerateVeo2AspectRatio, GenerateVeo2ImageToVideoRequest}; -use enums::common::generation_provider::GenerationProvider; -use enums::tauri::tasks::task_type::TaskType; -use uuid_utils::uuid::generate_random_uuid; -use log::{error, info}; -use artcraft_client::credentials::storyteller_credential_set::StorytellerCredentialSet; -use artcraft_client::endpoints::generate::video::generate_veo_2_image_to_video::generate_veo_2_image_to_video; -use artcraft_client::endpoints::generate::video::generate_veo_3_image_to_video::generate_veo_3_image_to_video; -use artcraft_client::endpoints::generate::video::multi_function::veo_3p1_multi_function_video_gen::veo_3p1_multi_function_video_gen; -use tauri::AppHandle; -use tokens::tokens::media_files::MediaFileToken; - -pub (super) async fn handle_artcraft_veo2( - request: &TauriGenerateVideoRequest, - app_env_configs: &AppEnvConfigs, - creds: &StorytellerCredentialSet, -) -> Result { - - let uuid_idempotency_token = generate_random_uuid(); - - // TODO: Fix. - let aspect_ratio = match request.sora_orientation { - Some(SoraOrientation::Portrait) => GenerateVeo2AspectRatio::TallNineSixteen, - Some(SoraOrientation::Landscape) => GenerateVeo2AspectRatio::WideSixteenNine, - None => GenerateVeo2AspectRatio::WideSixteenNine, - }; - - let request = GenerateVeo2ImageToVideoRequest { - uuid_idempotency_token, - media_file_token: request.image_media_token.clone(), - prompt: request.prompt.clone(), - aspect_ratio: Some(aspect_ratio), - duration: None, // TODO: Parameterize - }; - - let result = generate_veo_2_image_to_video( - &app_env_configs.storyteller_host, - Some(&creds), - request, - ).await; - - let job_token = match result { - Ok(enqueued) => { - info!("Successfully enqueued."); - enqueued.inference_job_token - } - Err(err) => { - error!("Failed to enqueue: {:?}", err); - return Err(GenerateError::from(err)); - } - }; - - Ok(TaskEnqueueSuccess { - task_type: TaskType::VideoGeneration, - model: Some(GenerationModel::Veo2), - provider: GenerationProvider::Artcraft, - provider_job_id: Some(job_token.to_string()), - maybe_queue_status_url: None, - maybe_prompt_token: None, - maybe_queue_response_url: None, - }) -} diff --git a/crates/desktop/artcraft/src/core/commands/generate/generate_video/artcraft/handle_artcraft_veo3.rs b/crates/desktop/artcraft/src/core/commands/generate/generate_video/artcraft/handle_artcraft_veo3.rs deleted file mode 100644 index b94f5556b3..0000000000 --- a/crates/desktop/artcraft/src/core/commands/generate/generate_video/artcraft/handle_artcraft_veo3.rs +++ /dev/null @@ -1,78 +0,0 @@ -use crate::core::commands::enqueue::generate_error::GenerateError; -use crate::core::commands::generate::generate_video::artcraft::get_storyteller_creds_or_error::get_storyteller_creds_or_error; -use crate::core::commands::generate::generate_video::request::{TauriGenerateVideoRequest, SoraOrientation}; -use crate::core::commands::enqueue::task_enqueue_success::TaskEnqueueSuccess; -use crate::core::events::basic_sendable_event_trait::BasicSendableEvent; -use crate::core::events::functional_events::show_provider_login_modal_event::ShowProviderLoginModalEvent; -use crate::core::events::generation_events::common::{GenerationAction, GenerationModel}; -use crate::core::events::generation_events::generation_enqueue_failure_event::GenerationEnqueueFailureEvent; -use crate::core::state::app_env_configs::app_env_configs::AppEnvConfigs; -use crate::core::state::data_dir::app_data_root::AppDataRoot; -use crate::services::sora::state::sora_credential_manager::SoraCredentialManager; -use crate::services::sora::state::sora_task_queue::SoraTaskQueue; -use crate::services::sora::utils::upload_images_to_sora::{upload_images_to_sora, UploadImagesToSoraArgs, UploadImagesToSoraResult}; -use crate::services::storyteller::state::storyteller_credential_manager::StorytellerCredentialManager; -use artcraft_api_defs::generate::video::generate_kling_1_6_pro_image_to_video::{GenerateKling16ProAspectRatio, GenerateKling16ProImageToVideoRequest}; -use artcraft_api_defs::generate::video::generate_veo_3_image_to_video::{GenerateVeo3AspectRatio, GenerateVeo3ImageToVideoRequest}; -use enums::common::generation_provider::GenerationProvider; -use enums::tauri::tasks::task_type::TaskType; -use uuid_utils::uuid::generate_random_uuid; -use log::{error, info}; -use artcraft_client::credentials::storyteller_credential_set::StorytellerCredentialSet; -use artcraft_client::endpoints::generate::video::generate_veo_3_image_to_video::generate_veo_3_image_to_video; -use artcraft_client::endpoints::generate::video::multi_function::veo_3p1_multi_function_video_gen::veo_3p1_multi_function_video_gen; -use tauri::AppHandle; -use tokens::tokens::media_files::MediaFileToken; - -pub (super) async fn handle_artcraft_veo3( - request: &TauriGenerateVideoRequest, - app_env_configs: &AppEnvConfigs, - creds: &StorytellerCredentialSet, -) -> Result { - - let uuid_idempotency_token = generate_random_uuid(); - - // TODO: Fix. - let aspect_ratio = match request.sora_orientation { - Some(SoraOrientation::Portrait) => GenerateVeo3AspectRatio::TallNineSixteen, - Some(SoraOrientation::Landscape) => GenerateVeo3AspectRatio::WideSixteenNine, - None => GenerateVeo3AspectRatio::WideSixteenNine, - }; - - let request = GenerateVeo3ImageToVideoRequest { - uuid_idempotency_token, - media_file_token: request.image_media_token.clone(), - prompt: request.prompt.clone(), - aspect_ratio: Some(aspect_ratio), - generate_audio: request.generate_audio, - duration: None, // TODO: Parameterize - resolution: None, // TODO: Parameterize - }; - - let result = generate_veo_3_image_to_video( - &app_env_configs.storyteller_host, - Some(&creds), - request, - ).await; - - let job_token = match result { - Ok(enqueued) => { - info!("Successfully enqueued."); - enqueued.inference_job_token - } - Err(err) => { - error!("Failed to enqueue: {:?}", err); - return Err(GenerateError::from(err)); - } - }; - - Ok(TaskEnqueueSuccess { - task_type: TaskType::VideoGeneration, - model: Some(GenerationModel::Veo3), - provider: GenerationProvider::Artcraft, - provider_job_id: Some(job_token.to_string()), - maybe_queue_status_url: None, - maybe_prompt_token: None, - maybe_queue_response_url: None, - }) -} diff --git a/crates/desktop/artcraft/src/core/commands/generate/generate_video/artcraft/handle_artcraft_veo3_fast.rs b/crates/desktop/artcraft/src/core/commands/generate/generate_video/artcraft/handle_artcraft_veo3_fast.rs deleted file mode 100644 index 91647e1ac1..0000000000 --- a/crates/desktop/artcraft/src/core/commands/generate/generate_video/artcraft/handle_artcraft_veo3_fast.rs +++ /dev/null @@ -1,73 +0,0 @@ -use crate::core::commands::enqueue::generate_error::GenerateError; -use crate::core::commands::generate::generate_video::artcraft::get_storyteller_creds_or_error::get_storyteller_creds_or_error; -use crate::core::commands::generate::generate_video::request::{TauriGenerateVideoRequest, SoraOrientation}; -use crate::core::commands::enqueue::task_enqueue_success::TaskEnqueueSuccess; -use crate::core::events::basic_sendable_event_trait::BasicSendableEvent; -use crate::core::events::functional_events::show_provider_login_modal_event::ShowProviderLoginModalEvent; -use crate::core::events::generation_events::common::{GenerationAction, GenerationModel}; -use crate::core::events::generation_events::generation_enqueue_failure_event::GenerationEnqueueFailureEvent; -use crate::core::state::app_env_configs::app_env_configs::AppEnvConfigs; -use crate::core::state::data_dir::app_data_root::AppDataRoot; -use crate::services::sora::state::sora_credential_manager::SoraCredentialManager; -use crate::services::sora::state::sora_task_queue::SoraTaskQueue; -use crate::services::sora::utils::upload_images_to_sora::{upload_images_to_sora, UploadImagesToSoraArgs, UploadImagesToSoraResult}; -use crate::services::storyteller::state::storyteller_credential_manager::StorytellerCredentialManager; -use artcraft_api_defs::generate::video::generate_kling_1_6_pro_image_to_video::{GenerateKling16ProAspectRatio, GenerateKling16ProImageToVideoRequest}; -use artcraft_api_defs::generate::video::generate_veo_3_fast_image_to_video::GenerateVeo3FastImageToVideoRequest; -use enums::common::generation_provider::GenerationProvider; -use enums::tauri::tasks::task_type::TaskType; -use uuid_utils::uuid::generate_random_uuid; -use log::{error, info}; -use artcraft_client::credentials::storyteller_credential_set::StorytellerCredentialSet; -use artcraft_client::endpoints::generate::video::generate_veo_3_fast_image_to_video::generate_veo_3_fast_image_to_video; -use artcraft_client::endpoints::generate::video::generate_veo_3_image_to_video::generate_veo_3_image_to_video; -use artcraft_client::endpoints::generate::video::multi_function::veo_3p1_multi_function_video_gen::veo_3p1_multi_function_video_gen; -use tauri::AppHandle; -use tokens::tokens::media_files::MediaFileToken; - -pub (super) async fn handle_artcraft_veo3_fast( - request: &TauriGenerateVideoRequest, - app_env_configs: &AppEnvConfigs, - creds: &StorytellerCredentialSet, -) -> Result { - - let uuid_idempotency_token = generate_random_uuid(); - - // TODO: No aspect ratio? - let request = GenerateVeo3FastImageToVideoRequest { - uuid_idempotency_token, - media_file_token: request.image_media_token.clone(), - prompt: request.prompt.clone(), - generate_audio: request.generate_audio, - duration: None, // TODO: Parameterize - resolution: None, // TODO: Parameterize - aspect_ratio: None, // TODO: Parameterize - }; - - let result = generate_veo_3_fast_image_to_video( - &app_env_configs.storyteller_host, - Some(&creds), - request, - ).await; - - let job_token = match result { - Ok(enqueued) => { - info!("Successfully enqueued."); - enqueued.inference_job_token - } - Err(err) => { - error!("Failed to enqueue: {:?}", err); - return Err(GenerateError::from(err)); - } - }; - - Ok(TaskEnqueueSuccess { - task_type: TaskType::VideoGeneration, - model: Some(GenerationModel::Veo3Fast), - provider: GenerationProvider::Artcraft, - provider_job_id: Some(job_token.to_string()), - maybe_queue_status_url: None, - maybe_prompt_token: None, - maybe_queue_response_url: None, - }) -} diff --git a/crates/desktop/artcraft/src/core/commands/generate/generate_video/artcraft/handle_artcraft_veo3p1.rs b/crates/desktop/artcraft/src/core/commands/generate/generate_video/artcraft/handle_artcraft_veo3p1.rs deleted file mode 100644 index 7f50d44443..0000000000 --- a/crates/desktop/artcraft/src/core/commands/generate/generate_video/artcraft/handle_artcraft_veo3p1.rs +++ /dev/null @@ -1,81 +0,0 @@ -use crate::core::commands::enqueue::generate_error::GenerateError; -use crate::core::commands::generate::generate_video::artcraft::get_storyteller_creds_or_error::get_storyteller_creds_or_error; -use crate::core::commands::generate::generate_video::request::{TauriGenerateVideoRequest, SoraOrientation}; -use crate::core::commands::enqueue::task_enqueue_success::TaskEnqueueSuccess; -use crate::core::events::basic_sendable_event_trait::BasicSendableEvent; -use crate::core::events::functional_events::show_provider_login_modal_event::ShowProviderLoginModalEvent; -use crate::core::events::generation_events::common::{GenerationAction, GenerationModel}; -use crate::core::events::generation_events::generation_enqueue_failure_event::GenerationEnqueueFailureEvent; -use crate::core::state::app_env_configs::app_env_configs::AppEnvConfigs; -use crate::core::state::data_dir::app_data_root::AppDataRoot; -use crate::services::sora::state::sora_credential_manager::SoraCredentialManager; -use crate::services::sora::state::sora_task_queue::SoraTaskQueue; -use crate::services::sora::utils::upload_images_to_sora::{upload_images_to_sora, UploadImagesToSoraArgs, UploadImagesToSoraResult}; -use crate::services::storyteller::state::storyteller_credential_manager::StorytellerCredentialManager; -use artcraft_api_defs::generate::video::generate_kling_1_6_pro_image_to_video::{GenerateKling16ProAspectRatio, GenerateKling16ProImageToVideoRequest}; -use artcraft_api_defs::generate::video::multi_function::veo_3p1_multi_function_video_gen::{Veo3p1MultiFunctionVideoGenAspectRatio, Veo3p1MultiFunctionVideoGenDuration, Veo3p1MultiFunctionVideoGenRequest, Veo3p1MultiFunctionVideoGenResolution}; -use enums::common::generation_provider::GenerationProvider; -use enums::tauri::tasks::task_type::TaskType; -use uuid_utils::uuid::generate_random_uuid; -use log::{error, info}; -use artcraft_client::credentials::storyteller_credential_set::StorytellerCredentialSet; -use artcraft_client::endpoints::generate::video::multi_function::veo_3p1_multi_function_video_gen::veo_3p1_multi_function_video_gen; -use tauri::AppHandle; -use tokens::tokens::media_files::MediaFileToken; - -pub (super) async fn handle_artcraft_veo3p1( - request: &TauriGenerateVideoRequest, - app_env_configs: &AppEnvConfigs, - creds: &StorytellerCredentialSet, -) -> Result { - - let uuid_idempotency_token = generate_random_uuid(); - - let aspect_ratio = match request.sora_orientation { - Some(SoraOrientation::Portrait) => Veo3p1MultiFunctionVideoGenAspectRatio::NineBySixteen, - Some(SoraOrientation::Landscape) => Veo3p1MultiFunctionVideoGenAspectRatio::SixteenByNine, - None => Veo3p1MultiFunctionVideoGenAspectRatio::SixteenByNine, - }; - - let request = Veo3p1MultiFunctionVideoGenRequest { - uuid_idempotency_token, - prompt: request.prompt.clone(), - start_frame_image_media_token: request.image_media_token.clone(), - end_frame_image_media_token: request.end_frame_image_media_token.clone(), - aspect_ratio: Some(aspect_ratio), - generate_audio: request.generate_audio, - resolution: Some(Veo3p1MultiFunctionVideoGenResolution::TenEightyP), // TODO: Parameterize - duration: Some(Veo3p1MultiFunctionVideoGenDuration::EightSeconds), // TODO: Parameterize - negative_prompt: None, // TODO: Parameterize - enhance_prompt: None, // NB: Handled downstream. - auto_fix: None, // NB: Handled downstream. - seed: None, // NB: Handled downstream. - }; - - let result = veo_3p1_multi_function_video_gen( - &app_env_configs.storyteller_host, - Some(&creds), - request, - ).await; - - let job_token = match result { - Ok(enqueued) => { - info!("Successfully enqueued."); - enqueued.inference_job_token - } - Err(err) => { - error!("Failed to enqueue: {:?}", err); - return Err(GenerateError::from(err)); - } - }; - - Ok(TaskEnqueueSuccess { - task_type: TaskType::VideoGeneration, - model: Some(GenerationModel::Veo3p1), - provider: GenerationProvider::Artcraft, - provider_job_id: Some(job_token.to_string()), - maybe_queue_status_url: None, - maybe_prompt_token: None, - maybe_queue_response_url: None, - }) -} diff --git a/crates/desktop/artcraft/src/core/commands/generate/generate_video/artcraft/handle_artcraft_veo3p1_fast.rs b/crates/desktop/artcraft/src/core/commands/generate/generate_video/artcraft/handle_artcraft_veo3p1_fast.rs deleted file mode 100644 index 2bdeb1c906..0000000000 --- a/crates/desktop/artcraft/src/core/commands/generate/generate_video/artcraft/handle_artcraft_veo3p1_fast.rs +++ /dev/null @@ -1,81 +0,0 @@ -use crate::core::commands::enqueue::generate_error::GenerateError; -use crate::core::commands::generate::generate_video::artcraft::get_storyteller_creds_or_error::get_storyteller_creds_or_error; -use crate::core::commands::generate::generate_video::request::{TauriGenerateVideoRequest, SoraOrientation}; -use crate::core::commands::enqueue::task_enqueue_success::TaskEnqueueSuccess; -use crate::core::events::basic_sendable_event_trait::BasicSendableEvent; -use crate::core::events::functional_events::show_provider_login_modal_event::ShowProviderLoginModalEvent; -use crate::core::events::generation_events::common::{GenerationAction, GenerationModel}; -use crate::core::events::generation_events::generation_enqueue_failure_event::GenerationEnqueueFailureEvent; -use crate::core::state::app_env_configs::app_env_configs::AppEnvConfigs; -use crate::core::state::data_dir::app_data_root::AppDataRoot; -use crate::services::sora::state::sora_credential_manager::SoraCredentialManager; -use crate::services::sora::state::sora_task_queue::SoraTaskQueue; -use crate::services::sora::utils::upload_images_to_sora::{upload_images_to_sora, UploadImagesToSoraArgs, UploadImagesToSoraResult}; -use crate::services::storyteller::state::storyteller_credential_manager::StorytellerCredentialManager; -use artcraft_api_defs::generate::video::multi_function::veo_3p1_fast_multi_function_video_gen::{Veo3p1FastMultiFunctionVideoGenAspectRatio, Veo3p1FastMultiFunctionVideoGenDuration, Veo3p1FastMultiFunctionVideoGenRequest, Veo3p1FastMultiFunctionVideoGenResolution}; -use enums::common::generation_provider::GenerationProvider; -use enums::tauri::tasks::task_type::TaskType; -use uuid_utils::uuid::generate_random_uuid; -use log::{error, info}; -use artcraft_client::credentials::storyteller_credential_set::StorytellerCredentialSet; -use artcraft_client::endpoints::generate::video::multi_function::veo_3p1_fast_multi_function_video_gen::veo_3p1_fast_multi_function_video_gen; -use artcraft_client::endpoints::generate::video::multi_function::veo_3p1_multi_function_video_gen::veo_3p1_multi_function_video_gen; -use tauri::AppHandle; -use tokens::tokens::media_files::MediaFileToken; - -pub (super) async fn handle_artcraft_veo3p1_fast( - request: &TauriGenerateVideoRequest, - app_env_configs: &AppEnvConfigs, - creds: &StorytellerCredentialSet, -) -> Result { - - let uuid_idempotency_token = generate_random_uuid(); - - let aspect_ratio = match request.sora_orientation { - Some(SoraOrientation::Portrait) => Veo3p1FastMultiFunctionVideoGenAspectRatio::NineBySixteen, - Some(SoraOrientation::Landscape) => Veo3p1FastMultiFunctionVideoGenAspectRatio::SixteenByNine, - None => Veo3p1FastMultiFunctionVideoGenAspectRatio::SixteenByNine, - }; - - let request = Veo3p1FastMultiFunctionVideoGenRequest { - uuid_idempotency_token, - prompt: request.prompt.clone(), - start_frame_image_media_token: request.image_media_token.clone(), - end_frame_image_media_token: request.end_frame_image_media_token.clone(), - aspect_ratio: Some(aspect_ratio), - generate_audio: request.generate_audio, - resolution: Some(Veo3p1FastMultiFunctionVideoGenResolution::TenEightyP), // TODO: Parameterize - duration: Some(Veo3p1FastMultiFunctionVideoGenDuration::EightSeconds), // TODO: Parameterize - negative_prompt: None, // TODO: Parameterize - enhance_prompt: None, // NB: Handled downstream. - auto_fix: None, // NB: Handled downstream. - seed: None, // NB: Handled downstream. - }; - - let result = veo_3p1_fast_multi_function_video_gen( - &app_env_configs.storyteller_host, - Some(&creds), - request, - ).await; - - let job_token = match result { - Ok(enqueued) => { - info!("Successfully enqueued."); - enqueued.inference_job_token - } - Err(err) => { - error!("Failed to enqueue: {:?}", err); - return Err(GenerateError::from(err)); - } - }; - - Ok(TaskEnqueueSuccess { - task_type: TaskType::VideoGeneration, - model: Some(GenerationModel::Veo3p1Fast), - provider: GenerationProvider::Artcraft, - provider_job_id: Some(job_token.to_string()), - maybe_queue_status_url: None, - maybe_prompt_token: None, - maybe_queue_response_url: None, - }) -} diff --git a/crates/desktop/artcraft/src/core/commands/generate/generate_video/artcraft/mod.rs b/crates/desktop/artcraft/src/core/commands/generate/generate_video/artcraft/mod.rs index af73548dee..5dd8e99770 100644 --- a/crates/desktop/artcraft/src/core/commands/generate/generate_video/artcraft/mod.rs +++ b/crates/desktop/artcraft/src/core/commands/generate/generate_video/artcraft/mod.rs @@ -1,16 +1,3 @@ mod get_storyteller_creds_or_error; -mod handle_artcraft_kling_1p6_pro; -mod handle_artcraft_kling_2p1_master; -mod handle_artcraft_kling_2p1_pro; -mod handle_artcraft_kling_2p5_turbo_pro; -mod handle_artcraft_kling_2p6_pro; mod handle_artcraft_video_via_router; -mod handle_artcraft_seedance_1_lite; -mod handle_artcraft_sora2; -mod handle_artcraft_sora2_pro; -mod handle_artcraft_veo2; -mod handle_artcraft_veo3; -mod handle_artcraft_veo3_fast; -mod handle_artcraft_veo3p1; -mod handle_artcraft_veo3p1_fast; -pub (super) mod handle_artcraft_video; \ No newline at end of file +pub (super) mod handle_artcraft_video;