diff --git a/facefusion/workflows/audio_to_image.py b/facefusion/workflows/audio_to_image.py index db0476f5..a5d1e33c 100644 --- a/facefusion/workflows/audio_to_image.py +++ b/facefusion/workflows/audio_to_image.py @@ -3,7 +3,8 @@ from functools import partial from facefusion import process_manager from facefusion.types import ErrorCode from facefusion.workflows.as_frames import create_temp_frames -from facefusion.workflows.core import analyse_image, clear, process_frames, setup +from facefusion.workflows.core import clear, process_frames, setup +from facefusion.workflows.to_image import analyse_image from facefusion.workflows.to_video import finalize_video, merge_frames, restore_audio diff --git a/facefusion/workflows/audio_to_image_as_frames.py b/facefusion/workflows/audio_to_image_as_frames.py index d2a1381b..9f14bf25 100644 --- a/facefusion/workflows/audio_to_image_as_frames.py +++ b/facefusion/workflows/audio_to_image_as_frames.py @@ -3,7 +3,8 @@ from functools import partial from facefusion import process_manager from facefusion.types import ErrorCode from facefusion.workflows.as_frames import copy_temp_frames, create_temp_frames, finalize_frames -from facefusion.workflows.core import analyse_image, clear, process_frames, setup +from facefusion.workflows.core import clear, process_frames, setup +from facefusion.workflows.to_image import analyse_image def process(start_time : float) -> ErrorCode: diff --git a/facefusion/workflows/core.py b/facefusion/workflows/core.py index 52827d6a..25fe9544 100644 --- a/facefusion/workflows/core.py +++ b/facefusion/workflows/core.py @@ -4,7 +4,7 @@ from typing import List import numpy from tqdm import tqdm -from facefusion import content_analyser, logger, process_manager, state_manager, translator +from facefusion import logger, process_manager, state_manager, translator from facefusion.audio import create_empty_audio_frame, get_audio_frame, get_voice_frame from facefusion.common_helper import get_first from facefusion.filesystem import filter_audio_paths @@ -33,12 +33,6 @@ def clear() -> ErrorCode: return 0 -def analyse_image() -> ErrorCode: - if content_analyser.analyse_image(state_manager.get_item('target_path')): - return 3 - return 0 - - def conditional_get_source_audio_frame(frame_number : int) -> AudioFrame: if state_manager.get_item('workflow') in [ 'audio-to-image:frames', 'audio-to-image:video', 'image-to-video' ]: source_audio_path = get_first(filter_audio_paths(state_manager.get_item('source_paths'))) diff --git a/facefusion/workflows/image_to_image.py b/facefusion/workflows/image_to_image.py index f24cf8e9..ed9f3654 100644 --- a/facefusion/workflows/image_to_image.py +++ b/facefusion/workflows/image_to_image.py @@ -2,8 +2,8 @@ from functools import partial from facefusion import process_manager from facefusion.types import ErrorCode -from facefusion.workflows.core import analyse_image, clear, setup -from facefusion.workflows.to_image import finalize_image, prepare_image, process_image +from facefusion.workflows.core import clear, setup +from facefusion.workflows.to_image import analyse_image, finalize_image, prepare_image, process_image def process(start_time : float) -> ErrorCode: diff --git a/facefusion/workflows/to_image.py b/facefusion/workflows/to_image.py index dbd1adb2..119cac26 100644 --- a/facefusion/workflows/to_image.py +++ b/facefusion/workflows/to_image.py @@ -1,4 +1,4 @@ -from facefusion import ffmpeg, logger, process_manager, state_manager, translator +from facefusion import content_analyser, ffmpeg, logger, process_manager, state_manager, translator from facefusion.filesystem import is_image from facefusion.temp_helper import get_temp_file_path from facefusion.time_helper import calculate_end_time @@ -7,6 +7,12 @@ from facefusion.vision import detect_image_resolution, pack_resolution, restrict from facefusion.workflows.core import is_process_stopping, process_temp_frame +def analyse_image() -> ErrorCode: + if content_analyser.analyse_image(state_manager.get_item('target_path')): + return 3 + return 0 + + def prepare_image() -> ErrorCode: output_image_resolution = scale_resolution(detect_image_resolution(state_manager.get_item('target_path')), state_manager.get_item('output_image_scale')) temp_image_resolution = restrict_image_resolution(state_manager.get_item('target_path'), output_image_resolution)