mirror of
https://github.com/storytold/artcraft.git
synced 2026-11-04 17:38:10 +00:00
sora 2 i2v
This commit is contained in:
1 parent
b6ef07dbb4
commit
c02bbbf30a
3 files changed
+51
-2
No files matched your search
@@ -1 +1,2 @@
|
||||
pub mod sora_2_pro_image_to_video;
|
||||
pub mod sora_2_pro_image_to_video;
|
||||
pub mod sora_2_image_to_video;
|
||||
+48
@@ -0,0 +1,48 @@
|
||||
use crate::prelude::{Deserialize, FalRequest, Serialize};
|
||||
|
||||
#[derive(Debug, Serialize, Deserialize, Default)]
|
||||
pub struct Sora2ImageToVideoInput {
|
||||
pub prompt: String,
|
||||
|
||||
/// Starting frame
|
||||
pub image_url: String,
|
||||
|
||||
/// Possible enum values: auto, 720p
|
||||
/// Default value auto
|
||||
#[serde(skip_serializing_if = "Option::is_none")]
|
||||
pub resolution: Option<String>,
|
||||
|
||||
/// Possible enum values: auto, 9:16, 16:9
|
||||
/// Default value "auto"
|
||||
#[serde(skip_serializing_if = "Option::is_none")]
|
||||
pub aspect_ratio: Option<String>,
|
||||
|
||||
/// Duration in seconds
|
||||
/// Possible enum values: 4, 8, 12
|
||||
/// Default value 4
|
||||
#[serde(skip_serializing_if = "Option::is_none")]
|
||||
pub duration: Option<String>,
|
||||
|
||||
/// Whether to delete the video after generation for privacy reasons.
|
||||
/// If True, the video cannot be used for remixing and will be permanently deleted.
|
||||
/// Default value: true
|
||||
#[serde(skip_serializing_if = "Option::is_none")]
|
||||
pub delete_video: Option<bool>,
|
||||
}
|
||||
|
||||
#[derive(Debug, Serialize, Deserialize)]
|
||||
pub struct Sora2ImageToVideoOutput {
|
||||
pub video: VideoFile,
|
||||
}
|
||||
|
||||
#[derive(Debug, Serialize, Deserialize, Default)]
|
||||
pub struct VideoFile {
|
||||
/// The URL where the file can be downloaded from.
|
||||
pub url: String,
|
||||
}
|
||||
|
||||
pub fn sora_2_image_to_video(
|
||||
params: Sora2ImageToVideoInput,
|
||||
) -> FalRequest<Sora2ImageToVideoInput, Sora2ImageToVideoOutput> {
|
||||
FalRequest::new("fal-ai/sora-2/image-to-video", params)
|
||||
}
|
||||
+1
-1
@@ -41,7 +41,7 @@ pub struct VideoFile {
|
||||
pub url: String,
|
||||
}
|
||||
|
||||
pub fn veo_3p1_fast_first_frame_image_to_video(
|
||||
pub fn sora_2_pro_image_to_video(
|
||||
params: Sora2ProImageToVideoInput,
|
||||
) -> FalRequest<Sora2ProImageToVideoInput, Sora2ProImageToVideoOutput> {
|
||||
FalRequest::new("fal-ai/sora-2/image-to-video/pro", params)
|
||||
|
||||
Reference in new issue
Block a user