Key takeaways
- MediaPipe in Python is Google's package of ready-made vision and audio models, such as hand, face and pose landmarkers.
- Support depends on published wheels: check PyPI for your Python version and operating system before installing.
- Python 3.11 and 3.12 work with recent MediaPipe releases; newer Python versions arrive later.
- If pip finds no matching version, install a supported Python with pyenv, uv or conda in a separate environment.
- Start with the Tasks API examples: hand landmarks from a webcam with OpenCV.
MediaPipe in Python is Google's package of ready-made, on-device machine learning solutions, such as hand, face and pose landmark detection, object detection, image segmentation and gesture recognition, usable with a few lines of code alongside OpenCV. Whether it installs depends on your Python version, because MediaPipe ships prebuilt wheels only for specific versions. I build browser and on-device vision in FaceVision, so this page explains MediaPipe in Python, version support including 3.11 to 3.14, installing on newer Python, examples and a tutorial.
What is MediaPipe in Python?
MediaPipe's Python package gives access to its Tasks API: pretrained models for hand landmarks, face landmarks, pose, object detection, image classification, segmentation, gesture recognition and audio classification, running locally on the CPU and, on some platforms, the GPU.
Also asked as: which python version supports mediapipe
It is popular for prototypes, coursework, research and creative projects: gesture-controlled apps, fitness rep counters, posture analysis, sign language experiments and video effects. You load a model file, create a task with options, pass images or video frames, and receive structured results such as landmark coordinates. It works well with OpenCV for camera capture and drawing, and with NumPy for processing results. The older "solutions" API, used in many tutorials, still appears online, but the Tasks API is the current, maintained interface.
Which Python versions support MediaPipe?
MediaPipe supports the Python versions for which Google publishes wheels on PyPI, usually several recent versions on 64-bit Windows, macOS and Linux. Support for a new Python release typically arrives some time after that Python version comes out.
To check, open MediaPipe's PyPI page and look at the available files, which list Python versions and platforms, or run pip install mediapipe and watch for "No matching distribution found", which means your Python version or platform has no wheel. 32-bit Python and some ARM platforms are not supported. When in doubt, a Python version one or two releases behind the newest is the safest choice.
Does MediaPipe support Python 3.11?
Yes. Recent MediaPipe releases provide wheels for Python 3.11 on the main platforms, so pip install mediapipe works in a standard 64-bit Python 3.11 environment on Windows, macOS and Linux.
If installation fails on 3.11, check that you are using 64-bit Python, that pip is up to date with python -m pip install --upgrade pip, and that you are not on an unusual platform. Python 3.11 is a good, stable choice for computer vision coursework, since most related libraries, such as OpenCV, NumPy and PyTorch, also support it well. College lab machines often have older Python versions, so confirm the version with python --version before installing.
Does MediaPipe work with Python 3.12?
Recent MediaPipe releases support Python 3.12 on the main platforms. Older MediaPipe versions did not, so if you see errors, upgrade MediaPipe to the latest version rather than pinning an old release from a tutorial.
Tutorials written before MediaPipe added 3.12 support often pin old versions such as mediapipe==0.10.x, which fail on newer Python. Remove the pin, install the latest, and adapt code from the legacy "solutions" API to the newer Tasks API where needed. Check PyPI for confirmation that your exact platform has a 3.12 wheel.
Does MediaPipe support Python 3.13?
Support for Python 3.13 depends on whether the MediaPipe release you install includes 3.13 wheels; this arrived later than for older versions. Check MediaPipe's PyPI files for "cp313" wheels for your operating system before assuming it works.
If no 3.13 wheel exists for your platform, pip will report that no matching version is found, or try building from source, which is complex. In that case, use Python 3.12 or 3.11 for MediaPipe projects in a separate environment. This version lag is common for packages with compiled components, so keeping a slightly older Python for machine learning work is a sensible habit.
Does MediaPipe work with Python 3.13 in practice?
In practice, if a 3.13 wheel exists for your platform, MediaPipe installs and works normally; if not, the practical fix is to create a separate environment with a supported Python version, rather than forcing installation.
With uv, run uv python install 3.12 and create a virtual environment with that version; with pyenv, install 3.12 and set it locally for the project; with conda, create an environment specifying python=3.12. Your system Python can stay on 3.13 for other work. Keep a requirements.txt with exact versions so classmates or teammates reproduce the same environment.
Does MediaPipe support Python 3.14?
Python 3.14 is newer, and packages with compiled code, like MediaPipe, usually add support some time after a Python release. Check MediaPipe's PyPI page for "cp314" wheels before trying; if none are listed, it is not supported yet.
Until support arrives, use an earlier Python version for MediaPipe projects. Watch the MediaPipe GitHub releases and issues for announcements. This applies to many machine learning libraries: adopt the newest Python for general work if you like, but keep machine learning projects on versions all your libraries support.
How do I install MediaPipe for Python 3.13?
First check PyPI for a 3.13 wheel for your operating system. If available, upgrade pip and run pip install mediapipe. If not, create an environment with a supported Python, such as 3.12, and install MediaPipe there.
Also asked as: how to install mediapipe in python 3.13
uv python install 3.12
uv venv --python 3.12 .venv
source .venv/bin/activate # on Windows: .venv\Scripts\activate
pip install mediapipe opencv-python
Verify with python -c "import mediapipe as mp; print(mp.__version__)". Avoid building from source unless you need unreleased features, since it requires Bazel and many dependencies.
What are some MediaPipe examples in Python?
Common examples include a webcam hand tracker drawing landmarks, a finger-counting app, a face mesh overlay, pose-based exercise rep counting, background segmentation for video calls, and gesture recognition for controlling apps.
Also asked as: mediapipe examples python
Official examples for each task, such as the hand landmarker, face landmarker and pose landmarker, are in Google AI Edge's documentation and the MediaPipe samples repository, often as Python scripts and Colab notebooks. Download the model file each example references, which is separate from the pip package. Then modify an example for your idea, for example mapping a pinch gesture to volume control. Hackathon teams often build impressive demos this way within hours, because the hard model work is already done.
What is a good MediaPipe tutorial in Python?
Follow the official hand landmarker Python guide: install MediaPipe and OpenCV, download the hand landmarker model, create the task in live-stream or video mode, feed webcam frames, and draw the 21 landmarks returned for each hand.
Also asked as: mediapipe tutorial python
Tutorial steps:
- Set up a supported Python environment and install packages.
- Download the
.taskmodel file from the documentation. - Create
HandLandmarkeroptions with the model path and running mode. - Capture frames with OpenCV, convert to MediaPipe images, and run detection.
- Draw landmarks and compute something useful, such as finger states.
- Measure frames per second and optimise image size.
Then try face and pose tasks using the same pattern.




