diff --git a/README.md b/README.md index 4483940d..20ebeee8 100644 --- a/README.md +++ b/README.md @@ -98,14 +98,14 @@ conda create -y -n lerobot python=3.10 conda activate lerobot ``` -When using `miniconda`, if you don't have `ffmpeg` in your environment: +When using `miniconda`, install `ffmpeg` in your environment: ```bash -conda install ffmpeg +conda install ffmpeg -c conda-forge ``` Install 🤗 LeRobot: ```bash -pip install --no-binary=av -e . +pip install -e . ``` > **NOTE:** If you encounter build errors, you may need to install additional dependencies (`cmake`, `build-essential`, and `ffmpeg libs`). On Linux, run: @@ -118,7 +118,7 @@ For simulations, 🤗 LeRobot comes with gymnasium environments that can be inst For instance, to install 🤗 LeRobot with aloha and pusht, use: ```bash -pip install --no-binary=av -e ".[aloha, pusht]" +pip install -e ".[aloha, pusht]" ``` To use [Weights and Biases](https://docs.wandb.ai/quickstart) for experiment tracking, log in with diff --git a/examples/10_use_so100.md b/examples/10_use_so100.md index 8fb6d3b5..c75a9881 100644 --- a/examples/10_use_so100.md +++ b/examples/10_use_so100.md @@ -57,9 +57,15 @@ conda activate lerobot git clone https://github.com/huggingface/lerobot.git ~/lerobot ``` -#### 5. Install LeRobot with dependencies for the feetech motors: +#### 5. Install ffmpeg in your environment: +When using `miniconda`, install `ffmpeg` in your environment: ```bash -cd ~/lerobot && pip install --no-binary=av -e ".[feetech]" +conda install ffmpeg -c conda-forge +``` + +#### 6. Install LeRobot with dependencies for the feetech motors: +```bash +cd ~/lerobot && pip install -e ".[feetech]" ``` Great :hugs:! You are now done installing LeRobot and we can begin assembling the SO100 arms :robot:. diff --git a/examples/11_use_lekiwi.md b/examples/11_use_lekiwi.md index 215419e1..05c12a61 100644 --- a/examples/11_use_lekiwi.md +++ b/examples/11_use_lekiwi.md @@ -67,9 +67,15 @@ conda activate lerobot git clone https://github.com/huggingface/lerobot.git ~/lerobot ``` -#### 5. Install LeRobot with dependencies for the feetech motors: +#### 5. Install ffmpeg in your environment: +When using `miniconda`, install `ffmpeg` in your environment: ```bash -cd ~/lerobot && pip install --no-binary=av -e ".[feetech]" +conda install ffmpeg -c conda-forge +``` + +#### 6. Install LeRobot with dependencies for the feetech motors: +```bash +cd ~/lerobot && pip install -e ".[feetech]" ``` ## C. Install LeRobot on laptop @@ -108,9 +114,15 @@ conda activate lerobot git clone https://github.com/huggingface/lerobot.git ~/lerobot ``` -#### 5. Install LeRobot with dependencies for the feetech motors: +#### 5. Install ffmpeg in your environment: +When using `miniconda`, install `ffmpeg` in your environment: ```bash -cd ~/lerobot && pip install --no-binary=av -e ".[feetech]" +conda install ffmpeg -c conda-forge +``` + +#### 6. Install LeRobot with dependencies for the feetech motors: +```bash +cd ~/lerobot && pip install -e ".[feetech]" ``` Great :hugs:! You are now done installing LeRobot and we can begin assembling the SO100 arms and Mobile base :robot:. diff --git a/examples/11_use_moss.md b/examples/11_use_moss.md index 7b1be232..45584149 100644 --- a/examples/11_use_moss.md +++ b/examples/11_use_moss.md @@ -31,9 +31,15 @@ conda create -y -n lerobot python=3.10 && conda activate lerobot git clone https://github.com/huggingface/lerobot.git ~/lerobot ``` -5. Install LeRobot with dependencies for the feetech motors: +5. Install ffmpeg in your environment: +When using `miniconda`, install `ffmpeg` in your environment: ```bash -cd ~/lerobot && pip install --no-binary=av -e ".[feetech]" +conda install ffmpeg -c conda-forge +``` + +6. Install LeRobot with dependencies for the feetech motors: +```bash +cd ~/lerobot && pip install -e ".[feetech]" ``` ## Configure the motors diff --git a/examples/2_evaluate_pretrained_policy.py b/examples/2_evaluate_pretrained_policy.py index 24b5ea2c..edbbad38 100644 --- a/examples/2_evaluate_pretrained_policy.py +++ b/examples/2_evaluate_pretrained_policy.py @@ -18,7 +18,7 @@ training outputs directory. In the latter case, you might want to run examples/3 It requires the installation of the 'gym_pusht' simulation environment. Install it by running: ```bash -pip install --no-binary=av -e ".[pusht]"` +pip install -e ".[pusht]"` ``` """ diff --git a/examples/7_get_started_with_real_robot.md b/examples/7_get_started_with_real_robot.md index 5b12e903..2a14ccd7 100644 --- a/examples/7_get_started_with_real_robot.md +++ b/examples/7_get_started_with_real_robot.md @@ -33,7 +33,7 @@ First, install the additional dependencies required for robots built with dynami Using `pip`: ```bash -pip install --no-binary=av -e ".[dynamixel]" +pip install -e ".[dynamixel]" ``` Using `poetry`: @@ -827,11 +827,6 @@ It contains: - `dtRphone:33.84 (29.5hz)` which is the delta time of capturing an image from the phone camera in the thread running asynchronously. Troubleshooting: -- On Linux, if you encounter any issue during video encoding with `ffmpeg: unknown encoder libsvtav1`, you can: - - install with conda-forge by running `conda install -c conda-forge ffmpeg` (it should be compiled with `libsvtav1`), - - or, install [Homebrew](https://brew.sh) and run `brew install ffmpeg` (it should be compiled with `libsvtav1`), - - or, install [ffmpeg build dependencies](https://trac.ffmpeg.org/wiki/CompilationGuide/Ubuntu#GettheDependencies) and [compile ffmpeg from source with libsvtav1](https://trac.ffmpeg.org/wiki/CompilationGuide/Ubuntu#libsvtav1), - - and, make sure you use the corresponding ffmpeg binary to your install with `which ffmpeg`. - On Linux, if the left and right arrow keys and escape key don't have any effect during data recording, make sure you've set the `$DISPLAY` environment variable. See [pynput limitations](https://pynput.readthedocs.io/en/latest/limitations.html#linux). At the end of data recording, your dataset will be uploaded on your Hugging Face page (e.g. https://huggingface.co/datasets/cadene/koch_test) that you can obtain by running: diff --git a/examples/8_use_stretch.md b/examples/8_use_stretch.md index d02e7ef3..98bcab3c 100644 --- a/examples/8_use_stretch.md +++ b/examples/8_use_stretch.md @@ -43,14 +43,19 @@ conda create -y -n lerobot python=3.10 && conda activate lerobot git clone https://github.com/huggingface/lerobot.git ~/lerobot ``` -6. Install LeRobot with stretch dependencies: +6. When using `miniconda`, install `ffmpeg` in your environment: ```bash -cd ~/lerobot && pip install --no-binary=av -e ".[stretch]" +conda install ffmpeg -c conda-forge +``` + +7. Install LeRobot with stretch dependencies: +```bash +cd ~/lerobot && pip install -e ".[stretch]" ``` > **Note:** If you get this message, you can ignore it: `ERROR: pip's dependency resolver does not currently take into account all the packages that are installed.` -7. Run a [system check](https://docs.hello-robot.com/0.3/getting_started/stretch_hardware_overview/#system-check) to make sure your robot is ready: +8. Run a [system check](https://docs.hello-robot.com/0.3/getting_started/stretch_hardware_overview/#system-check) to make sure your robot is ready: ```bash stretch_system_check.py ``` diff --git a/examples/9_use_aloha.md b/examples/9_use_aloha.md index 1f7aee3c..58300687 100644 --- a/examples/9_use_aloha.md +++ b/examples/9_use_aloha.md @@ -30,9 +30,14 @@ conda create -y -n lerobot python=3.10 && conda activate lerobot git clone https://github.com/huggingface/lerobot.git ~/lerobot ``` -5. Install LeRobot with dependencies for the Aloha motors (dynamixel) and cameras (intelrealsense): +5. When using `miniconda`, install `ffmpeg` in your environment: ```bash -cd ~/lerobot && pip install --no-binary=av -e ".[dynamixel, intelrealsense]" +conda install ffmpeg -c conda-forge +``` + +6. Install LeRobot with dependencies for the Aloha motors (dynamixel) and cameras (intelrealsense): +```bash +cd ~/lerobot && pip install -e ".[dynamixel, intelrealsense]" ``` ## Teleoperate diff --git a/lerobot/common/policies/pi0/modeling_pi0.py b/lerobot/common/policies/pi0/modeling_pi0.py index 4462f162..7599fa63 100644 --- a/lerobot/common/policies/pi0/modeling_pi0.py +++ b/lerobot/common/policies/pi0/modeling_pi0.py @@ -24,7 +24,7 @@ Designed by Physical Intelligence. Ported from Jax by Hugging Face. Install pi0 extra dependencies: ```bash -pip install --no-binary=av -e ".[pi0]" +pip install -e ".[pi0]" ``` Example of finetuning the pi0 pretrained model (`pi0_base` in `openpi`): diff --git a/pyproject.toml b/pyproject.toml index b39c0720..4b917d6c 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -62,6 +62,7 @@ dependencies = [ "omegaconf>=2.3.0", "opencv-python-headless>=4.9.0", "packaging>=24.2", + "av>=14.0.0", "pymunk>=6.6.0", "pynput>=1.7.7", "pyzmq>=26.2.1",