facetest / facefusion /hash_helper.py
LULDev's picture
Upload folder using huggingface_hub
a1da63c verified
raw
history blame contribute delete
830 Bytes
import os
import zlib
from typing import Optional
from facefusion.filesystem import is_file
def create_hash(content : bytes) -> str:
return format(zlib.crc32(content), '08x')
def validate_hash(validate_path : str) -> bool:
hash_path = get_hash_path(validate_path)
if is_file(hash_path):
with open(hash_path, 'r') as hash_file:
hash_content = hash_file.read().strip()
with open(validate_path, 'rb') as validate_file:
validate_content = validate_file.read()
return create_hash(validate_content) == hash_content
return False
def get_hash_path(validate_path : str) -> Optional[str]:
if is_file(validate_path):
validate_directory_path, _ = os.path.split(validate_path)
validate_file_name, _ = os.path.splitext(_)
return os.path.join(validate_directory_path, validate_file_name + '.hash')
return None