
* Terminate base directory from temp helper * Partial adjust program codebase * Move arguments around * Make `-j` absolete * Resolve args * Fix job register keys * Adjust date test * Finalize temp path
45 lines
1.5 KiB
Python
45 lines
1.5 KiB
Python
import glob
|
|
import os
|
|
from typing import List
|
|
|
|
from facefusion import state_manager
|
|
from facefusion.filesystem import create_directory, move_file, remove_directory
|
|
|
|
|
|
def get_temp_file_path(file_path : str) -> str:
|
|
_, temp_file_extension = os.path.splitext(os.path.basename(file_path))
|
|
temp_directory_path = get_temp_directory_path(file_path)
|
|
return os.path.join(temp_directory_path, 'temp' + temp_file_extension)
|
|
|
|
|
|
def move_temp_file(file_path : str, move_path : str) -> bool:
|
|
temp_file_path = get_temp_file_path(file_path)
|
|
return move_file(temp_file_path, move_path)
|
|
|
|
|
|
def get_temp_directory_path(file_path : str) -> str:
|
|
temp_file_name, _ = os.path.splitext(os.path.basename(file_path))
|
|
return os.path.join(state_manager.get_item('temp_path'), 'facefusion', temp_file_name)
|
|
|
|
|
|
def create_temp_directory(file_path : str) -> bool:
|
|
temp_directory_path = get_temp_directory_path(file_path)
|
|
return create_directory(temp_directory_path)
|
|
|
|
|
|
def clear_temp_directory(file_path : str) -> bool:
|
|
if not state_manager.get_item('keep_temp'):
|
|
temp_directory_path = get_temp_directory_path(file_path)
|
|
return remove_directory(temp_directory_path)
|
|
return True
|
|
|
|
|
|
def get_temp_frame_paths(target_path : str) -> List[str]:
|
|
temp_frames_pattern = get_temp_frames_pattern(target_path, '*')
|
|
return sorted(glob.glob(temp_frames_pattern))
|
|
|
|
|
|
def get_temp_frames_pattern(target_path : str, temp_frame_prefix : str) -> str:
|
|
temp_directory_path = get_temp_directory_path(target_path)
|
|
return os.path.join(temp_directory_path, temp_frame_prefix + '.' + state_manager.get_item('temp_frame_format'))
|