From ca5b7a8f28a387d1212bd8cfd601e5a2b506a5b6 Mon Sep 17 00:00:00 2001 From: Brian Date: Tue, 14 Apr 2026 23:02:52 -0400 Subject: [PATCH] Make musetalk a proper Python package Add missing __init__.py files so `musetalk.*` subpackages import without relying on namespace-package behavior or sys.path hacks, and narrow the root `/models/` gitignore so `musetalk/models/__init__.py` is tracked. Also add a minimal pyproject.toml so the source can be installed with `pip install .` (or `pip install -e .`) without pulling the pinned requirements.txt, which consumers typically need to override. Co-Authored-By: Claude Opus 4.6 --- .gitignore | 2 +- musetalk/__init__.py | 0 musetalk/data/__init__.py | 0 musetalk/loss/__init__.py | 0 musetalk/models/__init__.py | 0 musetalk/utils/dwpose/__init__.py | 0 pyproject.toml | 15 +++++++++++++++ 7 files changed, 16 insertions(+), 1 deletion(-) create mode 100644 musetalk/__init__.py create mode 100644 musetalk/data/__init__.py create mode 100644 musetalk/loss/__init__.py create mode 100644 musetalk/models/__init__.py create mode 100644 musetalk/utils/dwpose/__init__.py create mode 100644 pyproject.toml diff --git a/.gitignore b/.gitignore index c83750f..9d4bcda 100644 --- a/.gitignore +++ b/.gitignore @@ -5,7 +5,7 @@ *.pyc .ipynb_checkpoints results/ -models/ +/models/ **/__pycache__/ *.py[cod] *$py.class diff --git a/musetalk/__init__.py b/musetalk/__init__.py new file mode 100644 index 0000000..e69de29 diff --git a/musetalk/data/__init__.py b/musetalk/data/__init__.py new file mode 100644 index 0000000..e69de29 diff --git a/musetalk/loss/__init__.py b/musetalk/loss/__init__.py new file mode 100644 index 0000000..e69de29 diff --git a/musetalk/models/__init__.py b/musetalk/models/__init__.py new file mode 100644 index 0000000..e69de29 diff --git a/musetalk/utils/dwpose/__init__.py b/musetalk/utils/dwpose/__init__.py new file mode 100644 index 0000000..e69de29 diff --git a/pyproject.toml b/pyproject.toml new file mode 100644 index 0000000..06afa63 --- /dev/null +++ b/pyproject.toml @@ -0,0 +1,15 @@ +[build-system] +requires = ["setuptools>=64"] +build-backend = "setuptools.build_meta" + +[project] +name = "musetalk" +version = "1.5.0" +description = "MuseTalk: audio-driven lip-sync (source-only install; dependencies managed by the consumer)" +readme = "README.md" +requires-python = ">=3.10" +license = { text = "MIT" } + +[tool.setuptools.packages.find] +include = ["musetalk*"] +exclude = ["scripts*", "assets*", "data*", "configs*"]