Compare commits

..

No commits in common. "6e618baf3455d866afcbf21de80be59bdcefd103" and "0e481609ea1dbbe85fca9dbb00fc365b9197bd06" have entirely different histories.

4 changed files with 2 additions and 38 deletions

View File

@ -45,16 +45,10 @@ Track and change faces on the fly.
## Quick Start (Windows / Nvidia)
[![Download](https://github.com/user-attachments/assets/3e3e252a-4bfa-41fb-a88c-84557402a7c7)](https://hacksider.gumroad.com/l/vccdmm)
[Download latest pre-built version with CUDA support](https://hacksider.gumroad.com/l/vccdmm) - No Manual Installation/Downloading required.
## Installation (Manual)
**Please be aware that the installation needs technical skills and is NOT for beginners, consider downloading the prebuilt. Please do NOT open platform and installation related issues on GitHub before discussing it on the discord server.**
Please be aware that the installation needs technical skills and is NOT for beginners. Please do NOT open platform and installation related issues on GitHub before discussing it on the discord server.
### Basic Installation (CPU)
This is more likely to work on your computer but will be slower as it utilizes the CPU.
@ -392,5 +386,3 @@ This is an open-source project developed in our free time. Updates may be delaye
<a href="https://github.com/hacksider/Deep-Live-Cam/graphs/contributors" target="_blank">
<img src="https://contrib.rocks/image?repo=hacksider/Deep-Live-Cam" />
</a>
![Alt](https://repobeats.axiom.co/api/embed/fec8e29c45dfdb9c5916f3a7830e1249308d20e1.svg "Repobeats analytics image")

BIN
docs/demo.gif 100644

Binary file not shown.

After

Width:  |  Height:  |  Size: 6.2 MiB

BIN
docs/gui-demo.jpg 100644

Binary file not shown.

After

Width:  |  Height:  |  Size: 80 KiB

View File

@ -5,7 +5,7 @@ from typing import Callable, Tuple
import cv2
from PIL import Image, ImageOps
import tkinterdnd2 as tkdnd
import time
import modules.globals
import modules.metadata
from modules.face_analyser import (
@ -682,29 +682,6 @@ def create_preview(parent: ctk.CTkToplevel) -> ctk.CTkToplevel:
)
preview_slider.pack(fill="x", padx=20, pady=10)
last_update_time = 0
debounce_delay = 0.1 # Adjust this delay as needed (in seconds)
def on_key_press(event):
nonlocal last_update_time
current_time = time.time()
if current_time - last_update_time > debounce_delay:
current_frame = int(preview_slider.get())
if event.keysym == "Left":
new_frame = max(0, current_frame - 1)
elif event.keysym == "Right":
new_frame = min(int(preview_slider.cget("to")), current_frame + 1)
else:
return # Ignore other key presses
preview_slider.set(new_frame)
update_preview(new_frame)
last_update_time = current_time
preview.bind("<Left>", on_key_press)
preview.bind("<Right>", on_key_press)
return preview
@ -902,11 +879,6 @@ def init_preview() -> None:
preview_slider.configure(to=video_frame_total)
preview_slider.pack(fill="x")
preview_slider.set(0)
# Disable slider if it's an image
if is_image(modules.globals.target_path):
preview_slider.configure(state="disabled")
else:
preview_slider.configure(state="normal")
def update_preview(frame_number: int = 0) -> None: