facebookresearch / facebookresearch/sam3
[Dep] "decord" package is not available on aarch64 (ARM64) platforms
- Dominant language
- Python
- Stars
- 11.7k
- Forks
- 1.8k
- PR merge metrics
- No merged PRs in 30d
Description
I am trying to run the notebooks provided in this repository.
However, the dependency `decord` does not provide pre-built wheels for the `aarch64` architecture (e.g., Apple Silicon Macs, NVIDIA DGX Spark, NVIDIA Jetson).
Attempting to install dependencies results in a build failure or "No matching distribution found" error for `decord` on these platforms.
### To Reproduce
1. Set up an environment on an ARM64 machine (e.g., Mac M1/M2/M3 or Ubuntu on ARM).
2. Attempt to install dependencies with `notebooks` extra:
```bash
pip install -e ".[notebooks]"
```
3. Observe the installation failure.
### Error Logs
```bash
Obtaining file:///home//sam3
Installing build dependencies ... done
Checking if build backend supports build_editable ... done
Getting requirements to build editable ... done
Preparing editable metadata (pyproject.toml) ... done
Collecting timm>=1.0.17 (from sam3==0.1.0)
Downloading timm-1.0.22-py3-none-any.whl.metadata (63 kB)
Collecting numpy==1.26 (from sam3==0.1.0)
Downloading numpy-1.26.0-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.metadata (58 kB)
Collecting tqdm (from sam3==0.1.0)
Using cached tqdm-4.67.1-py3-none-any.whl.metadata (57 kB)
Collecting ftfy==6.1.1 (from sam3==0.1.0)
Downloading ftfy-6.1.1-py3-none-any.whl.metadata (6.1 kB)
Collecting regex (from sam3==0.1.0)
Using cached regex-2025.11.3-cp312-cp312-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl.metadata (40 kB)
Collecting iopath>=0.1.10 (from sam3==0.1.0)
Downloading iopath-0.1.10.tar.gz (42 kB)
Installing build dependencies ... done
Getting requirements to build wheel ... done
Preparing metadata (pyproject.toml) ... done
Requirement already satisfied: typing_extensions in /home//miniconda3/envs/sam3/lib/python3.12/site-packages (from sam3==0.1.0) (4.15.0)
Collecting huggingface_hub (from sam3==0.1.0)
Downloading huggingface_hub-1.1.5-py3-none-any.whl.metadata (13 kB)
Collecting matplotlib (from sam3==0.1.0)
Downloading matplotlib-3.10.7-cp312-cp312-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl.metada
ta (11 kB)
Collecting jupyter (from sam3==0.1.0)
Downloading jupyter-1.1.1-py2.py3-none-any.whl.metadata (2.0 kB)
Collecting notebook (from sam3==0.1.0)
Downloading notebook-7.5.0-py3-none-any.whl.metadata (10 kB)
Collecting ipywidgets (from sam3==0.1.0)
Downloading ipywidgets-8.1.8-py3-none-any.whl.metadata (2.4 kB)
Collecting ipycanvas (from sam3==0.1.0)
Downloading ipycanvas-0.14.2-py2.py3-none-any.whl.metadata (6.5 kB)
Collecting ipympl (from sam3==0.1.0)
Downloading ipympl-0.9.8-py3-none-any.whl.metadata (8.9 kB)
Collecting pycocotools (from sam3==0.1.0)
Downloading pycocotools-2.0.10-cp312-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.metadata (1.3 kB)
INFO: pip is looking at multiple versions of sam3[notebooks] to determine which version is compatible with other requirements. This could take a while.
ERROR: Ignored the following versions that require a different python version: 1.21.2 Requires-Python >=3.7,<3.11; 1.21.3 Requires-Python >=3.7,<3.11; 1.21.4 Requires-Python >=3.7,<3.11; 1.21.5 Requires-Python >=3.7,<3.11; 1.21.6 Requires-Python >=3.7,<3.11
ERROR: Could not find a version that satisfies the requirement decord; extra == "notebooks" (from sam3[notebooks]) (from versions: none)
ERROR: No matching distribution found for decord; extra == "notebooks"
```
### Environment
OS: Ubuntu 24.04.3 LTS
Python version: 3.12
CUDA version: 13.0
Hardware: NVIDIA DGX Spark
Contributor guide
Research direction
Start by reproducing `pip install -e ".[notebooks]"` on an ARM64 environment and locate the dependency declaration for the `notebooks` extra. Investigate how `decord` is specified and verify the chosen dependency approach allows the notebooks extra to install successfully on ARM64 without breaking supported platforms.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- python
- Domain
- build-system
- Issue type
- Bug
- Difficulty
- 3/5
- Estimated time
- 1-2 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 35/100