From 7dbe17596f405f7883f9f05a0924ab08394fef9f Mon Sep 17 00:00:00 2001 From: henryruhs Date: Tue, 11 Feb 2025 16:14:06 +0100 Subject: [PATCH] Create preview when video is not playable --- facefusion/uis/overrides.py | 17 +++++++++++++++++ 1 file changed, 17 insertions(+) diff --git a/facefusion/uis/overrides.py b/facefusion/uis/overrides.py index e92a423..c97ddc6 100644 --- a/facefusion/uis/overrides.py +++ b/facefusion/uis/overrides.py @@ -1,3 +1,5 @@ +from gradio.processing_utils import video_is_playable + from facefusion import ffmpeg_builder from facefusion.ffmpeg import run_ffmpeg from facefusion.filesystem import get_file_size @@ -22,6 +24,21 @@ def convert_video_to_playable_mp4(video_path : str) -> str: if process.returncode == 0: return temp_video_path + + if not video_is_playable(video_path): + create_temp_directory(video_path) + temp_video_path = get_temp_file_path(video_path) + commands = ffmpeg_builder.chain( + ffmpeg_builder.set_input(video_path), + ffmpeg_builder.force_output(temp_video_path) + ) + + process = run_ffmpeg(commands) + process.communicate() + + if process.returncode == 0: + return temp_video_path + return video_path