| import multiprocessing | |
| import gradio | |
| import facefusion.globals | |
| from facefusion.uis.components import about, frame_processors, frame_processors_options, execution, execution_thread_count, execution_queue_count, memory, temp_frame, output_options, common_options, source, target, output, preview, trim_frame, face_analyser, face_selector, face_masker | |
| def pre_check() -> bool: | |
| return True | |
| def pre_render() -> bool: | |
| return True | |
| def render() -> gradio.Blocks: | |
| with gradio.Blocks() as layout: | |
| with gradio.Row(): | |
| with gradio.Column(scale = 2): | |
| with gradio.Blocks(): | |
| about.render() | |
| with gradio.Blocks(): | |
| frame_processors.render() | |
| with gradio.Blocks(): | |
| frame_processors_options.render() | |
| with gradio.Blocks(): | |
| execution.render() | |
| execution_thread_count.render() | |
| execution_queue_count.render() | |
| with gradio.Blocks(): | |
| memory.render() | |
| with gradio.Blocks(): | |
| temp_frame.render() | |
| with gradio.Blocks(): | |
| output_options.render() | |
| with gradio.Column(scale = 2): | |
| with gradio.Blocks(): | |
| source.render() | |
| with gradio.Blocks(): | |
| target.render() | |
| with gradio.Blocks(): | |
| output.render() | |
| with gradio.Column(scale = 3): | |
| with gradio.Blocks(): | |
| preview.render() | |
| with gradio.Blocks(): | |
| trim_frame.render() | |
| with gradio.Blocks(): | |
| face_selector.render() | |
| with gradio.Blocks(): | |
| face_masker.render() | |
| with gradio.Blocks(): | |
| face_analyser.render() | |
| with gradio.Blocks(): | |
| common_options.render() | |
| return layout | |
| def listen() -> None: | |
| frame_processors.listen() | |
| frame_processors_options.listen() | |
| execution.listen() | |
| execution_thread_count.listen() | |
| execution_queue_count.listen() | |
| memory.listen() | |
| temp_frame.listen() | |
| output_options.listen() | |
| source.listen() | |
| target.listen() | |
| output.listen() | |
| preview.listen() | |
| trim_frame.listen() | |
| face_selector.listen() | |
| face_masker.listen() | |
| face_analyser.listen() | |
| common_options.listen() | |
| def run(ui : gradio.Blocks) -> None: | |
| concurrency_count = min(8, multiprocessing.cpu_count()) | |
| ui.queue(concurrency_count = concurrency_count).launch(show_api = False, quiet = True, inbrowser = facefusion.globals.open_browser, share=True) | |