feat: add optional output_dir param to extract_thumbnails
Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
@@ -51,15 +51,19 @@ pub async fn extract_waveform_tiers(
|
||||
pub async fn extract_thumbnails(
|
||||
file_path: String,
|
||||
duration: f64,
|
||||
output_dir: Option<String>,
|
||||
) -> Result<Vec<ThumbnailSpritesheet>, String> {
|
||||
eprintln!(
|
||||
"[video-clipper:thumbnails] starting for '{}' (duration={})",
|
||||
file_path, duration
|
||||
);
|
||||
let result = tokio::task::spawn_blocking(move || {
|
||||
let temp_dir = std::env::temp_dir()
|
||||
.join("video-clipper-thumbs")
|
||||
.join(uuid::Uuid::new_v4().to_string());
|
||||
let temp_dir = match output_dir {
|
||||
Some(dir) => std::path::PathBuf::from(dir),
|
||||
None => std::env::temp_dir()
|
||||
.join("video-clipper-thumbs")
|
||||
.join(uuid::Uuid::new_v4().to_string()),
|
||||
};
|
||||
let temp_dir_str = temp_dir.to_string_lossy().to_string();
|
||||
thumbnail_extractor::extract_thumbnails(&file_path, duration, &temp_dir_str)
|
||||
})
|
||||
|
||||
@@ -41,11 +41,13 @@ export async function extractWaveformTiers(
|
||||
|
||||
export async function extractThumbnails(
|
||||
filePath: string,
|
||||
duration: number
|
||||
duration: number,
|
||||
outputDir?: string
|
||||
): Promise<ThumbnailSpritesheet[]> {
|
||||
return invoke<ThumbnailSpritesheet[]>('extract_thumbnails', {
|
||||
filePath,
|
||||
duration,
|
||||
outputDir: outputDir ?? null,
|
||||
});
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user