diff --git a/facefusion/video_manager.py b/facefusion/video_manager.py index c86cd6d5..cc773049 100644 --- a/facefusion/video_manager.py +++ b/facefusion/video_manager.py @@ -55,7 +55,8 @@ def conditional_set_video_reader_position(video_reader : VideoReader, frame_posi def restart_video_reader(video_reader : VideoReader, frame_position : int) -> None: - video_reader.get('process').terminate() + video_reader.get('process').kill() + video_reader.get('process').wait() video_reader['process'] = create_video_reader_process(video_reader.get('video_path'), frame_position, video_reader.get('fps')) video_reader['position'] = frame_position video_reader['frame_buffer'].clear() @@ -154,6 +155,7 @@ def close_video_writer(video_writer : subprocess.Popen[bytes]) -> bool: def clear_video_pool() -> None: for video_writer in VIDEO_POOL_SET.get('writer').values(): video_writer.terminate() + video_writer.wait() for video_reader in VIDEO_POOL_SET.get('reader').values(): video_reader.get('process').terminate()