@@ -4,7 +4,7 @@ build-backend = "setuptools.build_meta"
44
55[project ]
66name = " videoannotator"
7- version = " 1.4.2 "
7+ version = " 1.4.3 "
88description = " A modern, modular toolkit for analyzing, processing, and visualizing human interaction videos"
99readme = " README.md"
1010license = " MIT"
@@ -31,8 +31,8 @@ dependencies = [
3131 " librosa>=0.10.0" ,
3232 " matplotlib>=3.9.2" ,
3333 " moviepy>=1.0.3" ,
34- # Pin to a stable earlier version to avoid installation metadata issues in CI
35- " openai-whisper==20240930 " ,
34+ # sdist-only release; built from source at install (see tool.uv.extra-build-dependencies)
35+ " openai-whisper>=20250625 " ,
3636 " numba>=0.60.0" , # Ensure Python 3.12 compatibility
3737 " openpyxl" ,
3838 " pandas>=2.2.2" ,
@@ -46,16 +46,19 @@ dependencies = [
4646 " ultralytics>=8.3.0" ,
4747 " supervision>=0.16.0" ,
4848 # Note: PyTorch with CUDA - Use UV_EXTRA_INDEX_URL=https://download.pytorch.org/whl/cu124 for CUDA builds
49- " torch>=2.0.0" ,
50- " torchvision>=0.15.0" ,
49+ # Pin the torch trio to a matched, tested release. cu124 build on Linux
50+ # (via tool.uv.sources); CPU build from PyPI on macOS/Windows. Newer
51+ # torchaudio (>=2.9) removed AudioMetaData, which the pipelines rely on.
52+ " torch==2.6.0" ,
53+ " torchvision==0.21.0" ,
5154 " timm>=0.9.0" ,
5255 # Audio processing - Core packages that should work
5356 " pyannote.audio>=3.3.2" ,
5457 " pyannote.core>=5.0.0" ,
5558 " pyannote.database>=5.1.0" ,
5659 " pyannote.metrics>=3.2.1" ,
5760 " pyannote.pipeline>=3.0.1" ,
58- " torchaudio>=2.0 .0" ,
61+ " torchaudio==2.6 .0" ,
5962 # Scene detection and video understanding
6063 " scenedetect[opencv]>=0.6.3" ,
6164 " transformers>=4.40.0" ,
@@ -149,17 +152,19 @@ videoannotator = "videoannotator.cli:app"
149152# uv-native config - empty is fine for now
150153
151154[tool .uv .extra-build-dependencies ]
152- openai-whisper = [" setuptools==69.0.3 " , " wheel" ]
155+ openai-whisper = [" setuptools" , " wheel" ]
153156
154157[[tool .uv .index ]]
155158name = " pytorch-cu124"
156159url = " https://download.pytorch.org/whl/cu124"
157160explicit = true
158161
162+ # CUDA wheels only exist for Linux/Windows; restrict the cu124 index to Linux
163+ # so macOS and other platforms resolve torch from PyPI (CPU build).
159164[tool .uv .sources ]
160- torch = { index = " pytorch-cu124" }
161- torchvision = { index = " pytorch-cu124" }
162- torchaudio = { index = " pytorch-cu124" }
165+ torch = [ { index = " pytorch-cu124" , marker = " sys_platform == 'linux' " }]
166+ torchvision = [ { index = " pytorch-cu124" , marker = " sys_platform == 'linux' " }]
167+ torchaudio = [ { index = " pytorch-cu124" , marker = " sys_platform == 'linux' " }]
163168
164169[tool .ruff ]
165170line-length = 88 # Keep existing Black line length for consistency
@@ -311,6 +316,8 @@ dev = [
311316 " pytest-asyncio>=1.1.0" ,
312317 " pytest-cov>=4.0.0" ,
313318 " ruff>=0.14.0" ,
319+ " types-PyYAML>=6.0.0" ,
320+ " types-requests>=2.31.0" ,
314321]
315322
316323[[tool .mypy .overrides ]]
0 commit comments