Spaces:
Configuration error
Configuration error
| version = 'v8.3' | |
| import os | |
| import re | |
| import argparse | |
| import shutil | |
| import subprocess | |
| from IPython.display import clear_output | |
| from easy_functions import (format_time, | |
| load_file_from_url, | |
| load_model, | |
| load_predictor) | |
| # Get the location of the basicsr package | |
| import os | |
| import shutil | |
| import subprocess | |
| import warnings | |
| warnings.filterwarnings("ignore", category=UserWarning, module="torchvision.transforms.functional_tensor") | |
| # Get the location of the basicsr package | |
| def get_basicsr_location(): | |
| result = subprocess.run(['pip', 'show', 'basicsr'], capture_output=True, text=True) | |
| for line in result.stdout.split('\n'): | |
| if 'Location: ' in line: | |
| return line.split('Location: ')[1] | |
| return None | |
| # Move and replace a file to the basicsr location | |
| def move_and_replace_file_to_basicsr(file_name): | |
| basicsr_location = get_basicsr_location() | |
| if basicsr_location: | |
| destination = os.path.join(basicsr_location, file_name) | |
| # Move and replace the file | |
| shutil.copyfile(file_name, destination) | |
| print(f'File replaced at {destination}') | |
| else: | |
| print('Could not find basicsr location.') | |
| # Example usage | |
| file_to_replace = 'degradations.py' # Replace with your file name | |
| move_and_replace_file_to_basicsr(file_to_replace) | |
| from enhance import load_sr | |
| working_directory = os.getcwd() | |
| # download and initialize both wav2lip models | |
| print("downloading wav2lip essentials") | |
| load_file_from_url( | |
| url="https://github.com/anothermartz/Easy-Wav2Lip/releases/download/Prerequesits/Wav2Lip_GAN.pth", | |
| model_dir="checkpoints", | |
| progress=True, | |
| file_name="Wav2Lip_GAN.pth", | |
| ) | |
| model = load_model(os.path.join(working_directory, "checkpoints", "Wav2Lip_GAN.pth")) | |
| print("wav2lip_gan loaded") | |
| load_file_from_url( | |
| url="https://github.com/anothermartz/Easy-Wav2Lip/releases/download/Prerequesits/Wav2Lip.pth", | |
| model_dir="checkpoints", | |
| progress=True, | |
| file_name="Wav2Lip.pth", | |
| ) | |
| model = load_model(os.path.join(working_directory, "checkpoints", "Wav2Lip.pth")) | |
| print("wav2lip loaded") | |
| # download gfpgan files | |
| print("downloading gfpgan essentials") | |
| load_file_from_url( | |
| url="https://github.com/anothermartz/Easy-Wav2Lip/releases/download/Prerequesits/GFPGANv1.4.pth", | |
| model_dir="checkpoints", | |
| progress=True, | |
| file_name="GFPGANv1.4.pth", | |
| ) | |
| load_sr() | |
| # load face detectors | |
| print("initializing face detectors") | |
| load_file_from_url( | |
| url="https://github.com/anothermartz/Easy-Wav2Lip/releases/download/Prerequesits/shape_predictor_68_face_landmarks_GTX.dat", | |
| model_dir="checkpoints", | |
| progress=True, | |
| file_name="shape_predictor_68_face_landmarks_GTX.dat", | |
| ) | |
| load_predictor() | |
| # write a file to signify setup is done | |
| with open("installed.txt", "w") as f: | |
| f.write(version) | |
| print("Installation complete!") | |
| print( | |
| "If you just updated from v8 - make sure to download the updated Easy-Wav2Lip.bat too!" | |
| ) | |